المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : NPC Problem


Admin.White
11-04-2019, 04:53 AM
السلام عليكم
عندي مشكله ف الإن بي سي لما باجي أضيف Group جديد وفيه Table بيحصل إني ال Group/Table بيضافو عادي وبقدر أضيف فيهم أيتمز بدون مشاكل لكن المشكله هنا إني ده بيكون ف الميديا بس لما باجي أشتري أي حاجه من اللي ضيفتها دي بلاقيه بيجبلي أيتمز من ال Group/Table القدام مش اللي أنا ضيفتهم ... أرجو المساعده

Mazika Yasser
11-04-2019, 09:03 AM
حاولت تضيف الايتمز ببرنامج NPC

BuiLt4KiLl
11-04-2019, 02:26 PM
هوا انا للاسف مفهمتش حاجة حضرتك
لكن اعتقد المشكلة ان في Code متكرر أو ID مش متظبط
لو عرفت تشيل الـGroup و الـTab و تشتغل بالـQuries في الموضوع ده (http://www.silkroad4arab.com/vb/showthread.php?t=514213) يكون أفضل

Admin.White
12-04-2019, 01:16 AM
أنا بالفعل شغال بالكيواري لكن المسارات بتاعته كلها واضحه وبالفعل الأيتم ظاهر ف الميديا لكن لما باجي أشتري من الجروب الجديد حاجه بلاقي إني الأيتم شكله إتغير لأيتم من الجروب القديم .. أنا بتكلم لما بضيف 2 جروب ف إن بي سي واحد . وطبها الكود بيكون مختلف تماماً عن الجروب الموجود .. والتابل بتاعته برده بتكون بكود تاني

Zeyad1337
12-04-2019, 09:41 AM
عندي نفس المشكلة وغالبآ بيكون الـ NPC بيكون له عدد معين من الجروبات او الله اعلم
المشكلة دي حصلت معايا لما زهقت معاها عملت NPC جديد وخلاص
انا هقول حضرتك ايه اللي بيحصل بالظبط
انت لما بتعمل جروب جديد وكله تمام وتربط كل حاجة تمام وتبدأ انك تضيف ايتم في الجروب دا لما بتشتري الايتم وتسافر بيتحول لايتم من الموجودين في الـ NPC دا بس في الجـروب القديم مش الجديد يعني علي سبيل المثال انت عملت جروب جديدة لنفترض ان اسمها زياد والقديمة اسمها وايت مثلآ جيت انت ضيف ايتم في زياد واشتريت الايتم دا من زياد وسافرت الايتم بمجرد ما تسافر هيتحول للايتم اللي فـ وايت
شكرآ وياريت حد يحللنا المشكلة دي لاني اتخنقت منها

Admin.White
13-04-2019, 01:40 AM
ماهو دي المشكله مش لاقيلها حل وكنت فاكر أني المشكله ف الداتا نفسها لحد مجربت أضيف ف داتا تانيه لقيت نفس المشكله .. ياريت حد يساعدنا وشكراً جداً

BuiLt4KiLl
13-04-2019, 07:14 PM
حضرتك ده ممكن يكون ناتج ان في IDs متكررة أو ان ID الأيتم في الميديا مش نفسه في الـSQL
جرب حضرتك تشيلهم و تستخدم الـQuery ده
USE SRO_VT_SHARD /* ITEMS TO NPC FOR GOLD by Caipi */
Declare @ItemID int
Declare @yourPrice int
Declare @WhichTAB varchar(74)



SET @ItemID = 42158 /* The Item ID of the Item you want to add to the NPC*/ --## <--
SET @yourPrice = 1 /* The price per Unit */ --## <--
SET @WhichTAB = 'STORE_STATIIC_TABG1' /* To which Tab at which NPC you want to add the Item*/



/* Codename instead of the ID */
Declare @CodeName varchar (74) SET @CodeName = (SELECT CodeName128 FROM _RefObjCommon WHERE ID = @ItemID)

/* Which Itemdata.txt is affected in the Media.pk2*/
Declare @newItemID varchar(5)
Declare @lastPrice varchar(25) SET @lastPrice = (SELECT Price FROM _RefObjCommon WHERE ID = @ItemID)
Declare @yourPriceCHAR varchar(25) SET @yourPriceCHAR = @yourPrice
IF (@ItemID < 5000) SET @newItemID = 5000
else if (@ItemID < 10000) SET @newItemID = 10000
else if (@ItemID < 15000) SET @newItemID = 15000
else if (@ItemID < 20000) SET @newItemID = 20000
else if (@ItemID < 25000) SET @newItemID = 25000
else if (@ItemID < 30000) SET @newItemID = 30000
else if (@ItemID < 35000) SET @newItemID = 35000
else if (@ItemID < 40000) SET @newItemID = 40000
else SET @newItemID = 45000
print ''
print @CodeName + ' from Media\server_dep\silkroad\textdata\itemdata_'+@new ItemID+'.txt'
print 'Change the current Price of '+@lastPrice+' to '+@yourPriceCHAR+' at the itemdata_'+@newItemID+'. (For the visual Price ingame)'
/*END which Itemdata.txr*/

/*for _RefObjCommon Price*/
UPDATE _RefObjCommon SET Price = @yourPrice WHERE ID = @ItemID

/* for _RefPackageItem */
IF EXISTS (SELECT CodeName128 FROM _RefPackageItem WHERE CodeName128 = 'Package_'+@CodeName)
BEGIN
print 'Already added @ RefPackageItem/.txt!'
END
ELSE BEGIN
Declare @SN varchar(74) SET @SN = (SELECT NameStrID128 FROM _RefObjCommon WHERE ID = @ItemID)
Declare @DESC varchar(74) SET @Desc = (SELECT DescStrID128 FROM _RefObjCommon WHERE ID = @ItemID)
Declare @DDJ varchar(74) SET @DDJ = (SELECT AssocFileIcon128 FROM _RefObjCommon WHERE ID = @ItemID)
INSERT INTO _RefPackageItem (Service,Country,CodeName128,SaleTag,ExpandTerm,Na meStrID,DescStrID,AssocFileIcon,Param1,Param1_Desc 128,Param2,Param2_Desc128,Param3,Param3_Desc128,Pa ram4,Param4_Desc128)
VALUES (1,15,'PACKAGE_'+@CodeName,0,'EXPAND_TERM_ALL',@SN ,@Desc,@DDJ,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx')
Declare @TOPID varchar (10) SET @TOPID = (SELECT MAX(ID) FROM _RefPackageItem)
print ''
print 'Add the following line @ refpackageitem.txt'
print '1 15 '+@TOPID+' PACKAGE_'+@CodeName+' 0 EXPAND_TERM_ALL '+@SN+' '+@DESC+' '+@DDJ+' -1 xxx -1 xxx -1 xxx -1 xxx'
print ''
END

/* for _RefPricePolicyOfItem */
IF EXISTS (SELECT RefPackageItemCodeName FROM _RefPricePolicyOfItem WHERE RefPackageItemCodeName = 'Package_'+@CodeName AND PaymentDevice = 2 AND Cost = @yourPrice)
BEGIN
print 'Already added @ RefPricePolicyOfItem/.txt!'
END
ELSE BEGIN
INSERT INTO _RefPricePolicyOfItem (Service,Country,RefPackageItemCodeName,PaymentDev ice,PreviousCost,Cost,Param1,Param1_Desc128,Param2 ,Param2_Desc128,Param3,Param3_Desc128,Param4,Param 4_Desc128)
VALUES (1,15,'PACKAGE_'+@CodeName,1,0,@yourPrice,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx')
Declare @NEWPRICE varchar(15) SET @NEWPRICE = @yourPrice
print ''
print 'Add the following line @ refpricepolicyofitem.txt'
print '1 15 PACKAGE_'+@CodeName+' 1 0 '+@NEWPRICE+' -1 xxx -1 xxx -1 xxx -1 xxx'
print ''
END

/* for _RefShopGoods */
IF EXISTS (SELECT RefPackageItemCodeName FROM _RefShopGoods WHERE RefPackageItemCodeName = 'Package_'+@CodeName AND RefTabCodeName = @WhichTAB)
BEGIN
print 'Already added @ RefShopGoods/.txt!'
END
ELSE BEGIN
Declare @newSLOTINDEX varchar(15) SET @newSLOTINDEX = (SELECT MAX(SlotIndex) FROM _RefShopGoods WHERE RefTabCodeName = @WhichTAB)+1
INSERT INTO _RefShopGoods (Service,Country,RefTabCodeName,RefPackageItemCode Name,SlotIndex,Param1,Param1_Desc128,Param2,Param2 _Desc128,Param3,Param3_Desc128,Param4,Param4_Desc1 28)
VALUES (1,15,@WhichTAB,'PACKAGE_'+@CodeName,@newSLOTINDEX ,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx')
print ''
print 'Add the following line @ refshopgoods.txt'
print '1 15 '+@WhichTAB+' '+'PACKAGE_'+@CodeName+' '+@newSLOTINDEX+' -1 xxx -1 xxx -1 xxx -1 xxx'
print ''
END

/* for _RefScrapOfPackageItem */
IF EXISTS (SELECT RefPackageItemCodeName FROM _RefScrapOfPackageItem WHERE RefPackageItemCodeName = 'Package_'+@CodeName AND RefItemCodeName = @CodeName)
BEGIN
print 'Already added @ RefScrapOfPackageItem/.txt!'
END
ELSE BEGIN
INSERT INTO _RefScrapOfPackageItem (Service,Country,RefPackageItemCodeName,RefItemCod eName,OptLevel,Variance,Data,MagParamNum,MagParam1 ,MagParam2,MagParam3,MagParam4,MagParam5,MagParam6 ,MagParam7,MagParam8,MagParam9,MagParam10,MagParam 11,MagParam12,Param1,Param1_Desc128,Param2,Param2_ Desc128,Param3,Param3_Desc128,Param4,Param4_Desc12 8)
VALUES (1,15,'PACKAGE_'+@CodeName,@CodeName,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,-1,'xxx',-1,'xxx',-1,'xxx',-1,'xxx')
Declare @ScrapIndex varchar(15)
SET @ScrapIndex = (SELECT MAX([Index]) FROM _RefScrapOfPackageItem WHERE RefItemCodeName = @CodeName)
print ''
print 'Add the following line @ refscrapofpackageitem.txt'
print '1 15 '+'PACKAGE_'+@CodeName+' '+@CodeName+' 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 xxx -1 xxx -1 xxx -1 xxx '+@ScrapIndex
print ''
END
print ''
print ''
print 'Done!'

و هتعدل المسافات في السطور اللي الـQuery هيطلعهولك و تضيفها في الـMedia
و تجرب ، ضيف حاجة واحدة بس حالياً و ابقا عدل عليها بعدين للتجربة بس

BuiLt4KiLl
13-04-2019, 07:15 PM
حاجة تاني ممكن تكون السبب ممكن التاب الكود بتاعه متكرر مرتين في الجروبين
و ده بيعمل مشكلة

Admin.White
14-04-2019, 03:23 AM
كل اللي حضرتك بتقوله ده أنا جربته وشيكت عليه وإتأكدت منه .. لكن مالهوش أي نتيجه غير إني برده الأيتم بيتجاب غير اللي موجود .. كمان الأيتم جديد والإن بي سي جديد والأي دي إستحاله يتكرر ف الداتا لأني الترقيم بتاع التابل شغال عادي بدون مايكرر الرقم مع العلم طبعا إني شوفت برده إن كان الأي دي متكرر أو لا أو التابل نيم :Emoji27:

McDiesel
14-04-2019, 03:32 AM
عندك برنامج في قسم الشروحات هيغنيك عن القرف دا كلة
https://www.silkroad4arab.com/vb/showthread.php?t=611447

Admin.White
14-04-2019, 05:57 AM
عندك برنامج في قسم الشروحات هيغنيك عن القرف دا كلة
https://www.silkroad4arab.com/vb/showthread.php?t=611447

البرنامج بيضيف إن بي سي تمام وبيضيف أيتم لكن مش بيضيف جروب جديد علي إن بي سي موجود.. ولو حتي ضيفت إن بي سي من أول وجديد وبإتنين جروب هتلاقي نفس المشكله

McDiesel
17-04-2019, 12:26 AM
البرنامج بيضيف إن بي سي تمام وبيضيف أيتم لكن مش بيضيف جروب جديد علي إن بي سي موجود.. ولو حتي ضيفت إن بي سي من أول وجديد وبإتنين جروب هتلاقي نفس المشكله

يبقا الغلط منك ياكبير البرنامج دا انا شغال بية طول عمري ف المجال وعملت بدل ال NPC اكتر من 100 NPC قبل كدة بدون اي مشكلة

Admin.White
17-04-2019, 12:51 AM
يبقا الغلط منك ياكبير البرنامج دا انا شغال بية طول عمري ف المجال وعملت بدل ال NPC اكتر من 100 NPC قبل كدة بدون اي مشكلة

ماأنا وضحت لحضرتك قبل كده الإن بي سي مفيهوش أي مشكله المشكله لو ضيفت ٢ جروب ف إن بي سي واحد .. وبعدين إزاي الغلط مني ومفيش اي إرور ولا ف داتا ولا ف ميديا .. كل حاجه بتبقي تمام بس تشتري حاجه تلاقيك بتجيب من الجروب الأولاني بس . دي مشكلتي

McDiesel
17-04-2019, 01:21 AM
جرب تشيل ال Items وتحطها تاني او لتجربة اسهل

حط ايتم جديد ف كل جروب بس عن طريق البرنامج وجرب اشتريهم لو تمام يبقا العيب ف طريقة اضافة الايتيمز

BuiLt4KiLl
19-04-2019, 07:30 PM
المشكلة هتبقا في الاول و في الخر زي ما قلت لحضرتك ترتيب سطور او اكواد
لان انا عملت كذا NPC باكتر من 3 Groups عمري ما واجهت المشكلة الغريبة دي صراحة
و هنا المشكلة هتكون في سطور الايتم نفسه مش في الـNPC الا اذا الخطأ من البداية في الـNPC

يغلق لمرور 48 ساعة دون رد
##