Levelupskills1to10 question

Runes of Magic/Radiant Arcana (http://www.runesofmagic.com)
Post Reply
Message
Author
Mushroomstamp
Posts: 210
Joined: Wed Oct 27, 2010 11:34 am

Levelupskills1to10 question

#1 Post by Mushroomstamp » Tue Mar 22, 2011 9:11 am

I'm going to be playing around with this function and have two questions... so far =p
Given an empty profile skill list;
What determines the priority of the skills used, and how does it determine when to use heals?

User avatar
lisa
Posts: 8332
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Levelupskills1to10 question

#2 Post by lisa » Tue Mar 22, 2011 9:21 am

Which skills are leveled are predetermined by the function in functions.lua

a little snippet of code is

Code: Select all

		[CLASS_WARRIOR]		= {  [1] = { aslevel = 1, skillname="WARRIOR_SLASH" },
								 [2] = { aslevel = 2, skillname="WARRIOR_OPEN_FLANK" },
								 [3] = { aslevel = 2, skillname="WARRIOR_PROBING_ATTACK" },
								 [4] = { aslevel = 4, skillname="WARRIOR_ENRAGED" },
So those warrior skills will be leveled, the aslevel is what lvl the character can first upgrade the skill.

As for when the bot heals that is set in the profile you create for your character in skills.
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

User avatar
Giram
Posts: 191
Joined: Thu Aug 26, 2010 3:34 pm
Location: Finland

Re: Levelupskills1to10 question

#3 Post by Giram » Tue Mar 22, 2011 10:53 am

I have used healing skills with onskillcast so it should cast heals after each skill if hp is below some lvl.

Code: Select all

<onSkillCast>
	
	if player.Class1 == CLASS_MAGE then
		
		if (not player:hasBuff("Perception")) then
			player:cast("MAGE_PERCEPTION");
		end
		
		while (70 > player.HP/player.MaxHP*100) do
			player:cast("DRUID_RECOVER");
			yrest(2500);
		end
		
		if ((not player:hasBuff("Recover")) and (85 > player.HP/player.MaxHP*100)) then
			player:cast("DRUID_RECOVER");
			yrest(2500);
		end
		
	else
		
		if (not player:hasBuff("Blossoming Life") and (90 > player.HP/player.MaxHP*100)) then
			player:cast("DRUID_BLOSSOMING_LIFE");
		end
		
		if (not player:hasBuff("Concentration Prayer")) then
			player:cast("DRUID_CONCENTRATION_PRAYER");
		end
		
		if (not player:hasBuff("Recover") and (60 > player.HP/player.MaxHP*100)) then
			player:cast("DRUID_RECOVER");
			yrest(2200);
		end
		
	end
	</onSkillCast>
And heal skills are like this:

Code: Select all

<skill name="DRUID_RECOVER"				hotkey="macro" autouse="false" />

Mushroomstamp
Posts: 210
Joined: Wed Oct 27, 2010 11:34 am

Re: Levelupskills1to10 question

#4 Post by Mushroomstamp » Tue Mar 22, 2011 11:17 am

Thanks for the replies, though it seems I may not have been clear... I'm talking about the order of skill use given an empty skill section. Now that I think about it, it may be another function all-together.

Here's the deal. I started a new character the other day and did not add any skills in my profile, which looked like this;

Code: Select all

<skills_warrior>
</skills_warrior>
However, even without any skills defined, the bot used the skills that were auto-leveled with the "Levelupskills1to10" function.

Looking at the levelupskills function some more, it says that the skills are loaded into the "skill table"... which is likely what I'm looking for. Where is the skill table?

User avatar
lisa
Posts: 8332
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: Levelupskills1to10 question

#5 Post by lisa » Tue Mar 22, 2011 11:50 am

in functions.lua where you saw that bit is where the skills table is made, there is no actual file with a table anywhere it is like a virtual table.

Any skills mentioned for your class in that code will be enabled and therefore used, they will use the default settings though for when to heal which is set in skills.lua in database folder.

Hope this helps


edit:: it sounds more to me like you are trying to get the bot to use skills at it's own convenience as it levels up. If that is the case then there is a better way.

Set all the skills you want to use in your profile, including any skills from secondary class, regardless of their lvl.
then you will need some code in a userfunction which looks like this

Code: Select all

-- 1 warrior
-- 2 scout
-- 3 rogue
-- 4 mage
-- 5 priest
-- 6 knight
-- 7 warden
-- 8 druid
-- minxx    = 	value ( 1-8 )	// player.Class number to identify class, listed above
-- minlvl   = 	value ( 1-62 )	// required level before you can use skill 
-- primxx   = 	value ( 1 or 2 )// (Used by all classes = 1) or (class only skill = 2)
-- armor    =   value ( 1-3 )   // (1 = cloth, 2 = leather, 3 = mail) values for lvl 1

 	skillsdb = {
["WARRIOR_PROBING_ATTACK"] = 	{minlvl=2, minxx=1, primxx=2, id=491133, armor =2 },
["WARRIOR_SLASH"] = 		{minlvl=1, minxx=1, primxx=1, id=490053, armor =2 },
["WARRIOR_ENRAGED"] = 		{minlvl=4, minxx=1, primxx=1, id=490492, armor =2 },
["WARRIOR_OPEN_FLANK"] = 	{minlvl=2, minxx=1, primxx=2, id=491136, armor =2 },

["SCOUT_AUTOSHOT"] = 		{minlvl=1, minxx=2, primxx=2, id=492589, armor =2 },
["SCOUT_WIND_ARROWS"] = 	{minlvl=2, minxx=2, primxx=2, id=491128, armor =2 },
["SCOUT_VAMPIRE_ARROWS"] = 	{minlvl=4, minxx=2, primxx=1, id=491292, armor =2 },
["SCOUT_SHOT"] = 		{minlvl=1, minxx=2, primxx=1, id=490423, armor =2 },

["ROGUE_SHADOWSTAB"] = 		{minlvl=1, minxx=3, primxx=1, id=490306, armor =2 },
["ROGUE_LOW_BLOW"] = 		{minlvl=2, minxx=3, primxx=2, id=490323, armor =2 },
["ROGUE_ASSASSINS_RAGE"] = 	{minlvl=1, minxx=3, primxx=2, id=490506, armor =2 },
["ROGUE_WOUND_ATTACK"] = 	{minlvl=6, minxx=3, primxx=2, id=490313, armor =2 },

["MAGE_FLAME"] = 		{minlvl=1, minxx=4, primxx=2, id=491150, armor =1 },
["MAGE_ELEMENTAL_CATALYST"] = 	{minlvl=1, minxx=4, primxx=2, id=490238, armor =1 },
["MAGE_FIREBALL"] = 		{minlvl=4, minxx=4, primxx=1, id=490204, armor =1 },
["MAGE_LIGHTNING"] = 		{minlvl=8, minxx=4, primxx=1, id=490212, armor =1 },

["PRIEST_RISING_TIDE"] = 	{minlvl=1, minxx=5, primxx=1, id=490256, armor =1 },
["PRIEST_URGENT_HEAL"] = 	{minlvl=1, minxx=5, primxx=1, id=491147, armor =1 },
["PRIEST_REGENERATE"] = 	{minlvl=1, minxx=5, primxx=1, id=490269, armor =1 },
["PRIEST_HOLY_AURA"] = 		{minlvl=8, minxx=5, primxx=1, id=490300, armor =1 },

["KNIGHT_HOLY_SEAL"] = 		{minlvl=2, minxx=6, primxx=2, id=491368, armor =3 },
["KNIGHT_MANA_RETURN"] = 	{minlvl=2, minxx=6, primxx=2, id=491446, armor =3 },
["KNIGHT_HOLY_STRIKE"] = 	{minlvl=1, minxx=6, primxx=1, id=490496, armor =3 },
["KNIGHT_PUNISHMENT"] = 	{minlvl=1, minxx=6, primxx=1, id=490164, armor =3 },

}

function setactionbar()

for k,v in pairs(settings.profile.skills) do

	
 	skilldata = skillsdb[v.Name]

	
	setActionKeyToId(settings.profile.skills[k].hotkey - 48, skilldata.id)


end
end
You would only need the name and id for it to work, the rest is stuff I use in some other functions.
Add into your profile onload section

Code: Select all

setactionbar()
And it will add the skills to your actionbar, the icons themselves wont appear as each button is pressed but the skills are deffinately there regardless of your lvl and skill lvl requirement.

I use this in my 1-10/10 any human class setup. Was a pet project I did ages ago lol
Remember no matter you do in life to always have a little fun while you are at it ;)

wiki here http://www.solarstrike.net/wiki/index.php?title=Manual

Mushroomstamp
Posts: 210
Joined: Wed Oct 27, 2010 11:34 am

Re: Levelupskills1to10 question

#6 Post by Mushroomstamp » Tue Mar 22, 2011 12:14 pm

Helps bunches - thanks! 8-)

Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot], Bing [Bot] and 3 guests