NorthstarLauncher
NorthstarLauncher copied to clipboard
Disable MAD on vanilla
Simply adds a check for the ON_DLL_LOAD
that runs the mod auto download code for if vanilla compatibility is enabled.
Although it would never run on vanilla, some people are confused by the Custom verified mods URL not found in command line arguments, using default URL.
and Mod downloader initialized
added in logs when loading mod auto download, and, from testing, doesn't break anything to disable in this way. I was able to play a match of vanilla and a match of northstar without issues
No idea if this can be done better, just looked at what Spoon did for the master server auth and put it here
Could someone explaining why the format check fails?
as far as I'm aware I do the same thing as done here: https://github.com/R2Northstar/NorthstarLauncher/blob/main/primedev/masterserver/masterserver.cpp#L605
unless this is some tabs vs spaces thing ig
Could someone explaining why the format check fails?
You have some trailing whitespace in an empty line
Could someone explaining why the format check fails?
You have some trailing whitespace in an empty line
Or at least that's what format check is saying
Could someone explaining why the format check fails?
You have some trailing whitespace in an empty line
That did it, thanks
What's the exact procedure to launch vanilla through Northstar and have access to logs?
What's the exact procedure to launch vanilla through Northstar and have access to logs?
launch northstar with the -vanilla
launch arg
I'm kinda curious what would happen if MAD were to be called in vanilla (e.g. via some mod). Just null pointer deref and crash ig?
I'm kinda curious what would happen if MAD were to be called in vanilla (e.g. via some mod). Just null pointer deref and crash ig?
Me too, got any easy way of testing it?
Not sure if just calling DownloadMod
does all of it or not and it's kinda late to be thinking here lol
I'm kinda curious what would happen if MAD were to be called in vanilla (e.g. via some mod). Just null pointer deref and crash ig?
The various SQ functions should have checks added to ensure that they don't do this.
The various SQ functions should have checks added to ensure that they don't do this.
It would be better if they wouldn't even get registered at all if MAD is disabled.
The various SQ functions should have checks added to ensure that they don't do this.
It would be better if they wouldn't even get registered at all if MAD is disabled.
True, but that's more complex, and ADD_SQFUNC doesn't support it
Me too, got any easy way of testing it? Not sure if just calling
DownloadMod
does all of it or not and it's kinda late to be thinking here lol
I believe calling DownloadMod
would straight up crash the client, which is better than downloading anything I guess
With #751 merged, is this still relevant?
The error message is probably gone now, but if we are in vanilla mode it's probably better to just never instantiate the mod downloader?
Would be worth checking the codebase for things that grab the static instance and make sure that they check for vanilla compatibility first as well
Yeah, if we avoid loading MAD on vanilla then we also need to check that the uninstantiated object is never loaded cause otherwise it's gonna crash on reading random uninitialised memory.
Yeah, if we avoid loading MAD on vanilla then we also need to check that the uninstantiated object is never loaded cause otherwise it's gonna crash on reading random uninitialised memory.
This is why just grabbing static things blindly is bad
Putting into draft so that I know what to focus on and as per discussion this PR is blocked by the lack of checks that we do not access the uninitialised object. @itscynxx if you (or anyone else) disagrees, feel free to undraft it as is or leave a comment for me to undraft and we can take another look.