750 Changelog

For changelogs and discussion related to a specific revision.
Message
Author
User avatar
rock5
Posts: 12173
Joined: Tue Jan 05, 2010 3:30 am
Location: Australia

750 Changelog

#1 Post by rock5 » Mon Feb 11, 2013 7:35 am

  • - Changed 'bank' so that findItem and itemTotalCount still work even though the bank is closed.

    - Added an ignorelist for unattackable mobs. Mobs are cleared from the list if more than 10s have passed and 50 distance from last ignore.

    - Fixed casting bug. No longer tries to undercut clicktocast skills.

    - Fixed the incomplete code that uses system messages to react more quickly to "object between you and target" and "must face target" messages.

    - Added new feature. You can now retrieve the last of any system alert or warning message without having to set up an event monitor.
    Syntax:
    • lastmessagetime, message = getLastWarning(fullOrPatialMessage, age)
      lastmessagetime, message = getLastAlert(fullOrPatialMessage, age)
    eg.

    Code: Select all

    if getLastWarning("crush you",2) then
        -- do something
    This will only 'do something' if there was a warning message with the words "crush you" in it in the last 2 seconds. You don't need to use the full message (although use the full message to avoid special character problems) and you don't have to worry about case. It remembers the last of every message but only the last and does not clear them. So if there is a danger in your code of acting on the same message twice then remember the "lastmessagetime" to avoid it.

    - Fixed bug that could cause a spammable buff to be cast multiple times in a row until it detects the buff has been applied.

    - Fixed support for casting clicktocast buffs on yourself.
  • 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

metralla123
Posts: 11
Joined: Fri Jul 22, 2011 8:52 pm

Re: 750 Changelog

#2 Post by metralla123 » Mon Feb 11, 2013 8:54 am

Good work guys!! :D
I have a problem with a mob in Grafu Castle. Manipulated Bear. The bot does not detect and ignore, but the mob it strike my char, in the rev 748 it was detecting it. Some solution?!

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

Re: 750 Changelog

#3 Post by lisa » Mon Feb 11, 2013 9:00 am

So it is only for warning messages?

In the example the "crush you" which is done by madman mallen is actually done in /say so it wouldn't be in the warning message.
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: 750 Changelog

#4 Post by rock5 » Mon Feb 11, 2013 9:05 am

What do you mean "detect and ignore"? What do you mean by "but the mob it strike my char"? Are you saying it's aggroing the mob? Isn't it supposed to?
lisa wrote:So it is only for warning messages?
Warning and alert messages. Yes I know "crush you" is a chat message but I couldn't think of a familiar warning or alert. It was just an example. I never considered adding chat because every message is different so if you need to monitor chat you would definitely have to set a your own monitor.
  • 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

metralla123
Posts: 11
Joined: Fri Jul 22, 2011 8:52 pm

Re: 750 Changelog

#5 Post by metralla123 » Mon Feb 11, 2013 10:01 am

the mob attack my character, and the bot not detect any attack or any mob.

metralla123
Posts: 11
Joined: Fri Jul 22, 2011 8:52 pm

Re: 750 Changelog

#6 Post by metralla123 » Mon Feb 11, 2013 10:09 am

I cannot put the images in this post. Do I send them you for PM?

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

Re: 750 Changelog

#7 Post by rock5 » Mon Feb 11, 2013 10:20 am

So why was your character ignoring the mob? Was your waypoint file in "RUN" mode? Was the mob in your friend list? Was the mob outside of the level above and below limits?

You can cut and paste. Follow the link in my signature to learn how to copy and paste from Micromacro. But if you need to send me an image, because you can't attach it here, then sure pm it to me. But why can't you attach an image? I think it just needs to be a jpg.
  • 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

metralla123
Posts: 11
Joined: Fri Jul 22, 2011 8:52 pm

Re: 750 Changelog

#8 Post by metralla123 » Mon Feb 11, 2013 10:36 am

I use this in my profile:
<!-- Attack monsters 3 levels above or 10 below your level -->
<option name="TARGET_LEVELDIF_ABOVE" value="3" />
<option name="TARGET_LEVELDIF_BELOW" value="76" />
<friends>
<!-- names of friends we help fighting or enemys we don't want to attack -->
<!-- for umlauts use \129 (ue),\132 (ae),\148 (oe) e.g. K\132fer -->
<friend name="" />
<friend name="" />
<friend name="" />
<friend name="" />
in the waypoint:
__WPL:setForcedWaypointType("NORMAL");
in the instance, and when the character enter kill 4 mobs, ignore de Manipulated Bear and kill Cayus=boss, te bear follow my char and fight but the bot ignore completely.
I do not see any option that leaves me to place the image, in other posts yes, in this one not. Sorry for my English, I use translator

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

Re: 750 Changelog

#9 Post by rock5 » Mon Feb 11, 2013 11:24 am

Try starting with debug on. eg.

Code: Select all

rom/bot debug
Show me what it prints in the MM window.
  • 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

metralla123
Posts: 11
Joined: Fri Jul 22, 2011 8:52 pm

Re: 750 Changelog

#10 Post by metralla123 » Mon Feb 11, 2013 1:35 pm

debug say:
debug 1018194176 target is not attackable

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

Re: 750 Changelog

#11 Post by rock5 » Mon Feb 11, 2013 9:46 pm

Me and Lisa were trying something different to fix issues with detecting if mobs were attackable but the fix caused it's own issues so we put it back the way it was. Unfortunately that means some mobs, especially in newer zones, do not get detected as attackable. We haven't come up with a solution for this yet. But you've shown us another problem. Because the attackable check it done befor the aggro check it wont fight back against these mobs.

Here is a file wheere I've moved the attackable check after the aggro check so it will at least fight back. I'm not sure this is a good long term solution but you can try it out until we can think of something else.
Attachments
player.lua
(126.63 KiB) Downloaded 249 times
  • 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: 750 Changelog

#12 Post by rock5 » Tue Feb 12, 2013 12:53 pm

This should be fixed in revision 751. Try updating to that. After updating if your player.lua has a red icon next to it do an "TortoiseSVN/Revert".
  • 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
Ego95
Posts: 564
Joined: Tue Feb 28, 2012 12:38 pm
Contact:

Re: 750 Changelog

#13 Post by Ego95 » Tue Feb 12, 2013 4:28 pm

I didn't know where to post it so I thought it would be the best solution to post it in the newest revision topic.
I found out a small "bug" with one (maybe more) skills when using the combat_stop_distance. The bot doesn't use the value of the combat_stop_distance if using casts. That's normal because otherways it would not able to cast anything. The priest skill "Rising Tide" has a cast time of 2 seconds. But as mage/priest there is an elite skill which makes rising tide to an instant skill with 4 seconds cooldown. Especially with the lvl60 elite skill rising tide is a very strong skill which should be used.
The problem is that the bot thinks, my Rising Tide is a casting skill and waits in front of the mob while using the skill. I also noticed the bot ignores the cooldown the skill has as mage/priest.

AlterEgo95

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

Re: 750 Changelog

#14 Post by lisa » Tue Feb 12, 2013 6:53 pm

Code: Select all

table.print(GetSkillBookData(3))
the argument is tab index, so 1,2,3,4
1 being skills like teleport, recall and such
2 main class "shared" skills
3 secondary class
4 main class "class specific" skills

It will print a table of all skills in that tab, looks like this.

Code: Select all

Command> table.print(GetSkillBookData(3))
table: 03B37CD8
Magic Barrier:  table: 03B382A0
        skillnum:       5
        TPToLevel:      44367
        skilltab:       3
        Mana:   720
        Id:     491166
        Level:  50
        Address:        86829872
        BaseItemAddress:        423024640
        aslevel:        12
Holy Aura:      table: 03B381D8
        skillnum:       4
        TPToLevel:      398
        skilltab:       3
        Id:     492653
        Level:  0
        Address:        86829796
        BaseItemAddress:        423025664
        aslevel:        8
Rising Tide:    table: 03B37E68
        skillnum:       1
        TPToLevel:      238130
        skilltab:       3
        Mana:   192
        Id:     491591
        Level:  52
        Address:        86829568
        BaseItemAddress:        422993920
        aslevel:        1
Blessed Spring Water:   table: 03B38368
        skillnum:       6
        TPToLevel:      150
        skilltab:       3
        Mana:   120
        Id:     490298
        Level:  0
        Address:        86829948
        BaseItemAddress:        423023616
        aslevel:        16
Regenerate:     table: 03B380E8
        skillnum:       3
        TPToLevel:      120955
        skilltab:       3
        Mana:   224
        Id:     490269
        Level:  52
        Address:        86829720
        BaseItemAddress:        422996992
        aslevel:        4
Urgent Heal:    table: 03B38020
        skillnum:       2
        TPToLevel:      120955
        skilltab:       3
        Mana:   160
        Id:     491147
        Level:  52
        Address:        86829644
        BaseItemAddress:        422999040
        aslevel:        1
So skill ID of rising tide when you have rising tide mastery is 491591
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

metralla123
Posts: 11
Joined: Fri Jul 22, 2011 8:52 pm

Re: 750 Changelog

#15 Post by metralla123 » Tue Feb 12, 2013 6:58 pm

Hi guyss!! I testing rev 751 and runs perfect in Grafu Castle, detect aggroing and killing the mob!! Congratulations, and thanks you very much!! :D

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

Re: 750 Changelog

#16 Post by lisa » Tue Feb 12, 2013 7:00 pm

that was meant for another post but it is still relevant, the Id of the skill changes but the name remains the same which is why it will be harder to make the bot use it.

Rock would be best to work out how to do this but we would need to check if the skill book has rising tide mastery

Code: Select all

Rising Tide Mastery:    table: 03D3C970
        skillnum:       20
        TPToLevel:      150
        skilltab:       4
        Id:     491590
        Level:  0
        Address:        584890788
        BaseItemAddress:        423085056
        aslevel:        30
and if so then change the Id of the skill rising tide so that the correct information it retrieved from memory.
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: 750 Changelog

#17 Post by lisa » Tue Feb 12, 2013 7:19 pm

do this in profile onload

Code: Select all

	<onLoad><![CDATA[
	for i, skill in pairs(settings.profile.skills) do
		if skill.Name == "PRIEST_RISING_TIDE" then
			settings.profile.skills[i].Id = 491591
			settings.profile.skills[i].Cooldown = 4
			settings.profile.skills[i].CastTime = 0
		end
	end
	]]></onLoad>
bandaid solution but it will work for now.
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: 750 Changelog

#18 Post by lisa » Tue Feb 12, 2013 9:57 pm

trying to work out best way to populate the skills table using info from memory.

We can get BaseItemAddress and from that we can get cast time and cooldown, this is from the actual skill book so the Id in the skills database isn't used, so it will be accurate.

we could then use the name from skill book and compare it to the value gotten from GetIdName(id from database) and then use the values we got from skill book.

Issue I have in the process is I have been realising some people are using "fake" skills in their profile to be able to spam a maco in game, like DIYC. Getting the info from memory would probably make it hard to let people do that in the same way. First thought is add in a function that can be for spamming buttons and have it as a profile option as to whether it gets used or not. So people wouldn't need to use "fake" skills in their profile in order to spamm a macro.

any thoughts?

cooldown = BaseItemAddress + C4 (int)
cast time = BaseItemAddress + F4 (float)

Second thought for adding spamming for a macro is to just create a "skill" in the database which literally just spams the key specified in the profile. It would still be a "fake" skill but if it has a set name in database we can then allow for it while getting info from memory.
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: 750 Changelog

#19 Post by rock5 » Tue Feb 12, 2013 11:12 pm

The reason I didn't get everything from memory when I did the big skills update is because there were too many exceptions. Example, in my excel spreadsheet there are 12 skills that have casttime time but F4 is 0. I don't know if things have changed but I have cooldown as E8 and there are 5 that don't match memory. I always intended to eventually do it but I thought I'd level the full getting of everything from memory for another day because it's a job unto itself just sorting out and handling all the exceptions. Just letting you know if you want to tackle this it's not as simple as you thought.

I believe user macros are supported by not giving the skill an id. So if a user adds a skill to the skills database but doesn't give it an id then it is treated as a macro. I don't know if it's currently working, though. It's a good idea to maybe include some fake user macro skills but I think what the macro does would affect how it needs to be set up, eg. if it's an attack macro or buff/heal macro. I'm not sure. Some thought needs to be put into it.
  • 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: 750 Changelog

#20 Post by lisa » Tue Feb 12, 2013 11:34 pm

testing with this atm

Code: Select all

		tmp.BaseItemAddress = GetItemAddress(tmp.Id)
		tmp.Cooldown = memoryReadRepeat("int", proc, tmp.BaseItemAddress + 0xE8)
		tmp.CastTime = memoryReadRepeat("float", proc, tmp.BaseItemAddress + 0xF4)
It seems fine to me so far, which ones were the exceptions and are you sure they weren't just different to skills database because of elites that changed the cooldowns/cast time?
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

Post Reply

Who is online

Users browsing this forum: No registered users and 4 guests