While the QA commands are fun to play with, you may want to use the original GM system. Here are the steps how to enable it:
1. Add a column to store privileges per account
Open the accountdb_2800.accountinfo table and add a "privilege" column with a default value of 0(INT).
To give GM rights to an account, set its privilege to 33.
2. Send privileges to arb_gw
Open "TeraAPI\grails-4.0.3\TeraAPI\grails-app\controllers\com\tera\AccountController.groovy" in a text editor of your choice and find the following line: "select * from AccountInfo where accountDBID = $params.user_srl".
You'll see an array with charCount and isBlocked items below this line. Add "privilege: row.privilege," to the end of the array so that it will look like this:
Now scroll down a bit. You should see a few lines similar to "result.put("permission", accountInfo.getAt('isBlocked'))". Add an additional line there:
Save and close the file.
3. Remove the QA hack from the ArbiterServer_m3.exe. (optional step)
The arbiter server has a patch that allows it to accept QA commands regardless of the "qaServer" flag in the DeploymentConfig.xml. To fix this, open the ArbiterServer_m3.exe in a hex editor of your choice and go to offset 4299F4(decimal: 4364788).
You should see these bytes next to your cursor: "BA 01 00 00 00 90 90".
Replace them with the following bytes: "0F B6 15 4E AE C1 00".
Save the file as ArbiterServer_m4 and modify the BAT file accordingly.
Now QA commands won't work unless you turn on the "qaServer" in the DeploymentConfig.xml. This is correct behavior and QA commands should not be available for any character(including GMs) unless the server is running in the QA mode.
All done!
Now start the server and login into your GM account. If you did everything correctly, you will see that your characters have a GM prefix in the lobby. After entering the world, your characters will be invisible and have access to the Game Operator tool via the Alt + A hotkey.
GM accounts are not meant to be played, meaning that you won't be able to deal damage to monsters. The only way to make a GM character playable is to use /@set_go off with the ArbiterServer_m3 or ArbiterServer_m4 in QA mode.
1. Add a column to store privileges per account
Open the accountdb_2800.accountinfo table and add a "privilege" column with a default value of 0(INT).
Code:
ALTER TABLE accountinfo
ADD COLUMN privilege INT NOT NULL DEFAULT 0;
To give GM rights to an account, set its privilege to 33.
2. Send privileges to arb_gw
Open "TeraAPI\grails-4.0.3\TeraAPI\grails-app\controllers\com\tera\AccountController.groovy" in a text editor of your choice and find the following line: "select * from AccountInfo where accountDBID = $params.user_srl".
You'll see an array with charCount and isBlocked items below this line. Add "privilege: row.privilege," to the end of the array so that it will look like this:
Code:
charCount: row.charCount,
//lastLoginTime: row.lastLoginTime,
//playTimeLast: row.playTimeLast,
isBlocked: row.isBlocked,
privilege: row.privilege,
Now scroll down a bit. You should see a few lines similar to "result.put("permission", accountInfo.getAt('isBlocked'))". Add an additional line there:
Code:
result.put("privilege", accountInfo.getAt('privilege'))
Save and close the file.
3. Remove the QA hack from the ArbiterServer_m3.exe. (optional step)
The arbiter server has a patch that allows it to accept QA commands regardless of the "qaServer" flag in the DeploymentConfig.xml. To fix this, open the ArbiterServer_m3.exe in a hex editor of your choice and go to offset 4299F4(decimal: 4364788).
You should see these bytes next to your cursor: "BA 01 00 00 00 90 90".
Replace them with the following bytes: "0F B6 15 4E AE C1 00".
Save the file as ArbiterServer_m4 and modify the BAT file accordingly.
Now QA commands won't work unless you turn on the "qaServer" in the DeploymentConfig.xml. This is correct behavior and QA commands should not be available for any character(including GMs) unless the server is running in the QA mode.
All done!
Now start the server and login into your GM account. If you did everything correctly, you will see that your characters have a GM prefix in the lobby. After entering the world, your characters will be invisible and have access to the Game Operator tool via the Alt + A hotkey.
GM accounts are not meant to be played, meaning that you won't be able to deal damage to monsters. The only way to make a GM character playable is to use /@set_go off with the ArbiterServer_m3 or ArbiterServer_m4 in QA mode.
Last edited: