Pinsplash / halflife2chaos

Half-Life 2 Chaos is a chaos mod for Half-Life 2
Other
111 stars 11 forks source link
half-life-2 source-engine

Half-Life 2 Chaos

Installing

  1. Install Source SDK Base 2013 Singleplayer from Steam.
  2. Switch the SDK to the 'upcoming' beta. Right click on it in Steam and then click Properties... -> Betas and change the dropdown None to upcoming - upcoming. Changing this setting will prevent immediate crashes.
  3. Download latest hl2c.zip file from the releases page.
  4. Extract the hl2chaos folder from the zip file into Steam/steamapps/sourcemods/. The path to gameinfo.txt should look like this: Steam/steamapps/sourcemods/hl2chaos/gameinfo.txt (see picture below). Do the same for ep1chaos and ep2chaos if you want to play Chaos in Half-Life 2: Episode One/Two.
  5. Restart Steam for the mod(s) to appear in your library.

image

You must install Half-Life 2 and have it under the same Steam library (steamapps) folder as the mod. The same must be done for the Episodes as well to play Episode One/Two Chaos.

To play Episode One Chaos, you must also install Half-Life 2 Chaos, and if you wish to play Episode Two Chaos, you must also install Half-Life 2 Chaos and Episode One Chaos.

If you want to play Chaos in other mods or Half-Life: Source, you can try, but there can be several issues that we wouldn't be able to fix.

To uninstall Chaos, you should delete the entire hl2chaos folder. To install a new version, you should do the same before installing the new version. If you don't do this, you may experience some issues that were only in older versions or entirely new issues.

Issues

If you experience bugs with the mod, you can submit a bug report here.

Wiki

Check the GitHub wiki if you're looking for info about how Half-Life 2 Chaos works.

Building from source for Linux

No build enviroment setup required.

  1. git clone --depth=1 https://github.com/Pinsplash/halflife2chaos
  2. cd halflife2chaos
  3. ./sp/src/creategameprojects
  4. make -f ./sp/src/games.mak -j$(grep processor /proc/cpuinfo | wc -l) client_hl2 server_hl2
  5. ln -s $(pwd)/sp/game/bin ./sourcemods/hl2chaos/ Link bin directory from our build directory
  6. mkdir ~/.steam/steam/steamapps/sourcemods/hl2chaos; sudo mount --bind $(pwd)/sourcemods/hl2chaos ~/.steam/steam/steamapps/sourcemods/hl2chaos Note the use of the bind mount instead of a symbolic link. Steam won't detect symbolic links. You can use mv or cp instead, if you don't care.

Compiling for the episodes is an excercise for the reader. (Should be similar but with mod_episodic, client_episodic and server_episodic.)

Effect Voting on Twitch and YouTube

If you stream on Twitch or YouTube, you can make it so that viewers can vote for effects by sending chat messages. These instructions are specifically for Windows. If you're on Linux, you can figure it out.

NOTE: Currently, you can only have voting integration for Twitch or YouTube.

  1. Download the code. This is the green button that says "code" at the top. Click "Download ZIP" unless you want to use GitHub Desktop for some reason.

  2. Extract the contents to any place on your computer. The only part you need are the files in the twitch-integration or youtube-integration folder.

  3. Double click on setup.bat in the twitch-integration or youtube-integration folder. It will install Python and set up OBS to use it. If you run into any issue using this script, it should tell you which of the following steps you need to complete manually. If it works perfectly, you can skip to step 9.

    These steps can be skipped depending on how much setup.bat accomplishes.

  4. Download and install Python 3.11 from here.

  5. Navigate in File Explorer to the extracted twitch-integration or youtube-integration folder and go to File -> Open Windows PowerShell.

  6. Now type py -m pip install -U -r requirements.txt. It should do a bunch of stuff.

  7. In OBS, open Tools -> Scripts -> Python Settings. Change the Install Path to the folder where Python 3.11 is installed. If you allowed it to install to its default place, this should be C:/Users/___/AppData/Local/Programs/Python/Python311. Replace ___ with your Windows user name. You can find what the name is by simply looking in C:/Users. If set correctly, it should say "Loaded Python Version: 3.11".

  8. Click on "Scripts", click the + button, and select twitch_integration.py or youtube_integration.py.

  9. In OBS, create a new text source.

  10. Open Tools -> Scripts and click on twitch-integration.py or youtube-integration.py. Set 'Text Source' to your newly created text source's name. Set 'RCON password' to a password of your choice.

11a. For Twitch, set 'Target channel' to your channel (i.e acuifex for twitch.tv/acuifex).

11b. For YouTube, set 'Stream URL' to the URL of your stream. This must be updated every time you start a new stream.

  1. Press 'Reconnect to twitch/youtube' if you didn't automatically connect.
  2. In Steam, right click on the mod and then click "Properties...". In 'LAUNCH OPTIONS', put +developer 0 -usercon +ip 127.0.0.1 +rcon_password ___ +net_start +chaos_vote_enable 1. Replace ___ with the RCON password that you entered in OBS. The +developer 0 part is necessary for some reason, despite not seeming like it should be. You will also have to add these options in Ep1 & 2 chaos if you want to use Twitch or YouTube voting in them. It should work now. If it doesn't, the 'Script Log' button in OBS might have useful info. You can test voting commands by typing in your Twitch or YouTube chat, even if you're not actively streaming.

To remove Twitch or YouTube integration, you can simply clear out the mod's launch options and select twitch-integration.py or youtube-integration.py in OBS and then click the minus button.

Voting will not work if a map is not loaded. Menu background maps count. If no map loads upon opening the mod, please open an issue for it even if a closed one already exists, or contact Pinsplash in any other way.

Tips

Some effect-specific advice, if you don't wish to figure it out on your own:

Certain console variables are changed by this mod during gameplay that you might want your own default settings for. These settings have been put in their own CFG files so you can control what they are, except when chaos effects modify them.

Known issues

Acknowledgements for indirect contributions - Thank you!