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

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

Hamza FiGo 29-01-2014 03:05 PM

سؤال بخصوص اضافة Teleport
 
اول حاجة مبروك لــ che الاشراف واكيد الراجل يستحقها

ثاني حاجة لما بضيف Teleport هل انا بعمل الكيوري بس ولا في حاجة بتنضاف في الميديا؟

ولما بعمل الكيوري دي

كود:

USE SRO_VT_SHARD /* Add new Teleport By ™BaZzZoKa™ */
Go
DECLARE @Teleport VARCHAR (64)
DECLARE @CHARNAME1 VARCHAR (30)
DECLARE @CHARNAME2 VARCHAR (30)
DECLARE @OwnTeleport INT
DECLARE @Fee INT
DECLARE @RequiredLVL INT

/* Put your settings here */
SET @Teleport = 'Arabian_Desert' -- any name you want ex: PK_ZONE or PVP_ZONE
SET @CHARNAME1 = '[GM] Figoz' -- Teleport position
SET @CHARNAME2 = '[GM] Figoz' -- Spawn position after teleport
SET @OwnTeleport = 1  -- Target teleport ID ex: 1 for Jangan - 5 for Hotan - 20 for Constantinople
SET @Fee = 50000  -- Gold amount to Pass the teleport
SET @RequiredLVL = 125  -- minimum level required to teleport 0 for no restriction - ex:90 lvl 90 and higher can teleport
/* settings area end here */

IF EXISTS (SELECT CodeName128 FROM _RefObjCommon WHERE CodeName128 = 'STORE_'+@Teleport)
 BEGIN
  raiserror('The stated teleportname of %s is already exist!',11,1,@Teleport);
  RETURN;
 END
   
    DECLARE @MAXOBJ INT = (SELECT MAX (ID) FROM _RefObjCommon)+1
    DECLARE @REGION1 INT SET @REGION1 = (SELECT (LatestRegion) FROM _Char WHERE CharName16 = @CHARNAME1)
    DECLARE @POSX1 INT SET @POSX1 = (SELECT (POSX) FROM _Char WHERE CharName16 = @CHARNAME1)
    DECLARE @POSY1 INT SET @POSY1 = (SELECT (POSY) FROM _Char WHERE CharName16 = @CHARNAME1)
    DECLARE @POSZ1 INT SET @POSZ1 = (SELECT (POSZ) FROM _Char WHERE CharName16 = @CHARNAME1)
    DECLARE @LINK INT = (SELECT MAX (ID) FROM _RefObjStruct)+1
     
    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,Link) VALUES
    (1,@MAXOBJ,'STORE_'+@Teleport,@Teleport,'xxx','SN_STORE_'+@Teleport,'xxx',0,0,4,1,1,0,0,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,@REGION1,0,@POSX1,@POSY1,@POSZ1,0,0,50,50,30,0,'quest\teleport01.bsr','xxx','xxx','xxx','xxx',@link)
    SET IDENTITY_INSERT _RefObjCommon OFF
   
    print ''
    print 'Add the following line to teleportbuilding.txt @server_dep\silkroad\textdata folder'
    print '1    '+CONVERT(varchar(max),@MAXOBJ)+'    '+'STORE_'+@Teleport+'    '+@Teleport+'    xxx    '+'SN_STORE_'+@Teleport+'    xxx    0    0    4    1    1    0    0    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    '+CONVERT(varchar(max),@REGION1)+'    0    '+CONVERT(varchar(max),@POSX1)+'    '+CONVERT(varchar(max),@POSY1)+'    '+CONVERT(varchar(max),@POSZ1)+'    0    0    50    50    30    0    quest\teleport01.bsr    xxx    xxx    xxx    xxx    '+CONVERT(varchar(max),@link)
    print ''
    print 'Add the following line to textdata_object.txt @server_dep\silkroad\textdata folder'
    print ''
    print '1    '+'SN_STORE_'+@Teleport+'                                '+@Teleport
    print ''
      print ''

  SET IDENTITY_INSERT _RefObjStruct ON
  INSERT INTO _RefObjStruct (ID,Dummy_Data) VALUES
  (@LINK,0)
  SET IDENTITY_INSERT _RefObjStruct OFF
 
  DECLARE @MAXTELID INT = (SELECT MAX (ID) FROM _RefTeleport)+1
  DECLARE @WORLDID INT = (SELECT (WorldID) FROM _Char where CharName16 = @CHARNAME2)
  DECLARE @REGION2 INT SET @REGION2 = (SELECT (LatestRegion) FROM _Char WHERE CharName16 = @CHARNAME2)
  DECLARE @POSX2 INT SET @POSX2 = (SELECT (POSX) FROM _Char WHERE CharName16 = @CHARNAME2)
  DECLARE @POSY2 INT SET @POSY2 = (SELECT (POSY) FROM _Char WHERE CharName16 = @CHARNAME2)
  DECLARE @POSZ2 INT SET @POSZ2 = (SELECT (POSZ) FROM _Char WHERE CharName16 = @CHARNAME2)

  INSERT INTO _RefTeleport (Service,ID,CodeName128,AssocRefObjCodeName128,AssocRefObjID,ZoneName128,GenRegionID,GenPos_X,GenPos_Y,GenPos_Z,GenAreaRadius,CanBeResurrectPos,CanGotoResurrectPos,GenWorldID,BindInteractionMask,FixedService) VALUES
  (1,@MAXTELID,'GATE_'+@Teleport,'STORE_'+@Teleport,@MAXOBJ,'SN_STORE_'+@Teleport,@REGION2,@POSX2,@POSY2,@POSZ2,30,0,0,@WORLDID,1,0)
 
  print ''
  print 'Add the following line to teleportdata.txt @server_dep\silkroad\textdata folder'
  print '1    '+CONVERT(varchar(max),@MAXTELID)+'    '+'GATE_'+@Teleport+'    '+CONVERT(varchar(max),@MAXOBJ)+'    '+'SN_STORE_'+@Teleport+'    '+CONVERT(varchar(max),@REGION2)+'    '+CONVERT(varchar(max),@POSX2)+'    '+CONVERT(varchar(max),@POSY2)+'    '+CONVERT(varchar(max),@POSZ2)+'    30    0    0    '+CONVERT(varchar(max),@WORLDID)+'    1    0'
  print ''
  print ''

  IF @RequiredLVL = 0
  BEGIN
    INSERT INTO _RefTeleLink (Service,OwnerTeleport,TargetTeleport,Fee,RestrictBindMethod,RunTimeTeleportMethod,CheckResult,Restrict1,Data1_1,Data1_2,Restrict2,Data2_1,Data2_2,Restrict3,Data3_1,Data3_2,Restrict4,Data4_1,Data4_2,Restrict5,Data5_1,Data5_2) VALUES
    (1,@OwnTeleport,@MAXTELID,@Fee,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
    INSERT INTO _RefTeleLink (Service,OwnerTeleport,TargetTeleport,Fee,RestrictBindMethod,RunTimeTeleportMethod,CheckResult,Restrict1,Data1_1,Data1_2,Restrict2,Data2_1,Data2_2,Restrict3,Data3_1,Data3_2,Restrict4,Data4_1,Data4_2,Restrict5,Data5_1,Data5_2) VALUES
    (1,@MAXTELID,@OwnTeleport,@Fee,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
   
print ''
    print 'Add the following lines to teleportlink.txt @server_dep\silkroad\textdata folder'
    print '1    '+CONVERT(varchar(max),@OwnTeleport)+'    '+CONVERT(varchar(max),@MAXTELID)+'    '+CONVERT(varchar(max),@Fee)+'    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0'
    print '1    '+CONVERT(varchar(max),@MAXTELID)+'    '+CONVERT(varchar(max),@OwnTeleport)+'    '+CONVERT(varchar(max),@Fee)+'    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0    0'
    print ''
  END
  ELSE BEGIN
    INSERT INTO _RefTeleLink (Service,OwnerTeleport,TargetTeleport,Fee,RestrictBindMethod,RunTimeTeleportMethod,CheckResult,Restrict1,Data1_1,Data1_2,Restrict2,Data2_1,Data2_2,Restrict3,Data3_1,Data3_2,Restrict4,Data4_1,Data4_2,Restrict5,Data5_1,Data5_2) VALUES
    (1,@OwnTeleport,@MAXTELID,@Fee,0,0,0,1,@RequiredLVL,999,0,0,0,0,0,0,0,0,0,0,0,0)
   
    print ''
    print ''
    print 'Add the following line to teleportlink.txt @server_dep\silkroad\textdata folder'
    print '1    '+CONVERT(varchar(max),@OwnTeleport)+'    '+CONVERT(varchar(max),@MAXTELID)+'    '+CONVERT(varchar(max),@Fee)+'    0    0    0    1    '+CONVERT(varchar(max),@RequiredLVL)+'    999    0    0    0    0    0    0    0    0    0    0    0    0'
    print ''

  END

print ''
print 'Done!'

طبعا بوقف الكاركتر في مكان جوة المنطقة الجديدة بيجيبلي الرسالة دي

Msg 8106, Level 16, State 1, Line 30
Table '_RefObjCommon' does not have the identity property. Cannot perform SET operation.


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

شكرا

che_9299 29-01-2014 04:25 PM

حل الايرور
_RefObjCommon
Design
Identity Specification
IS Identity
Yes
تمام بالنسبه للكويرى بقى
SET @CHARNAME1 = '[GM] Figoz' -- Teleport position
SET @CHARNAME2 = '[GM] Figoz' -- Spawn position after teleport
الاول مكان البلوره الى هتتحط علشان تسافر منها للمكان اللى انته عايزو
2- المكان اللى هتسافر اليه
الكويرى بيديك اكواد فى الميديا بتظبط المسافات وتحطها وبس كده

Hamza FiGo 30-01-2014 12:14 AM

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

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

يعني التليبوت اللي بيودي من جانجان لي داونهانج . عايز احط معاهم يودي للمنطقة الجديدة . اعمل اية ؟

بدل ما اضيف بلورة جديدة في المدينة

.-Carica-. 30-01-2014 04:03 PM

1
بدوس Ctrl S ? عشان يعملها سيف ؟
اقتباس:

يعني التليبوت اللي بيودي من جانجان لي داونهانج . عايز احط معاهم يودي للمنطقة الجديدة . اعمل اية ؟

بدل ما اضيف بلورة جديدة في المدينة


بص يا معلم

بتجيب الـid بتاع التليببورت اللى عايز نضيف فيه من refTeleport و تروح على TeleLink

و تاخد سطر كوبى و تعدل الid بتاع التبلوبت لى الى عايز تضيقو

زى كده

كود PHP:

1   1   226   5   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
1   226   1   5   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 

1 ده تلبورت Id بتاع جانجان و بتسافر لى 226 ده ارييا عندى

غير انت بقى ! فهمتنى
و متنساش الميديا

Hamza FiGo 30-01-2014 07:34 PM

اولا شكرا جزيلا علي ان اهتميت . بس فية حاجة لما بعمل Ctrl S علشان اسيف بيجيبلي الرسالة دي

http://imagizer.imageshack.us/v2/800...0/844/f9em.jpg

ثانيا بخصوص تيليبورت من جانجان انا مفهمتش للاسف . :sorry:

che_9299 30-01-2014 07:44 PM

SQL
Tools
Options
Designers
وشيل علامة الصح من على ال Prevent Change

.-Carica-. 30-01-2014 08:12 PM

الـTeleLink ده اللى بتحط فيه التليبورت مــن اى حته
يعنى انت بتجيب id المكان اللى فيه التليبورت و تجيب المكان اللى عايز تروح ليه
وتعمل سطر جديد و تحط فيه Id من الى فهمت !! كده ؟
http://www5.0zz0.com/2014/01/30/17/751950441.jpg
OnwerTeleport
1 دى الـ iD بتاع التلبورت اللى هتحط فيه المكان اللى عايز ترحلو
Targeteleport
2 دى الـ Id بتع المكان اللى عياز تسافر ليه
Fee
ده ســـعر التلبورت بالجولد
الـid بتجيبو من RefTeleport

che_9299 31-01-2014 12:19 AM

تمام
##


الساعة الآن 09:45 AM.

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