Difference between revisions of "Half-Life 2"
Line 60: | Line 60: | ||
</pre> | </pre> | ||
− | 5. Set pkg path: | + | 5. The location of <code>StubSteamAPI</code> was recently moved on 23rd May 2023, so this has to be put into the correct place for the build scripts to work: |
+ | #Move <code>stub_steam</code> into the <code>/thirdparty/</code> folder. | ||
+ | #Rename <code>/thirdparty/stub_steam/</code> to <code>thirdparty/StubSteamAPI</code> | ||
+ | |||
+ | 6. Set pkg path: | ||
<pre> | <pre> | ||
export PKG_CONFIG_PATH="/opt/homebrew/opt/jpeg/lib/pkgconfig" | export PKG_CONFIG_PATH="/opt/homebrew/opt/jpeg/lib/pkgconfig" | ||
</pre> | </pre> | ||
− | + | 7. Configure game builds: | |
*'''Half-Life 2''': | *'''Half-Life 2''': | ||
**<code>python3 waf configure -T release --64bits --prefix='' --build-games=hl2</code> | **<code>python3 waf configure -T release --64bits --prefix='' --build-games=hl2</code> | ||
Line 75: | Line 79: | ||
**<code>python3 waf configure -T release --64bits --prefix='' --build-games=cstrike</code> | **<code>python3 waf configure -T release --64bits --prefix='' --build-games=cstrike</code> | ||
− | + | 8. Build the game: | |
<pre> | <pre> | ||
python3 waf build | python3 waf build | ||
</pre> | </pre> | ||
− | + | 9. Create '''Build folder''' Install build into directory, this can be located anywhere ideally append with <code>hl2</code>, <code>episodic</code>, <code>portal</code>, <code>cstrike</code> etc. | |
<pre> | <pre> | ||
python3 waf install --destdir='~/Documents/Build folder/hl2' | python3 waf install --destdir='~/Documents/Build folder/hl2' | ||
</pre> | </pre> | ||
− | + | 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 <code>~/Library/Application Support/Steam/steamapps/common/</code> | |
− | + | 13. In the '''Steam folder''': | |
*Delete <code>Steam folder/bin/</code> folder. | *Delete <code>Steam folder/bin/</code> folder. | ||
*Copy/move <code>Build folder/bin/</code> folder into <code>Steam folder/</code> replacing the previous <code>Steam folder/bin/</code> folder. | *Copy/move <code>Build folder/bin/</code> folder into <code>Steam folder/</code> replacing the previous <code>Steam folder/bin/</code> folder. | ||
− | + | 14. In the '''Steam folder''': | |
*Delete <code>hl2_osx</code> | *Delete <code>hl2_osx</code> | ||
*Copy/move from '''Build folder''' <code>Build folder/hl2_launcher</code> | *Copy/move from '''Build folder''' <code>Build folder/hl2_launcher</code> | ||
*Rename the <code>hl2_launcher</code> into <code>hl2_osx</code> | *Rename the <code>hl2_launcher</code> into <code>hl2_osx</code> | ||
− | + | 15. In the '''Steam folder''': | |
*Navigate inside 'game' folder (e.g. <code>/hl2/</code> or <code>/episodic/</code> or <code>/portal/</code> or <code>/cstrike/</code>) | *Navigate inside 'game' folder (e.g. <code>/hl2/</code> or <code>/episodic/</code> or <code>/portal/</code> or <code>/cstrike/</code>) | ||
*Delete the bin subfolder (e.g. <code>Steam folder/hl2/bin/</code>) | *Delete the bin subfolder (e.g. <code>Steam folder/hl2/bin/</code>) | ||
*From the '''Build folder''' go to game folder (e.g. <code>Build folder/hl2/</code>) and move/copy from the '''Build folder''' to the '''Steam folder''' into the game (e.g. <code>Steam folder/hl2/</code>) | *From the '''Build folder''' go to game folder (e.g. <code>Build folder/hl2/</code>) and move/copy from the '''Build folder''' to the '''Steam folder''' into the game (e.g. <code>Steam folder/hl2/</code>) | ||
− | + | 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 <code>Steam folder/hl2/</code> and put it in the root of the <code>Steam folder</code> so that the game will launch. | *cstrike (Counter-Strike: Source) - in addition tot he above instructions, also copy the <code>Steam folder/hl2/</code> and put it in the root of the <code>Steam folder</code> so that the game will launch. | ||
*tf (Team Fortress Classic) | *tf (Team Fortress Classic) |
Revision as of 20:26, 23 May 2023
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 Hughes. This method can ne 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/yourusername/.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:
- Move
stub_steam
into the/thirdparty/
folder. - Rename
/thirdparty/stub_steam/
tothirdparty/StubSteamAPI
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_launcher
intohl2_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 folder
so 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