Getting Started With A JA++ Server


This tutorial assumes you're running Windows and are looking at migrating from JA+ to JA++


General

JA++ is designed as a replacement for JA+, and will mimic many things JA+ does for various reasons.

First off, JA separates mods into separate directories next to GameData/base/, and they are loaded by setting the fs_game cvar.
When a client connects to a server, they will automatically set their fs_game value to the same as the server.
This is how mods are automatically loaded when you join a server.

JA++ makes use of this to make it easier for clients to play on JA++ servers with their existing JA+ installation.
Instead of JA++ having its own mod directory, it stays in GameData/japlus/ so JA++ client can be used on JA+ servers, and so JA+ clients can connect to JA++ servers.

JA++ also does some version sniffing to enable/disable some features, so JA++ will mimic JA+ in these cases (e.g. client-side cjp_client cvar or server-side v and gamename cvars.
The way to check your JA++ version is by checking the japp_version cvar.

Admin System

One of the drawbacks to JA+'s ingame admin system is the limit of admin accounts (i.e. Council, Knight, Instructor). This does not suit every server.
Instead, JA++ has a user+password account system, with no limit on the amount of accounts.

Each account has its own login message, and privileges.
You can login to an account with amlogin user password

Admin users can be added, removed, listed and modified with these server/RCon commands:

adminadd <user> <pass> <privileges> <rank> <login message> admindel <user> adminlist adminreload

To work out what privileges value you want, use the bit-value calculator.
All login data is stored on disk in japlus/admins.json which is a human-readable JSON file