Half-Life 2
macOS Compatibility
| Method | Rating | Notes | 
|---|---|---|
| Native | Compiled the Source Engine Leak. https://jameshug.notion.site/Guide-to-Installing-Portal-Using-Source-Engine-on-macOS-660803f9ced149cfa1647d38fd5a7092[1] | |
| Rosetta 2 | ||
| Compatibility layer | ||
| CrossOver | Installed via Steam on CrossOver 21, extreme fps drops during shootouts and explosions. | |
| Wine | ||
| Virtualization | ||
| Parallels | Playable.[2] | 
Native ARM build from leaked source
These instructions are heavily based on guides written by James Hug. This method can be used to build native ARM macOS ports of Half-Life, Half-Life 2, Half-Life 2: Episode 1 & 2, Portal, Counter-Strike: Source etc. as long as the necessary game files from Steam have been copied into the correct folder.
Enter these commands into a Terminal window:
1. Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
On Apple Silicon Macs: remember to set the path, modify this command with your username:
(echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> /Users/$(whoami)/.zprofile eval "$(/opt/homebrew/bin/brew shellenv)"
2. If Xcode Command Line Tools does not install, then install it manually:
xcode-select --install
3. Install required packages from Homebrew (added the jpeg-turbo dependency from instructions)
brew doctor brew cleanup brew install sdl2 freetype2 fontconfig pkg-config opus libpng libedit python3 jpeg jpeg-turbo
4. Clone the Source Engine GitHub repository
git clone --recursive https://github.com/nillerusr/source-engine cd source-engine
5. The location of StubSteamAPI was recently moved on 23rd May 2023, so this has to be put into the correct place for the build scripts to work:
- Rename 
/stub_steam/to/StubSteamAPI/ - Move 
/StubSteamAPI/into the/thirdparty/folder. 
6. Set pkg path:
export PKG_CONFIG_PATH="/opt/homebrew/opt/jpeg/lib/pkgconfig"
7. Configure game builds:
- Half-Life 2:
python3 waf configure -T release --64bits --prefix= --build-games=hl2
 - Half-Life 2 Episodes:
python3 waf configure -T release --64bits --prefix= --build-games=episodic
 - Portal:
python3 waf configure -T release --64bits --prefix= --build-games=portal
 - Counter-Strike: Source:
python3 waf configure -T release --64bits --prefix= --build-games=cstrike
 
8. Build the game:
python3 waf build
9. Create Build folder Install build into directory, this can be located anywhere ideally append with hl2, episodic, portal, cstrike etc.
python3 waf install --destdir='~/Documents/Build folder/hl2'
10. Open Build folder in new Finder window.
11. Open Mac version of Steam and install games e.g Half-Life 2, Episode 1, Episode 2, Portal, Counter-Strike: Source etc. these game files I will refer to as the Steam folder.
12. Open Steam folder in Finder: right-click on game in Steam library, go to Manage and Browse local files. Alternatively navigate to ~/Library/Application Support/Steam/steamapps/common/
13. In the Steam folder:
- Delete 
Steam folder/bin/folder. - Copy/move 
Build folder/bin/folder intoSteam folder/replacing the previousSteam folder/bin/folder. 
14. In the Steam folder:
- Delete 
hl2_osx - Copy/move from Build folder 
Build folder/hl2_launcher - Rename the 
hl2_launcherintohl2_osx 
15. In the Steam folder:
- Navigate inside 'game' folder (e.g. 
/hl2/or/episodic/or/portal/or/cstrike/) - Delete the bin subfolder (e.g. 
Steam folder/hl2/bin/) - From the Build folder go to game folder (e.g. 
Build folder/hl2/) and move/copy from the Build folder to the Steam folder into the game (e.g.Steam folder/hl2/) 
16. Now the respective game can be launched from within Steam.
17. Other parameters:
- cstrike (Counter-Strike: Source) - in addition tot he above instructions, also copy the 
Steam folder/hl2/and put it in the root of theSteam folderso that the game will launch. - tf (Team Fortress Classic)
 - dod (Day of Defeat)
 - hl2mp (Half-Life 2: Deathmatch)
 
References
- ↑ Verified by User:PBeGood4 on 29 April 2023 
- Device: M1 MacBook Pro
 
- Method: Compiled Source Engine Leak
 
- Resolution: 1920x1080
 - Settings: high
 - Framerate: 120+ FPS
 
 - ↑ Verified by User:gp on 7 Sep 2021 
- Device: Mac M1 16 GB RAM
 - OS: Windows 11 (latest Insider ISO)
 - Method: Parallels 17
 
- Resolution: 1080p
 - Settings: Medium
 - Framerate: 50~60 FPS