687 Changelog

For changelogs and discussion related to a specific revision.
Message
Author
User avatar
lisa
Posts: 8332
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

687 Changelog

#1 Post by lisa » Sun Jan 01, 2012 11:31 am

Where to start.

Removed profile option "DISMOUNT"
Added code to make sure only damage skills are used if mounted, if you don't want to dismount at all then set WP type to travel.


--=== Pet system ===--

Added usage for Priest/Scout "water fairy", just add the skill to your profile like any other skill and bot will do the rest.
It will summon pet and also make sure the buffs are active.

Warden pet total upgrade.

The buffs gotten from warden pets can now just be added to profile and bot will summon appropriate pet and then sacrifice it to get the buff.

WARDEN_HEART_OF_THE_OAK
WARDEN_PROTECTION_OF_NATURE
WARDEN_POWER_OF_THE_OAK

** Note **
you can't set the pet you want to keep summoned as the pet needed to sacrifice to get buff, the game won't allow it.


Pet's will be summoned as per profile and the autoattacks for skills will be set as soon as pet is summoned. Have a look in Default profile.

It is still set so pet only attacks after you enter combat, If people show interest in pet attacking first/same time then it can be looked in to later.

The skill to heal pet "elven prayer" now works and will be auto cast if pet's hp is below 70%, this is hard coded and no profile option for it at this stage, just add the skill to profile
** do NOT add hpper to your profile for the skill as that value goes by player hp and not pet hp **

There is probably more but I am a little tired, going to bed now 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

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

Re: 687 Changelog

#2 Post by lisa » Mon Jan 02, 2012 12:11 am

seems like I didn't break anything, no posts saying I did anyway 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

Germangold
Posts: 276
Joined: Thu Oct 22, 2009 3:58 am

Re: 687 Changelog

#3 Post by Germangold » Mon Jan 02, 2012 3:46 am

seems like latesd svn update messed with the command line

character:Yourcharacter

my batch files wont work anymore to start 5 instances of MM simultaneously
egg.:

START micromacro.exe scripts/rom/bot.lua path:KSnpc profile:clfarm character:Jamesrichard
START micromacro.exe scripts/rom/bot.lua path:farmingdogs character:Elviron
START micromacro.exe scripts/rom/bot.lua path:KSnpc profile:clfarm character:Holymoly

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

Re: 687 Changelog

#4 Post by lisa » Mon Jan 02, 2012 4:00 am

Hmm I didn't change anything that should affect that.

Does it show an error?
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

Germangold
Posts: 276
Joined: Thu Oct 22, 2009 3:58 am

Re: 687 Changelog

#5 Post by Germangold » Mon Jan 02, 2012 9:15 am

it won't accept the parameter character: anymore

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

Re: 687 Changelog

#6 Post by lisa » Mon Jan 02, 2012 9:53 am

It should

Code: Select all

		local foundpos = string.find(args[i], ":", 1, true);
		if( foundpos ) then
			local var = string.sub(args[i], 1, foundpos-1);
			local val = string.sub(args[i], foundpos+1);

			if( var == "profile" ) then
				forcedProfile = val;
			elseif( var == "path" ) then
				forcedPath = val;
			elseif( var == "retpath" ) then
				forcedRetPath = val;
			elseif( var == "character") then
				forcedCharacter = val;
			else
				-- invalid option
				local msg = sprintf(language[61], args[i]);
				error(msg, 0 );
			end
		end
Maybe your bot.lua got corrupted in the update ?
Seems to me it only uses character: when attaching to the rom window.

What exactly is happening when you start your batch file?
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
lisa
Posts: 8332
Joined: Tue Nov 09, 2010 11:46 pm
Location: Australia

Re: 687 Changelog

#7 Post by lisa » Mon Jan 02, 2012 11:01 am

Ok that was really bizzare.

The table in pet.lua was causing the character part of window selection to not work, I still can't explain it but I changed code to load the table only if pet info is updated.

So yes you were right the new code did cause an issue.

Update to 688 and it should be fine.
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

kanta
Posts: 424
Joined: Thu Nov 11, 2010 4:08 pm

Re: 687 Changelog

#8 Post by kanta » Tue Jan 03, 2012 2:26 am

[quote="Germangold"]seems like latesd svn update messed with the command line

character:Yourcharacter

my batch files wont work anymore to start 5 instances of MM simultaneously
egg.:

START micromacro.exe scripts/rom/bot.lua path:KSnpc profile:clfarm character:char1
START micromacro.exe scripts/rom/bot.lua path:farmingdogs character:char2
START micromacro.exe scripts/rom/bot.lua path:KSnpc profile:clfarm character:char3[/quote]

Ummm, in your post, I hope those aren't the real character names... I changed them in this post in case they are and you decide to mask them.

User avatar
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

Re: 687 Changelog

#9 Post by rock5 » Wed Jan 04, 2012 12:54 am

There is something wrong with using water fairy. I noticed even with my code to call it before you committed yours. With

Code: Select all

		<skill name="PRIEST_WATER_FAIRY"   modifier="" hotkey="MACRO" priority="110" />
in the profile, it's very slugish. It always passes waypoints before stopping, bumps into obsticles because it runs too far past waypoints etc. If I remove it, it works fine. So there is something it's doing when checking that skill that takes too long. Had a quick look. I couldn't see what it was. It's not an issue with having the pet out.
  • Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
  • I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
  • How to: copy and paste in micromacro
    ________________________
    Quote:
    • “They say hard work never hurt anybody, but I figure, why take the chance.”
          • Ronald Reagan

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

Re: 687 Changelog

#10 Post by lisa » Wed Jan 04, 2012 1:10 am

Actually I had that issue with warden pets aswell and I put a keyboardrelease because I am assuming moveto is using forward key and isn't being released. I should have added it to the water fairy aswell.

try this out.
Attachments
pet.lua
(5.49 KiB) Downloaded 177 times
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
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

Re: 687 Changelog

#11 Post by rock5 » Wed Jan 04, 2012 2:12 am

Hm... I'm not sure. I realise it wouldn't be able to case the summon if moving but the pet is already out so I don't see that making any difference. Did it work for the warden pets?
  • Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
  • I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
  • How to: copy and paste in micromacro
    ________________________
    Quote:
    • “They say hard work never hurt anybody, but I figure, why take the chance.”
          • Ronald Reagan

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

Re: 687 Changelog

#12 Post by lisa » Wed Jan 04, 2012 4:01 am

works fine for the warden pets.

So it just keeps running even though pet is out, that isn't right.

I'll look into it some more later.
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
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

Re: 687 Changelog

#13 Post by rock5 » Wed Jan 04, 2012 5:48 am

I think it's just doing too much. The code at the end of this post is working better for me.
  • Things I did:
    • 1. Removed pet:update() in "petupdate()". Creating a pawn automatically updates it.
      2. Changed the check for "Frost Halo" on the pet. It's instant on the pet but takes a few seconds to appear on the player. Also removes the need to do a player:update.
      3. Removed

      Code: Select all

      		if _timess == nil or os.time() - _timess > 20 then
      when checking the buff on the pet it's not necessary.
      4. Removed multiple petupdates()
      5. Used pet:hasbuff for "Conceal".
      6. Moved action 5 check toafter casting the skill. Can't have a RoMScript being executed every loop. It shouldn't change after being set anyway so it's better only being checked after actually casting the summon.
      7. Added

      Code: Select all

      player.LastDistImprove = os.time()
      to stop it trying to unstick.

      I think that's everything.

Code: Select all

function petupdate()
	petaddress = memoryReadRepeat("uint", getProc(), player.Address + addresses.pawnPetPtr_offset);
	pet = CPawn(petaddress)
	--pet:update()
	setpettable()
end

function waterfairy()
	if player.Class1 ~= CLASS_PRIEST or player.Class2 ~= CLASS_SCOUT then
		return -- can't have a water fairy if class is wrong
	end
	petupdate()
	if pet.Id ~= 102105 then -- Water Fairy
		keyboardRelease(settings.hotkeys.MOVE_FORWARD.key); yrest(500)
		sendMacro("CastSpellByName(\""..GetIdName(493268).."\")")
		print("Summoning "..GetIdName(102105))

		repeat
			yrest(1000)
			player:update()
		until not player.Casting

		petupdate()
		local icon,active,autoCastAllowed = RoMScript("GetPetActionInfo(5)")
		if active == true then
			sendMacro("UsePetAction(5)")
		end
		player.LastDistImprove = os.time();	-- global, because we reset it whil skill use
	end
	if not pet:hasBuff(503736) then -- Frost Halo
		sendMacro("UsePetAction(6)")
		yrest(500)
	end
	if not pet:hasBuff(503753) then -- Conceal
		sendMacro("UsePetAction(7)")
		yrest(500)
	end
end
  • Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
  • I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
  • How to: copy and paste in micromacro
    ________________________
    Quote:
    • “They say hard work never hurt anybody, but I figure, why take the chance.”
          • Ronald Reagan

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

Re: 687 Changelog

#14 Post by lisa » Wed Jan 04, 2012 6:37 am

lots of very good points, I think I did notice in my travels though that the pet can have the frost halo buff and you don't and your buff isn't renewed unless the pet casts the buff again. Might need some testing on this but I guess in the end it is only affected by you using a mount or running very very fast.

I streamlined it a little more and removed some other unnecessary updates.

Any skills or anything to be added to database before I commit?
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
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

Re: 687 Changelog

#15 Post by rock5 » Wed Jan 04, 2012 7:23 am

I just have

Code: Select all

   <Skill name="All_SOLDIERS_ATTACK" id="495176" cooldown="240" target="self" type="buff" buffname="506062" />
  • Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
  • I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
  • How to: copy and paste in micromacro
    ________________________
    Quote:
    • “They say hard work never hurt anybody, but I figure, why take the chance.”
          • Ronald Reagan

User avatar
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

Re: 687 Changelog

#16 Post by rock5 » Wed Jan 25, 2012 1:45 am

Lisa wrote:It is still set so pet only attacks after you enter combat, If people show interest in pet attacking first/same time then it can be looked in to later.
I don't know about getting them to attack first but it would be good to tell it to attack as you attack for a number of reasons.

1. I quite often attack a mob and go into combat. By the time the pet reacts and runs over, it's already dead. If I click the pet "Attack" then immediately attack myself, then we run up together and kill it together so the pet at least helps a bit.

2. Some skills don't register as an attack to the pet. For instance if I target a mob and use Frantic Briar I'll go into combat and the mob will attack me but my pet ignores it. So telling the pet to attack will bypass this problem.

Well they are the 2 main reasons. I'm just happy to issue an "Attack" to the pet at the start of every player:fight() before starting your own skills.
  • Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
  • I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
  • How to: copy and paste in micromacro
    ________________________
    Quote:
    • “They say hard work never hurt anybody, but I figure, why take the chance.”
          • Ronald Reagan

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

Re: 687 Changelog

#17 Post by lisa » Wed Jan 25, 2012 2:23 am

I originally had this in player.lua in CPlayer:fight()

Code: Select all

	keyboardRelease( settings.hotkeys.MOVE_FORWARD.key);

	if ( settings.profile.options.PARTY == true ) and (settings.profile.options.PARTY_ICONS == true) then
		sendMacro('SetRaidTarget("target", 1);')
		if (settings.profile.options.PARTY_ICONS ~= true) then printf("Raid Icons not set in character profile.\n") end
	end
	--[[
	if player.Class1 == CLASS_WARDEN then -- if warden let pet start fight.
		petupdate()
		if pet.Name == GetIdName(102297) or
		pet.Name == GetIdName(102324) or
		pet.Name == GetIdName(102803)
		then
			petstartcombat()
		end
	end
	]]

	local target = self:getTarget();
	self.IgnoreTarget = target.Address;
	self.Fighting = true;

So after the icon check for party it will check which pet you have and if it is an attacking pet then it will tell pet to attack.

Issues I found were if you have the line of site issue or obstruction issue the pet attacks and you don't.

Also issue if mob is on another "level" so if it needs to go up stairs or up a path to get to mob it will just start running off on it's path to get to mob.

The petstartcombat() will tell Chiron to use it's ranged skills first, so it won't run in to melee range to attack.
It will also do a print on MM, print("Making Pet Attack").

Honestly don't remember if latest revision has the attack code but just commented out like it is in the posted code, if it is then can just uncomment it and test it out.
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
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

Re: 687 Changelog

#18 Post by rock5 » Wed Jan 25, 2012 3:07 am

I uncommented that section of player:fight and had a look at petstartcombat. I didn't want the player to wait while my Chiron when throught it's attack sequence so I removed that bit so it just issues the attack command.

It worked surprisingly well. I was pleasantly surprised to see that while Chiron ran upto the mob with me he also cast one of the arrow skills while running. So, often, the mob would be dead by the time my character got there. Line of sight is not an issue in this case because my warden moves into melee distance. So, unless it actually bumps into something that wont let it pass, there shouldn't be an issue.

Hm.. what would happen if it tries to attack something on the other side of a wall?
  • Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
  • I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
  • How to: copy and paste in micromacro
    ________________________
    Quote:
    • “They say hard work never hurt anybody, but I figure, why take the chance.”
          • Ronald Reagan

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

Re: 687 Changelog

#19 Post by lisa » Wed Jan 25, 2012 3:11 am

Pet will follow the best path to get to the mob, even if it means crossing the entire map.

1 of the reasons I hesitated with having it attack same time as character. The bot will timeout and then go kill something else, the pet will just keep going.

We could add in the time out part for character to cancel attack on pet I guess.
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
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

Re: 687 Changelog

#20 Post by rock5 » Wed Jan 25, 2012 4:13 am

lisa wrote:We could add in the time out part for character to cancel attack on pet I guess.
That would probably work although I bet the pet could cover quite a distance before the character attack times out.
  • Please consider making a small donation to me to support my continued contributions to the bot and this forum. Thank you. Donate
  • I check all posts before reading PMs. So if you want a fast reply, don't PM me but post a topic instead. PM me for private or personal topics only.
  • How to: copy and paste in micromacro
    ________________________
    Quote:
    • “They say hard work never hurt anybody, but I figure, why take the chance.”
          • Ronald Reagan

Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests