kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Cancan.1234 1
Cancan.1234
Hikaye Ekle

Sonraki Hareketi Bildirim Zamanı

Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!

örneğin
x oyuncu 1 adım atar sunucuya kordinat gönderir.
sunucu diğer oyunculara derki x oyuncu şu kordinatta
diğer oyuncular x oyuncunun nerede olduğunu client taraflı görür.

sunucuyu çok yormaması açısından bu kordinat gönderme süresini, 0.30 saniyede bir kordinat gönderme, olarak ayarlı.
buna benzer kod blokları için
client srcden "dwCurTime + 300" bunu aratın kod bloklarını google transleden çevirin süreyi ne için koymuş yazıyor.




örnek vereyim bakarak yapabilirsiniz.


userinterface/PythonPlayerEventHandler.cpp

[CODE lang="cpp" title="asd" highlight="asd"]void CPythonPlayerEventHandler::OnMoving(const SState& c_rkState)
{
DWORD dwCurTime = ELTimer_GetMSec();
if (m_dwNextMovingNotifyTime > dwCurTime)
return;

m_dwNextMovingNotifyTime = dwCurTime + 300; //300 yazan 300 ms yani 0.30 saniye

CPythonNetworkStream& rkNetStream = CPythonNetworkStream::Instance();
rkNetStream.SendCharacterStatePacket(c_rkState.kPPosSelf, c_rkState.fAdvRotSelf, CInstanceBase::FUNC_MOVE, 0);

// Trace("moving\n"); //burdada belirtmiş translateden çevirin :)
}
[/CODE]

not : test etmedim fakat süreleri 0'larsak belki karakter kaymaları düzelebilir

konu hakkında bilgi verdiği için lalakere teşekkür ederim
 
Son düzenleme:
örneğin
x oyuncu 1 adım atar sunucuya kordinat gönderir.
sunucu diğer oyunculara derki x oyuncu şu kordinatta
diğer oyuncular x oyuncunun nerede olduğunu client taraflı görür.

sunucuyu çok yormaması açısından bu kordinat gönderme süresini, 0.30 saniyede bir kordinat gönderme, olarak ayarlı.
buna benzer kod blokları için
client srcden "dwCurTime + 300" bunu aratın kod bloklarını google transleden çevirin süreyi ne için koymuş yazıyor.




örnek vereyim bakarak yapabilirsiniz.


userinterface/PythonPlayerEventHandler.cpp

[CODE lang="cpp" title="asd" highlight="asd"]void CPythonPlayerEventHandler::OnMoving(const SState& c_rkState)
{
DWORD dwCurTime = ELTimer_GetMSec();
if (m_dwNextMovingNotifyTime > dwCurTime)
return;

m_dwNextMovingNotifyTime = dwCurTime + 300; //300 yazan 300 ms yani 0.30 saniye

CPythonNetworkStream& rkNetStream = CPythonNetworkStream::Instance();
rkNetStream.SendCharacterStatePacket(c_rkState.kPPosSelf, c_rkState.fAdvRotSelf, CInstanceBase::FUNC_MOVE, 0);

// Trace("moving\n"); //burdada belirtmiş translateden çevirin :)
}
[/CODE]

not : test etmedim fakat süreleri 0'larsak belki karakter kaymaları düzelebilir

konu hakkında bilgi verdiği için lalakere teşekkür ederim
bunu bi forumda daha görmüş idim fakat arşivimde bulamıyorum yabancı idi orada ayrıntılı anlatıp yöntemlerini yazıyordu gyazo ile de farkını göstermişti ama bulamıyorum hatırlattığın için saolasın
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst