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
Adds a convar to toggle whether we should log from the miles log func
Most of these warnings are warnings about events being starved, in some cases slowing down the game due to the number of log calls.
Currently, when you add a new mod to your `mods/` directory, when there's no associated entry in the `enabledmods.json` file, it is considered enabled by default; mod entries are only written in `enabledmods.json` when toggling them via the mods interface.
In this pull request, I propose to create mod entries in `enabledmods.json` on startup when detecting they don't exist.
The goal of this commit is to make the crash handler code more readable and fix some issues.
- Format registers
- Format Modules
- Format stacktrace
- Format mods
- Create minidump
Also moves `NSIsMasterServerAuthenticated` out of `scriptserverbrowser.cpp` because it didn't really fit there
This will be used for showing failed origin auth errors in the game's UI