الموقع العربي الاول للعبة Silkroad Online

الموقع العربي الاول للعبة Silkroad Online (https://silkroad4arab.com/vb/index.php)
-   قسم الاسئلة و الاستفسارات لعمل السيرفرات الخاصة (https://silkroad4arab.com/vb/forumdisplay.php?f=226)
-   -   ارجو الحل (https://silkroad4arab.com/vb/showthread.php?t=627279)

drfoxman 08-10-2018 01:58 PM

ارجو الحل
 
انا السيرفر عندى ماكس +20 ب ادفنس بس فى اكتر من لاعب عملو +25 عايزهم يرجعو +20 ومحدش يعرف يرفع اكتر من +20 ب ادفنس

GM.Samo 08-10-2018 02:31 PM

رد: ارجو الحل
 
الادفنس اللي الناس بتعمل بيه + كام
ممكن يكون بيعملو بادفهس اعلي بيقع من مكان يا اما انتا مش عامل ماكس بلص
بيتعمل بي كويري او فيلتر والافضل فلتر عشان الكويري مش مضمون

.Gamer. 08-10-2018 03:14 PM

رد: ارجو الحل
 
انت بتستخدم جارد ايه

drfoxman 08-10-2018 03:39 PM

رد: ارجو الحل
 
اقتباس:

المشاركة الأصلية كتبت بواسطة GM.Samo (المشاركة 5356226)
الادفنس اللي الناس بتعمل بيه + كام
ممكن يكون بيعملو بادفهس اعلي بيقع من مكان يا اما انتا مش عامل ماكس بلص
بيتعمل بي كويري او فيلتر والافضل فلتر عشان الكويري مش مضمون

ادفنس +5

drfoxman 08-10-2018 03:40 PM

رد: ارجو الحل
 
اقتباس:

المشاركة الأصلية كتبت بواسطة .Gamer. (المشاركة 5356229)
انت بتستخدم جارد ايه

مش بستخدم جرد انا لسه بدأ الموضوع ده

GM.Samo 08-10-2018 03:42 PM

رد: ارجو الحل
 
اقتباس:

المشاركة الأصلية كتبت بواسطة drfoxman (المشاركة 5356238)
ادفنس +5

ده ل كله ولا في اعلي من ٥ و لو كله واحد يبقا استخدم جارد اللي هوا الفلتر عشان تعمل ماكس بلص

drfoxman 08-10-2018 04:01 PM

رد: ارجو الحل
 
اقتباس:

المشاركة الأصلية كتبت بواسطة GM.Samo (المشاركة 5356240)
ده ل كله ولا في اعلي من ظ¥ و لو كله واحد يبقا استخدم جارد اللي هوا الفلتر عشان تعمل ماكس بلص

مفيش اعلى من كده احيب منين الفلتر ده زى مقولت لحضرتك انا مبتدا

.Gamer. 08-10-2018 08:01 PM

رد: ارجو الحل
 
شوف قسم الحمايه هتلاقي كتير

Scrox 09-10-2018 05:31 AM

رد: ارجو الحل
 
حاضرتك مافيش غير حل واحد انك تعمل ROLLBACK للجيم و تستعمل فلتر أو جارد وتعديل عليه يبقى اى حد آخره +20

d0lars 09-10-2018 06:55 AM

رد: ارجو الحل
 
يا تعمل رول باك يا امه لو ال طلع فوق 20 تنزله بلص من smc
ده لوكام وكام واحد بعني مش كتير
وضروري تشتغل بجارد عشان هينفعك في حجات كتير غير +

ehab1337 09-10-2018 08:24 AM

رد: ارجو الحل
 
ممكن حضرتك تستخدم الجارد ده انا معدله بنفسي و ارجو اني اكون ساعدت حضرتك

https://mega.nz/#!PixkWawZ!bljxPge8T...9zw7r3LlgLvoUg

كلمه شكراا تكفيني ##

M.HADAD 09-10-2018 08:57 AM

رد: ارجو الحل
 
استخدم دا هيرجعلك البلص فى الجيم كلها
كود بلغة HTML:

USE SRO_VT_SHARD
UPDATE _Items SET OptLevel = 15 WHERE OptLevel > 15

اما بالنسبه انك تعمل ماكس بلص احسن حاجه انك تستخدم جارد زى ما الناس دى قالتلك

d0lars 09-10-2018 09:24 AM

رد: ارجو الحل
 
اقتباس:

المشاركة الأصلية كتبت بواسطة M.HADAD (المشاركة 5356339)
استخدم دا هيرجعلك البلص فى الجيم كلها
كود بلغة HTML:

USE SRO_VT_SHARD
UPDATE _Items SET OptLevel = 15 WHERE OptLevel > 15

اما بالنسبه انك تعمل ماكس بلص احسن حاجه انك تستخدم جارد زى ما الناس دى قالتلك

ما هوه كده ياباشا ال معهوش +هيبقي معاه مش حل للراجل يعني هيخرب الدنيا كده

M.HADAD 09-10-2018 10:12 AM

رد: ارجو الحل
 
اقتباس:

المشاركة الأصلية كتبت بواسطة d0lars (المشاركة 5356342)
ما هوه كده ياباشا ال معهوش +هيبقي معاه مش حل للراجل يعني هيخرب الدنيا كده

مش فاهمك انت مفكر ان دا هيخلى كل الناس معاها +15 دا بيرجع اللى اعلى من + 15 يعنى هوا بيقول الادفنس عنده +5 يعنى كله هيقف على 20 اما اللى معاه اقل هيفضل زى ما هوا

#3mr 09-10-2018 11:22 AM

رد: ارجو الحل
 
أعمل واحد من دول على حسب البلص عندك وأشتغل بفيلتر وحدد الماكس بلص بعد كده بADV

أعمل ده الاول لو منفعشى اعمل التانى

[Procedure: [SRO_VT_LOG].[dbo].[_AddLogItem

كود:

/* Item upgrading */
IF (@Operation = 90 OR @Operation = 160)
BEGIN
        /* Start: Max Plus */
        DECLARE @strDescStrip VARCHAR(128)
        DECLARE @ItemID INT

        DECLARE @MaxOptLevel TINYINT
        SET @MaxOptLevel = 12

        /* Get current fused plus */
        SET @len_desc1 = CHARINDEX (']', @strDesc)
        IF (@len_desc1 = 9)
        BEGIN
                SET @strDesc = SUBSTRING(@strDesc, 0, 9)
                SET @strDescStrip = SUBSTRING(@strDesc, 8, 1)
        END
        ELSE IF (@len_desc1 = 10)
        BEGIN
                SET @strDesc = SUBSTRING(@strDesc, 0, 10)
                SET @strDescStrip = SUBSTRING(@strDesc, 8, 2)
        END
        /* Check if OptLevel above @MaxOptLevel */
        IF (@strDescStrip >= @MaxOptLevel)
        BEGIN
                /* Get ItemID */
                SELECT @ItemID = ID64 from [SRO_VT_SHARD].[dbo].[_Items] WHERE Serial64 = @ItemSerial
                /* Update items if has more than @MaxOptLevel without Adv elixir*/
                UPDATE [SRO_VT_SHARD].[dbo].[_Items] SET OptLevel = @MaxOptLevel WHERE OptLevel > @MaxOptLevel AND Serial64 = @ItemSerial
                /* Delete Adv elixir effect for item if has more than @MaxOptLevel with Adv elixir */
                DELETE FROM [SRO_VT_SHARD].[dbo].[_BindingOptionWithItem] WHERE nItemDBID IN (
                        SELECT a.ID64 FROM [SRO_VT_SHARD].[dbo].[_Items] a WITH (NOLOCK)
                        INNER JOIN [SRO_VT_SHARD].[dbo].[_BindingOptionWithItem] b ON a.ID64 = b.nItemDBID
                        WHERE a.ID64 = @ItemID AND (a.OptLevel + b.nOptValue) > @MaxOptLevel
                        AND b.bOptType = 2
                )
        END
        RETURN -1
        /* End: Max Plus */
END


[Procedure: [SRO_VT_LOG].[dbo].[_AddLogChar


كود:

/* Login/Logout sequence (4 = Login, 6 = Logout) */
IF (@EventID = 4 OR @EventID = 6)
BEGIN
        /*
        * Begin: Item Plus check
        */
        DECLARE @UserJID INT, @GuildID INT, @MaxOptLevel TINYINT
        SET @MaxOptLevel = 12        -- Set Max Plus value (change this)
        /*
        * Get JID and GuildID info
        */
        SELECT @UserJID = a.UserJID, @GuildID = b.GuildID FROM [SRO_VT_SHARD].[dbo].[_User] a WITH (NOLOCK)
                INNER JOIN [SRO_VT_SHARD].[dbo].[_Char] b ON a.CharID = b.CharID WHERE a.CharID = @CharID
        /*
        * 1. INVENTORY: Update items in inventory if has more than +12 without Adv elixir
        */
        UPDATE [SRO_VT_SHARD].[dbo].[_Items] SET OptLevel = @MaxOptLevel WHERE OptLevel > @MaxOptLevel AND ID64 IN (
                SELECT ItemID FROM [SRO_VT_SHARD].[dbo].[_Inventory] WITH (NOLOCK)
                WHERE CharID = @CharID AND ItemID > 0
        )
        /*
        * 2. INVENTORY: Remove Adv elixir effect for items in inventory if has more than +12 with Adv elixir
        */
        DELETE FROM [SRO_VT_SHARD].[dbo].[_BindingOptionWithItem] WHERE nItemDBID IN (
                SELECT a.ItemID FROM [SRO_VT_SHARD].[dbo].[_Inventory] a WITH (NOLOCK)
                INNER JOIN [SRO_VT_SHARD].[dbo].[_Items] b ON a.ItemID = b.ID64
                INNER JOIN [SRO_VT_SHARD].[dbo].[_BindingOptionWithItem] c ON a.ItemID = c.nItemDBID
                WHERE a.CharID = @CharID AND a.ItemID > 0 AND (b.OptLevel + c.nOptValue) > @MaxOptLevel
                AND c.bOptType = 2
        )
        /*
        * 3. PERSONAL STORAGE: Update items in personal storage if has more than +12 without Adv elixir
        */
        UPDATE [SRO_VT_SHARD].[dbo].[_Items] SET OptLevel = @MaxOptLevel WHERE OptLevel > @MaxOptLevel AND ID64 IN (
                SELECT ItemID FROM [SRO_VT_SHARD].[dbo].[_Chest] WITH (NOLOCK)
                WHERE UserJID = @UserJID AND ItemID > 0
        )
        /*
        * 4. PERSONAL STORAGE: Remove Adv elixir effect for items in personal storage if has more than +12 with Adv elixir
        */
        DELETE FROM [SRO_VT_SHARD].[dbo].[_BindingOptionWithItem] WHERE nItemDBID IN (
                SELECT a.ItemID FROM [SRO_VT_SHARD].[dbo].[_Chest] a WITH (NOLOCK)
                INNER JOIN [SRO_VT_SHARD].[dbo].[_Items] b ON a.ItemID = b.ID64
                INNER JOIN [SRO_VT_SHARD].[dbo].[_BindingOptionWithItem] c ON a.ItemID = c.nItemDBID
                WHERE a.UserJID = @UserJID AND a.ItemID > 0 AND (b.OptLevel + c.nOptValue) > @MaxOptLevel
                AND c.bOptType = 2
        )
        /*
        * 5. GUILD: If character is guild member, check Item Plus in Guild Inventory
        */
        IF (@GuildID <> 0)
        BEGIN
                /*
                * 5.1. Update items in guild storage if has more than +12 without Adv elixir
                */
                UPDATE [SRO_VT_SHARD].[dbo].[_Items] SET OptLevel = @MaxOptLevel WHERE OptLevel > @MaxOptLevel AND ID64 IN (
                        SELECT ItemID FROM [SRO_VT_SHARD].[dbo].[_GuildChest] WITH (NOLOCK)
                        WHERE GuildID = @GuildID AND ItemID > 0
                )
                /*
                * 5.2. Remove Adv elixir effect for items in guild storage if has more than +12 with Adv elixir
                */
                DELETE FROM [SRO_VT_SHARD].[dbo].[_BindingOptionWithItem] WHERE nItemDBID IN (
                        SELECT a.ItemID FROM [SRO_VT_SHARD].[dbo].[_GuildChest] a WITH (NOLOCK)
                        INNER JOIN [SRO_VT_SHARD].[dbo].[_Items] b ON a.ItemID = b.ID64
                        INNER JOIN [SRO_VT_SHARD].[dbo].[_BindingOptionWithItem] c ON a.ItemID = c.nItemDBID
                        WHERE a.GuildID = @GuildID AND a.ItemID > 0 AND (b.OptLevel + c.nOptValue) > @MaxOptLevel
                        AND c.bOptType = 2
                )
        END
        /*
        * END: Item Plus check
        */
END



من غير فيلتر ده او ده هيعمل معاك الواجب


الساعة الآن 07:52 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.