aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-07-30Add CreateScriptInstance (#692)v1.27.1-rc1v1.27.1v1.27.0-rc1v1.27.0EladNLG
Adds a function that converts entities to SQObjects to the SquirrelManagers.
2024-07-30Only fetch MAD manifesto on server join (#751)Rémy Raes
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).
2024-07-28Fix logging sometimes not working (#754)v1.26.4-rc3v1.26.4Jack
Revert #741 and remove log message since it's not a big deal
2024-07-10Define `fs` alias in source file where used (#747)v1.26.4-rc2v1.26.4-rc1v1.26.3-rc3v1.26.3-rc2v1.26.3GeckoEidechse
for filesystem namespace instead of relying on implicit include Co-authored-by: Jan <sentrycraft123@gmail.com>
2024-07-10Fix typo in class member function (#750)GeckoEidechse
`pushSQObject` does not exist Co-authored-by: EladNLG <e1lad8955@gmail.com>
2024-07-10fix: Do not crash on unknown MAD manifesto format (#749)Rémy Raes
Verify JSON has attributes before trying to access them
2024-07-06Fix multiple audio file overrides (#677)v1.26.3-rc1v1.26.2v1.26.1-rc5v1.26.1-rc4v1.26.1Rémy Raes
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.
2024-07-04Expose mods remote status to Squirrel VM (#684)v1.26.1-rc3v1.26.1-rc2v1.26.1-rc1v1.26.0-rc4v1.26.0-rc3v1.26.0Rémy Raes
Add a Squirrel VM method to know if a given mod is remote or not.
2024-07-04Make Script Errors from Northstar Callbacks Fatal (#698)v1.26.0-rc2EladNLG
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
2024-07-04Properly handle invalid cvar replications without blocking netmessage (#408)v1.26.0-rc1BobTheBob
Properly handle invalid cvar replications without blocking netmessage entirely and restore `ns_server_name` replication
2024-06-28Remove unused typedefs from precompiled header (#737)v1.25.4-rc2v1.25.4Jan
2024-06-28Remove precompiled header from wsock proxy (#739)Jan
The wsock proxy is so small and self contained that it really does not benefit from a precompiled header.
2024-06-28Remove EXPORT macro from precompiled header (#738)Jan
as its used once and does not warrant being in the precompiled header
2024-06-28Check for Console Window before allocating one (#741)Jan
Check for Console Window before allocating one and remove "console already exists" from error message, we know it doesn't
2024-06-24Add missing object check in mod manager (#731)v1.25.4-rc1Jan
`HasMember` asserts `IsObject()` internally. In release builds this is not an issue but this does not work on Debug builds.
2024-06-23Fix const-qualified assignment in RapidJSON (#717)v1.25.3-rc3v1.25.3Jan
pulls in https://github.com/Tencent/rapidjson/pull/719 resolves https://github.com/Tencent/rapidjson/issues/2277
2024-06-23Restructure primelauncher cmake logic (#727)Jan
Move primelauncher cmake logic into its subdirectory allowing everything related to it to be self contained
2024-06-22Fix memalloc problems (#728)v1.25.3-rc2Jan
alloc declarations to work with CRT implement missing _recalloc_base and _msize
2024-06-22Use static MSVC Runtime Library (#718)v1.25.3-rc1Jan
I think its best if we use the static runtime to remove more dynamic dependencies that we can't anticipate.
2024-06-22Add overrides to `custom_sink_it_` methods (#708)Jan
the compiler knows we want to override here, since the original `custom_sink_it_` is virtual but we should be explicit to prevent any mistakes.
2024-06-20Remove useless `this` pointer check (#710)v1.25.2-rc1v1.25.2Jan
The standard states that this must always be a valid pointer so these checks are optimized out anyway. Sane compilers, such as clang, also complain about this and state that this is pointless.
2024-06-20Lowercase all linked libraries for building on Linux (#726)Jan
Microsoft, in their infinite wisdom, decided to suffix some libraries with `.Lib` instead of `.lib` This causes issues with cmake on Linux because it only looks for `.lib` which it won't be able to resolve because the file system is case sensitive. Microsoft does this for backwards compatibility, in cmake this is a limitation so the best solution is to bite the bullet and lowercase all libraries which setups such as wine-msvc and xwin already do.
2024-06-20Remove invalid memset in ServerPresence (#709)Jan
The use of sizeof is incorrect here since `this` is a pointer and sizeof is used on the pointer directly, instead of what the pointer points to. It seems to work without issue due to padding but could cause issues if an instanced class like `std::string` gets nulled.
2024-06-19Add missing case for switch cases in JSON deserialization function (#712)v1.25.1-rc2v1.25.1Jan
RapidJSON switch gets a new case for null, where we do nothing. Future enum values would result in a new warning.
2024-06-19Update `actions/upload-artifact` to v4 (#725)GeckoEidechse
v3 is outdated and will soon be deprecated Co-authored-by: Jan <sentrycraft123@gmail.com>
2024-06-19Add clang CI (#721)Jan
Builds Northstar with the Microsoft provided clang-cl build next to MSVC Release builds are unchanged and still only built with MSVC
2024-06-19Update `actions/checkout` to v4 (#724)GeckoEidechse
v3 is outdated and will soon be deprecated Co-authored-by: Jan <sentrycraft123@gmail.com>
2024-06-17Don't instantiate templates before declaration, add missing instantiation (#706)Jan
In C++ explicit template instantiations need to be done AFTER template declarations are made.
2024-06-16Add default case for SquirrelContext switch (#716)v1.25.1-rc1v1.25.0-rc2v1.25.0Jan
Add default case for SquirrelContext switch and logs errors so we can catch them if they do ever happen.
2024-06-16Use double brackets to let compiler know assignment is intentional (#707)v1.25.0-rc1v1.24.7-rc6v1.24.7-rc5v1.24.7-rc4v1.24.7-rc3v1.24.7Jan
Use double brackets to let compiler know that assignment inside `if` statement is intentional and not the cause of a missing second `=`.
2024-06-16Check if hook target is non `null` before calling MinHook (#711)Jan
2024-06-16Remove duplicate wsock32 export (#714)Jan
2024-06-15Assign `CreateInterface` member instead of creating a new variable (#705)v1.24.7-rc2v1.24.7-rc1Jan
Assign CreateInterface member instead of creating a new variable. This fixes valid Plugins failing to load.
2024-06-14Use old Mutex constructor to deal with redist incompatibility (#704)v1.24.6-rc2v1.24.6Jan
See GitHub PR for detailed explanation
2024-05-21Fix engine error crash caused by language detection hooks (#699)v1.24.5-rc2v1.24.5wolf109909
Previous logic would always return `true`
2024-05-05Fix plugin with NULL strings causing UB (#695)Jan
Instance string members only after checking for null pointers to prevent UB
2024-04-05Add instructions to build with podman (#686)GeckoEidechse
Add instructions to build NorthstarLauncher with podman under SELinux enabled distros
2024-04-05Trim trailing whitespace in build instructionsv1.24.5-rc1GeckoEidechse
2024-03-09Fix crash in silver-bun (#679)v1.24.6-rc1v1.24.4-rc2v1.24.4Jack
2024-03-04Address C4100 compiler warnings (unused var) (#648)v1.24.4-rc1v1.24.3-rc3v1.24.3-rc2v1.24.3Jack
Adds and uses a macro to avoid the warning
2024-03-04Update silver-bun to `72c74b4` (#664)Jack
Bumps the vendored silver-bun library to the newest commit in upstream Co-authored-by: F1F7Y <filip.bartos07@proton.me> Co-authored-by: IcePixelx <41352111+IcePixelx@users.noreply.github.com>
2024-03-02Don't allow too many arguments to be sent to the map command (#673)v1.24.3-rc1v1.24.2-rc1v1.24.2Jack
`map` should only take a single arg that specifies the map to load.
2024-03-02Check OpenExternalWebBrowser custom flag better (#674)Jack
Properly check string prefix to see if we should open it in browser
2024-02-25Fix bad offsets of `sq_getfunction` (#672)cat_or_not
and remove duplicate assignment
2024-02-18Clean up wsock proxy code and move wsock build system logic (#671)v1.24.1-rc2v1.24.1-rc1v1.24.1Jan
- moves `WSockProxy` to `wsockproxy/CmakeLists` - remove exepath stuff from dllmain + its still done in loader.cpp because its used when reporting failure - Disabled any Thread Library calls + we don't need to know about threads at all in the proxy - yoink `wsock32.asm` into outer space + turns out, we can just call the function in a void shim since that wont touch the registers - stop copying `wsock32.dll` to the game directory + this should improve the state of things when using the EA App
2024-02-06Update default mods list URL (#662)v1.24.0-rc1v1.24.0GeckoEidechse
The default branch for the VerifiedMods repo was renamed from `master` to `main`.
2024-02-05Port navmesh debug renderer from primedev (#626)Jack
Adds support for rendering navmeshes in-game using debug overlay Cherry-picked from primedev, originally written by F1F7Y Co-authored-by: F1F7Y <filip.bartos07@proton.me> Co-authored-by: Maya <11448698+RoyalBlue1@users.noreply.github.com>
2024-02-04Plugin interfaces (plugins v4) (#615)v1.23.1-rc2v1.23.1-rc1v1.23.1v1.23.0-rc2v1.23.0-rc1v1.23.0uniboi
Replaces the current plugin api with source interfaces. - backwards compatible - no more json in binaries (wtf) - does not rely on structs from third party libraries (wtf) - actually initializes variables - no more basically unused classes The launcher exposes almost everything required by plugins in interfaces that allow for backwards compatibility. The only thing that's passed to a plugin directly is the northstar dll HWND and a struct of data that's different for each plugin.
2024-01-30ScopeGuard improvements (#651)Jack
`std::function` introduced a layer of indirection that can be removed through templating the class.
2024-01-27Remove unused variable in mod concommands (#652)Jack
Remove unused variable that was also leaking memory