如果你打算拿HL的源码(也就是HLSDK)来改出一个自己的游戏,那你就非常有必要理解一些HL引擎的工作方式。
HL引擎分成两个部分,服务端和客户端。服务端管理所有玩家的状态和游戏规则,客户端负责显示UI和特效…之类的。
我们一般不对引擎本身(hw.dll sw.dll swds.dll)做什么手脚,因为我们没有源码,但是HL引擎开放了一些服务端和客户端的接口,
让我们可以定制自己的服务端和客户端,做成自己的游戏。
服务端接口和客户端接口都作为一个单独的DLL模块,我们可以自己修改这两个DLL,因为我们有源码!(就是HLSDK)
服务端模块放在 dlls\ 目录里,客户端模块放在 cl_dlls\ 目录里,这两个目录名字对应 HLSDK 里的项目名字。
HLSDK\dlls 项目编译出来就是 mp.dll 或者 hl.dll ,cl_dlls 项目编译出来就是 client.dll
我们可以认为开发 mp.dll 就是开发服务端,client.dll 就是客户端。只需要修改这两个模块,就能做出让你心满意足的作品。
我的文章里提到的服务端都是指 mp.dll ,客户端都是指 client.dll