Hoş Geldin, Ziyaretçi!

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

dsgn kguard
ROLLET remastered
vsupload kguardedgeakademi
cleopatra legacy

vSRO Çözüldü 0xb070 ve 0xb071 Paketlerinin ParseDamage() Structureleri

kovboi

KGuardEDGE
.
Developer
Katılım
12 Eki 2019
Mesajlar
253
Çözümler
2
Alınan Beğeni
587
Ödül Puanları
93
Konum
Antalya
Selam arkadaşlar.
Etrafta bir çok paylaşılmış structure mevcut ancak hiç biri tam olarak doğru değil.
0xb070 ve 0xb071 paketleri ortak bir ParseDamage() verisi içermekte. 0xb071 paketinden örnek vereceğim.

İçeriği görebilmek için Uye olmanız gerekiyor.

Ancak ne yazık ki şu paket ayrışamıyor.

İçeriği görebilmek için Uye olmanız gerekiyor.

ParseDamage() için net structure gerekiyor.

Olması gereken okuma şöyle gözüküyor
C#:
İçeriği görebilmek için Uye olmanız gerekiyor.
 

kovboi

KGuardEDGE
.
Developer
Katılım
12 Eki 2019
Mesajlar
253
Çözümler
2
Alınan Beğeni
587
Ödül Puanları
93
Konum
Antalya
Tamam açık kalsın burda, rabbimden vahiy gelirse birine post atar. :D
Teşekkürler :D Cevabı olanlar var ama özel mesaj olarak sormamı istiyorlar gibi geldi. Yani durduk yere mesaj atıp "XXX'e neden sormayıp konu açtın?" yazan bir iki kişi oldu. Benim de adetim değil. Soracaksam açıkta sorarım açıkta çözülsün, başkası da faydalansın. :)

Bazı bilgilerin saklı tutulmasının sebebi zaten o bilgiyi başkasının kendisinden daha iyi işleyeceğinden korkmaları. Bence bilgi ortada olmalı. Daha iyi işleyen de kazanmalı tabiki.
 
Oyla 0

Sieger

𝐕𝐒𝐑𝐎 𝐃𝐞𝐯𝐞𝐥𝐨𝐩𝐞𝐫, 𝐏𝐊𝟐 𝐄𝐝𝐢𝐭𝐨𝐫
Premium
.
Katılım
6 Şub 2019
Mesajlar
2,410
Çözümler
5
Alınan Beğeni
6,143
Ödül Puanları
303
Konum
vsroeditor.com
Teşekkürler :D Cevabı olanlar var ama özel mesaj olarak sormamı istiyorlar gibi geldi. Yani durduk yere mesaj atıp "XXX'e neden sormayıp konu açtın?" yazan bir iki kişi oldu. Benim de adetim değil. Soracaksam açıkta sorarım açıkta çözülsün, başkası da faydalansın. :)

Bazı bilgilerin saklı tutulmasının sebebi zaten o bilgiyi başkasının kendisinden daha iyi işleyeceğinden korkmaları. Bence bilgi ortada olmalı. Daha iyi işleyen de kazanmalı tabiki.
Bilgi daima ortada olmalı, bu yüzden forumlar var ve bu forumlarda bunca bilgili insanlar var. Bilgi paylaştıkça çoğalıyor.

VSRO Dosyaları zamanında paylaşılmasaydı, kimler, nasıl gelişebilecekti? Bilgim olmamasına rağmen SQL öğrenebilmiş biriyim, bir şey yapabiliyorum. Başlangıç düzeylerinde prosedürler yazabiliyorum, bunları hepsi bilgi paylaşımlarından oluştu, gökten inmedi. Bu yüzden, burada gördüğüm her konuya bilgilerin paylaşılması için post'lar, uyarılar atıyorum.

Bilgim olmadığı yerlerde, bilgisi olduğunu düşündüğüm kişileri etiketliyorum, ki dün seni bir konuya etiketledim, öneri de bulundun, yapılması gerekeni söyledin. Gerisi konu sahibinin azmine ve arayışına kalmış bir şey.

Burada "armut piş, ağzıma düş" diye bekleyen çok kişi var, bunları da ayıklayıp, gerekirse konularını gördüğüm gibi siliyorum.
Emek verenlere, bir şeyler başarmak isteyenlere de daima yardımcı olmaya çalışıyorum.
Böyle böyle gelişiriz, üstten baktığımız insanlardan bile öğreneceğimiz çok şey var. En bilgili insanlar bile bunlardan bilgi öğrenebilir.

Bill Gates'in dediği gibi "Zor işleri yapmak için her zaman tembel kişileri seçerim. Çünkü onlar işi yapmanın kolay bir yolunu bulurlar."

Bu hayatın bir kuralı.

Neyse, seviyorum seni. Konu hakkında da gram bilgim yok, olsa seve seve kendimi yorarım ama sıfırım. :D
 
Oyla 0

Rouran

.
Katılım
7 Kas 2020
Mesajlar
95
Alınan Beğeni
42
Ödül Puanları
18
Konum
İskenderiye
v30ucab.jpg


Resimde gördüğünüz UI, mısırlı bir elemanın serverine ait. Konuyla alakası ise şu; eleman bu verileri doğrudan client içinden alıyor. Yani filtreden cliente gelen bir paket akışı yok. Doğrudan verileri dll ile client içinden toplatıp pencereyi aktif ediyor. Unique den uzaklaşınca pencerede kapanıyor. Demek istediğim ise sizde aynı şeyi yapabilirsiniz. Örnek göstermek istedim...
 
Oyla 0

kovboi

KGuardEDGE
.
Developer
Katılım
12 Eki 2019
Mesajlar
253
Çözümler
2
Alınan Beğeni
587
Ödül Puanları
93
Konum
Antalya
v30ucab.jpg


Resimde gördüğünüz UI, mısırlı bir elemanın serverine ait. Konuyla alakası ise şu; eleman bu verileri doğrudan client içinden alıyor. Yani filtreden cliente gelen bir paket akışı yok. Doğrudan verileri dll ile client içinden toplatıp pencereyi aktif ediyor. Unique den uzaklaşınca pencerede kapanıyor. Demek istediğim ise sizde aynı şeyi yapabilirsiniz. Örnek göstermek istedim...
Client içinden toplarken de paket verilerini aynen okumak gerekiyor. Takıldığım noktada o da takılıp aşmıştır mutlaka. Ben clientside tercih etmiyorum çünkü oyuncu o mobu görene kadarki bütün vuruşlar yok kabul edilecektir haliyle.

Hem clientside hem serverside olması yük dağılımı açısından oldukça mantıklı olabilir çünkü paket akışı periyodunu yavaşlatıp anlık gösterime devam edilebilir ama sadece clientside benim görüşümce uygun olmaz.

Bu sorunu çözemediğim için yaklaşık 50.000 vuruşta bir vuruşta hata yapıyor. Ama farkedilir seviyede olmadığı için üzerine düşmeyi bıraktım zaten.

Ekran görüntüsü 2021-02-16 130254.png
 
Oyla 0

sarkolata

.
Developer
Katılım
2 Tem 2019
Mesajlar
491
Çözümler
7
Alınan Beğeni
790
Ödül Puanları
93
Konum
Los Angeles, CA
Teşekkürler :D Cevabı olanlar var ama özel mesaj olarak sormamı istiyorlar gibi geldi. Yani durduk yere mesaj atıp "XXX'e neden sormayıp konu açtın?" yazan bir iki kişi oldu. Benim de adetim değil. Soracaksam açıkta sorarım açıkta çözülsün, başkası da faydalansın. :)

Bazı bilgilerin saklı tutulmasının sebebi zaten o bilgiyi başkasının kendisinden daha iyi işleyeceğinden korkmaları. Bence bilgi ortada olmalı. Daha iyi işleyen de kazanmalı tabiki.
valla laf bana mı geliyor bilmiyorum ama, gereksiz üstüme alınıyorsam bile cevap vereyim, bu packetleri hiç parse etmedim ucundan bile bakmadım :)

Vs6Pcab.png


gameserver obje ölene kadar tüm damageleri hafızada tutuyor zaten, obje ölünce verileri çekip, istediğim gibi şekillendirip clientlere yolluyorum. hesaplanmış bir şekilde varken tekrar paketleri okuyup hesaplamak hamallık gibi geliyor... tabi bunun yapılması için bir de %100 doğru groupspawn parse da lazım. bildiğim kadarıyla b071'de değişken bitler vs. de var dediğin gibi her durum için %100 doğru parser yapmak zor.

yaptığım şekilde canlı olmuyor tabi ki, canlı yapacak olursam da muhtemelen damage'in hafızaya yazıldığı yeri bulup hook atarım, veri işlendikçe objenin etrafındakilere broadcast yaparım.

canlı mantığını ben sevmiyorum, unique öldükten sonra ne kadar damage ile kaçırıp/kazandığını görmek güzel. canlı olduğu zaman genelde kimin alacağı belli oluyor, heyecanı kalmıyor o işin.
 
Oyla 0

kovboi

KGuardEDGE
.
Developer
Katılım
12 Eki 2019
Mesajlar
253
Çözümler
2
Alınan Beğeni
587
Ödül Puanları
93
Konum
Antalya
valla laf bana mı geliyor bilmiyorum ama, gereksiz üstüme alınıyorsam bile cevap vereyim, bu packetleri hiç parse etmedim ucundan bile bakmadım :)

Vs6Pcab.png


gameserver obje ölene kadar tüm damageleri hafızada tutuyor zaten, obje ölünce verileri çekip, istediğim gibi şekillendirip clientlere yolluyorum. hesaplanmış bir şekilde varken tekrar paketleri okuyup hesaplamak hamallık gibi geliyor... tabi bunun yapılması için bir de %100 doğru groupspawn parse da lazım. bildiğim kadarıyla b071'de değişken bitler vs. de var dediğin gibi her durum için %100 doğru parser yapmak zor.

yaptığım şekilde canlı olmuyor tabi ki, canlı yapacak olursam da muhtemelen damage'in hafızaya yazıldığı yeri bulup hook atarım, veri işlendikçe objenin etrafındakilere broadcast yaparım.

canlı mantığını ben sevmiyorum, unique öldükten sonra ne kadar damage ile kaçırıp/kazandığını görmek güzel. canlı olduğu zaman genelde kimin alacağı belli oluyor, heyecanı kalmıyor o işin.
Yok yok kesinlikle sana sitemim yok 😇

Anlığı ben de sevimli bulmuyorum ama talep bu yöndeydi. Damageler birbirine yakın ilerlediği durumlarda heyecanı arttırıyor tabi de bu her zaman olmuyor haliyle.

Şimdi de seçenekli istiyorlar anlık veya ölünce şeklinde 😂

Gameserver hook yöntemi b071’den daha mantıklı ama sanki b071 daha kolay gibi. En azından şimdilik benim için öyle.

Ve b071 kullanınca hata payı var. Petlerin Damageleri eklenebilir ama Debuff Damagelerinde iş baya zorlaşıyor.

Laf sana gelmiyor, aksine sana saygı duyuyorum 😊
 
Oyla 0

sarkolata

.
Developer
Katılım
2 Tem 2019
Mesajlar
491
Çözümler
7
Alınan Beğeni
790
Ödül Puanları
93
Konum
Los Angeles, CA
Unique öldüğü anda partinin total hasarına göre seçiyor keseni. Karahanlı en çok hasarı vurmuş olabilir ama Gottin'in partisinin total hasarı daha fazla. O partinin en çok vuranı da Gottin.
 
Oyla 0
AdBlock Detected

Anlıyoruz, reklamlar can sıkıcı!

Elbette, reklam engelleme yazılımı reklamları engellemede harika bir iş çıkarır, ancak aynı zamanda web sitemizin faydalı özelliklerini de engeller. En iyi site deneyimi için lütfen AdBlocker'ınızı devre dışı bırakın.

AdBlock'u Devre Dışı Bıraktım.