nillerusr / source-engine

Modified source engine (2017) developed by valve and leaked in 2020. Not for commercial purporses
Other
1.21k stars 191 forks source link

[Guide] How to succesfully compile and run on windows. #356

Open maksw2 opened 4 months ago

maksw2 commented 4 months ago

This guide will tell you how to prepare, compile and run build game.

  1. Install visual studio 2017 or 2022 with vs 2017 build tools, git or github desktop and python 3
  2. Cloning a. clone with git: git clone https://github.com/nillerusr/source-engine.git --recursive b. clone with github desktop.
  3. Go into command prompt and run these commands: waf.bat configure -T release --prefix=hl2 --build-games=hl2 --disable-warns waf.bat build -p -v waf.bat install
  4. now you have a directory called "hl2" with all binaries
  5. copy hl2 and platform from your hl2 install (steam) (skip overwriting files) (if you build any other game also copy it's folder)
  6. double click on hl2_launcher.exe

OTHER IMPORTANT THINGS

  1. want voice chat? add --enable-opus to configure
  2. change build game? change --prefix and --build-games in configure hl1 = Half-Life 1: Source hl2 = Half-Life 2 // Default - This will be selected if you don't specify a game episodic = Half-Life 2 Episode 1 ep2 = Half-Life 2 Episode 2 // Do not build for ep2, use episodic instead. hl2mp = Half-Life 2: Deathmatch dod = Day of Defeat cstrike = Counter-Strike: Source portal = Portal
  3. black screen when starting a game? copy shaders from half-life 2 (#350)
  4. need 32 bit build? add --32-bits to configure
  5. need debug? change -T release to -T debug
DiegoArmando-27 commented 3 months ago
  • Make sure you uninstall visual studio 2022 and 2019
  • Install visual studio 2017, git and python 3

But it can be succesfully built by VS2022, why we need VS2017?

maksw2 commented 3 months ago

from what i've seen, vs2022 gives errors. did you really manage a succesfull vs2022 build? if yes, please share the details.

DiegoArmando-27 commented 3 months ago

from what i've seen, vs2022 gives errors. did you really manage a succesfull vs2022 build? if yes, please share the details.

build.log config.log

maksw2 commented 3 months ago

that's very interesting... could it be because i was using vs 2022 proffesional? there were other people with the same problem - not being able to build with vs 2022. i've also seen a lot more warnings in your build.

DiegoArmando-27 commented 3 months ago

i've also seen a lot more warnings in your build.

If my memory serves me, that warnings were even with VS2017 compilers

DiegoArmando-27 commented 3 months ago

could it be because i was using vs 2022 professional?

Don't think that different types of VS provides different compilers

1922828151 commented 3 months ago

I have compiled CSS dedicated_server for Windows 32-bit, but I am unable to use metamod and sourcemod properly.SdkHooks and CStools cannot load properly, and many plugins cannot be used. Can you provide assistance in fixing this issue?

maksw2 commented 3 months ago

oh yeah, you might need to use an older version of these.

maksw2 commented 3 months ago

after i fixed my path and added a shit-ton of arguments it works?

maksw2 commented 3 months ago

updated it a bit

Kizoky commented 2 months ago

Any idea on how to build a solution file?

(nevermind, you need to use msvs to generate a VS2010 .sln)

maksw2 commented 2 months ago

what? we use waf. vpc got replaced years ago.

DiegoArmando-27 commented 2 months ago

VS2010

Nope. It generates solution for the last version of VS on your PC

DiegoArmando-27 commented 2 months ago

what? we use waf. vpc got replaced years ago.

.\waf msvs to generate a Visual Studio Solution

Kizoky commented 2 months ago

what? we use waf. vpc got replaced years ago.

as much as I would like to admit waf is better, unfortunately it doesn't have intellisense

DiegoArmando-27 commented 2 months ago

it doesn't have intellisense

IntelliSense is Visual Studio, not waf or vpc

WZL203 commented 6 days ago

本指南将告诉您如何准备、编译和运行构建游戏。

  1. 安装 Visual Studio 2017 或 2022,附带 vs 2017 构建工具、git 或 github 桌面和 python 3
  2. 克隆 a. 使用 git 克隆:git clone https://github.com/nillerusr/source-engine.git --recursive b. 使用 github 桌面克隆。
  3. 进入命令提示符并运行以下命令: waf.bat configure -T release --prefix=hl2 --build-games=hl2 --disable-warns waf.bat build -p -v waf.bat install
  4. 现在你有一个名为“hl2”的目录,其中包含所有二进制文件
  5. 从你的 hl2 安装 (steam) 复制 hl2 和平台 (跳过覆盖文件) (如果你构建了任何其他游戏也请复制它的文件夹)
  6. 双击 hl2_launcher.exe

其他重要事项

  1. 想要语音聊天?在 configure 中添加 --enable-opus
  2. 更改构建游戏?在配置中更改 --prefix 和 --build-games hl1 = Half-Life 1: Source hl2 = Half-Life 2 // 默认 - 如果您不指定游戏,则会选择此项 episodic = Half-Life 2 Episode 1 ep2 = Half-Life 2 Episode 2 // 不要为 ep2 构建,而是使用 episodic。hl2mp = Half-Life 2: Deathmatch dod = Day of Defeat cstrike = Counter-Strike: Source portal = Portal
  3. 开始游戏时黑屏?从半条命 2 复制着色器(加载后黑屏 #350
  4. 需要 32 位版本?添加 --32-bits 进行配置
  5. 需要调试?将 -T release 改为 -T debug

After successfully building the project in Windows, is the hl2 directory the root directory? For example, my build directory is C:\Users\Administrator\source-engine, so the hl2 you mentioned is in the directory C:\Users\Administrator\source-engine\hl2, right? Then put the steam css file C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Source directly into C:\Users\Administrator\source-engine\hl2. If you encounter files with the same name, don't choose to replace them, right? I tried it and it kept giving me an error.

maksw2 commented 4 days ago

@WZL203 Let me clarify it. You build the entire engine. What you should do is grab platform, hl2 and in your case cstrike and copy it over to the build engine. Do not touch the bin folder! In WAF change --build-games to reflect your game. Make a new text file, give it the .bat extension, open it and type this: hl2_launcher.exe -game cstrike. Run it. If the screen is black copy the hl2 directory from Half-life 2, not Counter-strike. Hope it helps!