Jump to content


  • Content count

  • Joined

  • Last visited

  • Days Won


SoundX last won the day on August 5 2018

SoundX had the most liked content!

Community Reputation

14 Neutral

About SoundX

  • Rank
    Cabin Boy

Recent Profile Visitors

635 profile views
  1. SoundX

    Help With Gems

    Hi, you mean example if they are forged in boots to make them forge in gloves? This is done in "resource\script\calculate\variable.lua" file. You find the "StoneItemType" table and you change the values you want. The StoneItemType[xx] index of your gem you find it in "resource\stoneinfo.txt" and the values are: 1 = 1 handed sword 2 = 2 handed sword 3 = Bow 4 = Firegun 7 = Daggers 9 = Staff 11 = Shield 20 = Cap 22 = Armor 23 = Gloves 24 = Boots 27 = Tattoo So for example if you want to make Eye of Black Dragon forgeable in gloves and boots, you find in StoneInfo.txt that Eye of Black Dragon = 13 and then you change StoneItemType[13] in variable.lua to StoneItemType[13] = { 23,24,0 }
  2. SoundX


    Press ALT+P, type the message (it is typed on the lower part with white letters, not easy to see), press enter
  3. As two people have asked this, maybe this help the guide to be more complete: If you have custom quests in your server, and you don't register this quest on the client, you usually see the "Unknown quest" in an "Invalid type" section within the quest log: If you use the tweak described above, in some server files this might also reveal the Mission ID and see this as "Unknown Quest name ID [140]". This can be avoided easily though by adding the quest name to the client: Tales of Pirates Online\scripts\lua\mission\missioninfo.lua Add the quest name and type (1, normal, 2, story quest): -- AddMisData( <QUEST ID> , <QUEST NAME>, <QUEST TYPE 1 or 2>) AddMisData( 140 , "Revenge of the shrubs ", 1) And this should solve the problem
  4. SoundX

    Server Update client to patch File

    Hello, GTspeed, what exactly problem you have? To make a patch for the client, you must create a folder with structure like this: [PATCH DIRECTORY] -- [map] -- mymap1.map -- mymap1.obj -- [scripts] -- [table] -- iteminfo.bin -- StringSet.bin -- [texture] -- [minimap] -- [mymap1] -- mymap1.pk so basically an folder structure exactly like your client structure. Then in your patch directory you copy the files you have changed in your client to the place it should be ^^ expl., above would be a patch with a new map <mymap1> and a different iteninfo and stringset Is this what you were asking?
  5. SoundX

    client troubles

    Server region is like "Dream Island" and server name is like "Rainbow island". You can put anything random there, it doesn't have to do with site. The "IP Changer" program will edit the serverset.bit file for you, so you don't need to manually do it
  6. SoundX

    client troubles

    I don't know guides as you don't say a specific problem. You say your server files all work, can you connect the client to your server and play on your computer? To let people play in your server, you need serverset.bin (Tales of Pirates Client\scripts\table\serverset.bin) to point to correct IP. You can change the IP with IP changer tool I linked above and then copy serverset.bin into your patch directory PATCH DIRECTORY > scripts > table > serverset.bin Then any file you change, for example adding new items with iteminfo.txt in your server, you copy iteminfo.txt from your server to CLEINT > scripts > table > iteminfo.txt and compile the file to a bin file https://pkodev.net/index.php?/topic/26-client-txt-tables-compiling/ Every file you change you copy it then to your Patch directory Then you can either make it all a zip file and send it to your users, or upload it to your website, so that htey can download and extract it, or use any autopatcher. Example this one: https://pkodev.net/index.php?/topic/1322-auto-updater-program, or any other patcher you have found should also have instructions if you still have problems please say the exact problem you have, what you did, what is the error, etc, as well s what server files you are using, what patcher/updater you are using, etc
  7. SoundX

    Change name colour in common items

    Anyone? Any hint on where to start looking will be very helpful. I don't know if to look the game.exe, or the gameserver.exe or the files, thanks in advance
  8. SoundX

    client troubles

    Hello, the first thing you need to do is to change your client IP to point to your server: Then for the patch create a similar directory structure as the client with the files that you have changed (ex if you changed iteminfo.bin create a directory tree MYPATCH > scripts > table > iteminfo.bin and either do it a zip/rar file that players can extract in their game folder or use the instruction in the autoupdater you found
  9. SoundX

    Area search exceed preset requeriments

    Hello Satan, sorry I don't know the answer, but I tried the loop with small variation in one of my maps and could not reproduce this error, it worked correct. So maybe some other part of code triggers this error?
  10. Hello everyone, was wondering if it is possible to change the colour of the name in common items (not ekipment). For example, for recovery type items, example HP or SP recovery is it possible to make it sothat they have different color than other common items? If it possible, should that be a client-side modification? Also, was wondering about the items types in ItemType.txt . It is a bit messy as it is, with chests, manu items, ami gloves, cook items, etc, all same type (31 - recovery items). If I separate items for their item type, does it affect anything else in the game? Sorry for my english, and thanks in advance for answers
  11. SoundX

    [PHP] Search for items

    Thank you, very useful. Also to avoid `count()` compatibility issue if someone uses PHP 7.2: In `class.inventory.php`, line 21: $itemAttrCount = count((array)$item);
  12. SoundX

    Simple Functions

    This is great idea, especially `ItemEffect.lua` can be reduced to 1/4 length by replacing repeated functions. Here is another snipet to replace the more than 1000 lines with skills (also so many skills unused by the game, anyone has try using them and see what they can do?) For example we have this function for "Dual Shot" skill: -- Dual shot skill book (iteminfo.txt ID = 3190) function Sk_Script_Lzj ( role , Item ) local sk_add = SK_LZJ local form_sklv = GetSkillLv( role , sk_add ) if form_sklv ~= 0 then UseItemFailed ( role ) return end a = AddChaSkill ( role , sk_add, 1 , 1 , 1 ) if a== 0 then UseItemFailed ( role ) return end end we need to note down skill book ID in iteminfo.txt, and also the `local sk_add` value. The `sk_add` value is in `variable.lua` and correspond to the skill ID in `skillinfo.txt`. For example, `SK_LZJ` in variable.lua is `SK_LZJ = 90`, which is the skill ID for Dual Shot in skillinfo.txt. So we can replace all the skill books with an array in `ItemEffect.lua`: Class_Skill_Book = {} -- Class_Skill_Book[<skill book ID in iteminfo.txt>] = <skill ID in skillinfo.txt> -- Class_Skill_Book[3184] = 73 -- Shield Mastery (unknown) Class_Skill_Book[3190] = 90 -- Dual Shot Class_Skill_Book[3193] = 112 -- Meteor Shower -- etc... -- and then replace all the skill book functions with the following: function Class_Skill_Books ( role , Item ) local bk_ID = GetItemID(Item) local sk_add = Class_Skill_Book[bk_ID] local form_sklv = GetSkillLv( role , sk_add ) if form_sklv ~= 0 then UseItemFailed ( role ) return end a = AddChaSkill ( role , sk_add, 1 , 1 , 1 ) if a == 0 then UseItemFailed ( role ) return end end To use it, in `ItemInfo.txt` we have to replace the skill book's fnction with `Class_Skill_Books` ex. 3190 Dual Shot book2 10130005 0 0 0 0 0 00 34 0 0 0 0 0 1 1 1 1 1 0 1680 -1 0 -1 0 0 -1 -1 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,0 0,0 0,0 0,0 0,0 0,0 0 0 0,0 0 0 0 0 0 0 0 0 0 Class_Skill_Books 0 0 0 0 0 0 Class: Hunter Level Requirement: Lv 29 Prerequisite: Eagle Eye Lv 3, Archery Lv 3
  13. SoundX

    Npc teleporter creat

    Hi, the script you posted is the exact script for teleporting to BD lair 2. It works correctly, the error should be somewhere else. What error exactly are you getting?
  14. Hi all. I am posting this here as it took me some time to figure it out and maybe someone else wants to use it as well. - What we want to achieve: Mission shows a "[Completed]" flag in the quest log when we have collected all items - killed all mobs - In directory `/resource/script/MisSdk/` 1. File: ScriptSdk.lua: We will start a variable called `MissionSid = {}` in global variables definition, line ~=16 (below `Mission` variable): and in function `DefineMission` we will cal the MissionSid with a misid index: 1. File: MissionSdk.lua: Here we will use the function `RefreshCompleteFlag` (used normally by random class quests, "A hunter's life" etc). First in the `RefreshCompleteFlag` function itself: The function defines a local called: `local mission`. We will start this local with the value of `Mission[sid]`, so replace `local mission` with `local mission = Mission[sid]`: Then we need to use the `RefreshCompleteFlag` function in the `AddNextFlag` function: ( we added the line `RefreshCompleteFlag(character,MissionSid[id])` ): I hope this can help someone. Sorry for my English and if there are mistakes/bad scripting/better way, please let me know
  15. Hi, of course, the reason I didn't was because the problem was caused not by the quest itself but from another modification I made. In `MissionSdk.lua`, I have was using the `RefreshCompleteFlag` function to mark as complete quests in the quest log and I think this conflicted with Eudemon quests. Without the "Complete" flag modification, the problem does not show in unmodified 1.38 script files. Plus I have not solved still the problem with timed quest, so for the moment I just removed the timer << This still happens even without any modifications to the files, trying to test if if only happens with Eudemon quests, if I find something Iwill add details here Edit: using the `RefreshCompleteFlag` function like this does not cause problem when killing mob (remaining to understand the time out problem)