الموقع العربي الاول للعبة 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=575092)

Draz 04-01-2015 01:55 AM

مكان النزول
 
السلام عليكم ورحمة الله وبركاتة
بعد اذن كل المنتدى
انا عاوز مساعدة فى تغير مكان نزول الشخصية عاوز كل شخصية تنزل فى مكنها الطبيعى
علشان انا كل ما اجى افتح شخصية بيجى كدة
http://im87.gulfup.com/r11eqj.jpg
ياريت الرد بسرعة

Hamza FiGo 04-01-2015 03:13 AM

يا باشا اولا اتاكد انك فاتح المدن اللي بتنزل فيها الشخصيات
وشيل شوية Items من AddNewChar

ومكان النزول حط الكيوري دة في AddNewChar


كود:

USE [SRO_VT_SHARD]
GO
/****** Object:  StoredProcedure [dbo].[_AddNewChar]    Script Date: 14/03/2010 08:20:45 ص ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO




ALTER PROCEDURE [dbo].[_AddNewChar]
        @UserJID                        INT,       
        --@CharSlot                        INT,       
        @RefCharID                        INT,       
        @CharName                        varchar (64),       
        @CharScale                        tinyINT,       
        @StartRegionID                        INT,       
        @StartPos_X                        real,       
        @StartPos_Y                        real,       
        @StartPos_Z                        real,       
        @DefaultTeleport        INT,       
        @RefMailID                        INT,       
        @RefPantsID                        INT,       
        @RefBootsID                        INT,       
        @RefWeaponID                INT,       
        @RefShield                        INT,       
        @DurMail                        tinyINT,       
        @DurPants                        tinyINT,       
        @DurBoots                        tinyINT,       
        @DurWeapon                        tinyINT,       
        @DurShield                        tinyINT,       
        @DefaultArrow                INT       
AS   
   
SET NOCOUNT ON     

        DECLARE @Slot  INT       
        DECLARE @temp  INT       
               
        DECLARE @NewCharID  INT       
        SET @NewCharID = 0       
     
     
        -----------------------------------------------------------------------------       
        -- 1. أ„³¸¯أ…أچ ½½·أ” ³أ‘¹أ¶°آ، validأ‡أ‘ °أچأ€أژأپأ¶, ±×¸®°أ* آ؛أ³½½·أ”أ€أŒ ¸أ‚´أ‚أپأ¶ ¸أ•أ€أ؛ أƒ¼أ…©أ‡أ‘´أ™.       
        -----------------------------------------------------------------------------       
           
        -- start by novice.       
        SELECT @temp = count(CharID) FROM _User WITH (NOLOCK) WHERE UserJID = @UserJID       
             
        IF (@temp >= 4)       
        BEGIN       
                -- ³أٹ¹« ¸¹أ€أڑ³آھ       
                RETURN -2       
        END       
        -- finish by novice.       
     
        -----------------------------------------------------------------------------       
        -- 2. أ„³¸¯أ…أچ أƒأں°آ،أ‡أڈ±â       
        -----------------------------------------------------------------------------       
        IF (@CharScale > 68) -- 0100 0100 --> 68 أ€أŒ´أ™!       
        BEGIN       
                -- أ„³¸¯أ…أچ »أ½¼آ؛ ½أ‡أ†أگ! ½آ؛أ„أ‰أ€أڈ °آھأ€أŒ أ€أŒ»أ³أ‡أڈ´أ™!       
                RETURN -3       
        END
       
        EXEC @temp = _IsExistingCharName @CharName       
        IF (@temp <> 0)       
        BEGIN       
                -- أ€أŒ¹أŒ »çآ؟ëأپأںأ€أژ أ€أŒ¸§أ€أŒ¶أ³´أ‚µ¥?       
                RETURN -4       
        END       
   
BEGIN TRANSACTION
   
        -- أ€أژ´أ¸½أƒ½آ؛أ…أ›أ€أŒ أ€ûآ؟ëµأ‡¸é¼* ¸¶أپأ¶¸·آ؟آ، WorldIDآ؟أچ 1°آھأ€» ´أµ ³أ–¾î أپأ–¾أ؛´أ™!     
        INSERT INTO _Char (RefObjID, CharName16, Scale, Strength, Intellect, LatestRegion,PosX, PosY, PosZ, AppointedTeleport, InventorySize,     
                                LastLogout, CurLevel, MaxLevel, RemainGold, RemainStatPoint, RemainSkillPoint, HP, MP, JobLvl_Trader, JobLvl_Hunter, JobLvl_Robber, WorldID, HwanLevel)     
        VALUES (@RefCharID, @CharName, @CharScale, 20, 20, @StartRegionID, @StartPos_X, @StartPos_Y, @StartPos_Z, @DefaultTeleport, 109,     
                                GetDate(), 1, 1, 1000000, 0, 1000000, 200,200, 1, 1, 1, 1, 0)     
   
        SET @NewCharID = @@IDENTITY       
        IF (@@ERROR <> 0 OR @@ROWCOUNT = 0)       
        BEGIN       
                -- أ„³¸¯أ…أچ »أ½¼آ؛ ½أ‡أ†أگ!       
                ROLLBACK TRANSACTION       
                RETURN -5       
        END       
           
             
        -- start by novice.       
        -- أ€أŒأپ¦ Slot ¾أˆ¾´´أ™.. ±×³أ‰ Insert ¸¸..       
        INSERT INTO _User VALUES (@UserJID, @NewCharID)       
        -- finish by novice.       
     
     
        -----------------------------------------------------------------------------       
        -- 3-1. أ€أ¥آ؛أ± ½½·أ” أƒ¤آ؟أ¬±â       
        -- [أ€أژآ؛¥أ…أ¤¸® ½½·أ” 96°³] + [أ€أ¥آ؛أ±½½·أ” 13°³] <- أ€أژآ؛¥أ…أ¤¸® أˆ®أ€أ¥ ¼*آ؛أ±½آ؛ أˆأ„ 48°³آ؟آ،¼* 96°³·أژ أپأµ°آ،!!!(woos0)
        -----------------------------------------------------------------------------       
        --PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!       
        INSERT INTO _Inventory(CharID, Slot, ItemID)       
          SELECT @NewCharID, cnt, 0       
          FROM _RefDummySlot with( nolock )     
            WHERE cnt < 109       

             
        IF (@@ERROR <> 0)       
        BEGIN       
                -- أ€أژآ؛¥أ…أ¤¸® »أ½¼آ؛ ½أ‡أ†أگ!       
                ROLLBACK TRANSACTION       
                RETURN -7       
        END       

        --PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!       
             
        -- µأ°أ†أ؛أ†®·أژ ¼±أ…أƒأ‡أ‘ ¾أ†أ€أŒأ…أ›أ€» ´أ™½أƒ ³أ–¾îأپأ–أ€أڑ...       
        /* آ؟أ¤·± ¼أ¸¼*·أژ  أپ¤أ€أ‡µأ‡¾î أ€أ–´أ™.       
        0: EQUIP_SLOT_HELM       
        1: EQUIP_SLOT_MAIL,       
        2: EQUIP_SLOT_SHOULDERGUARD,       
        3: EQUIP_SLOT_GAUNTLET,       
        4: EQUIP_SLOT_PANTS,       
        5: EQUIP_SLOT_BOOTS,       
        6: EQUIP_SLOT_WEAPON,       
        7: EQUIP_SLOT_SHIELD or ARROW,       
        8: EQUIP_SLOT_EARRING,       
        9: EQUIP_SLOT_NECKLACE,       
        10: EQUIP_SLOT_L_RING,       
        11: EQUIP_SLOT_R_RING,       
        */       
             
        DECLARE @ItemID BIGINT       
        SET @ItemID = 0       
        -- »أ³°©       
        IF (@RefMailID <> 0)       
        BEGIN       
                EXEC @ItemID =  _FN_ADD_INITIAL_EQUIP @NewCharID, 1, @RefMailID, @DurMail       
                IF (@ItemID <= 0)       
                BEGIN       
                        ROLLBACK TRANSACTION       
                        RETURN -8       
                END       
        END       
        -- ¹أ™أپأ¶       
        IF (@RefPantsID <> 0)       
        BEGIN       
                EXEC @ItemID =  _FN_ADD_INITIAL_EQUIP @NewCharID, 4, @RefPantsID, @DurPants       
                IF (@ItemID <= 0)       
                BEGIN       
                        ROLLBACK TRANSACTION       
                        RETURN -9       
                END       
        END       
        -- Boots       
        IF (@RefBootsID <> 0)       
        BEGIN       
                EXEC @ItemID =  _FN_ADD_INITIAL_EQUIP @NewCharID, 5, @RefBootsID, @DurBoots       
                IF (@ItemID <= 0)       
                BEGIN       
                        ROLLBACK TRANSACTION       
                        RETURN -10       
                END       
        END       
        -- Weapon       
        IF (@RefWeaponID <> 0)       
        BEGIN       
                EXEC @ItemID =  _FN_ADD_INITIAL_EQUIP @NewCharID, 6, @RefWeaponID, @DurWeapon       
                IF (@ItemID <= 0)       
                BEGIN       
                        ROLLBACK TRANSACTION       
                        RETURN -11       
                END       
        END       
        -- ¹أ¦أ†أگ       
        IF (@RefShield <> 0)       
        BEGIN       
                EXEC @ItemID =  _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @RefShield, @DurShield       
                IF (@ItemID <= 0)       
                BEGIN       
                        ROLLBACK TRANSACTION       
                        RETURN -12       
                END       
        END       
        -- أˆ¤½أƒ default·أژ ¼±أ…أƒأ‡أ‘ ¹«±â°آ، أˆ°أ€أŒ¶أ³¸é أˆ*»أ¬ 250°³µéأ€أŒ أˆ°أ…ëµµ أ‡أ”²² أپأک´أ™. أپأ’أ„آ،?       
        IF (@DefaultArrow <> 0)       
        BEGIN       
                EXEC @ItemID =  _FN_ADD_INITIAL_EQUIP @NewCharID, 7, @DefaultArrow, 250       
                IF (@ItemID <= 0)       
                BEGIN       
                        ROLLBACK TRANSACTION       
                        RETURN -13       
                END       
        END


        -----------------------------------------------------------------------------       
        -- 3-2. ¾أ†¹أ™أ…¸ Inventory ½½·أ” أƒ¤آ؟أ¬±â       
        -- [¾أ†¹أ™أ…¸ أ€أژآ؛¥أ…أ¤¸® ½½·أ” 5°³]
        -- APPLY_AVATAR_SYSTEMأ€أŒ أ€ûآ؟ëµأ‡¸é¼* أƒأں°آ،µأ‡´أ‚ آ؛أژآ؛أگ
        -----------------------------------------------------------------------------       
        --PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!       
        INSERT INTO _InventoryForAvatar(CharID, Slot, ItemID)       
          SELECT @NewCharID, cnt, 0
          FROM _RefDummySlot with( nolock )     
            WHERE cnt < 5

             
        IF (@@ERROR <> 0)       
        BEGIN       
                -- ¾أ†¹أ™أ…¸ أ€أژآ؛¥أ…أ¤¸® »أ½¼آ؛ ½أ‡أ†أگ!       
                ROLLBACK TRANSACTION       
                RETURN -14
        END       
        --PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!PATCH WARNING!!!       
             
        -----------------------------------------------------------------------------       
        -- default skill³أ–¾îأپأ–±â       
        -----------------------------------------------------------------------------       
        DECLARE @country tinyINT       
        EXEC @country = _GetObjCountry @RefCharID       
             
        INSERT INTO _CharSkillMastery (CharID, MasteryID, Level)       
        SELECT @NewCharID, MasteryID, 0       
        FROM _RefCharDefault_SkillMastery  with(nolock)     
        WHERE Race = @country or Race = 3       
        IF (@@error <> 0)       
        BEGIN       
                ROLLBACK TRANSACTION       
                RETURN -15       
        END       
        INSERT INTO _CharSkill (CharID,SkillID,Enable)       
        SELECT @NewCharID, SkillID, 1       
        FROM  _RefCharDefault_Skill  with(nolock)     
        WHERE Race = @country or Race = 3       
        IF (@@error <> 0)       
        BEGIN       
                ROLLBACK TRANSACTION       
                RETURN -16       
        END       
        -----------------------------------------------------------------------------       
        -- ±âآ؛» أ„ù½آ؛أ†® ³أ–¾îأپأ–±â
        -----------------------------------------------------------------------------       
        INSERT INTO _CharQuest (CharID, QuestID, Status, AchievementCount, StartTime, EndTime, QuestData1, QuestData2)       
        SELECT @NewCharID, ID, 1, 0, getdate(), getdate(), 0, 0       
        FROM _RefQuest
        WHERE CodeName in (SELECT CodeName FROM _RefCharDefault_Quest  with(nolock) WHERE (Race = @country or Race = 3) and RequiredLevel = 1 and Service = 1)
        IF (@@error <> 0)
        BEGIN
                ROLLBACK TRANSACTION       
                RETURN -17       
        END   
        -----------------------------------------------------------------------------       
        -- Static Avatar Initial Record ³أ–±â       
        -----------------------------------------------------------------------------       
        INSERT INTO _StaticAvatar(CharID) values(@NewCharID)       
        IF (@@ERROR <> 0)       
        BEGIN       
                ROLLBACK TRANSACTION       
                RETURN -18       
        END       
             
        -----------------------------------------------------------------------------       
        -- Trijob أƒ¤آ؟أ¶³أ–±â!!!!!       
        -----------------------------------------------------------------------------       
        INSERT INTO _CharTrijob VALUES (@NewCharID, 0, 1, 0, 0, 0)       
        IF (@@ERROR <> 0)       
        BEGIN       
                -- أ€أژآ؛¥أ…أ¤¸® »أ½¼آ؛ ½أ‡أ†أگ!       
                ROLLBACK TRANSACTION       
                RETURN -19       
        END       
             
        -----------------------------------------------------------------------------       
        -- CharListآ؟آ، ID ³أ–¾îأپأ–±â       
        -----------------------------------------------------------------------------       
        INSERT _CharNameList VALUES(@CharName, @NewCharID)       
             
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_60EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_100EXP_HELP',1,1
             
        -- Quick Slot أپ¤آ؛¸ أ€أ؛أ€أ¥آ؟ë!!!       
        exec _AddNewClientConfig @NewCharID  -- by novice...... for saving client configurations...       

COMMIT TRANSACTION       
             
RETURN @NewCharID


Hamza FiGo 04-01-2015 03:15 AM

ياما لو عايز تظبطه ادخل علي AddNewChar وظبط مكان النزول براحتك. بمعني وقف شخصية في المدينة اللي انت عايزها . وروح علي SRO_VT_SHAR >> _Char

وجيب منه الاحداثيات بتاعته وحطها في AddNewChar

Draz 04-01-2015 02:53 PM

متشكر يا باشا

Draz 04-01-2015 02:55 PM

طب ممكن بعد اذن حضرتك تقولى ازاى اشيل كل الايتم اللى بينزل بية

Hamza FiGo 04-01-2015 03:56 PM

اقتباس:

المشاركة الأصلية كتبت بواسطة midodraz (المشاركة 5147679)
طب ممكن بعد اذن حضرتك تقولى ازاى اشيل كل الايتم اللى بينزل بية

انزل يا باشا تحت خالص في AddNewChar وشيل الايتمز اللي بتبقي زي كدة


كود:

exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_60EXP_HELP',1,1
exec _ADD_ITEM_EXTERN @CharName,'ITEM_ETC_E060118_100EXP_HELP',1,1

ولو الموضوع اتحل بعد اذنك اعمل الموضوع مجاب

Draz 04-01-2015 05:49 PM

اوك شكرا يا باشا

Hamza FiGo 04-01-2015 06:20 PM

اقتباس:

المشاركة الأصلية كتبت بواسطة midodraz (المشاركة 5147718)
اوك شكرا يا باشا

في الخدمة يا باشا


الساعة الآن 04:54 AM.

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