Age | Commit message (Collapse) | Author |
|
Update build instructions for compiling from command line or both Windows and Linux
Update CI to build into CI subfolder to match suggested build instructions
Update gitignore in regards to build directory
Co-authored-by: F1F7Y <64418963+F1F7Y@users.noreply.github.com>
|
|
Removes the AUTOHOOK macro from `host.cpp` and replaces it with HookAttach.
|
|
Refactor logic to move Squirrel types to their own respective files and extend existing layouts in the process where applicable.
Contains additional smaller fixes.
|
|
`SourceInteface` class goes back to icepick and is not good. We have a replacement, let's use it.
|
|
`SourceInteface` class goes back to icepick and is not good. We have a replacement, let's use it.
|
|
Removes AUTOHOOK macro from gl_matsysiface.cpp and replaces it with HookAttach
|
|
Replaces the AUTOHOOK macro in `sourceinterface.cpp` with HookAttach.
|
|
Removes AUTOHOOK macro from `languagehooks.cpp`.
|
|
Removes AUTOHOOK macro from `latencyflex.cpp`.
|
|
Removes AUTOHOOK macro from `hooks.cpp`.
|
|
Replace cases of autohook macro with manual hook calls
|
|
Remove use of AUTOHOOK macro from `modlocalisation.cpp`
|
|
Removes AUTOHOOK macro from `rejectconnectionfixes.cpp`.
|
|
Adds "needs code review" and "needs testing" to all new PRs
|
|
Check optional headers size
Check size and address of the image directory
|
|
|
|
Removes AUTOHOOK macros from `debugoverlay.cpp` and replaces them with `HookAttach`.
|
|
Removes AUTOHOOK macros from `audio.cpp` and replaces them with `HookAttach`.
|
|
Adds documentation explaining the coding standards to follow.
Co-authored-by: F1F7Y <64418963+F1F7Y@users.noreply.github.com>
|
|
Manually hook DrawRUIFunc
Remove AUTOHOOK_INIT and AUTOHOOK_DISPATCH
|
|
Run callbacks for nested modules, and prevent running callbacks multiple times for the same module.
Manually hook BinkOpen
Remove AUTOHOOK_INIT and AUTOHOOK_DISPATCH
|
|
Manually hook AuthWithStryder
Manually hook Auth3PToken
Remove AUTOHOOK_INIT and AUTOHOOK_DISPATCH
|
|
Removes unused `CModule` var. CModule crashes when you give it a dll tha's been loaded as one of these: `LOAD_LIBRARY_AS_DATAFILE`, `LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE`, `LOAD_LIBRARY_AS_IMAGE_RESOURCE`. We have guards for this in libsys but not here.
|
|
Previously we only ran callbacks for modules loaded using WinAPI. This now also runs callbacks for modules imported by those loaded by WinAPI. This fixes callbacks for miles and bink dlls.
|
|
|
|
|
|
|
|
Fix manual hooks storing their name wrong and move to just using std::string since it's much more convenient and this isn't C
|
|
Restores the `mat_crosshair_printmaterial` concommand by reimplementing it's callback. Adds `CMaterialGlue` and `CShaderGlue` classes.
|
|
|
|
|
|
Allow short inline functions to be on one line as otherwise short getters and setters are expanded way too much.
|
|
XInput 9.1.0 has some limitations to do with XInputGetCapabilities that may make the game behave differently when we use it as a replacement for XInput 1.3
XInput 1.4 doesn't have this issue, which means that if it works correctly we should always prioritise using this version over 9.1.0
|
|
This is a certified windows moment. Case insensitive but also not sometimes I guess
|
|
Cherry-picked from primedev and slightly modified
Co-authored-by: F1F7Y <filip.bartos07@proton.me>
|
|
Missing `rpak.json` would previously crash the game due to faulty boolean logic in the `if` statement. This change ensures that a missing `rpak.json` is handled gracefully.
|
|
so that labels can easily be updated if need be
|
|
|
|
Adds a function that converts entities to SQObjects to the SquirrelManagers.
|
|
Previously, the verified mods manifesto was fetched on game start without checking if the verified mod feature is enabled Squirrel-side; with this, the manifesto is only fetched when the user wants to download a mod (meaning they enabled the feature beforehand).
|
|
Revert #741 and remove log message since it's not a big deal
|
|
for filesystem namespace instead of relying on implicit include
Co-authored-by: Jan <sentrycraft123@gmail.com>
|
|
`pushSQObject` does not exist
Co-authored-by: EladNLG <e1lad8955@gmail.com>
|
|
Verify JSON has attributes before trying to access them
|
|
This basically prevents audio files from being loaded into memory if matching audio event has already been overriden by a previous mod, preventing a crash from occurring.
This means that audio mods now respect the load priority, i.e. mods with higher priority (= lower int value) will have priority over other mods on audio overrides.
|
|
Add a Squirrel VM method to know if a given mod is remote or not.
|
|
Because:
- Errors are incredibly confusing when non-fatal - there is no indicator that an error is happening
- The error is unknown without a try/catch block
- Errors cannot be tracked to a line, or file, and its location has to be figured out manually
- They can throw a game into an unexpected state with no indicator, confusing both players AND developers
|
|
Properly handle invalid cvar replications without blocking netmessage entirely and restore `ns_server_name` replication
|
|
|
|
The wsock proxy is so small and self contained that it really does not benefit from a precompiled header.
|