Skip to content

RaphaelIT7/obsolete-source-engine

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The goal of this branch is to be able to create our own dlls that are compatible with gmod.
There is also the gmod-improvements branch, which will contain bug fixes or improvements.

Build GitHub Repo Size in Bytes

NOTE

I just rebased this entire branch to have the 64x stuff :D
So stuff might be broken.

List of dlls that are worked on:

  • vstdlist.dll (Everything was reverted.)
  • studiorender.dll (Only works with studio_queue_mode, BUG: pCallQueue->QueueCall causes a crash! QUEUE_STUDIORENDER_CALL)
  • filesystem_stdio.dll (Something broke and idk what) Progress:
  • Update Steamworks
  • Implementing basic Gmod functions
  • Implement Language System
  • Implement Gamemode System
  • Implement GameDepot System
  • Implement Addon System
    • Implement GetSubscriptions
    • Implement cfg/addonnomount.txt (BUG: Crashes when Saved)
    • Implement Addon Mounting
    • Implement Addon Download

List of currently (probably)working dlls:

  • datacache.dll
  • icudt.dll (IDK what it even does xd)
  • icudt42.dll (IDK what it even does xd)
  • shaderapidx9.dll (Needs more testing but seems to work.)
  • unicode.dll
  • vvis_dll.dll (~40% faster than Gmod's version. Compile it in Release for the Performance benefit)
  • vvis.exe
  • vrad.exe
  • vphysics.dll (Also, fixes ShouldCollide breaking the physics engine)

Prerequisites

  • CMake. Can be C++ CMake Tools component of Visual Studio.
  • [windows] Visual Studio 2022 with v143+ platform toolset.
  • Use git clone --recurse-submodules
  • Run create_<GAME_NAME>_dev_<ARCH>.bat from Developer Command Prompt (Use x64 version for x64 CPU arch). See directory tree for supported games.
  • Open <GAME_NAME>_<ARCH>.sln.
  • Build.

How to debug

  • Ensure you placed hl2 / episodic / portal game into game folder near cloned repo.
  • Open <GAME_NAME>_<ARCH>.sln.
  • Set launcher_main project Command property to $(SolutionDir)..\game\hl2.exe.
  • Set launcher_main project Command Arguments property to -dxlevel 85 -windowed.
  • Set launcher_main project Working Directory property to $(SolutionDir)..\game\.
  • Use Set as Startup Project menu for launcher_main project.
  • Start debugging.

How to release

  • Ensure you placed hl2 / episodic / portal game into game folder near cloned repo.
  • Open <GAME_NAME>_<ARCH>.sln.
  • Choose Release Configuration.
  • Build.
  • game folder contains the ready game.

NOTES

Hammer could work but it wasn't tested.

Source engine

If you found a bug, please file it at https://github.com/Source-Authors/obsolete-source-engine/issues.

SAST Tools

PVS-Studio - static analyzer for C, C++, C#, and Java code.

About

Trying to slowly recreate Gmod

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 94.0%
  • C 4.6%
  • SWIG 0.8%
  • Perl 0.3%
  • Python 0.1%
  • GLSL 0.1%
  • Other 0.1%