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ü vSRO Starter Pack Oluşturma (Belirlenen İtemleri Verdirme)

Sieger

𝐕𝐒𝐑𝐎 𝐃𝐞𝐯𝐞𝐥𝐨𝐩𝐞𝐫, 𝐏𝐊𝟐 𝐄𝐝𝐢𝐭𝐨𝐫
Premium
.
Katılım
6 Şub 2019
Mesajlar
2,410
Çözümler
5
Alınan Beğeni
6,150
Ödül Puanları
303
Konum
vsroeditor.com
Merhabalar,
Sistem bildiğimiz gift box mantığı ile çalışıyor, bir tablodan verileri çekip oyuncuya exec ile aktarıyor fakat şöyle bir sorunum var.
Farklı bir prosedür ile tek exec kullanarak tabloda ki tüm itemleri oyuncuya verdirebiliyorum.
Devil vermek istediğim an sorun burada başlıyor.
Bildiğiniz gibi male,female olmak üzere 2 devil var benim yapmak istediğim belirlenen ObjCharID Male ise Male Devil, Female ise Female devil vermesi.
Bunu tabloya eklemiyorum, ikinci bir exec ile verdirmeye çalışıyorum fakat hiç bi şekilde olmuyor.

Eğer tabloya eklersek nasıl yapabiliriz?
Ya da tabloya eklemez ikinci exec ile yaparsak nasıl yapabiliriz?

Bunun detaylı anlatımı ya da tam prosedürü hiç bir forum da yok.

Çözüm:

Tablodan item verdirmek yerine aşağıda yazmış olduğum şekilde sorun çözülmüştür.

Sorunu şu şekilde çözdüm, tablodan item vermiyor lakin bir tık daha ileri yürüttüm daha güzel ve temiz oldu.
İçeriği görebilmek için Uye olmanız gerekiyor.
İçeriği görebilmek için Uye olmanız gerekiyor.
2. prosedürü çoğaltmak ve birden çok starter pack eklemek isterseniz 2. prosedür yerine altta ki prosedürü kullanabilirsiniz.
İçeriği görebilmek için Uye olmanız gerekiyor.
 
Son düzenleme:

Yuppi

vsro.org
.
Katılım
3 Şub 2019
Mesajlar
809
Çözümler
1
Alınan Beğeni
2,572
Ödül Puanları
113
Konum
İstanbul
Bu sorunsuz olarak çalışıyor, fazla exec koyulması sorun yarattığı için kullanmak istemiyordum amacım direkt olarak tablodan verilen itemleri kullanmasıydı.
Sanırım bunu yapamayacağız, bunun için sorunu bu şekilde çözülmüş olarak varsayıyorum.

Destek, öneri ve yorumlarınız için teşekkür ederim.

Sorun fazla exec değil transaction mantıgından ötürü kaynaklanan bir problem. Önceki mesajımda açıklamıştım tekrar izah edeyim. Oyunda scroll kullanıldığı zaman sql bütün _AddLogitem prosedürünü tetikler içerisindeki tüm döngü, koşul vs check eder. Basit gibi görünebilir ancak oyun içerisinde item'ler üzerinde yapılan her türlü işlemde bu prosedür tetiklenir, bunu sql profiler açarak görebiliriz. Örneğin 800 oyunculu bir server'da saniyede yüzlerce kez bu prosedür tetiklenir, bu yüzden bu prosedürün içeriği oldukça önemli diyebiliriz. Transaction'lardaki herhangi bir takılma veya gecikme bir sonraki transaction için sorun teşkil eder. Bu yüzden daha önce belirttiğim gibi olabilecek maximum performansa bu prosedürde ihtiyaç vardır. Gelen her komut için ortalama 2~5 ms execution plan süresi en iyi performansı sağlar. Bu süreler aşıldığı zaman yaşadığın problemlere benzer problemler oluşur.

Performans için sql 2017+ memory OLTP özelliği kullanılarak normal prosedürlerden 30 kat daha fazla performans sağlanabilir ancak bunun için biraz detaylı sql bilmek gerekir. Bu özelliği araştırıp öğrenmekte fayda var.

Bu bilgiler doğrultusunda problemini çözdüğünü ve ileride karşılaşabileceğin bu tarz problemler konusunda biraz aydınlandığını düşünüyorum :)
 
Oyla 0

Sieger

𝐕𝐒𝐑𝐎 𝐃𝐞𝐯𝐞𝐥𝐨𝐩𝐞𝐫, 𝐏𝐊𝟐 𝐄𝐝𝐢𝐭𝐨𝐫
Premium
.
Katılım
6 Şub 2019
Mesajlar
2,410
Çözümler
5
Alınan Beğeni
6,150
Ödül Puanları
303
Konum
vsroeditor.com
Sorun fazla exec değil transaction mantıgından ötürü kaynaklanan bir problem. Önceki mesajımda açıklamıştım tekrar izah edeyim. Oyunda scroll kullanıldığı zaman sql bütün _AddLogitem prosedürünü tetikler içerisindeki tüm döngü, koşul vs check eder. Basit gibi görünebilir ancak oyun içerisinde item'ler üzerinde yapılan her türlü işlemde bu prosedür tetiklenir, bunu sql profiler açarak görebiliriz. Örneğin 800 oyunculu bir server'da saniyede yüzlerce kez bu prosedür tetiklenir, bu yüzden bu prosedürün içeriği oldukça önemli diyebiliriz. Transaction'lardaki herhangi bir takılma veya gecikme bir sonraki transaction için sorun teşkil eder. Bu yüzden daha önce belirttiğim gibi olabilecek maximum performansa bu prosedürde ihtiyaç vardır. Gelen her komut için ortalama 2~5 ms execution plan süresi en iyi performansı sağlar. Bu süreler aşıldığı zaman yaşadığın problemlere benzer problemler oluşur.

Performans için sql 2017+ memory OLTP özelliği kullanılarak normal prosedürlerden 30 kat daha fazla performans sağlanabilir ancak bunun için biraz detaylı sql bilmek gerekir. Bu özelliği araştırıp öğrenmekte fayda var.

Bu bilgiler doğrultusunda problemini çözdüğünü ve ileride karşılaşabileceğin bu tarz problemler konusunda biraz aydınlandığını düşünüyorum :)
Bilgilerin ve yardımın için teşekkür ederim, paylaştığım çözüm sonucunda ilk 3-5 kullanımda sorun oluşmuyor lakin sonrasında ki kullanımda 1 itemi vermiyor ve tekrar giftbox kullandığım da çar teleportta takılıp kalıyor, gameserver'ı tekrar başlatmadan da tekrar çara giriş yapılamıyor. Sorun bir nevi devam ediyor diyebilirim.
 
Oyla 0

ILower

.
Katılım
9 May 2019
Mesajlar
111
Alınan Beğeni
16
Ödül Puanları
18
Konum
Türkiye
Random item vermeyi yapabilirmiyiz? varmı yapan yada yani dressleri random vermek istiyorum
 
Oyla 0

SaltanatNaibi

VSRO / SQL Server / PK2 Edit / Cyber Security /
.
.
Katılım
19 Ara 2018
Mesajlar
1,185
Çözümler
5
Alınan Beğeni
622
Ödül Puanları
113
Konum
/ Kali/Linux /
Bu kullanıcıyla bir anlaşma yapmak istiyorsanız, bu forumdan uzaklaştırıldığını lütfen unutmayın.
Random item vermeyi yapabilirmiyiz? varmı yapan yada yani dressleri random vermek istiyorum
Belirlediginiz dresleri şanslamı verdirmek istiyorsunuz
Bilgilerin ve yardımın için teşekkür ederim, paylaştığım çözüm sonucunda ilk 3-5 kullanımda sorun oluşmuyor lakin sonrasında ki kullanımda 1 itemi vermiyor ve tekrar giftbox kullandığım da çar teleportta takılıp kalıyor, gameserver'ı tekrar başlatmadan da tekrar çara giriş yapılamıyor. Sorun bir nevi devam ediyor diyebilirim.
prosedür'ün performansını test ettinizmi SQL Kısmında
 
Oyla 0

Yuppi

vsro.org
.
Katılım
3 Şub 2019
Mesajlar
809
Çözümler
1
Alınan Beğeni
2,572
Ödül Puanları
113
Konum
İstanbul
Bilgilerin ve yardımın için teşekkür ederim, paylaştığım çözüm sonucunda ilk 3-5 kullanımda sorun oluşmuyor lakin sonrasında ki kullanımda 1 itemi vermiyor ve tekrar giftbox kullandığım da çar teleportta takılıp kalıyor, gameserver'ı tekrar başlatmadan da tekrar çara giriş yapılamıyor. Sorun bir nevi devam ediyor diyebilirim.
Prosedürün başka herhangi bir kod blogunu tetikliyor mu?
 
Oyla 0

Sieger

𝐕𝐒𝐑𝐎 𝐃𝐞𝐯𝐞𝐥𝐨𝐩𝐞𝐫, 𝐏𝐊𝟐 𝐄𝐝𝐢𝐭𝐨𝐫
Premium
.
Katılım
6 Şub 2019
Mesajlar
2,410
Çözümler
5
Alınan Beğeni
6,150
Ödül Puanları
303
Konum
vsroeditor.com
Prosedürün başka herhangi bir kod blogunu tetikliyor mu?

Yazdıklarım harici herhangi bir tetikleme yok.
İşlem süresini test edince buraya dönüş yapacağım tekrar.
Prosedürün son halini de paylaşacağım.
 
Oyla 0

Sieger

𝐕𝐒𝐑𝐎 𝐃𝐞𝐯𝐞𝐥𝐨𝐩𝐞𝐫, 𝐏𝐊𝟐 𝐄𝐝𝐢𝐭𝐨𝐫
Premium
.
Katılım
6 Şub 2019
Mesajlar
2,410
Çözümler
5
Alınan Beğeni
6,150
Ödül Puanları
303
Konum
vsroeditor.com
@Senua Prosedürler ve sonuçlar aşağı da yazdığım gibi.

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

Ek 1: Kod bloğunu 3-4 defa üst üste execute ettiğim de AddLogItem prosedüründe "SQL Server parse and compile time:" bazen 0 ms. olarak gösteriliyor.
Ek 2: Kod bloğunu 3-4 defa üst üste execute ettiğim de 1. prosedürde "SQL Server parse and compile time:" bazen 0-1 ms. olarak gösteriliyor.
Ek 3: Kod bloğunu 3-4 defa üst üste execute ettiğim de 1. prosedürde "SQL Server Execution Times:" bazen 0-1 ms. olarak gösteriliyor.
 
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.