[C++ & Py] Sequence'i Tamamen Kaldırma Rehberi

  • Konuyu açan Konuyu açan Kaiser
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 26
  • Gösterim Gösterim 2K
En ufak bir eksiklik olduğunu düşünmüyorum, bunu bizzat test edip hazırladım ve paylaştım. Hala da aynı şekilde kullanıyorum.
Onlarca kişi de bu anlatımı uygulayarak Sequence'den kurtuldu.
Muhtemelen anlatımda bir yeri yanlış yaptın, tavsiyem şudur ki; server tarafını tekrardan dikkatlice uygula derim.
Eğer farklı dosyalarda (sistemsel olarak veya altyapı farklılığı olarak) Set'i hala 4 argüman olarak kullanan satırlar varsa o satırlardan hata verecektir, onları da 3 argümana indirerek yani sondaki bool değerini kaldırarak çözebilirsin.
ne diyorsa uyguladım herhangi bi hata gözükmüyor argument hatası almıyorum ki cok farklı bi hata mevcut
 
OBJDIR/desc.o: In function `~CInputProcessor':
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
OBJDIR/desc.o:/root/Razuning2/Server/game/src/input.h:27: more undefined referen ces to `CPacketInfoCG::~CPacketInfoCG()' follow
OBJDIR/input_p2p.o: In function `CInputP2P::CInputP2P()':
/root/Razuning2/Server/game/src/input_p2p.cpp:28: undefined reference to `CPacke tInfoGG::CPacketInfoGG()'
OBJDIR/input_p2p.o: In function `~CInputProcessor':
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
OBJDIR/input_teen.o: In function `~CInputProcessor':
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
OBJDIR/packet_info.o: In function `CPacketInfoCG::CPacketInfoCG()':
/root/Razuning2/Server/game/src/packet_info.cpp:101: undefined reference to `vta ble for CPacketInfoCG'
OBJDIR/desc_client.o: In function `~CInputProcessor':
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
OBJDIR/desc_client.o:/root/Razuning2/Server/game/src/input.h:27: more undefined references to `CPacketInfoCG::~CPacketInfoCG()' follow
 
OBJDIR/desc.o: In function `~CInputProcessor':
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
OBJDIR/desc.o:/root/Razuning2/Server/game/src/input.h:27: more undefined referen ces to `CPacketInfoCG::~CPacketInfoCG()' follow
OBJDIR/input_p2p.o: In function `CInputP2P::CInputP2P()':
/root/Razuning2/Server/game/src/input_p2p.cpp:28: undefined reference to `CPacke tInfoGG::CPacketInfoGG()'
OBJDIR/input_p2p.o: In function `~CInputProcessor':
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
OBJDIR/input_teen.o: In function `~CInputProcessor':
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
OBJDIR/packet_info.o: In function `CPacketInfoCG::CPacketInfoCG()':
/root/Razuning2/Server/game/src/packet_info.cpp:101: undefined reference to `vta ble for CPacketInfoCG'
OBJDIR/desc_client.o: In function `~CInputProcessor':
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
/root/Razuning2/Server/game/src/input.h:27: undefined reference to `CPacketInfoC G::~CPacketInfoCG()'
OBJDIR/desc_client.o:/root/Razuning2/Server/game/src/input.h:27: more undefined references to `CPacketInfoCG::~CPacketInfoCG()' follow
Elinde yedekler varsa ve özelden ayndesk verebilirsen bakalım
 
Sorunun sebebini bilmiyorum pek incelemedim ama muhtemelen yanlış bir işlem yapıldı, doğrudan yedek src üzerinden kendim tekrar kaldırdım ve sorunsuz build olup oyuna giriş yapıldı.
 
Merhabalar, bildiğiniz üzere metin2'nin yeri geldiğinde en kanser kodlarından biri olan sequence'i artık hemen hemen hiç kimse kullanmıyor ve tamamen kaldırıyor.
Ben de kendi projemden kaldırdım ve beraberinde yapılan işlemleri faydalanmak isteyenler için paylaşıyorum. Başka yerlerde de bunun anlatımı mevcut ama "tam olmadığı" yönünde yorumlar olduğu için kendi hazırladığımı paylaşmak istedim.

Peki bilmeyenler için; sequence'i kaldırmak bize ne kazandırır? Özetlemek gerekirse; bazen düzgün çalışması gereken sistemler sequence yüzünden packet hatası verebiliyor ve logine atabiliyor. Hatta bazen amansızca kendini gösterip karakterin hareketlerinden bile(yürümesi vs.) etkilenebiliyor ve aşağıda verdiğim örnek hatayla beraber logine atabiliyor.

Sequence'i kaldırdıktan sonra ve eğer sizden kaynaklı bir sorun yoksa artık bu sorunlar yaşanmayacaktır ve artık hiç bir zaman şuna benzer bir syserr almayacaksınız:
Kod:
Genişlet Daralt Kopyala
Process: SEQUENCE 74309000 mismatch 0x72 != 0x0 header 55
SYSERR: Nov 17 07:52:57 :: Process: SEQUENCE 65febc00 mismatch 0xe2 != 0xe header 57
SYSERR: Nov 17 07:52:57 :: Process: SEQUENCE_LOG [Nick]-------------
    [007 : 0x72]
    [007 : 0xf7]
    [007 : 0x6f]

NOT: Bu syserr'i UNKNOWN PACKET HEADER hatasıyla karıştırmayınız.

Ekstra:
packet_info.cpp içinde aratın:
C++:
Genişlet Daralt Kopyala
CPacketInfoCG::CPacketInfoCG()

Bu blokta listelenen satırların sonundaki true-false kısımlarını kaldırabilirsiniz.
Örnek:
C++:
Genişlet Daralt Kopyala
Set(HEADER_CG_TEXT, sizeof(TPacketCGText), "Text");

packet_info.h içinde bulun:
C++:
Genişlet Daralt Kopyala
void Set(int header, int size, const char * c_pszName, bool bSeq=false);
Değiştirin:
C++:
Genişlet Daralt Kopyala
void Set(int header, int size, const char * c_pszName);

Takıldığınız yerleri yorum olarak belirtebilirsiniz.

Linkleri görebilmek için giriş yap veya kayıt ol.


hocam merhabalar ilk konunuzdan itibaren takipteyim son gözlemleriniz nasil acaba fix'ten sonra bir sorun yaşadınız kaldırmakta fayda varmı benide bilgilendirirmisiniz..


aldığım syserler konunuzla birebir aynı


SYSERR: Oct 19 19:33:09 :: Process: SEQUENCE 4214ab80 mismatch 0xaf != 0x64 header 254
SYSERR: Oct 19 19:33:09 :: Process: SEQUENCE_LOG [UNKNOWN]-------------
[254 : 0xaf]

SYSERR: Oct 19 20:02:07 :: Process: SEQUENCE 72f8fb00 mismatch 0xaf != 0x64 header 254
SYSERR: Oct 19 20:02:07 :: Process: SEQUENCE_LOG [UNKNOWN]-------------
[254 : 0xaf]


buradaki konunuzdan bu konuya kadar yazışmalarınızı okudum ve güncel fikirlerinizi öğrenmek istiyorum boş vaktiniz var ise, deneyimleriniz daha önemli açıkcası ne gibi faydası oldu ve zararları neydi bilgilendirirseniz çok sevinirim teşekkürler.
 
hocam merhabalar ilk konunuzdan itibaren takipteyim son gözlemleriniz nasil acaba fix'ten sonra bir sorun yaşadınız kaldırmakta fayda varmı benide bilgilendirirmisiniz..


aldığım syserler konunuzla birebir aynı


SYSERR: Oct 19 19:33:09 :: Process: SEQUENCE 4214ab80 mismatch 0xaf != 0x64 header 254
SYSERR: Oct 19 19:33:09 :: Process: SEQUENCE_LOG [UNKNOWN]-------------
[254 : 0xaf]

SYSERR: Oct 19 20:02:07 :: Process: SEQUENCE 72f8fb00 mismatch 0xaf != 0x64 header 254
SYSERR: Oct 19 20:02:07 :: Process: SEQUENCE_LOG [UNKNOWN]-------------
[254 : 0xaf]


buradaki konunuzdan bu konuya kadar yazışmalarınızı okudum ve güncel fikirlerinizi öğrenmek istiyorum boş vaktiniz var ise, deneyimleriniz daha önemli açıkcası ne gibi faydası oldu ve zararları neydi bilgilendirirseniz çok sevinirim teşekkürler.
Merhaba, en güncel olarak şunu söyleyebilirim:
Her zaman dediğim gibi sequence sağlıklı çalışan bir şey değil zaten. Piyasada bununla ilgili fixler mevcut fakat o zamanlar hiçbiri benim için çözüm sağlamamıştı. Daha sonra tamamen kaldırılabileceğini öğrendiğimde ise komple kaldırmaya karar verdim. Yıl oldu, hala bir zararını görmedim. Olacağını da sanmıyorum. Birçok kişi de kullanmayıp kaldırıyor zaten.
Ancak konuda da belirttiğim gibi, bu sorunu packet hatalarıyla karıştırmayın. İkisi farklı şeylerdir.

Özetlemek gerekirse; gönül rahatlığı ile kaldırabilirsiniz.
 
Geri
Üst