Age | Commit message (Collapse) | Author |
|
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.
|
|
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.
|
|
* feat: enforce Thunderstore format for remote mods
* refactor: remove remote mods directory from "classic" mod loading
---------
Co-authored-by: GeckoEidechse <40122905+GeckoEidechse@users.noreply.github.com>
|
|
Adds missing validation check to ensure that the package folder the plugin is included in matches the `AUTHOR-MOD-VERSION` pattern.
|
|
|
|
With the move to cmake there is no need for the `pch.cpp` files as it generates them automatically.
Also removes leftover `#include "pch.h"` occurrences
|
|
Replace forward slashes with backward slashes in some string constants to make things more consistent.
|
|
* Safe I/O initial commit
* Formatting
* Formatting 2
* God help us all.
* fix diffs part 1
* fix diffs 2
* Fix invalid filter file
* Update NorthstarLauncher.vcxproj
* Remove newline at EOF
* fix the damn thing
* God help the diffs
* diff hate
* diff hate the 2nd
* Add comments since this code is unreadable
Now, this code may look readable, but I barely understand what I did here myself.
* Remove char limit and file definitions
* Fix build
* organization stuff
* Fix build
* More funcs, more stuff
* format fix
* oops, this is wrong.
* fix a thing
* Add max folder size (250MB) and add getallfiles
* Fix build also size cap
* reduce max folder size to 50MB
* he forgor
* i give up
* aync edition?????
* Fix max size bypass
* fix it
* Remove logs
* Add max folder size launch arg
* boop
* FUCK SHIT
* FUCKKKKKKKKKKK
* Fix build
* Fix crash
* Fix error FINAL!!!
* fix scriptjson.h not being found
* fix scriptjson.h not appearing correctly
* shit diffself
* format fix
* Fix indentation (thank you vscode)
* Fix indentation again
* adadasa
* shit diffself
adadasa
Fix indentation (thank you vscode)
Fix indentation again
* format fix
* Revert "shit diffself"
This reverts commit b49a62b5b36784df1c01663cdec2e4e403279618.
* Revert "Merge branch 'safe-io-rewrite' of https://github.com/EladNLG/NorthstarLauncher into safe-io-rewrite"
This reverts commit 761eb8a1cb11ccf1dadf55f5be9a08700fe1d560, reversing
changes made to 65549b2f799660d7fe7b5a53e81425922b996ea9.
* Fix the diff finally
* more diff fixes
* Fix more diffs
* Allow non-ascii characters that aren't NUL
* format fix :(
* this is untested and I don't wanna update the safe i/o test thing
* fix build :(
* fix mayhaps?
* fix build
* Fix lotsa stuff :D
* FIxed :D
* Rewrite error messages, rename CheckFileName to IsPathSafe
* Shout out to clang-format!
* oops, wrong error message :3
* SHOUT OUT TO CLANG-FORMAT!!!
* Revert "SHOUT OUT TO CLANG-FORMAT!!!"
This reverts commit c536384073528b4eee7c330dfab320a5527ff240.
* :(
* oop
* Add failure callback (launcher)
* unnecessary comment
* holy shit format fix
boooooo. BOOOOOO!
* restrict path to ASCII
* Fix ascii check I hate you all
* reformat
* Clang-format my beloved :)
* Move the thing
* Apply suggestions from code review
Co-authored-by: Rémy Raes <contact@remyraes.com>
* clang-format no like code suggestions :(
* name change
* doc'd
* - Replace the mutex map with a single mutex for all file actions
- Fix Load calls sometimes failing and not calling NSHandleLoadResult
- Add NSGetTotalSpaceRemaining which checks how much space a mod has, in KB
- Add contstant MAX_FOLDER_SIZE which holds the maximum save folder size, in KB
* add safe-io stuff to cmake
* surrounds IsPathSafe with a try/catch
---------
Co-authored-by: Rémy Raes <contact@remyraes.com>
Co-authored-by: uniboi <kami.0.katze@gmail.com>
|
|
Allows for loading Thunderstore mods directly from a separate directory called `packages`.
|
|
- Removes the log spam of "changing mod search path"
- Logs mods as they are loaded, alongside their ConVars, Scripts, ConCommands, etc.
- Warns in the console about errors in the mod.json instead of silently skipping things
|
|
|
|
|
|
* Some work
* Rewrite gamestate presence
* Add plugin system logger
* Format changes
* Format chjange
* Fix gamestate stuff
* some callback stuff
* move around invite stuff
* move invite to funcs
* fix presence server data
* Actually call InformSQVMCreated
* bruh
* Fix TODO's
* Formatting
* Fix filters
* Add InformDLLLoads
* Fix plugin handle always being 0
* Formatting
* Fix merge issues
* Formatting
* Mods can add files compiled at SQVM init
* Some Small Fixes
* Add changes from review
* Fix load failure
* Add new squirrel functions
* actually call InformSQVMDestroyed
* add CreateObject function
* answers to complaints
* remove snake cases from GameStatePresence
---------
Co-authored-by: cat_or_not <41955154+catornot@users.noreply.github.com>
|
|
* force-include "pch.h" in all units, as it will error if it's not included anyways
* remove #include "pch.h" from all files as it's not needed anymore now
* fix size of NSUserAgent to be consistent (it's 256 in version.cpp, caused compile error)
* Re-add explicit pch.h include to pch.cpp (and ran clang-format)
* drop pch.h inclusion from new files
|
|
* Add Destroy callback for squirrel scripts.
* Switch _call() to Call()
|
|
* feat: create remote mod directory
* feat: look for mods in remote mods directory
|
|
Format enabledmods.json
|
|
* Add script concommands
* Fix indent
* Formatting
* Formatting stuff
* Changes for review
* Fix typo
* Forgot to remove the return statement
* Formatting
|
|
* Remove launcher proxy
* Restructuring
* More restructuring
* Fix include dirs
* Fix merge
* Remove clang thing
* Filters
* Oops
|