Ç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

Kral Komutları


Private serverler için geçerli kral komutları alttadır. Çoğu private serverde para gönderme komutunda bug vardır. Bu komut kullanıldığında server kapanmaktadır. Bu nedenle prize komutunu kullanmamanız önerimizdir. Komutlar kalın yazı olanlardır.
/RoyalOrder (Mesaj) ———————- Kral Yukardan Yazı Geçirir
/prize (Char Adı) (Para Miktarı) ———— Belirtilen kişiye belirtilen miktarda para yollar
/ExperiencePoint (10% , 20% , 30%) —— Exp Event Başlatır
/DropRate  (1-2-3) ———————— Drop Event Başlatır
/rain (1-100) —————————– Yağmur Yağdırır (Kraliyet Bütcesinden 100k gider)
/snow (1-100) ————————— Kar Yağdırır (Kraliyet Bütcesinden 100k gider)
/clear (1-100) ————————— Havayı Temizler (Kraliyet Bütcesinden 100k gider)

Server’da İtemin Tradesini Engellemek


Private serveriniz var en büyük derdiniz dupe item. Özellikle özel para ile satış yaptığınız itemlerin dupelenmesi. Bunda kurtulmanın en kolay yolu alttaki tradeyi engellemek bunun için yapmanız gerek alttaki kodu QA ya girmek ve onaylamak. Belt Of Curse yazan kısma tradesini engellemek istediğiniz itemin numarasını değil sadece adını yazmanız gerekmektedir. Bu komutu uyguladığınız item oyuncu tarafından trade edilemez, tezgaha konulamaz yerinden çıkarılırsa tekrar yerine kendisi tarafından takılamaz.
UPDATE ITEM SET Race = 20 WHERE strName LIKE ‘%Belt Of Curse%’

APP Server


Private Server için kullandığınız VPS yada Dedicated Serverde panel kullanmadan 1 adet siteyi host edebilir bu alana KoPanel kurabilirsiniz. Tek yapmanız gereken AppServer dosyasını indirmek ve kurmak. Kurulum bittiğinde C: ye APPServ isimki klasör açar. KoPanel yada site dosyalarınızı bu klasör içindeki www klasörünün içine yüklemeniz yeterlidir.  www klasörü içindeki tüm dosyaları silebilirsiniz. AppServerin çalışıp çalışmadığını private serverinizi IP adresini yazarak kontrol edebilirsiniz. IP adresine domaininiz yönlendirmeniz durumunda sitenizde sorunsuz çalışacaktır.
AppServ 2.6.0

  • Apache 2.2.8
  • PHP 6.0.0-dev
  • MySQL 6.0.4-alpha
  • phpMyAdmin-2.10.3

AppServer indir