Çoklu Server Listesi


Öncelikle Gerekli Malzemeler ;
2 Adet Server(Tercihen 3 Adet)
1 Adet Veritabanı Sunucusu (SQL 2005+ Daha Mantıklı)
1 Adet Not Defteri
Öncelikle Yeni Bir Veritabanı Açın Adınıda KO_MAIN Koyun.
KO_MAIN Veritabanımıza Gerekli Tablo ve Procedureleri Yükleyelim.(Import)
Ekliyeceğimiz Tablolar ;
* TB_USER
* CONCURRENT
* CURRRENTUSER
* VERSION
Ekliyeceğimiz Procedureler ;
* AUJARD İLK Oyuna Girerken ID Pass Yazdığımızda Çağrılan LOGIN Proceduresi (MYST_LOGIN,ACCOUNT_LOGIA vb.)
* CLEAR_REMAIN_USERS
* LOAD_PREMIUM_SERVICE_USER
* UPDATE_PREMIUM_USER
* ACCOUNT_LOGOUT
* PROC_INSERT_CURRENTUSER
* PROC_UPDATE_CURRENTUSER
Sonra kn_online Veritabanımızı Açıyoruz KO_MAIN Veritabanımıza Eklediğimiz Tablo ve Procedureleri kn_online Veritabanından Siliyoruz…
Sileceğimiz Tablolar ;
* TB_USER
* CONCURRENT
* CURRRENTUSER
* VERSION
Sileceğimiz Procedureler ;
* AUJARD İLK Oyuna Girerken ID Pass Yazdığımızda Çağrılan LOGIN Proceduresi (MYST_LOGIN,ACCOUNT_LOGIA vb.)
* CLEAR_REMAIN_USERS
* LOAD_PREMIUM_SERVICE_USER
* UPDATE_PREMIUM_USER
* ACCOUNT_LOGOUT
* PROC_INSERT_CURRENTUSER
* PROC_UPDATE_CURRENTUSER
Silme İşlemimiz Tamamlandı ise Şimdi kn_online Veritabanımızı Backup Ediyoruz ve Hemen Backup Bitmesi Arından kn_online Veritabanını Siliyoruz,
Yedek Aldığımız kn_online Veritabanını Restore Ediyoruz fakat Restore Ederken kn_online Değilde KO_S1 Adıyla Veritabanını Restore Edelim.
Şuanda Veritabanları İle İlgili İşlemlerimiz Bitmiştir,
Şimdi ODBC mize Girelim..!
AccountDB Adında Bir DSNimiz Var, Bunu Açıyoruz ve Veritabanı Olarak KO_MAIN Veritabanını Belirtiyoruz, Diğer DSNleri ise KO_S1 Veritabanını Gösteriyoruz…
İlk Serverımızdaki INI Dosyaları Şu Şekilde Oluyor (KO_S1) ;
Kod:
Login Server ;
[DOWNLOAD]
URL=ftp.knightonlineturkiye.web.tr
PATH=pub/upgrade
[ODBC]
DSN=AccountDB
UID=knightonline
PWD=123456
TABLE=VERSION
[CONFIGURATION]
DEFAULT_PATH=D:\KOServer\LoginServer\
[SERVER_LIST]
COUNT=2
SERVER_00=84.51.21.10
NAME_00=ARES
SERVER_01=84.51.21.11
NAME_01=DIEZ
AIServer ;
[ODBC]
GAME_DSN=kn_online
GAME_UID=knightonline
GAME_PWD=123456
[server]
ZONE=1
PARTYEXP=0
GROUP=0
Game Server(Ebenezer) ;
[TIMER]
YEAR=2008
MONTH=10
DATE=21
HOUR=4
WEATHER=1
[LOGIN SERVER]
IP=84.51.21.10
[CASTLE]
NATION=1
[ZONE_INFO]
MY_INFO=1
SERVER_COUNT=1
SERVER_00=1
SERVER_IP_00=84.51.21.10
MAX_USER=2000
SERVER_NUM=0
[BATTLE]
WEEK=6
START_TIME=20
END_TIME=0
AUTO=0
WEEK2=6
MWEEK=5
LIMITBATTLE=200
[AI_SERVER]
IP=84.51.21.10
[DB_SERVER]
IP=84.51.21.10
[ODBC]
GAME_DSN=kn_online
GAME_UID=knightonline
GAME_PWD=123456
ACCOUNT_DSN=AccountDB
ACCOUNT_UID=knightonline
ACCOUNT_PWD=123456
[VERSION]
VER=1300
[SG_INFO]
GMY_INFO=1
GSERVER_COUNT=1
GSERVER_00=1
GSERVER_IP_00=84.51.21.10
SERVER_INDEX=1
[NATION]
NATION_ID=1
[FREE_ZONE]
MAX_USER=200
[EVENT]
EVENT_NUMBER=0
[MATURE_SETTING]
PK_PERMIT=0
[MONSTER_CHALLENGE]
ACTIVATE=1
LEVEL=1
[BONUS_EVENT]
MONEY=0
EXP=0
Aujard ;
[ODBC]
ACCOUNT_DSN=AccountDB
ACCOUNT_UID=knightonline
ACCOUNT_PWD=123456
LOG_DSN=AccountDB
LOG_UID=knightonline
LOG_PWD=123456
GAME_DSN=AccountDB
GAME_UID=knightonline
GAME_PWD=123456
[ZONE_INFO]
GROUP_INFO=1
ZONE_INFO=1
[SESSION]
IP1=84.51.21.10
IP2=84.51.21.10
[BILLING]
IP=84.51.21.10
PORT=15100
NUM=1
[PREMIUM_ITEM]
ITEM_NUM1=802134909
ITEM_NUM2=802134903
Ayarlarımızı Yaptıktan Sonra Sunucu Dosyalarını Çalıştırabiliriz…
Arından SQL Serverımızı Tekrar Açıyoruz ve KO_S1 Veritabanımızı Backup Edelim Sonra Tekrar Restore Edelim Restore Ederken KO_S2 Adında Restore Edelim.
2. Sunucumuzda ımıza Geçip Oradaki ODBC leri 1 Serverımıza Bağlandırıyoruz IP AccountDB 84.51.21.10(SQL Server) IP li Sunucuya Bakacak ve KO_MAIN Veritabanına Bakacak, Diğer DSN ler ise KO_S2 Veritabanına Bakacak.
2. Sunucuda Kullanacağınız Server Dosyaları Sadece AIServer, GameServer ve Aujard’dır.
Kod:
AIServer ;
[ODBC]
GAME_DSN=kn_online
GAME_UID=knightonline
GAME_PWD=123456
[server]
ZONE=1
PARTYEXP=0
GROUP=0
Game Server(Ebenezer) ;
[TIMER]
YEAR=2008
MONTH=10
DATE=21
HOUR=4
WEATHER=1
[LOGIN SERVER]
IP=84.51.21.11
[CASTLE]
NATION=1
[ZONE_INFO]
MY_INFO=1
SERVER_COUNT=1
SERVER_00=1
SERVER_IP_00=84.51.21.11
MAX_USER=2000
SERVER_NUM=0
[BATTLE]
WEEK=6
START_TIME=20
END_TIME=0
AUTO=0
WEEK2=6
MWEEK=5
LIMITBATTLE=200
[AI_SERVER]
IP=84.51.21.11
[DB_SERVER]
IP=84.51.21.10
[ODBC]
GAME_DSN=kn_online
GAME_UID=knightonline
GAME_PWD=123456
ACCOUNT_DSN=AccountDB
ACCOUNT_UID=knightonline
ACCOUNT_PWD=123456
[VERSION]
VER=1300
[SG_INFO]
GMY_INFO=1
GSERVER_COUNT=1
GSERVER_00=1
GSERVER_IP_00=84.51.21.11
SERVER_INDEX=1
[NATION]
NATION_ID=1
[FREE_ZONE]
MAX_USER=200
[EVENT]
EVENT_NUMBER=0
[MATURE_SETTING]
PK_PERMIT=0
[MONSTER_CHALLENGE]
ACTIVATE=1
LEVEL=1
[BONUS_EVENT]
MONEY=0
EXP=0
Aujard ;
[ODBC]
ACCOUNT_DSN=AccountDB
ACCOUNT_UID=knightonline
ACCOUNT_PWD=123456
LOG_DSN=AccountDB
LOG_UID=knightonline
LOG_PWD=123456
GAME_DSN=kn_online
GAME_UID=knightonline
GAME_PWD=123456
[ZONE_INFO]
GROUP_INFO=1
ZONE_INFO=1
[SESSION]
IP1=84.51.21.10
IP2=84.51.21.10
[BILLING]
IP=84.51.21.10
PORT=15100
NUM=1
[PREMIUM_ITEM]
ITEM_NUM1=802134909
ITEM_NUM2=802134903
Burada Dikkat Etmeniz Gereken Tek Şey 2. Sunucu daki ODBC Ayarlarını 1. Sunucudaki IP ye Baktırmanız SQL Serverda Ona Bir User(Kullanıcı Açmanız ve Girmeniz) Tamamiyle Olay Bu Kadardır.

Yazar: AKUMA

Ebenezer Bug Gidermek İçin Firewall


Bilindiği gibi ebenezer programındaki bugdan dolayı bazı programlar ile yapılan küçük bir işlem ile ebenezer kapatılabilmekte yani serveriniz kapanmakta. Bu saldırı programlarından bir tanesi olan ServerKiller dir. Bu programa karşı ko-cuce üyelerinden bir tanesi (nickini hatırlayamadığım için yazamıyorum eğer belirtirse üyelik adını eklerim) tarafından bu server killer programına karşı firewall yazılımı yapılmıştır. Bu firewall ile ebenezerinize yapılan saldırıların hangi IP ten geldiğini görebilmektesiniz.  Bu program yapımcısının verdiği bilgiye göre  ile sadece server killer ile yapılan saldırılar engellenmektedir.  Bir nevide osla ebenezer bug giderilmiş olmakta.
Programı kullanmadan önce mutlaka taratınız!…
Ebenzer Bug Gidermek İçin Firewall İndir

Ebenezer Komut Gönderici (Version: 1.0.0.0)


Programın amacı ?Belirlediğiniz gün ve saatlerde belirlediğiniz yazıları gameserverin text kısmına göndermesi.

Diğer programlardan farkı ?Yaptığı her hareketi log tutuyor olması,
Zamanı en belirgin şekilde ayarlanabilir olması (saniye),
Sadece ezber yazıları değil SQL [veritabanınız] dan çektiği güncel verileride yazabiliyor olması,
Programı görev çubuğuna indirdiğinizde kendisini otamatik Systraya ( saatin yanına ) atacaktır,
Kullanım kolaylığı.

Programda veritabanından çektiğiniz verilerin geri dönüşümündeki column nameleri WRC1,WRC2,WRC3 olmalıdır. Örneğin serverdaki 1. clanın bilgileri yazdırmak istiyorsak;

SQL Komutu ;

SELECT wrc1=strElmoKnightsName,wrc2=strElmoUserID FROM USER_KNIGHTS_RANK WHERE shIndex=1

Ebenezer Komutu ;

Humanların en iyi clanı : (%1) , Kurucusu : (%2)

Bu eklediğiniz komutun çıktısı şu şekilde olucaktır;

Humanların en iyi clanı : ClanIsmi , Kurucusu : KullaniciAdi

Bunun gibi bir sürü yenilikler bulup kendi hayal gücünüzle hareket edebilirsiniz. Ben sadece küçük bir örnek verdim. ( Mesala serverdaki online sayısınıda yazdırtabilirsiniz vs. vs. )

Resimler :
(Komutun gönderilmesine 5 Dakikadan az zaman kaldığında rengini değiştiriyor.)

[Wrc-Team] Ebenezer Komut Gönderici (Version: 1.0.0.0)

[Wrc-Team] Ebenezer Komut Gönderici (Version: 1.0.0.0)