Command.dat
Configures every server chat command: who can use it, how much it costs, daily/weekly/monthly caps, and what side effects apply.
File Location#
GameServer/Data/GameServerInfo - Command.dat
All keys under [GameServerInfo]. Changes require a GameServer restart.
Two-File Setup: Command.dat + Command.xml#
A chat command only works if both files agree on it:
| File | Defines |
|---|---|
Shared Data/Command.xml | Each command's slash name, per-tier Enable, Money, MinLevel, MaxLevel, MinReset, MaxReset, optional WC/WP/GP cost, and the GameMaster authority level required to invoke it |
GameServer/Data/GameServerInfo - Command.dat | The numeric tunables documented on this page (caps, per-period limits, bonus point formulas, broadcast templates) |
The GM-level gate for every command lives in Command.xml's GameMaster= attribute, not in this file. Commands commented out in Command.xml (for example /reset, /mreset) are registered only by their plugin equivalents - the legacy keys here apply only when the matching plugin is absent. /post is fully owned by the PostCommand plugin and has no native Command.xml entry. See GameMaster.xml for the account/character to GM-level mapping.
Plugin-Owned Commands#
/reset, /mreset, /mr, /grandreset, /gr and the NPC reset menu are owned by the ResetSystem plugin (Data/Plugins/Characters/ResetSystem.xml). All legacy CommandReset* / CommandMasterReset* / CommandAddPointAutoEnable_* keys have been removed from this file — edit the plugin XML for costs, level gates, caps, and reward formulas.
/post is owned exclusively by the PostCommand plugin (Data/Plugins/Social/PostCommand.xml).
Change Command (/change)#
Switch active character without re-logging.
| Key | Default | Effect |
|---|---|---|
CommandChangeLimit_AL0-3 | 2 each | Changes allowed per session per tier |
Warehouse Command (/ware)#
Open another warehouse slot without visiting a merchant.
| Key | Default | Effect |
|---|---|---|
CommandOpenWareOnlySafeZone | 1 | 1 restricts /ware to safe zones |
Marry Command (/marry)#
| Key | Type | Default | Effect |
|---|---|---|---|
CommandMarryLevel | int | 150 | Minimum level to marry |
CommandMarryCost | zen | 350 | Zen cost per marriage |
CommandMarryNoticeDelay | seconds | 60 | Delay between marriage proposal broadcasts |
CommandMarryMinTime | seconds | 604800 | Minimum marriage duration before divorce (604800 = 7 days) |
CommandMarryOnlyGM | 0 or 1 | 0 | 1 restricts /marry to GMs performing the ceremony; 0 lets players self-marry |
Change Class Command (/changeclass)#
Each toggle allows changing TO that target class.
| Key | Default | Allows target class |
|---|---|---|
CommandChangeClassToDW | 1 | Dark Wizard |
CommandChangeClassToDK | 1 | Dark Knight |
CommandChangeClassToELF | 1 | Fairy Elf |
CommandChangeClassToMG | 1 | Magic Gladiator |
CommandChangeClassToDL | 1 | Dark Lord |
CommandChangeClassToSU | 1 | Summoner |
CommandChangeClassToRF | 1 | Rage Fighter |
Set to 0 to block changing into that class.
Reward Command (/reward)#
GM command granting a currency to one player. Types 1-10 map to different currencies or items; the shipped template only fills Cash, Gold, and PcPoint in types 1-3 but the engine supports up to 10.
| Key | Type | Default | Effect |
|---|---|---|---|
CommandRewardMaxType | int | 3 | Max type index accepted by the command. Values above this are rejected. Raise to enable types 4-10 |
CommandRewardMaxValue | int | 100 | Max amount per single use |
CommandRewardType1Text ... CommandRewardType10Text | string | shipped for types 1-3; empty for 4-10 | Broadcast template per type. Shipped defaults use %s (GM name), %s (target name), %d (amount). Define additional types to unlock them |
RewardAll Command (/rewardall)#
Same as /reward but grants to every online player.
| Key | Type | Default | Effect |
|---|---|---|---|
CommandRewardAllMaxType | int | 3 | Max type index; raise to enable types 4-10 |
CommandRewardAllMaxValue | int | 100 | Max amount per use |
CommandRewardAllType1Text ... CommandRewardAllType10Text | string | shipped for types 1-3 | Broadcast templates per type. Placeholders: %s (GM name), %d (amount) |
Rename Command (/rename) - Premium#
| Key | Type | Default | Effect |
|---|---|---|---|
CommandRenameDelay_AL0-3 | seconds | 60 each | Cooldown between uses |
CommandRenameNeedTicket | 0 or 1 | 0 | 1 requires a consumable rename ticket item in inventory |
Gift Command (/presente)#
Drops an item from the dedicated Gift event bag.
| Key | Type | Default | Effect |
|---|---|---|---|
CommandGiftLimit | int | 5 | Maximum uses tracked per character. Counter resets on GameServer restart |
Help Command (/ajuda)#
Spawns a set of monsters around the caller (help against stuck quests or blocked paths).
| Key | Type | Default | Effect |
|---|---|---|---|
CommandHelpMonsterIndex | int | 151 | Monster index to spawn |
CommandHelpMonsterAmount | int | 3 | Number spawned. Recommended maximum 5 |
Bloc Command (/bloc)#
Block/unblock incoming messages at the account or character level.
| Key | Default | Effect |
|---|---|---|
CommandBlocAccShowMessage | 1 | 1 shows a system message when a bloc is applied at account level |
CommandBlocCharShowMessage | 1 | 1 shows the same at character level |
Cross-File Dependencies#
| Setting here | Related in |
|---|---|
| Every command listed above | Requires a matching <Command> entry in shared Data/Command.xml. The XML controls the slash name, per-tier Enable/cost, and the GameMaster authority level required to invoke it |
GM-only commands (/marry ceremony mode, /reward, /rewardall, /gmmove, /gmpost, /track, /trace, /disconnect, /fireworks, /make, /skin, /setmoney, /notice, /hide, /setvip, /reload, /banchar, /banacc, /spot, /setcoin, /dropbag and event-start helpers) | Account/character to GM-level mapping in shared Data/Util/GameMaster.xml |
CommandGiftLimit | Gift drop pool defined in shared Data/EventItemBagManager.xml + a matching EventItemBag/*.xml |
CommandRenameNeedTicket | Ticket item index comes from the shared Data/Item/Item.xml rename ticket entry |
CommandChangeClassTo* | Additional class-availability gates in Common.dat Create Character Settings |
Common Issues#
/marryfails for two players on the same account - one-account-one-marriage is enforced at the character level; checkCommandMarryMinTimeand the existing marriage row/rewardbroadcast shows literal%s- text string missing both format specifiers; leave%s ... %d ...in the template/changeclasslets players switch into an advanced class for free - check Common.dat<CLASS>CreateLevel_AL*and<CLASS>CreateReset_AL*; the Create gate still applies/presentedrops nothing - the Gift entry inEventItemBagManager.xmlis missing or points to an empty bag