As of Jaymod 2.1.0 a new text-based database file structure has been created.
Replacing the old data files are new .db files.
These files, when possible, store information in human-readable ASCII format.
![]() | Important |
|---|---|
All .db files are loaded into memory at game-init (map begin) time,
and subsequently saved out to disk (overwriting the files) at game-shutdown (map end) time.
This means any manual edits made to the database files will be lost
at game-shutdown time.
The best practice for manual edits (eg: adding levels to level.db file) is
to first shutdown the server before editing database files.
|
The following table describes the new locations for old data.
Table 7.1. Data Transition
| pre-2.1.0 | 2.1.0 | DATA DESCRIPTION |
|---|---|---|
| shrubbot.cfg | level.db | access levels |
| shrubbot.cfg | user.db | admin and bans |
| xpbackup.dat | user.db | saved xp |
| recspree.dat | map.db | top killing sprees |
| seendb.dat | user.db | admin and bans |
Stores access levels available for promoting users to higher levels of access. Data maintenance on this file is done manually with a text editor. ET color codes are supported. The following sample shows a default level=0 record and a manually edited level=1 record with full access.
Figure 7.1. level.db Sample
level = 0 flags = ACXahiu name = default greetingtext = greetingaudio = level = 1 flags = * name = ^3god greetingtext = greetingaudio =
Stores user related information. Most data maintenance on this file can be done in-game,
however some things such as greetingtext must manually be edited.
You cannot edit xpSkills.
The following sample shows a typical user with authLevel=0 which corresponds to the level=0 record
in level.db.
Figure 7.2. user.db Sample
guid = 9b830ff2b957a1c6bf28fce9e7a765e9 timestamp = 1168172721 # Sun Jan 7 07:25:21 2007 ip = 127.0.0.1 mac = f4:e5:d6:cc:b8:a9 name = Mr.Mxyzptlk namex = ^oMr.^xMxyzptlk authLevel = 0 authFlags = greetingtext = greetingaudio = xpSkills = UyHf9+YAoWDqH5c+RsnNn/7eaxFnn3lKPgyLHdOsgjs=
Table 7.2. Command Authorization Flags
| COMMAND | FLAG | DESCRIPTION |
|---|---|---|
| about | A | show basic information about Jaymod |
| admintest | a | show current admin level |
| ban | b | ban a user by GUID or IP |
| baninfo | B | show detailed ban information |
| cancelvote | c | cancel active vote |
| crazygravity | M | randomize gravity settings every 30 seconds |
| crybaby | y | taunt a whining player |
| disorient | d | invert a players view and controls |
| finger | I (uppercase-i) | show information about a player |
| fling | l (lowercase-L) | throw a player in a random upward direction |
| flinga | L | throw all players in a random upward direction |
| ftime | g | show the current Central Time in a fun way |
| glow | z | toggle colored halo effect for all players |
| help | h | show all authorized commands or detailed help for specific command |
| kick | k | kick a player off the server |
| launch | l (lowercase-L) | launch a player straight up |
| launcha | L | launch all players straight up |
| listlevels | i | show all admin levels |
| listplayers | i | show all players names, player-slot numbers and admin levels. |
| lock | K | lock a team so players cannot join it |
| lol | x | rain grenades from the sky |
| lsplayers | i | show all player names with extended information |
| mute | m | disable voice, chat and admin commands for a specific player |
| news | W | play standard mission radio message included with stock maps and some custom maps |
| nextmap | n | load next map in rotation |
| orient | d | restore standard view and controls for a specific player |
| pants | z | strip the pants from a specific player |
| panzerwar | M | enable panzer-war mode |
| pause | Z | pause the game |
| pip | z | draw stars/glitter-effects around all players heads |
| pop | z | knock off helmets from all players |
| putteam | p | place a specific player on a specific team |
| readconfig | G | reload/remerge server database files into RAM |
| rename | N | change the name of a specific player |
| reset | r | restart a map and also reset XP to what it was when the match began |
| resetmyxp | X | reset your own XP to zero |
| resetxp | R | reset the XP of a specific player to zero |
| restart | r | restart a map and keep XP gained since the match began |
| revive | v | revive yourself or a specific player |
| seen | E | show the last time a specific player was seen on the server |
| setlevel | s | change the admin level for a specific player |
| shake | H | shake a specific player's screen |
| showbans | B | show the current list of banned players |
| shuffle | S | mix teams up so they are more fair |
| slap | l (lowercase-L) | punish a naughty player |
| smite | U | burn a naughty player |
| sniperwar | M | enable sniper war |
| spec | e | instantly spectate a specific player |
| spec999 | P | place all players with 999 ping into spectator mode |
| splat | l (lowercase-L) | crush a specific player into oblivion |
| splata | L | crush all players into oblivion |
| status | _ (underscore) | show various bits of internal information relating to server resources and operation |
| swap | w | place all players on opposite teams |
| throw | l (lowercase-L) | throw a specific player straight ahead |
| throwa | L | throw all players straight ahead |
| time | C | show the current server local time |
| unban | b | lift a previously banned player |
| unlock | K | unlock a team so players can join it again |
| unmute | m | enable voice, chat and admin commands for a specific player |
| unpause | z | unpause the game |
| uptime | u | show the elapsed time since server came online |
Table 7.3. Abilities Authorization Flags
| FLAG | DESCRIPTION |
|---|---|
| 1 | cannot be kicked, vote-muted, dropped for inactivity or complained against |
| 2 | cannot be censored or flood protected |
| 3 | can run commands silently from console (/!command) |
| 4 | can see all team, fireteam and PM chat as spectator |
| 5 | can switch to any team regardless of balance |
| 6 | does not need to specify a reason for kick/ban |
| 7 | can call a vote anytime (even if disabled) |
| 8 | does not need to specify the duration of a ban (permanent ban) |
| 9 | can run commands from team or fireteam chat |