DevTools

Firelands DevTools

FirelandsDevTools is a command-line utility for managing the Firelands database. It handles SRP password hashing automatically and is separate from in-world .account console commands (GM Commands).

Requirements

  • Built binary: ninja -C build FirelandsDevToolsbuild/bin/FirelandsDevTools
  • Running MySQL/MariaDB (Docker recommended: docker-compose up -d db)
  • Default credentials: user firelands / password firelands on localhost:3306

Usage

./build/bin/FirelandsDevTools <command> [arguments]

Account management

Creates or updates a user in firelands_auth.account:

./FirelandsDevTools account <username> <password> [email] [expansion]
ArgumentDescription
usernameLogin name
passwordPlain text (hashed to SRP salt/verifier by the tool)
emailOptional; default <username>@firelands.com
expansionOptional 0–3; default 3 (Cataclysm)

Example:

./FirelandsDevTools account admin admin123 admin@example.com 3

Realm management

Registers or updates a row in realmlist:

./FirelandsDevTools realm <id> <name> <address> <port> [icon] [timezone] [secLevel] [population]

If the first argument after realm is not all digits, it is treated as the name and the second as id:

./FirelandsDevTools realm Firelands 1 127.0.0.1 8085
ArgumentDescription
idUnique realm ID
nameDisplay name in realm list
addressWorld server IP/hostname
portWorld server port (e.g. 8085)
icon0=Normal, 1=PvP, 4=RP, 6=RPPvP, 8=Non-standard
timezone1=Development, 2=US, 3=Oceanic, …
secLevelMinimum access level to join
populationPopulation float indicator

Example:

./FirelandsDevTools realm 1 "Firelands Test" 127.0.0.1 8085 1 1 0 0.0

Troubleshooting

ProblemFix
Connection errorEnsure DB is running; check credentials in DevTools.cpp vs your environment
Permission deniedGrant write access to firelands_auth for the firelands user