vSRO +Plus Scroll Time System (Limited Duration + Upgrade Tracking via SQL Log Table)
admin
Katılım
23 Eki 2022
Mesajlar
8,185
Çözümler
12
Tepkime puanı
4,847
Puanları
113
Yaş
28
Merhaba,


Bu konuda vSRO için hazırlanmış "limited time +plus scroll system" mantığını paylaşıyorum.


Bu sistem, iteme + basıldığında bunu loglayarak belirli süre sonra + değerini düşürme / geri alma mantığıyla çalışır.




⚙️ Sistem Mantığı


Bu sistem:


    • scroll kullanıldığında itemi loglar
  • Item + basma işlemini _PlusScrollLog tablosuna kaydeder
  • Belirlenen süre sonunda itemin + değerini düşürür
  • Süre bazlı "temporary upgrade" sistemi oluşturur



📌 Database – Log Table



CREATE TABLE [dbo].[_PlusScrollLog](
[ID] [int] IDENTITY(1,1) NOT NULL,
[CharID] [int] NOT NULL,
[Serial64] [bigint] NOT NULL,
[StartTime] [datetime] NOT NULL,
[PlusTime] [int] NOT NULL
)





⚙️ _AddLogItem Procedure (Scroll Kullanımı)



if (@Operation = 41)
begin
if (@ItemRefID = '1337')
begin
insert into [_PlusScrollLog]
(CharID,Serial64,StartTime,PlusTime)
values (@CharID,@ItemSerial,Getdate(),3) -- 3 hours
end
end





⏳ _AddLogChar (Süre Kontrol Sistemi)



if (@EventID in (6,9,4,11))
begin
declare @OldItemSerial bigint =
(Select Serial64 from _PlusScrollLog where CharID = @CharID)

declare @OldTime datetime =
(select Top(1) StartTime from HILBILED.._PlusScrollLog
where CharID = @CharID and Serial64 = @OldItemSerial
order by StartTime desc)

if DATEDIFF(HOUR,3,GETDATE()) >= @OldTime
begin
Update SRO_VT_SHARD.._Items
set Optlevel -= 2
where Serial64 = @OldItemSerial

Delete from HILBILED.._PlusScrollLog
where Serial64 = @OldItemSerial
end
end





🧠 Sistem Ne Yapar?


  • Scroll ile + basılan itemi kayıt altına alır
  • 3 saat (veya ayarlanan süre) sonra kontrol eder
  • Süre dolmuşsa itemin + değerini düşürür
  • Log kaydını siler



⚡ Kullanım Alanları


  • Temporary premium item sistemi
  • Event + item boost sistemi
  • PvP server "buff scroll" mekanikleri
  • Pay2Win kontrollü upgrade sistemleri



⚠️ Not


  • EventID ve Operation server files'a göre değişebilir
  • ItemRefID (1337) örnektir, gerçek scroll ID ile değiştirilmelidir
  • Timer sistemi offline/online duruma göre optimize edilmelidir
  • Production serverda dikkatli test edilmelidir
 
Üst
Reklam Ver
R10dev.net'i ana ekrana ekle!