- Katılım
- 23 Eki 2022
- Mesajlar
- 8,014
- Çözümler
- 12
- Tepkime puanı
- 4,755
- Puanları
- 113
- Yaş
- 28
C++ Proxy IP Özelliği | Hamachi | Sabit IP | Cloud VPS Fix (CH Ekranına Tekme Yeme Çözümü)
Bu anlatımda Metin2 kaynaklarında Proxy IP sistemi, Hamachi / Sabit IP / Google Cloud / Azure Cloud uyumu ve özellikle CH ekranında kick yeme sorununu çözme anlatılmıştır.

Amaç
Bu sistem ile:
- Oyuncuların IP yönlendirmesi kontrol edilir
- Hamachi / VPS / Sabit IP uyumu sağlanır
- CH ekranında atma (kick) problemi azaltılır
- Cloud sistemlerde stabil bağlantı elde edilir
1. Source Kod (Client / Server tarafı IP override)
Şu kodu bul:
p.lAddr = lAddr;
Altına ekle:
if (!g_stProxyIP.empty())
p.lAddr = inet_addr(g_stProxyIP.c_str());
2. Config.cpp Düzenlemesi
Şunu bul:
uint32_t g_dwSkillBookNextReadMax = 43200;
Altına ekle:
std::string g_stProxyIP = "";
Şunu bul:
fprintf(stdout, "SKILLBOOK_NEXTREAD_MAX: %u\n", g_dwSkillBookNextReadMax);
Altına ekle:
TOKEN("proxy_ip")
{
g_stProxyIP = value_string;
}
3. Config.h Düzenlemesi
Şunu bul:
extern uint32_t g_dwSkillBookNextReadMax;
Altına ekle:
extern std::string g_stProxyIP;
4. desc.cpp Düzenlemesi
Şunu bul:
for (int32_t i = 0; i < PLAYER_PER_ACCOUNT; ++i)
Altına ekle:
if (!g_stProxyIP.empty())
rTable.players.lAddr = inet_addr(g_stProxyIP.c_str());
5. Input_db.cpp Düzenlemeleri
Şu satırı bul:
rTab.players.szName);
Altına ekle:
if (!g_stProxyIP.empty())
rTab.players.lAddr = inet_addr(g_stProxyIP.c_str());
Şunu bul:
struct in_addr in;
Altına ekle:
if (!g_stProxyIP.empty())
rTab.players.lAddr = inet_addr(g_stProxyIP.c_str());
Şunu bul:
pack.player = pPacketDB->player;
Altına ekle:
if (!g_stProxyIP.empty())
pack.player.lAddr = inet_addr(g_stProxyIP.c_str());
6. CONFIG Dosyası Ayarları
Config dosyana ekle:
PROXY_IP: HAMACHI_IP_OR_SABIT_IP
7. BIND_IP Nedir?
Eğer VPS kullanıyorsan (Google Cloud / Azure / DigitalOcean vb.):
- SSH bağlan
- ifconfig yaz
- IP'yi bul (genelde 10.0.0.x)
Config'e ekle:
BIND_IP: VPS_LOCAL_IP
8. Hamachi Kullanımı
Hamachi / VPN sisteminde:
- Proxy IP = programda görünen Hamachi IP
- BIND_IP = Hamachi iç network IP
Port açmak için:- Portmap / NAT yönlendirme şart
- Yoksa bağlantı kurulmaz
Önemli Not
- PROXY_IP doğru girilmezse login / CH ekranında kick olabilir
- BIND_IP yanlış girilirse server dış erişim alamaz
- VPS'te her zaman internal IP kullanılmalıdır
Sonuç
Bu sistem ile:
✔ Stabil login sistemi
✔ CH ekranı kick fix
✔ Hamachi / VPS uyumlu yapı
✔ IP kontrol mekanizması
sağlanmış olur.
