- delete `structs.h`
- completely remove VPKFileEntry (its completely unused)
- convert all other instances of `OFFSET_STRUCT` to normal structs (this was automated and may be wrong)
- Update `m_bZooming` type from `uint32_t` to `bool`
Old `-vanilla` behaviour is now handled by `-nonorthstardll`.
New squirrel constant called `VANILLA`. Set to true when in vanilla compatibility mode.
Differences when in vanilla compatibility mode:
- Doesn't restrict server commands (same as `-norestrictservercommands`)
- Doesn't block FairFight screenshot functions
- Doesn't do Atlas-related stuff (except for mainmenupromos)
Adds safeguard to the `map` command that prevents it from executing if the requested map is invalid or no map argument is given.
Retry of #529
Co-authored-by: cat_or_not <41955154+catornot@users.noreply.github.com>
Takes the previous audio event code, which relied on reading out a register using masm, and replaces it with a new hook.
Adapted from NorthstarPrime https://github.com/F1F7Y/NorthstarPrime
Co-authored-by: F1F7Y <filip.bartos07@proton.me>
Fixes bots crashing servers when they are the first to connect to it. Also moves player auth to `CServer::ConnectClient`. This allows the removal of `iNextPlayerUid` and `pNextPlayerToken` which were the cause of issues previously since they were not initialized by bots.
The previous logic incorrectly loaded compared the whole argument, which may be a path, to the string literal.
This fix checks if the argument ends with the string literal instead.
Adds various concommands such as
- `convar_findByFlags`
- `convar_list`
- `convar_differences`
- `convar_find`
The first 3 listed above are already registered as concommands natively but didn't seem to do anything when tested.
`convar_findByFlags` and `convar_find` were already implemented by Bob under the names `findflags` and `find` respectively but the names have been changed to reflect already existing convars.
Allows client to download a mod archive from the Thunderstore API, and extract included mods in the remote mods folder of the current game profile.
Not all mods can be automatically downloaded, as it would cause some security issues, and Thunderstore mod name cannot be deduced from actual mod name: to be eligible to auto-downloading, a mod must appear in the list of verified mods.
Said list and complete mod verification procedure are described here: https://github.com/R2Northstar/VerifiedMods
Exposes two commands to test the feature:
- `fetch_verified_mods` retrieves verified mods list from the GitHub organization, and stores it locally;
- `download_mod` does the actual mod downloading/extraction job.
Refactors `debugoverlay.cpp` based on primedev and fixes smart pistol lines in the process.
Co-authored-by: F1F7Y <64418963+F1F7Y@users.noreply.github.com>
Sets the 4th digit of the version number to the current CI run number.
This is done to more easily link a binary back to the PR or commit it came from.
Plugin state requires this to be initialised even if `-noplugins` is passed, but if `-noplugins` is passed, it doesn't get initialised.
Moving this to `dllmain` guarantees that it is initialised properly and prevents #580