- Mesaj
- 357
- Çözümler
- 3
- Beğeni
- 249
- Puan
- 764
- Ticaret Puanı
- 0
TXT-only, revize mimari
süürce sevenlere
- Yeni katmanlar eklendi: C:\mt2009 - FULL SOURCE\Server Source\Server\db\src\ProtoSource.cpp, C:\mt2009 - FULL SOURCE\Server Source\Server\db\src\ProtoMirror.cpp, C:\mt2009 - FULL SOURCE\Server Source\Server\db\src\ProtoPolicy.h
- TXT proto yükleme tek “source of truth” olacak şekilde ClientManagerBoot akışı toparlandı: C:\mt2009 - FULL SOURCE\Server Source\Server\db\src\ClientManagerBoot.cpp
- PROTO_FROM_DB config’i “ignored/unsupported (TXT-only)” mantığıyla log’lanacak şekilde ele alındı (DB’den proto okuma yolu prod’da kapalı/işlevsiz bırakıldı).
- MIRROR2DB davranışı korunup “policy” ile tek noktadan kontrol edilir hale getirildi (TXT kaynaksa config’e göre mirror; DB kaynak olsaydı mirror zorla kapalı).
- Feature flag eklendi: C:\mt2009 - FULL SOURCE\Server Source\Server\common\CommonDefines.h (ENABLE_SHARD_POLICY)
- Game→DB login paketine shard bilgisi eklendi:
- C:\mt2009 - FULL SOURCE\Server Source\Server\common\tables.h içinde TPacketGDAuthLogin → dwShardID
- Yeni DB protocol mesajları eklendi (session takip):
- C:\mt2009 - FULL SOURCE\Server Source\Server\common\tables.h:
- HEADER_GD_SHARD_SESSION_PING = 200
- HEADER_GD_SHARD_SESSION_END = 201
- TPacketGDShardSessionPing, TPacketGDShardSessionEnd
- C:\mt2009 - FULL SOURCE\Server Source\Server\common\tables.h:
- Game config’e shard ayarları eklendi:
- C:\mt2009 - FULL SOURCE\Server Source\Server\game\src\config.cpp
- C:\mt2009 - FULL SOURCE\Server Source\Server\game\src\config.h
- Tokenlar: shard_id, shard_name (shard_id yoksa/0 ise fail)
- Game login isteğinde shard_id DB’ye gönderiliyor:
- C:\mt2009 - FULL SOURCE\Server Source\Server\game\src\db.cpp
- Online session “ping” ve disconnect “end” eklendi:
- Ping (30sn): C:\mt2009 - FULL SOURCE\Server Source\Server\game\src\main.cpp
- Disconnect cleanup: C:\mt2009 - FULL SOURCE\Server Source\Server\game\src\desc.cpp
- “Hoşgeldin + server adı” mesajı eklendi:
- C:\mt2009 - FULL SOURCE\Server Source\Server\game\src\input_login.cpp
- DB tarafında login gate eklendi (zorunlu şartlar):
- Admin approval zorunlu (shard_access.approved=1)
- Kapasite kontrolü (shard_servers.max_online vs shard_sessions aktif sayım)
- Session upsert/update + ping/end handler’ları
- Kod: C:\mt2009 - FULL SOURCE\Server Source\Server\db\src\ClientManager.cpp (+ header deklarasyonları ilgili dosyada)
- SQL migration eklendi:
- C:\mt2009 - FULL SOURCE\Server Source\Server\db\sql\shards_mvp.sql
- Tablolar: shard_servers, shard_access, shard_sessions
- db ve game Makefile Linux/WSL uyumuna çekildi:
- C:\mt2009 - FULL SOURCE\Server Source\Server\db\src\Makefile
- C:\mt2009 - FULL SOURCE\Server Source\Server\game\src\Makefile
- Notlar: path’te boşluk için __PWD__ escape, sed -i Linux uyumu, OpenSSL dynamic link.
- Game MySQL link düzeltildi (FreeBSD static Extern/lib/libmysqlclient.a yerine -lmysqlclient -lz).
- DevIL (guild mark) WSL’de ABI uyumsuz olduğu için opsiyonel yapıldı:
- C:\mt2009 - FULL SOURCE\Server Source\Server\game\src\Makefile (ENABLE_DEVIL=0 default)
- C:\mt2009 - FULL SOURCE\Server Source\Server\game\src\MarkImage.h
- C:\mt2009 - FULL SOURCE\Server Source\Server\game\src\MarkImage.cpp (DevIL kapalıysa no-op fallback)
- C:\mt2009 - FULL SOURCE\Server Source\Server\game\src\main.cpp (ilInit() guard)
- WSL build dokümanı eklendi:
- C:\mt2009 - FULL SOURCE\Server Source\Server\WSL_BUILD.md
- WSL’de derleme sonucu oluşan binary’ler:
- C:\mt2009 - FULL SOURCE\Server Source\Server\db\db_r41023
- C:\mt2009 - FULL SOURCE\Server Source\Server\game\game_r41023
Linkleri görebilmek için
giriş yap veya kayıt ol.
süürce sevenlere