Bu paylaşım, Silkroad Online private server (vSRO) için hazırlanmış Athena Filter v1.2 devkit sistemini içermektedir.
Sistem; oyuncu loglama, item point hesaplama, guild point sync, event tracking ve web/DB entegrasyon fonksiyonlarını kapsamaktadır.
✔ AddLogChar sistemi
✔ ItemPoints hesaplama sistemi
✔ Guild ItemPoints sync
✔ Event kill / death tracking
✔ Fortress kill log sistemi
✔ Wanted system entegrasyonu
✔ Skill update procedure
✔ Item add by name procedure
✔ Silk purchase web system fix
✔ Unique spawn UI text pack
IF(@EventID = 6)
BEGIN
DECLARE @StrUserID varchar(64) =
(SELECT DISTINCT StrUserID
FROM [SRO_VT_ACCOUNT].[dbo].[TB_User] WITH (NOLOCK)
WHERE JID =
(SELECT DISTINCT UserJID
FROM [SRO_VT_SHARD].[dbo].[_User] WITH (NOLOCK)
WHERE CharID = @CharID))
EXEC VSRO.._LogPlayers @StrUserID, 'non', 0, 'non', 'non', 'non', 'non', 0
UPDATE [SRO_VT_SHARD].[dbo]._Char
SET ItemPoints = (
SELECT SUM(
CASE
WHEN Common.CodeName128 LIKE '%_A_RARE' THEN ReqLevel1 + 5
WHEN Common.CodeName128 LIKE '%_B_RARE' THEN ReqLevel1 + 10
WHEN Common.CodeName128 LIKE '%_C_RARE' THEN ReqLevel1 + 15
ELSE ReqLevel1
END
)
JOIN _Items Items ON Items.ID64 = inventory.ItemID
JOIN _RefObjCommon Common ON Items.RefItemId = Common.ID
LEFT JOIN _BindingOptionWithItem Binding ON Binding.nItemDBID = Items.ID64
WHERE inventory.slot < 13
AND inventory.slot NOT IN (7,8)
AND inventory.CharID = _Char.CharID
)
WHERE _Char.CharID = @CharID
DECLARE @GuildID int;
SELECT @GuildID = GuildID FROM _Char WHERE CharID = @CharID
IF (@GuildID > 0)
BEGIN
UPDATE _Guild
SET ItemPoints = (
SELECT SUM(ItemPoints)
FROM _Char
WHERE GuildID = _Guild.ID
)
WHERE _Guild.ID = @GuildID
END
DELETE FROM VSRO.._Event_ROS WHERE CharName = @CharID
DELETE FROM VSRO.._Event_MD WHERE CharName = @CharID
DELETE FROM VSRO.._Event_TANSAT WHERE CharName = @CharID
IF (@Desc LIKE '%Trader%' OR @Desc LIKE '%Hunter%' OR @Desc LIKE '%Robber%')
AND @Desc NOT LIKE '%no job%'
BEGIN
EXEC VSRO..[_Wanted] @Desc,@CharID,@CharID
END
IF (@strPos like '%Fortress%')
BEGIN
DECLARE @GUILD varchar(25)
SELECT @GUILD = Name
FROM _Guild G
INNER JOIN _GuildMember GM ON G.ID = GM.GuildID
WHERE GM.CharID = @CharID
IF NOT EXISTS (SELECT * FROM VSRO.._FW_KILLS_LOG WHERE CHARNAME = @CharID)
INSERT INTO VSRO.._FW_KILLS_LOG VALUES (@CharID,1,@GUILD)
ELSE
UPDATE VSRO.._FW_KILLS_LOG
SET [KILL] += 1, Guild=@GUILD
WHERE CHARNAME = @CharID
END
IF @EventID = '20'
BEGIN
IF (@strPos LIKE '%(0x5cb6)%')
EXEC VSRO.._ROS_CheckPlayerDead @charid,@desc
ELSE IF (@strPos LIKE '%(0x63ec)%')
EXEC VSRO.._MD_KillFetch @Desc
END
ALTER TABLE _Char ADD ItemPoints int NOT NULL DEFAULT 0;
ALTER TABLE _Char ADD Reward int NOT NULL DEFAULT 0;
ALTER TABLE _Guild ADD ItemPoints int NOT NULL DEFAULT 0;
✔ Auto skill cleanup + mastery check system
CREATE PROCEDURE _UPDATE_CHARSKILLS
@nvcCharName nvarchar(30)
AS
...
Sistem:
CREATE PROCEDURE _AddItemByName
@CharName VARCHAR(64),
@CodeName VARCHAR(128),
@Amount INT,
@OptLevel TINYINT
AS
...
Özellikler:
ALTER PROCEDURE CGI.CGI_WebPurchaseSilk
...
Özellikler:
UIIT_MSG_APPEAR_TIGER_GIRL
UIIT_MSG_APPEAR_IVY
UIIT_MSG_APPEAR_KERBEROS
UIIT_MSG_APPEAR_URRUCHI
UIIT_MSG_APPEAR_BONELORD
Özellik:
Bu devkit ile:
✔ Full filter event system
✔ ItemPoints + Guild sync
✔ Kill / death tracking
✔ Fortress logging
✔ Skill rebuild system
✔ Item injection system
✔ Silk purchase fix
✔ Unique spawn UI pack
tam entegre vSRO server altyapısı elde edilir.
rarpass:https://r10dev.net/
Sistem; oyuncu loglama, item point hesaplama, guild point sync, event tracking ve web/DB entegrasyon fonksiyonlarını kapsamaktadır.
İçerik Özeti
✔ AddLogChar sistemi
✔ ItemPoints hesaplama sistemi
✔ Guild ItemPoints sync
✔ Event kill / death tracking
✔ Fortress kill log sistemi
✔ Wanted system entegrasyonu
✔ Skill update procedure
✔ Item add by name procedure
✔ Silk purchase web system fix
✔ Unique spawn UI text pack
1) AddLogChar + ItemPoints System
IF(@EventID = 6)
BEGIN
DECLARE @StrUserID varchar(64) =
(SELECT DISTINCT StrUserID
FROM [SRO_VT_ACCOUNT].[dbo].[TB_User] WITH (NOLOCK)
WHERE JID =
(SELECT DISTINCT UserJID
FROM [SRO_VT_SHARD].[dbo].[_User] WITH (NOLOCK)
WHERE CharID = @CharID))
EXEC VSRO.._LogPlayers @StrUserID, 'non', 0, 'non', 'non', 'non', 'non', 0
ItemPoints Calculation System
UPDATE [SRO_VT_SHARD].[dbo]._Char
SET ItemPoints = (
SELECT SUM(
CASE
WHEN Common.CodeName128 LIKE '%_A_RARE' THEN ReqLevel1 + 5
WHEN Common.CodeName128 LIKE '%_B_RARE' THEN ReqLevel1 + 10
WHEN Common.CodeName128 LIKE '%_C_RARE' THEN ReqLevel1 + 15
ELSE ReqLevel1
END
)
- SUM(ISNULL(Binding.nOptValue, 0))
- SUM(ISNULL(OptLevel, 0))
JOIN _Items Items ON Items.ID64 = inventory.ItemID
JOIN _RefObjCommon Common ON Items.RefItemId = Common.ID
LEFT JOIN _BindingOptionWithItem Binding ON Binding.nItemDBID = Items.ID64
WHERE inventory.slot < 13
AND inventory.slot NOT IN (7,8)
AND inventory.CharID = _Char.CharID
)
WHERE _Char.CharID = @CharID
Guild ItemPoints Sync
DECLARE @GuildID int;
SELECT @GuildID = GuildID FROM _Char WHERE CharID = @CharID
IF (@GuildID > 0)
BEGIN
UPDATE _Guild
SET ItemPoints = (
SELECT SUM(ItemPoints)
FROM _Char
WHERE GuildID = _Guild.ID
)
WHERE _Guild.ID = @GuildID
END
Event Cleanup System
DELETE FROM VSRO.._Event_ROS WHERE CharName = @CharID
DELETE FROM VSRO.._Event_MD WHERE CharName = @CharID
DELETE FROM VSRO.._Event_TANSAT WHERE CharName = @CharID
2) Kill / Death Event System
Job Kill Tracking
IF (@Desc LIKE '%Trader%' OR @Desc LIKE '%Hunter%' OR @Desc LIKE '%Robber%')
AND @Desc NOT LIKE '%no job%'
BEGIN
EXEC VSRO..[_Wanted] @Desc,@CharID,@CharID
END
Fortress Kill Log
IF (@strPos like '%Fortress%')
BEGIN
DECLARE @GUILD varchar(25)
SELECT @GUILD = Name
FROM _Guild G
INNER JOIN _GuildMember GM ON G.ID = GM.GuildID
WHERE GM.CharID = @CharID
IF NOT EXISTS (SELECT * FROM VSRO.._FW_KILLS_LOG WHERE CHARNAME = @CharID)
INSERT INTO VSRO.._FW_KILLS_LOG VALUES (@CharID,1,@GUILD)
ELSE
UPDATE VSRO.._FW_KILLS_LOG
SET [KILL] += 1, Guild=@GUILD
WHERE CHARNAME = @CharID
END
Death Tracking
IF @EventID = '20'
BEGIN
IF (@strPos LIKE '%(0x5cb6)%')
EXEC VSRO.._ROS_CheckPlayerDead @charid,@desc
ELSE IF (@strPos LIKE '%(0x63ec)%')
EXEC VSRO.._MD_KillFetch @Desc
END
3) Table Patch (ItemPoints + Reward)
ALTER TABLE _Char ADD ItemPoints int NOT NULL DEFAULT 0;
ALTER TABLE _Char ADD Reward int NOT NULL DEFAULT 0;
ALTER TABLE _Guild ADD ItemPoints int NOT NULL DEFAULT 0;
4) Skill Update Procedure
✔ Auto skill cleanup + mastery check system
CREATE PROCEDURE _UPDATE_CHARSKILLS
@nvcCharName nvarchar(30)
AS
...
Sistem:- Eski skill temizler
- Mastery level kontrol eder
- Default skill dışı yeniden ekler
5) Item Add System
CREATE PROCEDURE _AddItemByName
@CharName VARCHAR(64),
@CodeName VARCHAR(128),
@Amount INT,
@OptLevel TINYINT
AS
...
Özellikler:- Inventory slot kontrolü
- Boş slot bulma
- Serial generate sistemi
- Item insert + pool sync
6) Silk Web Purchase Fix
ALTER PROCEDURE CGI.CGI_WebPurchaseSilk
...
Özellikler:- Order duplicate check
- Silk insert / update system
- Transaction log
- Fail-safe rollback
7) TexUI System – Unique Spawn Messages
UIIT_MSG_APPEAR_TIGER_GIRL
UIIT_MSG_APPEAR_IVY
UIIT_MSG_APPEAR_KERBEROS
UIIT_MSG_APPEAR_URRUCHI
UIIT_MSG_APPEAR_BONELORD
Özellik:- Unique spawn global message system
- INT / STR ayrı mesaj desteği
- Dungeon / world announcement system
SONUÇ
Bu devkit ile:
✔ Full filter event system
✔ ItemPoints + Guild sync
✔ Kill / death tracking
✔ Fortress logging
✔ Skill rebuild system
✔ Item injection system
✔ Silk purchase fix
✔ Unique spawn UI pack
tam entegre vSRO server altyapısı elde edilir.
İçeriği görüntülemek için Giriş yapın veya Kayıt olun.
rarpass:https://r10dev.net/
