-
Notifications
You must be signed in to change notification settings - Fork 2
LevelMod project structure
LevelMod consist of 3 main parts:
-
d3d8.dll
- a proxy library to hook functions, fix bugs and extend the original game - a set of modified
QScripts
- additional converted content, including custom levels (bsp, tdx files)
This design approach allows to:
- use levelmod gameplay features without additional levels
- easily restore the game to its vanilla state by removing the d3d8.dll file
Unlike previous standalone releases, Github version includes many gameplay features (double tap tricks, spine transfer, etc.), most of them are designed in a toggleable way, so player can disable unwanted changes via options menu. This resulted in a LevelMod.ini
file found in the game folder.
The project produces a dynamic link library written in C++ and developed in Visual Studio 2022. Make sure to install DirectX SDK.
It is based on d3d8to9 project, hence it enables DirectX 9.0 rendering routines. It means that tools like ReShade are now fully functional in THPS3.
QScripts are stored in Data\scripts\LevelMod
to avoid conflicts with the original scripts. Script source code is provided, but it is compiled by currently unreleased QScriptEd
tool.
Be aware that custom levels are NOT included in this repository. Download previous standalone release separately from Chapter-3.net, links are provided in the repo readme.
Original levels are stored in Data\levels folder, we kept this logic by adding a suffix to levels. Hence THPS1 levels are found in levels_th1, etc. Suffixes are as follows: th1, th2, th4, ug1, ug2, aw