Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 12/10/21 in all areas

  1. big checklist for custom pets for you. I just revamped my entire pet system so I'll give you the full list: ---------------------------------------------------------------------------------------------------------------- conf/battle/feature.conf go down to: feature.petevolution: off > change this to on if its not already on. to help with hunger rate and auto feeding its right below it. feature.petautofeed: off and feature.pet_autofeed_rate --------------------------------------------------- your Pet_Db.yml also needs to include the mob it evolves into. not just the evolution. so example: - Mob: PAD_ROBOT TameItem: Unripe_Apple EggItem: princess_egg FoodItem: White_Potion Fullness: 0 CaptureRate: 0 AllowAutoFeed: true Script: > .@i = getpetinfo(PETINFO_INTIMATE); if (.@i >= PET_INTIMATE_LOYAL) { bonus bLuk,3; bonus bCritical,1; } else if (.@i >= PET_INTIMATE_CORDIAL) { bonus bLuk,2; bonus bCritical,1; skill "AL_HEAL",5; } Evolution: - Target: PAD_KINGROBOT ItemRequirements: - Item: Leaf_Of_Yggdrasil Amount: 10 - Item: Unripe_Apple Amount: 3 - Mob: PAD_KINGROBOT EggItem: padkingrobot_egg FoodItem: White_Potion Fullness: 0 CaptureRate: 0 AllowAutoFeed: true Script: > .@i = getpetinfo(PETINFO_INTIMATE); if (.@i >= PET_INTIMATE_LOYAL) { bonus bLuk,4; bonus bCritical,2; } else if (.@i >= PET_INTIMATE_CORDIAL) { bonus bLuk,3; bonus bCritical,2; skill "AL_HEAL",3; } -------------------------------------------------------- db/pre-re (or) re/mob_db.yml If the mob is a custom mob the mob also needs to be in your mob DB with the same aegis name as the one listed here. If the mob does not exist in the DB it cant be summoned as a pet and you'll get something about request petal. You can test this by trying to summon your custom mob with @monster. If it shows up you are fine. ------------------------------------------------------------------------------- System/iteminfo.lua(or .lub) AND db/pre-re (or) re/item_db_equip.yml Now you need to make sure you have the egg in your item DB with the matching aegis name that is in your pet_db.yml. make sure it also exists in the iteminfo.lub. you can test if the egg exists/works with your pet_db.yml by using @makeegg (item id number for the egg). If this works and you can open the egg to take out the pet, then all thats left to do is check the evolution process itself. If it does not you need to check the next client side file below to see if you added it into your ----------------------------------------------------------------------------------- Within your GRF: (NOTE: this is not my video, but I saved this awhile back because it is an extremely helpful reference when u get stuck) data\luafiles514\lua files\datainfo\petinfo.lub petinfoguide.mp4 1.) First make sure you have the PetNameTable = { for your custom mob/pet. [jobtbl.JT_PAD_ROBOT] = "padrobot", [jobtbl.JT_PAD_KINGROBOT] = "padkingrobot", The second part = "padrobot" is the sprite name/resource name. 2.) PetIllustNameTable = { [job.tbl_PAD_ROBOT] = "yourpetillustrationartnamehere.bmp", note: you need to add in your art as a bmp file with a specific size (that matches the other ones in the folder to a specific folder: The folder for illustration is also in your GRF ( data\texture\userinterface\illust ) Dump your bmp art files here. extract an existing art to get the proper dimensions. and just erase it and copy paste your own art over it. I saved in 24 bmp with no issues for my custom art. 3.) PetACCIDs = { this is for giving pets a custom equip to wear. I don't use this as its not really necessary. so I can't realy tell you how it works other than that. Pet AccActNameTable_Eng is the same 4.) PetStringTable = { (this is just the pets name in game not the aegis name) [jobtbl.JT_PAD_ROBOT] = "Pad Robot", 5.) PetEggItemID_PetJOBID = { (make sure the egg id matches the one in your ID, it matches the original resource you linked at the top of this file. an example of what my custom kathyrne keyron pet looks like: [9138] = jobtbl.JT_KATRINN, note: that the 9138 is the egg item ID in item_db_equip. and the jobtbl.JT_KATRINN is from part 1 of this section (petnametable within this petinfo file) 6.) PetFoodTable = { [jobtbl.JT_KATRINN = 30020, (this is the item id of the food you want to feed them. look up the item id number of the food you put in the pet_db.yml. if its white potion for example this would be 504) If its pet food it would be 537. Make sure the last monster in every list in the sections has no comma. be careful with "non kro" section monsters as they are part of the list. so dont leave no comma above that. only on the last mob before the } -------------------------------------------------------------------------- Then you check your PetEvolutionCln.lub (and the other variants of this too if this one doesnt work) An example of how to read this and how to create your own custom evolution table: (note these numbers are taken from random from my file. dont copy and past this into your file) InsertEvolutionRecipeLGU(9037, 9117, 7005, 500) InsertEvolutionRecipeLGU(9037, 9117, 1009, 50) InsertEvolutionRecipeLGU(9037, 9117, 1059, 100) InsertEvolutionRecipeLGU(9037, 9117, 4210, 1) InsertPetAutoFeeding(9117) there are 4 values in parentheses. -The first is the egg the monster comes from. In your case this should be the item ID of regular Pad Robot Egg. -The second is the egg of the monster it evolves into. In this case it should be the item ID of the King Pad Robot Egg. -The third is the item ID of the item in the evolution requirements in the pet_db.yml file for the first monster. -The fourth is the amount required listed in your pet_db.yml. -the insert pet auto feeding is just for the new egg created. so make sure it matches the egg item id in this case of the King Pad Robot Egg. So let's say you want to create a requiremnt of 10 red potions, 10 orange potions, 10 yellow, and 10 white potions for evolution. I'm going to pretend that your Pad Robot Egg ID = 9109 and Pad King Robot Egg ID = 9110. InsertEvolutionRecipeLGU(9109, 9110, 501, 10) InsertEvolutionRecipeLGU(9109, 9110, 502, 10) InsertEvolutionRecipeLGU(9109, 9110, 503, 10) InsertEvolutionRecipeLGU(9109, 9110, 504, 10) InsertPetAutoFeeding(9117) the pet_db.yml will be the evolution like listed above earlier in this explanation but you need to use the aegis name in the pet_db.yml file instead of item id. --------------------------------------------------------------- Now that should be everything. A quick Checklist. 1.) Make sure mobs exist in mob_db.yml 2.) Make sure evolution is turned on feature.conf 3.) Maker sure pet_db.yml has both the monster and the evolved monster as their OWN mob. the evolution information should be included on top of this on the original mob that evolves into the 2nd. 4.) Make sure you add in the eggs as an item in both System/iteminfo.lua or .lub (client side) AND in your item_db_equip.yml (server side) 5.) If the mobs are truly custom add them to data\luafiles514\lua files\datainfo\petinfo.lub within your GRF 6.) Add the evolution and match it to the pet_db.yml in your client side PetEvolutionCln.lub If all this is done then you just need to test! @reloadmobdb @reloaditemdb and close and re-open your client to reload client side files. make sure you put the monster away if its out from before. To be safe with this i just put it away. drop the egg. and make a new one. Then you type @petfriendly 1000 once you take out the unevolved monster that will evolve. this will make it max friendly. then you look at the menu. if you can't evolve you did something wrong that I listed above. Sometimes I've had to restart my server to get things to show up, but not usually. usually just restarting client is enough. The items that show up in the window are the ones in your PetEvolutionCln.lub file. the ones that it ACTUALLY requires are the ones in your pet_db.yml. so the items look right but it says you don't have the required items, then your pet_db.yml and PetEvolutionCln.lub do NOT match. make them match so theres no confusion. If the evolution option shows up but it says somethign about requesting petal, then you did something wrong in petinfo.lub in your GRF, pet_db.yml, and/or item_db_equip. to quickly rule out the item. @makeegg of both the unevolved and the evolved monsters. if you can make both eggs then its probably the petinfo. If you can't make one of them there is a formatting error probably for that mob in pet_db.yml. Important to note that the pet_db.yml is sensitive with its formatting. sometimes even adding in an extra space enter is bad. sometimes its good? Not sure how to describe this. If you have no gap between the monsters and its not working. try putting a space between the mobs themselves (NOT the evolution.) If you do all this and its still not working I'm not entirely sure as I've never had that problem. This is a VERY tedious process, but the checklist I gave you should help. I might be forgetting something tbh as I haven't worked on pets since I did mine, but I hope this helps. Sorry if its too detailed but wanted to cover everything for you and anyone else who might look through the forums later.
    1 point
  2. Awesome, 139 is exactly what I'm looking for, thanks!
    1 point
  3. So if you want: A not clickable npc, with position/info never send to the client/bot (so npctalk, effects, ... will fail), use -1. A not clickable npc, with position/info send to client (npctalk, etc. will work), use 139. A clickable npc, use 111.
    1 point
×
×
  • Create New...