DK Administration for DUMMIES is written by iAslana
- Please do not steal my work, if you post this on another forum my profile link MUST be located somewhere-
INDEX
- Please do not steal my work, if you post this on another forum my profile link MUST be located somewhere-
-----------------------------------------------------------------------------------------------
INDEX
1. Client Sided Administration
1.1 GM COMMANDS
1.2 DEV/DEKARON COMMANDS
2. Server Sided Administration
2.1 Server protection
3. Administration Tools
3.1 CSVed - Program wich makes CSD editing very easy.
----------------------------------------------------------------------------------------------
1. Client Sided Administration
1.1[GM COMMANDS]1.2 DEV/DEKARON COMMANDS
2. Server Sided Administration
2.1 Server protection
3. Administration Tools
3.1 CSVed - Program wich makes CSD editing very easy.
----------------------------------------------------------------------------------------------
1. Client Sided Administration
-- Write these commands in your normal chatbox --
/GM DISTRIBUTE |
-> Press 'M' and execute the commands, the dark blue dots are mobs, the light blue dots are players, this is an easy command to catch vac hackers. |
/GM PLAYERCOUNT |
-> This will show how many players are online in the whole server at the time the command has been executed |
/GM RETURN [PC ID] |
-> Replace PC_ID with the character name you want to return, this will return the character to it's return point, the player must be online to execute. |
/GM MOVEMAP [MAPINDEX] [X] [Y] |
-> This will move your GM character to the map you entered, replace the MAPINDEX by the map number and x,y to 200 200 for example. |
/GM RESET_ALLMONSTER |
-> This will reset all the monsters in the map where you are located, this command executes instantly. |
/GM ghostmode [on/off] |
-> This will enable or disable the ghostmode of your GM character, you're character will be invisible. |
/GM callmonster [MonsterIndex] |
-> This will call the monster you entered, note this is a command for 1 monster at a time only! Replace the monsterindex by the mob_id for example 2889. |
/GM callmonsters [index] [count] |
-> This will call the monsters you entered, this command if for more mobs at a time, please enter a value count that is higher then 1. |
/GM kick [PC ID] |
-> This will kick the player of the game, replace the PC ID by the character name. |
/GM revive [PC ID] |
-> This will revive the player, replace the PC ID by the character name. |
/GM heal [PC ID] |
-> This will heal the player HP,MP,Shield, replace the PC ID by the character name. |
/GM chase [PC ID] |
-> This teleports you to the player you are chasing, replace the PC ID by the character name. |
/GM fieldreturn [map index] |
-> This will return all the players of the map id you've entered to it's return location. |
/GM siegereset |
-> This will reset all the settings of the siege battle. |
/GM siegestop |
-> This command will stop the siege battle instantly. |
/GM siegestart [time] |
-> This command will start the siege battle in the amount of seconds you've entered. |
/GM siegeend [time] |
-> This command will stop the siege battle in the amount of seconds you've entered. |
/GM guildwarstart [time] |
-> This command will start the Undo Stadiums pvp system, the time is in seconds. |
/GM guildwarend [time] |
-> This command will stop the Undo Stadiums pvp system, the time is in seconds. |
/GM call [PC ID] |
-> This will teleport the player to you, replace PC ID with the character name. |
/GM guildheal [pc name] |
-> This will heal whole the guild of the player you've entered, replace the pc name with any character in the guild you want to heal. |
/GM guildreturn [pc name] |
-> This will return the whole guild of the player you've entered, replace the pc name with any character in the guild you want to heal. |
/GM fieldheal [map index] |
-> This will heal all the players within the map you've entered, replace the map index with the map id. |
1.2[DEV/DEKARON COMMANDS]
-- Write these commands in your normal chatbox --
/DEV OPENCONSOLE
-> Once you executed this command press Cntrl + Shift and the console will open
Commands in console:
dropitem [ID] [0-4] [DIVINE] |
-> 0-4 are the slots, if you don't want devine just write nothing |
dropmoney [AMOUNT]
-> Enter the amount of money you want, NOTE: You cannot pick up more then 999,999,999.
levelup [AMOUNT]
-> Enter the amount of levels you want, NOTE: The max level cap cannot be passed.
adv_levelup [AMOUNT]
-> Enter the amount of adventure points you want.
callmonster
-> Will call a signle monster, replace INDEX with the mob-ID.
callmonsters [INDEX]
-> Will call more then one monster, replace INDEX with the mob-ID.
2. Server Sided Administration
2.1[SERVER PROTECTION]Anti GMHack V2 + Autoban written by Zombe
How to install:
1: Open up your query analyser.
2: Paste this query, but don't execute yet.
Code:
USE master
CREATE DATABASE ban_info ON PRIMARY
(
NAME = baninfodata,
FILENAME = 'C:\DATABASES\baninfodata.mdf',
SIZE = 20MB,
MAXSIZE = UNLIMITED
)
LOG ON
(
NAME = baninfolog,
FILENAME = 'C:\DATABASES\baninfolog.ldf',
SIZE = 5MB,
MAXSIZE = UNLIMITED
)
GO
CREATE TABLE ban_info.dbo.ban_log
(
IP varchar(50) NOT NULL,
ip2long varchar(50),
Reason varchar(50),
ReasonInfo varchar(50),
DateBanned varchar(50),
Action_taken varchar(50),
PRIMARY KEY (IP)
)
GO
USE ban_info;
GO
/*
Name: Anti-GM-Hack
Version: V2.1
Description
1: Deletes all GM characters not stated in this procedure.
2: Automaticly bans their accounts and IPs.
3: Logs each ban.
3: Find the place in the query where it says:
AND character_name <> '[GM]Zombe'
AND character_name <> '[GM]YourName'
AND character_name <> '[GM]Etcetera'
Replace the names with the GM names you want to be excluded from banning.
If you would like, you can add more names, or delete. Just add another line under these, like
AND character_name <> 'GM's name'
4: Scroll up to the top of the script, find the place where it says:
FILENAME = 'C:\DATABASES\baninfodata.mdf'
and
FILENAME = 'C:\DATABASES\baninfolog.ldf'
Replace the directory (C:\DATABASES\) to where you keep your database files (sergcool uses C:\ but I think that's stupid.). Make sure the directory exists!
5: Once you have done that, run the query.
6: Turn on the SQL Server Agent from the SQL service manager.
7: Go to the Enterprise Manager,
go Management --> SQL Server Agent --> Jobs.
8: Create a new job, name it for example AntiGmHackV2.
9: Go to steps, press NEW, name it lets say "Execute stored procedure", select database ban_info, and at command write:
Code:
exec AntiGmHack;
Press OK.
10: Create new step, name it lets say "Wait", set database to ban_info (though its not 100% necessary), write the command:
Code:
WAITFOR DELAY '000:00:02';
Go advanced, set both on success and on failure actions to:
Goto step [1] Execute Stored Procedure
We want the on failure to that too, so that if the job accidentally lags for a bit, it still keeps running.
11: Open step 1 again, go advanced, set both on success and on failure actions to:
Goto step [2] Wait
12: Press OK in the job, click YES when it asks you.
13: If you have AntiGmHack V1 by silkbotter running, stop that job.
14: Rightclick the job, click start job, then START.
AntiGmHack V2 is running!
To edit the GMs list (If lets say a new GM joins):
1: Go to Databases --> ban_info --> Stored Procedures --> Doubleclick AntiGmHack
2:
Find
AND character_name <> 'Your 1st gm'
AND character_name <> 'Your 2nd GM'
etc
And delete 1 line, or add 1 line, according to your GM's name.
3: Press OK.
Your GM list is modified.
1: Open up your query analyser.
2: Paste this query, but don't execute yet.
Code:
USE master
CREATE DATABASE ban_info ON PRIMARY
(
NAME = baninfodata,
FILENAME = 'C:\DATABASES\baninfodata.mdf',
SIZE = 20MB,
MAXSIZE = UNLIMITED
)
LOG ON
(
NAME = baninfolog,
FILENAME = 'C:\DATABASES\baninfolog.ldf',
SIZE = 5MB,
MAXSIZE = UNLIMITED
)
GO
CREATE TABLE ban_info.dbo.ban_log
(
IP varchar(50) NOT NULL,
ip2long varchar(50),
Reason varchar(50),
ReasonInfo varchar(50),
DateBanned varchar(50),
Action_taken varchar(50),
PRIMARY KEY (IP)
)
GO
USE ban_info;
GO
/*
Name: Anti-GM-Hack
Version: V2.1
Description
1: Deletes all GM characters not stated in this procedure.
2: Automaticly bans their accounts and IPs.
3: Logs each ban.
Code:
USE master CREATE DATABASE ban_info ON PRIMARY ( NAME = baninfodata, FILENAME = 'C:\DATABASES\baninfodata.mdf', SIZE = 20MB, MAXSIZE = UNLIMITED ) LOG ON ( NAME = baninfolog, FILENAME = 'C:\DATABASES\baninfolog.ldf', SIZE = 5MB, MAXSIZE = UNLIMITED ) GO CREATE TABLE ban_info.dbo.ban_log ( IP varchar(50) NOT NULL, ip2long varchar(50), Reason varchar(50), ReasonInfo varchar(50), DateBanned varchar(50), Action_taken varchar(50), PRIMARY KEY (IP) ) GO USE ban_info; GO /* Name: Anti-GM-Hack Version: V2.1 Description 1: Deletes all GM characters not stated in this procedure. 2: Automaticly bans their accounts and IPs. 3: Logs each ban. Author: Zombe */ CREATE PROCEDURE AntiGmHack AS DECLARE @user_ip_addr varbinary(4); DECLARE @DecimalIP varchar(20); DECLARE @character_name varchar(40); DECLARE @user_no varchar(50); DECLARE @user_id varchar(50); DECLARE @reason varchar(50); SELECT @character_name = character_name, @user_ip_addr = user_ip_addr, @user_no = user_no FROM character.dbo.user_character WHERE character_name LIKE '_DEV_%' AND user_no <> '19999999999991' OR character_name LIKE '_DEKARON_%' OR character_name LIKE '_GM_%' AND character_name <> '[GM]Zombe' AND character_name <> '[GM]YourName' AND character_name <> '[GM]Etcetera' ; if (@character_name IS NOT NULL) BEGIN SET @DecimalIP = (Cast(Cast(SubString(@user_ip_addr, 1, 1) AS Int) As Varchar(3)) + '.' + Cast(Cast(SubString(@user_ip_addr, 2, 1) AS Int) As Varchar(3)) + '.' + Cast(Cast(SubString(@user_ip_addr, 3, 1) AS Int) As Varchar(3)) + '.' + Cast(Cast(SubString(@user_ip_addr, 4, 1) AS Int) As Varchar(3))); DELETE FROM character.dbo.user_character WHERE character_name = @character_name; SELECT @user_id = user_id FROM account.dbo.Tbl_user WHERE user_no = @user_no; SET @reason = 'Acc: ' + @user_id + ' for creating a character' + @character_name; INSERT INTO ban_info.dbo.ban_log ( IP, ip2long, Reason, ReasonInfo, DateBanned, Action_taken ) VALUES ( @DecimalIP, 'Auto-Ban', 'GM hack', @reason, GetDate(), 'Banned IP and account, deleted hacked character' ); INSERT INTO account.dbo.C_IP_BAN ( start_ip, end_ip, ipt_time ) VALUES ( @user_ip_addr, @user_ip_addr, GetDate() ); UPDATE account.dbo.USER_PROFILE SET login_tag = 'N' WHERE user_no = @user_no OR user_ip_addr = @user_ip_addr ; END;
AND character_name <> '[GM]Zombe'
AND character_name <> '[GM]YourName'
AND character_name <> '[GM]Etcetera'
Replace the names with the GM names you want to be excluded from banning.
If you would like, you can add more names, or delete. Just add another line under these, like
AND character_name <> 'GM's name'
4: Scroll up to the top of the script, find the place where it says:
FILENAME = 'C:\DATABASES\baninfodata.mdf'
and
FILENAME = 'C:\DATABASES\baninfolog.ldf'
Replace the directory (C:\DATABASES\) to where you keep your database files (sergcool uses C:\ but I think that's stupid.). Make sure the directory exists!
5: Once you have done that, run the query.
6: Turn on the SQL Server Agent from the SQL service manager.
7: Go to the Enterprise Manager,
go Management --> SQL Server Agent --> Jobs.
8: Create a new job, name it for example AntiGmHackV2.
9: Go to steps, press NEW, name it lets say "Execute stored procedure", select database ban_info, and at command write:
Code:
exec AntiGmHack;
Press OK.
10: Create new step, name it lets say "Wait", set database to ban_info (though its not 100% necessary), write the command:
Code:
WAITFOR DELAY '000:00:02';
Go advanced, set both on success and on failure actions to:
Goto step [1] Execute Stored Procedure
We want the on failure to that too, so that if the job accidentally lags for a bit, it still keeps running.
11: Open step 1 again, go advanced, set both on success and on failure actions to:
Goto step [2] Wait
12: Press OK in the job, click YES when it asks you.
13: If you have AntiGmHack V1 by silkbotter running, stop that job.
14: Rightclick the job, click start job, then START.
AntiGmHack V2 is running!
To edit the GMs list (If lets say a new GM joins):
1: Go to Databases --> ban_info --> Stored Procedures --> Doubleclick AntiGmHack
2:
Find
AND character_name <> 'Your 1st gm'
AND character_name <> 'Your 2nd GM'
etc
And delete 1 line, or add 1 line, according to your GM's name.
3: Press OK.
Your GM list is modified.
MSSQL cleaning script written by Zombe
/* -----{Zombe's database cleaning script}----- */
use account;
DELETE FROM C_IP_BAN;
DELETE FROM C_IP_PERMIT;
DELETE FROM C_IP_PWD;
DELETE FROM C_LOGINIPBLOCK_LOG;
DELETE FROM C_SEQUENCE;
DELETE FROM CP_USER_PROFILE;
DELETE FROM MB_USR_IP;
DELETE FROM MB_USR_PUN;
DELETE FROM Tbl_user;
DELETE FROM USER_CONNLOG_KEY;
DELETE FROM USER_PROFILE;
GO
use billing;
DELETE FROM bl_error_log;
DELETE FROM c_sequence;
DELETE FROM dba_online_daily;
DELETE FROM dba_online_daily_notok;
DELETE FROM Tbl_KeepId;
DELETE FROM user_account;
DELETE FROM user_account;
DELETE FROM user_charge_log;
DELETE FROM user_everyday_use_info;
DELETE FROM user_give_log;
DELETE FROM user_use_log;
DELETE FROM user_use_log_bk;
GO
use cash;
DELETE FROM bl_error_log;
DELETE FROM Tbl_Cash_zj;
DELETE FROM user_cash;
DELETE FROM user_charge_log;
DELETE FROM user_use_log;
GO
use character;
DELETE FROM C_EVENT_ITEM_OP
DELETE FROM c_restword;
DELETE FROM char_connlog;
DELETE FROM CHAR_CONNLOG_KEY;
DELETE FROM DEL_USER_CHAR_LIST;
DELETE FROM DEL_USER_CHAR_LIST_SECEDE;
DELETE FROM GM_ITEM_MST;
DELETE FROM GUILD_CHAR_INFO;
DELETE FROM GUILD_INFO
WHERE guild_code NOT LIKE 'MASTERCODE';
DELETE FROM GUILD_INFO_SECEDE;
DELETE FROM GUILD_PEERAGE
WHERE guild_code NOT LIKE 'MASTERCODE';
DELETE FROM MSSNGR_CHAR_LIST;
DELETE FROM SIEGE_INFO;
DELETE FROM SIEGE_RESULT_LOG;
DELETE FROM user_bag
WHERE character_no NOT LIKE 'DEKARON_000001';
DELETE FROM user_bag_copy;
DELETE FROM user_bag_secede;
DELETE FROM user_character
WHERE character_no NOT LIKE 'DEKARON_000001';
DELETE FROM user_character_secede;
DELETE FROM USER_POSTBOX;
DELETE FROM USER_POSTBOX_SECEDE;
DELETE FROM User_Quest_Doing;
DELETE FROM user_quest_doing_secede;
DELETE FROM User_Quest_Done;
DELETE FROM user_quest_done_secede;
DELETE FROM user_skill
WHERE character_no NOT LIKE 'DEKARON_000001';
DELETE FROM user_skill_secede
DELETE FROM user_slot
WHERE character_no NOT LIKE 'DEKARON_000001';
DELETE FROM user_storage;
DELETE FROM user_storage_copy;
DELETE FROM USER_STORE;
DELETE FROM USER_STORE_copy;
DELETE FROM USER_STORE_SECEDE;
DELETE FROM user_suit
WHERE character_no NOT LIKE 'DEKARON_000001';
DELETE FROM user_suit_copy;
DELETE FROM user_suit_secede;
GO
use account;
DELETE FROM C_IP_BAN;
DELETE FROM C_IP_PERMIT;
DELETE FROM C_IP_PWD;
DELETE FROM C_LOGINIPBLOCK_LOG;
DELETE FROM C_SEQUENCE;
DELETE FROM CP_USER_PROFILE;
DELETE FROM MB_USR_IP;
DELETE FROM MB_USR_PUN;
DELETE FROM Tbl_user;
DELETE FROM USER_CONNLOG_KEY;
DELETE FROM USER_PROFILE;
GO
use billing;
DELETE FROM bl_error_log;
DELETE FROM c_sequence;
DELETE FROM dba_online_daily;
DELETE FROM dba_online_daily_notok;
DELETE FROM Tbl_KeepId;
DELETE FROM user_account;
DELETE FROM user_account;
DELETE FROM user_charge_log;
DELETE FROM user_everyday_use_info;
DELETE FROM user_give_log;
DELETE FROM user_use_log;
DELETE FROM user_use_log_bk;
GO
use cash;
DELETE FROM bl_error_log;
DELETE FROM Tbl_Cash_zj;
DELETE FROM user_cash;
DELETE FROM user_charge_log;
DELETE FROM user_use_log;
GO
use character;
DELETE FROM C_EVENT_ITEM_OP
DELETE FROM c_restword;
DELETE FROM char_connlog;
DELETE FROM CHAR_CONNLOG_KEY;
DELETE FROM DEL_USER_CHAR_LIST;
DELETE FROM DEL_USER_CHAR_LIST_SECEDE;
DELETE FROM GM_ITEM_MST;
DELETE FROM GUILD_CHAR_INFO;
DELETE FROM GUILD_INFO
WHERE guild_code NOT LIKE 'MASTERCODE';
DELETE FROM GUILD_INFO_SECEDE;
DELETE FROM GUILD_PEERAGE
WHERE guild_code NOT LIKE 'MASTERCODE';
DELETE FROM MSSNGR_CHAR_LIST;
DELETE FROM SIEGE_INFO;
DELETE FROM SIEGE_RESULT_LOG;
DELETE FROM user_bag
WHERE character_no NOT LIKE 'DEKARON_000001';
DELETE FROM user_bag_copy;
DELETE FROM user_bag_secede;
DELETE FROM user_character
WHERE character_no NOT LIKE 'DEKARON_000001';
DELETE FROM user_character_secede;
DELETE FROM USER_POSTBOX;
DELETE FROM USER_POSTBOX_SECEDE;
DELETE FROM User_Quest_Doing;
DELETE FROM user_quest_doing_secede;
DELETE FROM User_Quest_Done;
DELETE FROM user_quest_done_secede;
DELETE FROM user_skill
WHERE character_no NOT LIKE 'DEKARON_000001';
DELETE FROM user_skill_secede
DELETE FROM user_slot
WHERE character_no NOT LIKE 'DEKARON_000001';
DELETE FROM user_storage;
DELETE FROM user_storage_copy;
DELETE FROM USER_STORE;
DELETE FROM USER_STORE_copy;
DELETE FROM USER_STORE_SECEDE;
DELETE FROM user_suit
WHERE character_no NOT LIKE 'DEKARON_000001';
DELETE FROM user_suit_copy;
DELETE FROM user_suit_secede;
GO
3. Administration Tools
3.1[CSVed]This is a very easy program to use if you are CSV editing!
Download
Download
Download
Download
26/02/2010 - GM Description + table
27/02/2010 - Spoiler + Server protection