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
Compiled the Source Engine Leak, modified instructions from James Hughes. These 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.
Enter these commands into a Terminal window:
1. Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Remember to set the path:
(echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> /Users/yourusername/.zprofile eval "$(/opt/homebrew/bin/brew shellenv)"
2. Install Xcode Command Line Tools (Optional)
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-turbo
4. Clone the Source Engine GitHub repository
git clone --recursive https://github.com/nillerusr/source-engine cd source-engine
5. 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
6. Build the game
python3 waf build
7. 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'
8. Open Build folder in new Finder window
9. 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
10. 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/
11. In the Steam folder:
- Delete
Steam folder/bin/
folder - Copy/move
Build folder/bin/
folder intoSteam folder/
replacing the previousSteam folder/bin/
folder
12. In the Steam folder:
- Delete
hl2_osx
- Copy/move from Build folder
Build folder/hl2_launcher
- Rename the
hl2_launcher
intohl2_osx
13. 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/
)
13. Now the respective game can be launched from within Steam.
14. Other parameters:
- 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