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

الموقع العربي الاول للعبة Silkroad Online (https://silkroad4arab.com/vb/index.php)
-   قسم الشروحات و البرامج المستخدمة في عمل السيرفرات الخاصة (https://silkroad4arab.com/vb/forumdisplay.php?f=289)
-   -   Add NPC & Add Group & Tab & item (https://silkroad4arab.com/vb/showthread.php?t=514213)

ღ♥ČrimeḾaster♥ღ 13-07-2013 11:15 AM

Add NPC & Add Group & Tab & item
 
http://www2.0zz0.com/2013/07/13/06/635523581.gif

http://www2.0zz0.com/2013/07/13/06/274640419.gif

http://www2.0zz0.com/2013/07/13/08/573080992.png

الـموضع ده شـامل كـل تعديل فـى الـ NPC

1- Add NPC & Edit NPC & Fix Crush Client
2- Add NPC Name & Add Group Name
3- Add item in NPC
4- تغير اتـجاه الـ NPC
5- Add New Group
6- Add New Tab
7-غـير مـكان الـ NPC
نـبتدى الـشرح :rolleyes:

Add NPC

لازم الاول نـعمل زى الـصور عـشان الكورى يـتعمل

http://www2.0zz0.com/2013/07/13/07/271120122.jpg

http://www2.0zz0.com/2013/07/13/07/940295893.jpg

http://www2.0zz0.com/2013/07/13/07/925262752.jpg

http://i.epvpimg.com/r2Jeh.jpg

http://i.epvpimg.com/xIaqh.jpg

http://i.epvpimg.com/rHSCb.jpg

http://www2.0zz0.com/2013/07/13/07/310746023.gif

ودلوقتى بـقا ده الـ Query اللى هنضـيف بيه الـ NPC الـجديد

كود PHP:

DECLARE @CHARNAME VARCHAR (30
DECLARE @
NPCNAME VARCHAR (30
DECLARE @
ADDNEW VARCHAR (30
DECLARE @
GAMEWORDID INT 
SET 
@CHARNAME 'ELjOkeR' --U Char Name 
SET 
@NPCNAME 'Protectors' --U NPC NAME 
SET 
@GAMEWORDID --IMPORTANTGET GAMEWORLD ID FROM THE LOCALY U WANT ADD THE NPC NORMAL CITYs 
SET 
@ADDNEW 'NPC' 
-- 
IF @
ADDNEW 'NPC' BEGIN 
DECLARE @MAXLINK VARCHAR (30) = (SELECT MAX (IDFROM _RefObjChar)+
DECLARE @MAXCOMMONID VARCHAR (30) = (SELECT MAX (IDFROM _RefObjCommon)+
SET IDENTITY_INSERT _RefObjCommon ON 
INSERT INTO _RefObjCommon 
(Service,ID,CodeName128,ObjName128,OrgObjCodeName128,NameStrID128,DescStrID128,CashItem,Bionic,TypeID1,TypeID2,TypeID3,TypeID4,DecayTime,Country 
,Rarity,CanTrade,CanSell,CanBuy,CanBorrow,CanDrop,CanPick,CanRepair,CanRevive,CanUse,CanThrow,Price,CostRepair,CostRevive,CostBorrow,KeepingFee,SellPrice,ReqLevelType1,ReqLevel1,ReqLevelType2,ReqLevel2,ReqLevelType3,ReqLevel3,ReqLevelType4,ReqLevel4,MaxContain,RegionID,Dir,OffsetX,OffsetY,OffsetZ,Speed1,Speed2,Scale,BCHeight,BCRadius 
,EventID,AssocFileObj128,AssocFileDrop128,AssocFileIcon128,AssocFile1_128,AssocFile2_128,LinkVALUES 
(1,@MAXCOMMONID,'NPC_'+@NPCNAME,'xxx','xxx','SN_NPC_'+@NPCNAME,'xxx',0,1,1,2,2,0,5000,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,-1,0,-1,0,-1,0,-1,0,0,0,0,0,0,0,100,0,0,0,'npc\npc\chinawoman_Noblegirl_event.bsr','xxx','xxx','xxx','xxx',@MAXLINK
SET IDENTITY_INSERT _RefObjCommon OFF 
SET IDENTITY_INSERT _RefObjChar ON 
INSERT INTO _RefObjChar 
(ID,Lvl,CharGender,MaxHP,MaxMP,ResistFrozen,ResistFrostbite,ResistBurn,ResistEShock,ResistPoison,ResistZombie,ResistSleep,ResistRoot,ResistSlow,ResistFear 
,ResistMyopia,ResistBlood,ResistStone,ResistDark,ResistStun,ResistDisea,ResistChaos,ResistCsePD,ResistCseMD,ResistCseSTR,ResistCseINT,ResistCseHP,ResistCseMP,Resist24,ResistBomb,Resist26 
,Resist27,Resist28,Resist29,Resist30,Resist31,Resist32,InventorySize,CanStore_TID1,CanStore_TID2,CanStore_TID3,CanStore_TID4,CanBeVehicle,CanControl,DamagePortion,MaxPassenger,AssocTactics,PD,MD,PAR,MAR,ER,BR,HR,CHR 
,ExpToGive,CreepType,Knockdown,KO_RecoverTime,DefaultSkill_1,DefaultSkill_2,DefaultSkill_3,DefaultSkill_4,DefaultSkill_5,DefaultSkill_6,DefaultSkill_7,DefaultSkill_8,DefaultSkill_9,DefaultSkill_10,TextureType,Except_1 
,Except_2,Except_3,Except_4,Except_5,Except_6,Except_7,Except_8,Except_9,Except_10,LinkVALUES 
(@MAXLINK,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,336860180,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
SET IDENTITY_INSERT _RefObjChar OFF 
SET IDENTITY_INSERT _RefShop ON 
DECLARE @ShopID VARCHAR (30) = (SELECT MAX (IDFROM _RefShop)+
INSERT INTO _RefShop 
(Service,Country,ID,CodeName128,Param1,Param1_Desc128,Param2,Param2_Desc128,Param3,Param3_Desc128,Param4,Param4_Desc128
VALUES (1,15,@ShopID,'STORE_'+@NPCNAME,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx'
SET IDENTITY_INSERT _RefShop OFF 
SET IDENTITY_INSERT _RefShopGroup ON 
DECLARE @ShopGroupID VARCHAR (30) = (SELECT MAX (IDFROM _RefShopGroup)+
INSERT INTO _RefShopGroup 
(Service,Country,ID,CodeName128,RefNPCCodeName,Param1,Param1_Desc128,Param2,Param2_Desc128,Param3,Param3_Desc128,Param4,Param4_Desc128
VALUES (1,15,@ShopGroupID,'GROUP_STORE_'+@NPCNAME,'NPC_'+@NPCNAME,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx'
SET IDENTITY_INSERT _RefShopGroup OFF 
SET IDENTITY_INSERT _RefShopItemGroup ON 
DECLARE @ShopItemID VARCHAR (30) = (SELECT MAX (GROUPIDFROM _RefShopItemGroup)+
INSERT INTO _RefShopItemGroup 
(Service,GroupID,CodeName128,StrID128_Group
VALUES (1,@ShopItemID,'STORE_'+@NPCNAME+'_GROUP1','SN_STORE_'+@NPCNAME+'_GROUP1'
SET IDENTITY_INSERT _RefShopItemGroup OFF 
SET IDENTITY_INSERT _RefShopTab ON 
DECLARE @ShopTabID VARCHAR (30)= (SELECT MAX (IDFROM _RefShopTab)+
INSERT INTO _RefShopTab 
(Service,Country,ID,CodeName128,RefTabGroupCodeName,StrID128_Tab
VALUES (1,15,@ShopTabID,'STORE_'+@NPCNAME+'_TAB1','STORE_'+@NPCNAME+'_GROUP1','SN_TAB_Stones'
SET IDENTITY_INSERT _RefShopTab OFF 
SET IDENTITY_INSERT _RefShopTabGroup ON 
DECLARE @ShopTabGroupID VARCHAR (30) = (SELECT MAX (IDFROM _RefShopTabGroup)+
INSERT INTO _RefShopTabGroup 
(Service,Country,ID,CodeName128,StrID128_Group
VALUES (1,15,@ShopTabGroupID,'STORE_'+@NPCNAME+'_GROUP1','SN_STORE_'+@NPCNAME+'_GROUP1'
SET IDENTITY_INSERT _RefShopTabGroup OFF 
INSERT INTO _RefMappingShopGroup VALUES 
(1,15,'GROUP_STORE_'+@NPCNAME,'STORE_'+@NPCNAME
INSERT INTO _RefMappingShopWithTab VALUES (1,15,'STORE_'+@NPCNAME,'STORE_'+@NPCNAME+'_GROUP1'
DECLARE @
TACTICSID INT SET @TACTICSID = (SELECT MAX (dwTacticsIDFROM Tab_RefTactics)+10 
INSERT INTO Tab_RefTactics VALUES 
(@TACTICSID,@MAXCOMMONID,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'NPC_'+@NPCNAME
BEGIN
DECLARE @HIVEID INT  SET @HIVEID = (SELECT MAX (dwHiveIDFROM Tab_RefHive)+
INSERT INTO Tab_RefHive VALUES 
(@HIVEID,0,0,0,0,0,0,@GAMEWORDID,2,'NPC_'+@NPCNAME
END
BEGIN
DECLARE @REGION VARCHAR (30SET @REGION = (SELECT (LatestRegionFROM _Char WHERE CharName16 = @CHARNAME
DECLARE @
POSX VARCHAR (30SET @POSX = (SELECT (POSXFROM _Char WHERE CharName16 = @CHARNAME
DECLARE @
POSY VARCHAR (30SET @POSY = (SELECT (POSYFROM _Char WHERE CharName16 = @CHARNAME
DECLARE @
POSZ VARCHAR (30SET @POSZ = (SELECT (POSZFROM _Char WHERE CharName16 = @CHARNAME
DECLARE @
NESTID INT SET @NESTID = (SELECT MAX (dwNestIDFROM Tab_RefNest)+
INSERT INTO Tab_RefNest VALUES 
(@NESTID,@HIVEID,@TACTICSID,@REGION,@POSX,@POSY,@POSZ,0,0,0,0,0,0,1,0,1,0
END
PRINT 'add this line to characterdata_45000 @ server_dep\silkroad\textdata' 
PRINT '' 
PRINT '1    '+@MAXCOMMONID+'    '+@NPCNAME+'    xxx    xxx    '+'SN_NPC_'+@NPCNAME+'    xxx    0    1    1    2    2    0    5000    3    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    -1    0    -1    0    -1    0    -1    0    -1    0    0    0    0    0    0    0    100    0    0    0    npc\npc\chinawoman_Noblegirl_event.bsr    xxx    xxx    xxx    xxx    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    336860180    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0' 
PRINT '' 
PRINT 'Add this line to refshop.txt @ server_dep\silkroad\textdata' 
PRINT '' 
PRINT '1    15    '+@SHOPID+'    '+'STORE_'+@NPCNAME+'    -1    xxx    -1    xxx    -1    xxx    -1    xxx' 
PRINT '' 
PRINT 'Add this line to refshopgroup.txt @ server_dep\silkroad\textdata' 
PRINT '' 
PRINT '1    15    '+@SHOPGROUPID+'    '+'GROUP_STORE_'+@NPCNAME+'    '+'NPC_'+@NPCNAME+'    -1    xxx    -1    xxx    -1    xxx    -1    xxx' 
PRINT '' 
PRINT 'Add this line to shopgroupdata.txt @ server_dep\silkroad\textdata' 
PRINT '' 
PRINT '1    '+@SHOPITEMID+'    '+'STORE_'+@NPCNAME+'_GROUP1    '+'SN_STORE_'+@NPCNAME+'_GROUP1' 
PRINT '' 
PRINT 'Add this line to refshoptab.txt @ server_dep\silkroad\textdata' 
PRINT '' 
PRINT '1    15    '+@SHOPTABID+'    '+'STORE_'+@NPCNAME+'_TAB1    '+'STORE_'+@NPCNAME+'_GROUP1     SN_TAB_Stones' 
PRINT '' 
PRINT 'Add this line to refshoptabgroup.txt @ server_dep\silkroad\textdata' 
PRINT '' 
PRINT '1    15    '+@SHOPTABGROUPID+'    '+'STORE_'+@NPCNAME+'_GROUP1    '+'SN_STORE_'+@NPCNAME+'_GROUP1' 
PRINT '' 
PRINT 'Add this line to refmappingshopgroup.txt @ server_dep\silkroad\textdata' 
PRINT '' 
PRINT '1    15    '+'GROUP_STORE_'+@NPCNAME+'    '+'STORE_'+@NPCNAME 
PRINT '' 
PRINT 'Add this line to refmappingshopwithtab.txt @ server_dep\silkroad\textdata' 
PRINT '' 
PRINT '1    15    '+'STORE_'+@NPCNAME+'    '+'STORE_'+@NPCNAME+'_GROUP1' 
PRINT '' 
PRINT 'A New NPC Has ADD Succesfuly Restart U Server and Login in '+@CHARNAME 
END 

كـده كل حـاجة تـمام الـ Query هيـطلعلك Lines عشان تحتـها فى الـ Media.pk2 احـنا بقـا هنعدل الـمسافات و فى characterdata_45000 مثـال احـنا عملـنا اسم الن بى سى News
الـ SQL هيديك الـ Lines مكتوب New بس احـنا بقا هنعدلها ونخليها كدة NPC_News

كدة تـمام


http://www2.0zz0.com/2013/07/13/07/310746023.gif

الـ NPC اتعمل بس بدون اسم فى الـجيم ولا اسم جروب !!

1- عشـان اسم الجروب هنضيف السطر ده فى Textuisystem فى الميديا

كود بلغة HTML:

1        SN_STORE_Newitem_GROUP1        ?? ??? ??/??/??        0        0        0        0        0        Purchase/ Sell/ item / Avatar Rare / New        Purchase/ Sell/ item / Avatar Rare / New        0        0        0        0        0        0
حط اسم النـ بى سى بتاعك بدل Newitem

http://www2.0zz0.com/2013/07/13/07/310746023.gif

2-عشان اسم الـ NPC داخل اللعبة هتضيف الـسطر ده فى textdata_object فى الميديا

كود بلغة HTML:

1        SN_NPC_YouNPC                                                                item Nova DG11       
عدل على YouNPC باسم ال NPC بتاعك

http://www2.0zz0.com/2013/07/13/07/310746023.gif

Add item in NPC

لازم تـعمل زى الـصور عـشان الـ Query يشـغل مـعاك

http://www2.0zz0.com/2013/07/13/07/310746023.gif

http://www2.0zz0.com/2013/07/13/07/344038676.jpg

http://www2.0zz0.com/2013/07/13/07/315634087.jpg

http://www2.0zz0.com/2013/07/13/07/696334391.jpg

http://www2.0zz0.com/2013/07/13/07/884861931.jpg

http://www2.0zz0.com/2013/07/13/07/750123394.gif

Query Add item in NPC
كود PHP:

USE SRO_VT_SHARD
GO
DECLARE @ID int
DECLARE @INDEX int
DECLARE @CodeName varchar(128)
DECLARE @
PackageName varchar(128)
DECLARE @
DescSTRID varchar(128)
DECLARE @
File varchar(128)
DECLARE @
Price int
DECLARE @SilkPrice int
DECLARE @Slot tinyint
DECLARE @TAB varchar(128)
DECLARE @
Data int
DECLARE @SkipScrapOfPackageItem int 0
DECLARE @SkipPackageItem int 0
DECLARE @SkipPricePolicyOfItem int 0
--- Set Variables
SET 
@CodeName 'ITEM_EU_SHIELD_08_C_RARE' -- Item CodeName in RefObjCommon
SET 
@Price 5000000 -- Set 0 if you don't want to set Gold Price
SET @SilkPrice = 256 -- Set 0 if you don'
t want to set Silk Price
SET 
@TAB 'STORE_Honor_TAB1' -- Tab name in NPC, For _RefShopGoods
SET 
@PackageName 'PACKAGE_'+@CodeName -- Do not edit if you don't know what are you doing.
--- you don'
t need to touch here...
IF (@
CodeName '')
BEGIN
    
PRINT 'You have to edit CodeName..!'
    
PRINT 'FAILED.'
    
RETURN
END
IF ((SELECT COUNT(IDFROM _RefObjCommon WHERE CodeName128 = @CodeName) < 1)
BEGIN
    
PRINT 'There is no item with this CodeName..!'
    
PRINT 'FAILED.'
    
RETURN
END
IF (@Price 0)
BEGIN
    
PRINT 'Price is not VALID..!'
    
PRINT 'FAILED.'
    
RETURN
END
IF (@SilkPrice 0)
BEGIN
    
PRINT 'Silk Price is not VALID..!'
    
PRINT 'FAILED.'
    
RETURN
END
IF ((SELECT COUNT(IDFROM _RefShopTab WHERE CodeName128 = @TAB) < 1)
BEGIN
    
PRINT 'TAB VALUE IS NOT VALID..!'
    
PRINT 'FAILED.'
    
RETURN
END
IF ((SELECT COUNT (RefPackageItemCodeNameFROM _RefShopGoods WHERE RefPackageItemCodeName = @PackageName AND RefTabCodeName = @TAB) > 0)
BEGIN
    
PRINT 'There is already same item in same tab..!'
    
PRINT 'FAILED.'
    
RETURN
END
IF ((SELECT COUNT (RefPackageItemCodeNameFROM _RefScrapOfPackageItem WHERE RefPackageItemCodeName = @PackageName) > 0)
BEGIN
    
PRINT 'There is already an entry for this item, skipping @_RefScrapOfPackageItem table..!'
    
SET @SkipScrapOfPackageItem 1
END
IF ((SELECT COUNT (CodeName128FROM _RefPackageItem WHERE CodeName128 = @PackageName) > 0)
BEGIN
    
PRINT 'There is already an entry for this item, skipping @_RefPackageItem table..!'
    
SET @SkipPackageItem 1
END
IF ((SELECT COUNT (PaymentDeviceFROM _RefPricePolicyOfItem WHERE RefPackageItemCodeName = @PackageName AND PaymentDevice '1') > 0)
BEGIN
    
PRINT 'There is already an entry for this item with same PaymentDevice, skipping @_RefPricePolicyOfItem table..! (Gold)'
    
SET @SkipPricePolicyOfItem 1
END
IF ((SELECT COUNT (PaymentDeviceFROM _RefPricePolicyOfItem WHERE RefPackageItemCodeName = @PackageName AND PaymentDevice '2') > 0)
BEGIN
    
PRINT 'There is already an entry for this item with same PaymentDevice, skipping @_RefPricePolicyOfItem table..! (Silk)'
    
IF (@SkipPricePolicyOfItem 1)
    
BEGIN
        SET 
@SkipPricePolicyOfItem 3
    END
    
ELSE
    
BEGIN
        SET 
@SkipPricePolicyOfItem 2
    END
END
IF (@SilkPrice 0) AND (@Price 0)
BEGIN
    
PRINT 'You need to set a price, at least one !'
    
PRINT 'FAILED.'
    
RETURN
END
SELECT TOP 1 
@ID ID FROM _RefPackageItem ORDER BY ID DESC
SET 
@ID = @ID 1
SELECT TOP 1 
@INDEX = [IndexFROM _RefScrapOfPackageItem ORDER BY [IndexDESC
SET 
@INDEX = @INDEX 1
SELECT TOP 1 
@Slot SlotIndex FROM _RefShopGoods WHERE RefTabCodeName = @TAB ORDER BY SlotIndex DESC
IF (@Slot 0)
BEGIN
    SET 
@Slot = @Slot 1
END
ELSE IF (@Slot 0)
BEGIN
    SET 
@Slot = @Slot 1
END
ELSE
BEGIN
    SET 
@Slot 0
END
SET 
@DescSTRID 'SN_' + @CodeName '_TT_DESC'
SELECT @File AssocFileIcon128 FROM _RefObjCommon WHERE CodeName128 = @CodeName
IF (@CodeName LIKE '%RING%' OR @CodeName LIKE '%NECKLACE%' OR @CodeName LIKE '%ARCHEMY%')
BEGIN
    SET 
@Data 1
END
ELSE
BEGIN
    SELECT 
@Data Dur_U FROM _RefObjItem WHERE ID = (SELECT Link FROM _RefObjCommon WHERE CodeName128 = @CodeName)
END
BEGIN TRANSACTION
IF (@SkipPackageItem 0)
BEGIN
    
--SET IDENTITY_INSERT _RefPackageItem ON
    INSERT _RefPackageItem 
([Service], CountryIDCodeName128SaleTagExpandTermNameStrIDDescStrIDAssocFileIconParam1Param1_Desc128Param2Param2_Desc128Param3Param3_Desc128Param4Param4_Desc128VALUES (115, @ID, @PackageName0'EXPAND_TERM_ALL''SN_'+@CodeName, @DescSTRID, @File, -1'xxx', -1'xxx', -1'xxx', -1'xxx')
        IF (@@
ERROR <> 0)  
        
BEGIN
            
PRINT 'AN ERROR HAPPENED WHILE ADDING TO _RefPackageItem, Rolling back...'
            
ROLLBACK TRANSACTION
            
RETURN
        
END
    
PRINT 'Added to _RefPackageItem !'
    
--SET IDENTITY_INSERT _RefPackageItem OFF
END
IF (@SkipScrapOfPackageItem 0)
BEGIN
    INSERT _RefScrapOfPackageItem 
(ServiceCountryRefPackageItemCodeNameRefItemCodeNameOptLevelVarianceDataMagParamNumMagParam1MagParam2MagParam3MagParam4MagParam5MagParam6MagParam7MagParam8MagParam9MagParam10MagParam11MagParam12Param1Param1_Desc128Param2Param2_Desc128Param3Param3_Desc128Param4Param4_Desc128, [Index]) VALUES (115, @PackageName, @CodeName00, @Data0000000000000, -1'xxx', -1'xxx', -1'xxx', -1'xxx', @INDEX)
        IF (@@
ERROR <> 0)  
        
BEGIN
            
PRINT 'AN ERROR HAPPENED WHILE ADDING TO _RefScrapOfPackageItem, Rolling back...'
            
ROLLBACK TRANSACTION
            
RETURN
        
END
    
PRINT 'Added to _RefScrapOfPackageItem !'
END
IF (@SkipPricePolicyOfItem OR @SkipPricePolicyOfItem AND @Price 0)
BEGIN
    INSERT _RefPricePolicyOfItem 
(ServiceCountryRefPackageItemCodeNamePaymentDevicePreviousCostCostParam1Param1_Desc128Param2Param2_Desc128Param3Param3_Desc128Param4Param4_Desc128VALUES (115, @PackageName10, @Price, -1'xxx', -1'xxx', -1'xxx', -1'xxx')
        IF (@@
ERROR <> 0)  
        
BEGIN
            
PRINT 'AN ERROR HAPPENED WHILE ADDING TO _RefPricePolicyOfItem, Rolling back...'
            
ROLLBACK TRANSACTION
            
RETURN
        
END
    
PRINT 'Added to _RefPricePolicyOfItem, PaymentDevice = 1 (Gold)'
END
IF (@SkipPricePolicyOfItem OR @SkipPricePolicyOfItem AND @SilkPrice 0)
BEGIN
    INSERT _RefPricePolicyOfItem 
(ServiceCountryRefPackageItemCodeNamePaymentDevicePreviousCostCostParam1Param1_Desc128Param2Param2_Desc128Param3Param3_Desc128Param4Param4_Desc128VALUES (115, @PackageName20, @SilkPrice, -1'xxx', -1'xxx', -1'xxx', -1'xxx')
        IF (@@
ERROR <> 0)  
        
BEGIN
            
PRINT 'AN ERROR HAPPENED WHILE ADDING TO _RefPricePolicyOfItem, Rolling back...'
            
ROLLBACK TRANSACTION
            
RETURN
        
END
    
PRINT 'Added to _RefPricePolicyOfItem, PaymentDevice = 2 (Silk)'
END
ELSE
BEGIN
    
PRINT 'There is already silk / gold price, skipping _RefPricePolicyOfItem table...'
END
INSERT _RefShopGoods 
(ServiceCountryRefTabCodeNameRefPackageItemCodeNameSlotIndexParam1Param1_Desc128Param2Param2_Desc128Param3Param3_Desc128Param4Param4_Desc128VALUES (115, @TAB, @PackageName, @Slot, -1'xxx', -1'xxx', -1'xxx', -1'xxx')
    IF (@@
ERROR <> 0)  
    
BEGIN
        
PRINT 'An error happened while adding to _RefShopGoods table'
        
PRINT 'FAILED.'
        
ROLLBACK TRANSACTION
        
RETURN
    
END
    
PRINT 'Added to _RefShopGoods, DONE!'
COMMIT TRANSACTION 

http://www2.0zz0.com/2013/07/13/07/750123394.gif

Add New Tab

كود PHP:

DECLARE @CHARNAME VARCHAR (30)
DECLARE @
NPCNAME VARCHAR (30)
DECLARE @
ADDNEW VARCHAR (30)
DECLARE @
TABNAME VARCHAR (30)
DECLARE @
TABNUMBER VARCHAR (30
DECLARE @
TABNEW VARCHAR (30)
DECLARE @
GROUPNUMBER VARCHAR (30
DECLARE @
GROUPNEW VARCHAR (30)
--
SET @ADDNEW 'TAB' -- 'NPC' to add a new npc'TAB' for add a new Tab'GROUP' for add a new group!
SET @CHARNAME 'ELjOkeR' --U Char Name
SET 
@NPCNAME 'Avatars Mall' --U NPC NAME
SET 
@GROUPNUMBER  1
SET 
@TABNUMBER 2
SET 
@TABNAME 'Euro'
--
IF @
TABNUMBER 2 SET @TABNEW '_TAB2'
IF @TABNUMBER 3 SET @TABNEW '_TAB3'
IF @TABNUMBER 4 SET @TABNEW '_TAB4'
IF @GROUPNUMBER 1 SET @GROUPNEW '_GROUP1'
IF @GROUPNUMBER  2 SET @GROUPNEW '_GROUP2'
IF @GROUPNUMBER  3 SET @GROUPNEW '_GROUP3'
IF @GROUPNUMBER  4 SET @GROUPNEW '_GROUP4'
IF @GROUPNUMBER  5 SET @GROUPNEW '_GROUP5'
IF @GROUPNUMBER  6 SET @GROUPNEW '_GROUP6'
IF @ADDNEW 'TAB' BEGIN
SET IDENTITY_INSERT _RefShopTab ON
DECLARE @ShopTabID VARCHAR (30SET @ShopTabID = (SELECT MAX (IDFROM _RefShopTab)+1
INSERT INTO _RefShopTab 
(Service,Country,ID,CodeName128,RefTabGroupCodeName,StrID128_Tab)
VALUES (1,15,@ShopTabID,'STORE_'+@NPCNAME+@TABNEW,'STORE_'+@NPCNAME+@GROUPNEW,'SN_'+@TABNAME)
SET IDENTITY_INSERT _RefShopTab OFF
PRINT ''
PRINT 'New Tab added Sucessfully add this new line to refshoptab.txt @ server_dep\silkroad\textdata' 
PRINT '1    15    '+@SHOPTABID+'    STORE_'+@NPCNAME+@TABNEW+'    STORE_'+@NPCNAME+@GROUPNEW+'     SN_TAB_'+@TABNAME
END 


http://www2.0zz0.com/2013/07/13/07/750123394.gif

Add New Group

كود PHP:

DECLARE @CHARNAME VARCHAR (30)
DECLARE @
NPCNAME VARCHAR (30)
DECLARE @
ADDNEW VARCHAR (30)
DECLARE @
GROUPNUMBER VARCHAR (30
DECLARE @
GROUPNEW VARCHAR (30)
SET @CHARNAME '[GM] TIEKO' --U Char Name
SET 
@NPCNAME 'STATIC' --U NPC NAME
SET 
@GROUPNUMBER  2
SET 
@ADDNEW 'GROUP'
--
IF @
GROUPNUMBER  2 SET @GROUPNEW '_GROUP2'
IF @GROUPNUMBER  3 SET @GROUPNEW '_GROUP3'
IF @GROUPNUMBER  4 SET @GROUPNEW '_GROUP4'
IF @GROUPNUMBER  5 SET @GROUPNEW '_GROUP5'
IF @GROUPNUMBER  6 SET @GROUPNEW '_GROUP6'
IF @ADDNEW 'GROUP' BEGIN 
SET IDENTITY_INSERT _RefShopTabGroup ON
DECLARE @ShopTabGroupID VARCHAR (30SET @ShopTabGroupID = (SELECT MAX (IDFROM _RefShopTabGroup)+1
INSERT INTO _RefShopTabGroup 
(Service,Country,ID,CodeName128,StrID128_Group)
VALUES (1,15,@ShopTabGroupID,'STORE_'+@NPCNAME+@GROUPNEW,'SN_STORE_'+@NPCNAME+@GROUPNEW)
SET IDENTITY_INSERT _RefShopTabGroup OFF
INSERT INTO _RefMappingShopWithTab VALUES 
(1,15,'STORE_'+@NPCNAME,'STORE_'+@NPCNAME+@GROUPNEW)
PRINT 
''
PRINT 'New Group Added Succesfully '
PRINT 'add this new line to refshoptabgroup.txt @ server_dep\silkroad\textdata'
PRINT '1    15    '+@SHOPTABGROUPID+'    STORE_'+@NPCNAME+@GROUPNEW+'    SN_STORE_'+@NPCNAME+@GROUPNEW
PRINT ''
PRINT 'add this new line to refmappingshopwithtab.txt @ server_dep\silkroad\textdata'
PRINT '1    15    STORE_'+@NPCNAME+'    STORE_'+@NPCNAME+@GROUPNEW
END 

http://www2.0zz0.com/2013/07/13/07/750123394.gif

تغير اتـجاه الـ NPC هنـفتح الـ SQL

SRO_VT_SHARD / RefHive

نـجيب الـ ID من اسم الـ NPC وبعدين نـروح على RefNest

فى dwHiveID هـندور على الـ ID بتاع اللى NPC لاقـنا وكلو تـمام ! فى wInitiaalDir نكتب بقـا التجاه اللى عايزنو بنظر اليه

West = -32767
South = -16384
Earth = 0
North = +16384

صـور للتوضيح

http://www6.0zz0.com/2013/07/13/08/274533353.gif

http://www2.0zz0.com/2013/07/13/08/561208076.jpg

http://www2.0zz0.com/2013/07/13/08/640343075.jpg

http://www2.0zz0.com/2013/07/13/08/891528631.jpg

http://www2.0zz0.com/2013/07/13/08/469505594.jpg

http://www2.0zz0.com/2013/07/13/08/349618996.jpg

http://www6.0zz0.com/2013/07/13/08/274533353.gif

صور لتوضيح الاتجهات

http://www6.0zz0.com/2013/07/13/08/999003572.jpg

http://www6.0zz0.com/2013/07/13/08/311610323.jpg

http://www6.0zz0.com/2013/07/13/08/274533353.gif

غـير مـكان الـ NPC

1-هـتجيب Account وتوقفو فـى الـمكان الـجديد اللى هـننقل ليه الـ NPC
2-هـتجيب اسـم الـ NPC مـثال STORE_Thiefs_TAB1
اسـتخدم الـ Query ده عـشان تـجيب ID الـ NPC
كود PHP:

use SRO_VT_SHARD 
select 
from _RefObjCommon where CodeName128 like 'NPC_Thiefs' 

وبـعدين تـخش على Tab_RefTactics فى dwObjID
تدور على ال ID الى جبتو فوق بتاع ال query
طـب لـقيتو وده طـبعن هـتلاقيه جـمبة رقـم بـتاع dwTacticsID
3- افتح Tab_RefNest
وعلى dwTacticsID تدور على الرقم الى جبتو من الى فات
4-لما تلاقية طبعن ملاحظ ال X & y & z
هتاخد الى فى الاكونت الى حتيطو ال X & y & Z
بس متنساش nRegionDBID
دة فى _char تبقى LatestRegion


تم اضافة بعض الصور الناقصة Hamza FiGo

http://www6.0zz0.com/2013/07/13/08/420804367.gif

BomBom 13-07-2013 03:05 PM

تمام

شرح جميل

elznaty 13-07-2013 04:39 PM

تسلم ايدك طيب ممكن اغير اسم الحاجه اللي انا عملتها ازاي تاني انا غلط في اسم ال tab عاوز اصلحو ازاي

ღ♥ČrimeḾaster♥ღ 13-07-2013 07:56 PM

اقتباس:

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

شرح جميل

شكرا ♥ :mf_laughbounce:

ღ♥ČrimeḾaster♥ღ 13-07-2013 09:11 PM

Update Topic

:smokeing:

MyRȝturn 13-07-2013 09:36 PM

شرح جميل

™GM-Ruza™ 14-07-2013 12:38 AM

برنس :basketball::basketball:

ღ♥ČrimeḾaster♥ღ 14-07-2013 05:38 AM

اقتباس:

المشاركة الأصلية كتبت بواسطة ™GM-Ruza™ (المشاركة 4792058)
برنس :basketball::basketball:

اقتباس:

المشاركة الأصلية كتبت بواسطة ™ MyReturn ™ (المشاركة 4791909)
شرح جميل

Thanks :innocent:

Hoka 14-07-2013 03:15 PM

لازم اعمل للملفات Import في الميديا ؟؟؟؟؟؟
و شكرا تسلم ايدك علي الشرح

ღ♥ČrimeḾaster♥ღ 17-07-2013 08:20 AM

UP :mf_ymca:

MyRȝturn 18-07-2013 07:39 AM

انا استخدمت Add item in NPC
و ظبت كل حاجة بس لما عاوز اشتريها مش بيرضى تتشرى

ღ♥ČrimeḾaster♥ღ 04-08-2013 07:01 PM

UP :toobad:

elfr3on2010 09-08-2013 12:37 PM

تسلم ايدك

Tammoz 18-08-2013 08:30 PM

tamm

na7al000 19-08-2013 03:15 PM

كل ما اروح عند مكان ال NPC اخد كراش


الساعة الآن 05:57 PM.

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2024, vBulletin Solutions, Inc.