BAZI SORUNLAR OLABİLİR ONU'DA SİZ HALLEDİN SADECE WİNDOWS DA ÇALIŞABİLİR HALE GETİRİL'Dİ Aİ SAYESİN'DE Metin2_Client Klasörüne Gir ordan Local_Server Klasörüne Gir / Launcher.exe Çalıştır / Açılan Pencere'de Server'i Başlat'de Metin2Distributer.exe'den oyuna gir bu kadar
MARİADB PORTABLE OLARAK EKLİ AYRİYETTEN YÜKLEMEYE GEREK YOK
MYSQL İD ŞİFRE MERAK EDİYORSANIZ ZATEN LOCAL_SERVER KLASÖRÜNÜN İÇİNİ İNCELERSENİZ BULURSUNUZ YİNE BIRAKIYIM
VS2022 v143 CLİENT ve DB/GAME BUİLD ALABİLİRSİNİZ
RAM VS KULLANIMI 1363MB OLARAK AMA YAPACAĞINIZ İŞLEME GÖRE 4 E KADAR ÇIKABİLİR VEYA OYUNCU SAYISINA GÖRE
DUMP PROTO :
QUEST DERLEME :
(locale_server\server\share\locale\turkey\quest)
İNDİRME LİNKİ :
Server'dan Görütü
Launcher.exe Görüntüsü
VİRÜSTOTAL BOYU 2GB OLDUĞU İÇİN BÖYLE TARADIM
METIN2 LOCAL SERVER - CALISMA MANTIGI TASLAGI
================================================
1. GENEL MIMARI
----------------
Sistem tek bir klasor altinda calisan yerel Metin2 sunucusudur:
locale_server\
launcher.json -> Baslatma ayarlari
Launcher.exe -> Sunucu yoneticisi
mariadb\ -> Veritabani servisi ve veritabani dosyalari
server\
db\ -> DB server
auth\ -> Login/Auth server
channel1\core1\ -> Oyun kanali
game99\core1\ -> Diger oyun kanali/kanal yapisi
share\ -> Ortak oyun verileri, locale, quest ve map dosyalari
Oyuncu istemcisi bu servislerle localhost uzerinden haberlesir.
MariaDB yalnizca yerel makinede 127.0.0.1:3306 adresinden dinler.
2. Launcher.exe NE YAPAR?
-------------------------
Launcher.exe konsol pencerelerini gostermeden sunucu servislerini sirayla
baslatir, calisip calismadiklarini izler ve kapatma sirasinda baslattigi
process'leri durdurur.
Baslatma sirasi:
1) MariaDB / mysqld.exe
2) MariaDB'nin 127.0.0.1:3306 portunda hazir olmasi beklenir
3) DB server / db.exe
4) Auth server / game.exe
5) Channel 1 Core 1 / game.exe
DB server, MariaDB basladiktan sonra 5 saniye gecikmeyle baslatilir.
Channel 1 Core 1, Auth server'dan 2 saniye sonra baslatilir.
Launcher servisleri gizli process olarak actigi icin siyah konsol pencereleri
gorunmez. Launcher arayuzu baslatma durumlarini ve log mesajlarini gosterir.
3. launcher.json DOSYASI
------------------------
Launcher koduna dokunmadan executable, klasor ve arguman degistirmek icin
launcher.json kullanilir.
Database bolumu:
Executable -> mysqld.exe yolu
WorkingDirectory -> MariaDB bin klasoru
Arguments -> my.ini, basedir ve datadir parametreleri
Host -> MariaDB adresi
Port -> MariaDB portu
ReadyTimeout -> Veritabani hazir olana kadar beklenecek maksimum sure
Processes bolumu:
Name -> Launcher ekraninda gorunen servis adi
Executable -> Calistirilacak exe
WorkingDirectory -> Exe'nin calisma klasoru
Arguments -> Exe'ye gonderilecek parametreler
StartDelay -> Onceki servisten sonra beklenecek sure
CheckRunning -> Process'in calisip calismadiginin izlenmesi
{ROOT} ifadesi, launcher.json dosyasinin bulundugu locale_server klasorunu
temsil eder. Boylece ayarlarda sabit bilgisayar yolu yazmak gerekmez.
4. BASLATMA AKISI
------------------
Kullanici:
Launcher.exe -> Baslat
Launcher:
MariaDB'yi baslatir
|
+-- 3306 portunu kontrol eder
|
+-- DB server'i baslatir
|
+-- Auth server'i baslatir
|
+-- Channel 1 Core 1'i baslatir
|
+-- "Localhost sunucusu baslatildi" durumunu gosterir
Oyuncu istemcisi:
Login istegi -> Auth server
Karakter/veri islemleri -> DB server ve MariaDB
Oyun haritasi, canavar, item ve drop islemleri -> Channel game.exe
5. KAPATMA AKISI
-----------------
Kullanici Launcher icinden durdurma yaptiginda:
1) Aktif oyun process'leri kapatilir
2) DB server kapatilir
3) MariaDB kapatilir
4) Launcher log dosyasina kapatma bilgisi yazilir
Launcher tarafindan baslatilmayan veya disaridan calisan process'ler
yanlislikla kapatilmaz; yonetim Launcher'in baslattigi process listesi
uzerinden yapilir.
6. VERITABANI VE DOSYA GOREVLERI
---------------------------------
mariadb\mariadb-11.4.8-winx64\bin\mysqld.exe
MariaDB motoru.
mariadb\data\
MariaDB'nin fiziksel verileri, loglari ve tablolari.
server\db\db.exe
Oyun server'lari ile veritabani arasindaki DB katmani.
server\auth\game.exe
Login, hesap dogrulama ve auth islemleri.
server\channel1\core1\game.exe
Oyuncularin baglandigi aktif oyun kanali.
Harita, canavar, item, drop ve oyun ici islemleri burada calisir.
server\share\
Ortak locale, quest, map, canavar ve oyun veri dosyalari.
7. DROP ORANI MANTIGI
---------------------
Canavar kesildiginde item dusurme karari game.exe icindeki item yonetimi
tarafindan verilir.
Genel oran ayari:
Game_Source\Server\game\src\item_manager.cpp
MOB_ITEM_DROP_RATE_SCALE degeri:
100 -> Normal oran
50 -> Mevcut oranin yuzde 50'si
30 -> Mevcut oranin yuzde 30'u
Bu kaynak degistirildikten sonra game.exe yeniden derlenir ve aktif channel
klasorundeki game.exe dosyasi guncellenir. Degisikligin etkili olmasi icin
ilgili game server yeniden baslatilmalidir.
8. DOSYA DEGISTIRME KURALI
---------------------------
Launcher ayari:
Sadece launcher.json degistirilir.
Server kaynak kodu:
Kaynak degistirilir, game.exe yeniden build edilir, ilgili channel
klasorune kopyalanir ve oyun server yeniden baslatilir.
MariaDB ayari:
my.ini degistirilir. MariaDB yeniden baslatilmadan ayar etkili olmaz.
Oyun verileri:
server\share\ ve ilgili locale/quest dosyalari kullanilir. Degisiklige
gore DB veya game server yeniden yuklenebilir.
9. LOG VE HATA KONTROLU
-----------------------
Launcher genel logu:
locale_server\launcher.log
MariaDB hata/log dosyalari:
locale_server\mariadb\data\
DB server loglari:
locale_server\server\db\
Auth ve game server loglari:
locale_server\server\auth\log\
locale_server\server\channel1\core1\log\
locale_server\server\game99\core1\log\
Bir servis baslamiyorsa sirayla su kontrol edilir:
1) launcher.log
2) Ilgili servis klasorundeki hata logu
3) Port cakismasi
4) WorkingDirectory ve exe yolu
5) MariaDB'nin hazir olup olmadigi
10. KISA OZET
-------------
Launcher.exe = Servis yoneticisi
mysqld.exe = Veritabani motoru
db.exe = Oyun-DB koprusu
Auth game.exe= Giris/auth servisi
Channel game.exe = Gercek oyun dunyasi
share = Ortak oyun verileri
Sistemin saglikli acilis sirasi:
MariaDB -> DB -> Auth -> Channel -> Oyuncu istemcisi
Bir degisiklik yapildiginda temel kural:
Kaynagi degistir -> build al -> dogru runtime klasorune kopyala
-> ilgili servisi yeniden baslat -> loglari kontrol et.
MARİADB PORTABLE OLARAK EKLİ AYRİYETTEN YÜKLEMEYE GEREK YOK
MYSQL İD ŞİFRE MERAK EDİYORSANIZ ZATEN LOCAL_SERVER KLASÖRÜNÜN İÇİNİ İNCELERSENİZ BULURSUNUZ YİNE BIRAKIYIM
VS2022 v143 CLİENT ve DB/GAME BUİLD ALABİLİRSİNİZ
RAM VS KULLANIMI 1363MB OLARAK AMA YAPACAĞINIZ İŞLEME GÖRE 4 E KADAR ÇIKABİLİR VEYA OYUNCU SAYISINA GÖRE
DUMP PROTO :
Bağlantı ve içerik kilitli
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
DUMP PROTO VİRÜS TOTAL :Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
Bağlantı ve içerik kilitli
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
QUEST DERLEME :
Bağlantı ve içerik kilitli
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
(locale_server\server\share\locale\turkey\quest)
Bağlantı ve içerik kilitli
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
İNDİRME LİNKİ :
Bağlantı ve içerik kilitli
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
Server'dan Görütü
Bağlantı ve içerik kilitli
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
Launcher.exe Görüntüsü
Bağlantı ve içerik kilitli
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
VİRÜSTOTAL BOYU 2GB OLDUĞU İÇİN BÖYLE TARADIM
Bağlantı ve içerik kilitli
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
Görmek için konunun ilk mesajını beğenin ve konuya bir yorum yazın.Her iki işlem de tamamlanmalı. Ardından sayfayı yenileyin.
METIN2 LOCAL SERVER - CALISMA MANTIGI TASLAGI
================================================
1. GENEL MIMARI
----------------
Sistem tek bir klasor altinda calisan yerel Metin2 sunucusudur:
locale_server\
launcher.json -> Baslatma ayarlari
Launcher.exe -> Sunucu yoneticisi
mariadb\ -> Veritabani servisi ve veritabani dosyalari
server\
db\ -> DB server
auth\ -> Login/Auth server
channel1\core1\ -> Oyun kanali
game99\core1\ -> Diger oyun kanali/kanal yapisi
share\ -> Ortak oyun verileri, locale, quest ve map dosyalari
Oyuncu istemcisi bu servislerle localhost uzerinden haberlesir.
MariaDB yalnizca yerel makinede 127.0.0.1:3306 adresinden dinler.
2. Launcher.exe NE YAPAR?
-------------------------
Launcher.exe konsol pencerelerini gostermeden sunucu servislerini sirayla
baslatir, calisip calismadiklarini izler ve kapatma sirasinda baslattigi
process'leri durdurur.
Baslatma sirasi:
1) MariaDB / mysqld.exe
2) MariaDB'nin 127.0.0.1:3306 portunda hazir olmasi beklenir
3) DB server / db.exe
4) Auth server / game.exe
5) Channel 1 Core 1 / game.exe
DB server, MariaDB basladiktan sonra 5 saniye gecikmeyle baslatilir.
Channel 1 Core 1, Auth server'dan 2 saniye sonra baslatilir.
Launcher servisleri gizli process olarak actigi icin siyah konsol pencereleri
gorunmez. Launcher arayuzu baslatma durumlarini ve log mesajlarini gosterir.
3. launcher.json DOSYASI
------------------------
Launcher koduna dokunmadan executable, klasor ve arguman degistirmek icin
launcher.json kullanilir.
Database bolumu:
Executable -> mysqld.exe yolu
WorkingDirectory -> MariaDB bin klasoru
Arguments -> my.ini, basedir ve datadir parametreleri
Host -> MariaDB adresi
Port -> MariaDB portu
ReadyTimeout -> Veritabani hazir olana kadar beklenecek maksimum sure
Processes bolumu:
Name -> Launcher ekraninda gorunen servis adi
Executable -> Calistirilacak exe
WorkingDirectory -> Exe'nin calisma klasoru
Arguments -> Exe'ye gonderilecek parametreler
StartDelay -> Onceki servisten sonra beklenecek sure
CheckRunning -> Process'in calisip calismadiginin izlenmesi
{ROOT} ifadesi, launcher.json dosyasinin bulundugu locale_server klasorunu
temsil eder. Boylece ayarlarda sabit bilgisayar yolu yazmak gerekmez.
4. BASLATMA AKISI
------------------
Kullanici:
Launcher.exe -> Baslat
Launcher:
MariaDB'yi baslatir
|
+-- 3306 portunu kontrol eder
|
+-- DB server'i baslatir
|
+-- Auth server'i baslatir
|
+-- Channel 1 Core 1'i baslatir
|
+-- "Localhost sunucusu baslatildi" durumunu gosterir
Oyuncu istemcisi:
Login istegi -> Auth server
Karakter/veri islemleri -> DB server ve MariaDB
Oyun haritasi, canavar, item ve drop islemleri -> Channel game.exe
5. KAPATMA AKISI
-----------------
Kullanici Launcher icinden durdurma yaptiginda:
1) Aktif oyun process'leri kapatilir
2) DB server kapatilir
3) MariaDB kapatilir
4) Launcher log dosyasina kapatma bilgisi yazilir
Launcher tarafindan baslatilmayan veya disaridan calisan process'ler
yanlislikla kapatilmaz; yonetim Launcher'in baslattigi process listesi
uzerinden yapilir.
6. VERITABANI VE DOSYA GOREVLERI
---------------------------------
mariadb\mariadb-11.4.8-winx64\bin\mysqld.exe
MariaDB motoru.
mariadb\data\
MariaDB'nin fiziksel verileri, loglari ve tablolari.
server\db\db.exe
Oyun server'lari ile veritabani arasindaki DB katmani.
server\auth\game.exe
Login, hesap dogrulama ve auth islemleri.
server\channel1\core1\game.exe
Oyuncularin baglandigi aktif oyun kanali.
Harita, canavar, item, drop ve oyun ici islemleri burada calisir.
server\share\
Ortak locale, quest, map, canavar ve oyun veri dosyalari.
7. DROP ORANI MANTIGI
---------------------
Canavar kesildiginde item dusurme karari game.exe icindeki item yonetimi
tarafindan verilir.
Genel oran ayari:
Game_Source\Server\game\src\item_manager.cpp
MOB_ITEM_DROP_RATE_SCALE degeri:
100 -> Normal oran
50 -> Mevcut oranin yuzde 50'si
30 -> Mevcut oranin yuzde 30'u
Bu kaynak degistirildikten sonra game.exe yeniden derlenir ve aktif channel
klasorundeki game.exe dosyasi guncellenir. Degisikligin etkili olmasi icin
ilgili game server yeniden baslatilmalidir.
8. DOSYA DEGISTIRME KURALI
---------------------------
Launcher ayari:
Sadece launcher.json degistirilir.
Server kaynak kodu:
Kaynak degistirilir, game.exe yeniden build edilir, ilgili channel
klasorune kopyalanir ve oyun server yeniden baslatilir.
MariaDB ayari:
my.ini degistirilir. MariaDB yeniden baslatilmadan ayar etkili olmaz.
Oyun verileri:
server\share\ ve ilgili locale/quest dosyalari kullanilir. Degisiklige
gore DB veya game server yeniden yuklenebilir.
9. LOG VE HATA KONTROLU
-----------------------
Launcher genel logu:
locale_server\launcher.log
MariaDB hata/log dosyalari:
locale_server\mariadb\data\
DB server loglari:
locale_server\server\db\
Auth ve game server loglari:
locale_server\server\auth\log\
locale_server\server\channel1\core1\log\
locale_server\server\game99\core1\log\
Bir servis baslamiyorsa sirayla su kontrol edilir:
1) launcher.log
2) Ilgili servis klasorundeki hata logu
3) Port cakismasi
4) WorkingDirectory ve exe yolu
5) MariaDB'nin hazir olup olmadigi
10. KISA OZET
-------------
Launcher.exe = Servis yoneticisi
mysqld.exe = Veritabani motoru
db.exe = Oyun-DB koprusu
Auth game.exe= Giris/auth servisi
Channel game.exe = Gercek oyun dunyasi
share = Ortak oyun verileri
Sistemin saglikli acilis sirasi:
MariaDB -> DB -> Auth -> Channel -> Oyuncu istemcisi
Bir degisiklik yapildiginda temel kural:
Kaynagi degistir -> build al -> dogru runtime klasorune kopyala
-> ilgili servisi yeniden baslat -> loglari kontrol et.