Page 3 of 6

Re: Need your help updating skill Ids

Posted: Mon Jul 27, 2015 6:24 pm
by beanybabe
So far so good with the new ids and cpu changes I have not has any problems. Could you Delete those two big posts and reply's with all the long page of numbers I posted.

i'm still having class problem on warrior or rogue or druid I must have missed one. hope the final skill.xml helps.

Re: Need your help updating skill Ids

Posted: Tue Jul 28, 2015 8:11 pm
by Bill D Cat
From what I can tell, no mods needed to basic Druid skills. I'll go through the elites next.

Warden's Heart of the Oak changed ID to 491668

Re: Need your help updating skill Ids

Posted: Tue Jul 28, 2015 10:08 pm
by beanybabe
I listed the druid stuff on the long page I found wrong possibly the elites are there. I don't have every kind of class combo.

Re: Need your help updating skill Ids

Posted: Tue Jul 28, 2015 11:11 pm
by Bill D Cat
I'm using the RoM Wiki page as a basis for what skills are available, both normal class skills and elites. Then I am looking up all the skills in the string_enus file using Rock's language converter. I've now finished all skills with K/Wr/R/S/M/P primary and all available secondary classes. I'll work on D/Wd/C/Wl tomorrow. Once done, I'll attach my skills.lua file for review. I've added all the missing skills I've come across like the Advanced Resurrection/Rebirth and a few others.

Obviously, the Wiki page might be outdated, but it's a great place for me to start checking for missing skills and parameters for them. We will still need to verify the list by using characters that actually have the various class combinations. I'm working on a function to help automate that for us.

Re: Need your help updating skill Ids

Posted: Tue Jul 28, 2015 11:24 pm
by rock5
That would help me a lot. Thanks. I'll just wait for you to do all the work then. :D

I wouldn't worry too much about testing. We can always fix things as people report problems later. Although it would be nice to have a warning message if the database Id returns no name. We could also check if the name is correct but only on English clients as the skill database names are based on the English name.

Re: Need your help updating skill Ids

Posted: Wed Jul 29, 2015 12:28 pm
by Bill D Cat
I've added the Advanced and Supreme Resurrection/Rebirth skills to the database and now I'm curious about how to handle the skills. These skills require a consumable item in order to work. Do we want to add that as part of the database, or just add a comment saying which item is needed and it's ID? Right now I just have these items as comments in my skills.lua file after each skill.

Advanced Resurrection and Rebirth both need an "Amulet of Light". The Supreme version requires an item shop amulet, a "Golden Amulet".

I know the Rogue skill "Poison/Poisonous" just has a comment saying you need a Poison Bottle, so I didn't think there was any mechanism in the bot at this time to check inventory for a required item prior to using a skill.

Re: Need your help updating skill Ids

Posted: Wed Jul 29, 2015 1:13 pm
by beanybabe
I think just put Advanced Resurrection and Rebirth as a place holder its not something people would use. Spend the time working on useful things.

Rogue poison is a pain I never seem to get it to work on every character. You need to put some code in user profile also to check if you have them before casting.

There also may be a scout skill that needs the other poison vendors sell

Re: Need your help updating skill Ids

Posted: Wed Jul 29, 2015 1:19 pm
by rock5
I believe item requirements fall into the 'uses' code which is calculated automatically by the bot. It includes things like power requirements, arrows and projectiles, and items which includes Poison Bottles and I would assume Amulets.

You should be able to check it by printing the following

Code: Select all

table.print(FindSkillBookSkill("Skill name"))
If it sees the amulet as an item rewuirement then it should have a sub values of .Consumable and .ConsumableNumber.

Re: Need your help updating skill Ids

Posted: Wed Jul 29, 2015 10:48 pm
by Bill D Cat
Okay, I've verified all the main skill IDs and most of the buff IDs. I'm going to go ahead and attach the skills.xml now with the caveat that some of the buffs may still be incorrect. I've tried to check all those where the skill IDs changed, but I'm sure that I will have missed a few.

Edit: Removed the attachment. Fixed a few issues and attached update to another post in this thread.

Re: Need your help updating skill Ids

Posted: Thu Jul 30, 2015 7:06 am
by rock5
Here's what's different on my version.
  • KNIGHT_MANA_RETURN reqbuffname="500140"
    SCOUT_SNAKE_POISON_ARROW id="499583"
    SCOUT_UNBINDING_MAGIC id="494042"
    SCOUT_IGNITE id="492949"
And I had a couple of spelling corrections I was thinking of including.
  • ROGUE_PARALYZING_TRAP
    DRUID_SHIELD_OF_LIGHT

Re: Need your help updating skill Ids

Posted: Thu Jul 30, 2015 9:43 am
by Bill D Cat
Mana Return hasn't been in the game for a while now. Are we just going to keep it around for the servers that might still be running Chapter 5 or older content?

I will check the rest of the buff IDs tonight when I get home.

Re: Need your help updating skill Ids

Posted: Thu Jul 30, 2015 11:36 am
by rock5
Oh ok. I must have just noticed that the id returned nothing. Funny that there is another id that gives the name then if it's no longer use.

The Ids have changed so much now that I don't think we need to bother with support for older clients. I'd just delete it.

Re: Need your help updating skill Ids

Posted: Thu Jul 30, 2015 5:47 pm
by Bill D Cat
Here we go. Use this userfunction file to dump a list of all your primary and secondary skills to a text file. You can use this as a single class character to get all your "plain vanilla" skill ID's, and then as a dual class to pick up all your elites and any skill ID's that change because of the elites. The output file will be put into the userfunctions directory and called "SkillBookDump.txt". This file will have the basic formatting that is used in the skills.xml file, so it will be easier to cut and paste the changes.

To run it, start the bot in the command line and enter the SkillBookDump command as follows. No arguments to the function are needed.

Code: Select all

rom/bot path:commandline
SkillBookDump()
The report it generates looks something like this. (Passive skills are all ignored)

Code: Select all

	<!-- General -->
	<skill name="SCOUT_SHOT"					id="493011" range="180"	type=""		casttime="0"		cooldown="2"	target="" />
	<skill name="SCOUT_VAMPIRE_ARROWS"			id="492649" range="180"	type=""		casttime="0"		cooldown="10"	target="" />
	<skill name="SCOUT_JOINT_BLOW"				id="490420" range="100"	type=""		casttime="0"		cooldown="0"	target="" />
	<skill name="SCOUT_BLOOD_ARROW"				id="490434" range="0"	type=""		casttime="0"		cooldown="120"	target="" />
	<skill name="SCOUT_THROAT_ATTACK"			id="490428" range="100"	type=""		casttime="0"		cooldown="12"	target="" />
	<skill name="SCOUT_WRIST_ATTACK"			id="490451" range="50"	type=""		casttime="0"		cooldown="30"	target="" />
	<!-- Secondary -->
	<skill name="PRIEST_RISING_TIDE"			id="490256" range="217"	type=""		casttime="2"		cooldown="0"	target="" />
	<skill name="PRIEST_URGENT_HEAL"			id="491147" range="250"	type=""		casttime="1"		cooldown="0"	target="" />
	<skill name="PRIEST_REGENERATE"				id="490269" range="180"	type=""		casttime="0"		cooldown="0"	target="" />
	<skill name="PRIEST_HOLY_AURA"				id="490300" range="0"	type=""		casttime="0"		cooldown="120"	target="" />
	<skill name="PRIEST_MAGIC_BARRIER"			id="491166" range="0"	type=""		casttime="0"		cooldown="0"	target="" />
	<skill name="PRIEST_BLESSED_SPRING_WATER"	id="490298" range="0"	type=""		casttime="0"		cooldown="0"	target="" />
	<!-- Primary -->
	<skill name="SCOUT_ARROW_OF_ESSENCE"		id="490494" range="0"	type=""		casttime="0"		cooldown="300"	target="" />
	<skill name="SCOUT_AUTOSHOT"				id="492589" range="180"	type=""		casttime="0"		cooldown="2"	target="" />
	<skill name="SCOUT_WIND_ARROWS"				id="491128" range="225"	type=""		casttime="0"		cooldown="0"	target="" />
	<skill name="SCOUT_FROST_ARROW"				id="491163" range="0"	type=""		casttime="0"		cooldown="0"	target="" />
	<skill name="SCOUT_MANA_DRAIN_SHOT"			id="490441" range="180"	type=""		casttime="0"		cooldown="30"	target="" />
	<skill name="SCOUT_LASSO"					id="490454" range="150"	type=""		casttime="1"		cooldown="0"	target="" />
	<skill name="SCOUT_PURIFYING_SHOT"			id="491504" range="230"	type=""		casttime="0"		cooldown="10"	target="" />
	<skill name="SCOUT_PIERCING_ARROW"			id="490400" range="220"	type=""		casttime="0"		cooldown="4"	target="" />
	<skill name="SCOUT_MANA_ARROWS"				id="491513" range="0"	type=""		casttime="0"		cooldown="30"	target="" />
	<skill name="SCOUT_SNIPE"					id="492345" range="240"	type=""		casttime="2"		cooldown="15"	target="" />
	<skill name="SCOUT_DETECTION"				id="490463" range="0"	type=""		casttime="0"		cooldown="0"	target="" />
	<skill name="SCOUT_COMBO_SHOT"				id="490424" range="180"	type=""		casttime="0"		cooldown="8"	target="" />
	<skill name="SCOUT_SPIRITUAL_LEADER"		id="491335" range="0"	type=""		casttime="0"		cooldown="300"	target="" />
	<skill name="SCOUT_NECK_STRIKE"				id="491486" range="150"	type=""		casttime="0"		cooldown="30"	target="" />
	<skill name="SCOUT_REFLECTED_SHOT"			id="490457" range="180"	type=""		casttime="0"		cooldown="10"	target="" />
	<skill name="SCOUT_CONCENTRATION"			id="490460" range="0"	type=""		casttime="0"		cooldown="300"	target="" />
	<skill name="SCOUT_TARGET_AREA"				id="490464" range="0"	type=""		casttime="0"		cooldown="0"	target="" />
	<skill name="SCOUT_AGGRO_LEAD"				id="493254" range="200"	type=""		casttime="0"		cooldown="60"	target="" />
Edit: Updated the userfunction to either dump the complete skillbook, or only skills where the ID changed or where they were not in the skills.xml file to begin with. File attached below in another reply.

Re: Need your help updating skill Ids

Posted: Fri Jul 31, 2015 1:21 am
by rock5
Great work. A thing to mention to users is that the generated skill names will only be valid on English clients.

There is another special character to watch for. Some skills have hyphens (-) in the name. I think they are usually replaced with _.

To tell you the truth I think this generates too much work. Once you have data from all the skills most of them will be correct so you waste time checking skills that are correct. Might have been easier to compare with the skills database and only print differences. I think they are loaded into database.skills.

Re: Need your help updating skill Ids

Posted: Fri Jul 31, 2015 7:11 am
by Bill D Cat
It should be easy enough to compare the data I pull from the client with the IDs the bot has. I'll have to make a backup copy of my skills.xml first and then get a copy from the repository to check against. Otherwise I don't think I'd find too many matches since I've updated all the skills in my copy already. I'd also like to see if I can come up with a reliable method to determine the type and target values, but that may require parsing the tooltip text, and that would only work in English. I'll dive deeper into the APIs over the weekend and see what I can come up with.

Re: Need your help updating skill Ids

Posted: Fri Jul 31, 2015 5:22 pm
by Bill D Cat
Okay, I just made a back-up copy of my skills.xml file and did an SVN Revert to get the latest version from the repository. What I'm curious about is why some skills have a "priority" tag?? Shouldn't those be in the user profile and not the skills.xml file?

Code: Select all

	<skill name="MAGE_FIREBALL" 						id="490204" range="225" type="damage" 		casstime="0"	cooldown="6"	target="enemy"		priority="65" />
	<skill name="MAGE_LIGHTNING"						id="490212" range="150" type="damage" 		casttime="0"	cooldown="20"	target="enemy"		minrange="75" priority="100" />
	<skill name="MAGE_LIGHT_CHARGE"						id="492634" range="150" type="damage"		casttime="0"	cooldown="8"	target="enemy"		minrange="80" priority="100" />
	<skill name="PRIEST_LURE_OF_THE_SNAKE_WOMAN" 		id="492637" range="150"	type="damage"		casttime="1"	cooldown="45"	target="enemy"		priority="90" />
	<skill name="KNIGHT_HOLY_CHAINS" 					id="491613" range="150" type="damage"		casttime="0"	cooldown="0"	target="enemy"		priority="100" minrange="60" />

Re: Need your help updating skill Ids

Posted: Fri Jul 31, 2015 8:48 pm
by Bill D Cat
Here's the updated userfunction that now accepts two args at startup.

SkillBookDump() or SkillBookDump("diff") -- This will only list skills where the ID has changed, or skills that were not listed in the skills.xml file.

SkillBookDump("full") -- This will list all skills other than passives, regardless of differences between the game and the skills.xml file.

Re: Need your help updating skill Ids

Posted: Fri Jul 31, 2015 10:32 pm
by Bill D Cat
rock5 wrote:Here's what's different on my version.
  • KNIGHT_MANA_RETURN reqbuffname="500140" -- As discussed, this was removed from the game.
    SCOUT_SNAKE_POISON_ARROW id="499583" -- A valid ID, but so is the one I have in the skills.xml file. Perhaps this was modified by another elite?
    SCOUT_UNBINDING_MAGIC id="494042" -- Fixed
    SCOUT_IGNITE id="492949" -- Same as SPA above.
And I had a couple of spelling corrections I was thinking of including.
  • ROGUE_PARALYZING_TRAP -- Old Rogue/Mage elite skill that has been removed from the game.
    DRUID_SHIELD_OF_LIGHT -- Fixed
I checked all the buff IDs that I could with my characters. If there are any others that need to be changed, we can include them in another update.

Re: Need your help updating skill Ids

Posted: Sat Aug 01, 2015 4:51 am
by beanybabe
I will try it, the version I made I still had problem with mage/priest.

i was on warlock priest and got this error with your skill file.
ERROR: 'MAGE_ELEMENTAL_CATALYST' is not defined in the database!

Re: Need your help updating skill Ids

Posted: Sat Aug 01, 2015 5:22 am
by rock5
I think Bill D Cat took the opportunity to remove outdated skills or in this case misnamed skills. Just change your profiles to MAGE_ELEMENTAL_CATALYSIS.