Vintage Story auth mod for offline servers. Early alpha phase, expect shit to break.
From version 0.0.11
, this mod probably does not work on game versions older than 1.18.0 stable
.
Nothing has been tested on Windows.
Current features:
- Blocking players in spectator mode at spawn until they log in or get kicked after a configurable amount of time
- Possibility to disable/enable the creation of accounts in the config
- Possibility to restrict account creation to single use tokens, generated by any allowed role
- If installed on the client, the mod saves valid credentials and auto-logins next time a cached server is joined
- After login, if no user specific role was set using
changerole
, the user is granted the default role and its default gamemode
The config is in VintagestoryData/ModConfig/vintageauth.json
. By default, the server database is located in VintagestoryData/vintageauth_db.db
.
Things of note:
- A configurable administrator account is always generated if missing at server startup, available in the config. The password is randomly generated to prevent funny default password incidents.
- Passwords are le salted and le hashed in a sqlite db. Note to players: for validation, the server sees them anyways, so you should assume your serverop knows your password. Modifying this mod to log your credentials, IP, whatever is TRIVIAL.
Commands (, [optional]):
vahelp [command]
- help command. You can usevahelp command
to get more details about a commandregister <password>
- registers new accountlogin <password>
- logs indelaccount <password>
- deletes accountchangepw <oldpw> <newpw>
- changes passwordlogout
- removes current server credentials from cache, will prevent next auto-logingentoken
- generates a single use registration tokendeactivate <username>
- suspends accountreactivate <username>
- reinstates accountvaban <username>
- removes user from databasechangerole <username> <role>
- VintageAuth will give this role to the specified username on next login
- Use
buildmod.sh
. Can't be bothered to add a script for Winbloat. Just import into vscode, hit run and it should spit out a dll.
- This project GitHub repo, create an issue if something is broken, or you have a suggestion.
- Matrix
#boysgregified:matrix.thisisjoes.site
. - Website: mcdrama.net.
- ko-fi.com/jackisasubtlejoke
- Monero:
86aNAyad1scfNpiZ9DM7rMPsM3gbQHBhqPefbgfPunyBiGAaaTH3SvWB66HRjRMNJj9Yu7tHizYej3E7V7BEVkmNMWpWC5f
LGPLv3+SNEED