Help - Search - Members - Calendar
Full Version: FFXI_info/DTACT_info
AC Tools Everything Macro > AC Tool Macros > Final Fantasy XI Online
Pages: 1, 2
rzn
current version 2.0.1

UPDATED!! 8-28-06

Have to thank Sean for all his help he found 99% of the working offsets

version 2 now only uses 3 yes three offsets most everything from version 1 is there and i will be adding combat and magic skills sometime soon.(the offsets are there i just need to write the functions)

keep in mind i didn't test every function so please let me know whats broke.

version 1.1 will work untell the next update

Links:
Old FFXI_info post

functions
08/07/2006 20:13:10:683
Info_Player_Name
Info_hp_Current
Info_mp_Current
Info_tp
Info_hp_Percent
Info_mp_Percent
Info_Zone_ID
Info_Zone_Name
Info_Player_Posx
Info_Player_Posz
Info_Player_Posy
Info_hp_Max
Info_mp_Max
Info_Job_Main
Info_Job_Main_lv
Info_Job_Sub
Info_Job_Sub_lv
Info_Exp_Current
Info_Exp_Max
Info_View
Info_Fish_Rodlocation
Info_Fish_Maxhp
Info_Fish_Currenthp
Info_Fish_ID1
Info_Fish_ID2
Info_Target_Distance
Info_Target_Sub
Info_Target_Posx
Info_Target_Posz
Info_Target_Posy
Info_Target_Posh
Info_Target_Name
Info_Target_Stat
Info_Target_hp
rzn
version 1

No longer supported

Info:
This is a port of BableFish with a few new functions.

Credits:
Cgrinds, DrewLT and anyone else that helped with DTACT, BableFish, FFXI_info

Notes:
This is very much a beta Nothing has been well tested so fell free to post, pm and or im me with bugs.



Links:
DTACT
original babelfish post
rzn
current map

_info_player1 8035CE
+0 name
+30 hp current
+34 mp current
+38 tp
+42 hp %
+43 mp%
+44 zone id


_info_player2 3D1E5C //removed pointer update broke it
+0 posx

+4 posz

+8 posy

+45 passing npc/pc ???

+180 hp max

+184 mpmax

+188 main job

+189 main job lvl

+190 sub job

+191 sub job lvl

+192 current xp

+194 xp needed

+196 str
+198 dex
+200 vit
+202 agi
+204 int
+206 mnd
+208 chr

+210 +str
+212 +dex
+214 +vit
+216 +agi
+218 +int
+220 +mnd
+222 +chr

+224 attack
+226 defence

+228 fire
+230 ice
+232 wind
+234 earth
+236 thunder
+238 water
+240 light
+242 dark

+244 TitleID ID number for the current Title of the Player - Enumeration
+246 Current Rank Player's Rank for Nation to which Player Currently holds Allegiance

+256 h2h // if 0 skill unavaible
+257 cap //0=uncaped, 128=caped

+258 dagger lvl
+259 cap

+260 sword
+261 cap

+262 greatsword
+263 cap

+264 axe
+265 cap

+266 great axe
+267 cap

+268 scythe
+269 cap

+270 polearm
+271 cap

+272 katana
+273 cap

+274 great katana
+275 cap

+276 club
+277 cap

+278 staff
+279 cap

+280 unknown
+281 cap?
+282 unknown
+283 cap
+284 unknown
+285 cap
+286 unknown
+287 cap
+288 unknown
+289 cap
+290 unknown
+291 cap
+292 unknown
+293 cap
+294 unknown
+295 cap
+296 unknown
+297 cap
+298 unknown
+299 cap
+300 unknown
+301 cap

+302 archery
+303 cap

+304 marksmanship
+305 cap

+306 throwing
+307 cap

+308 garding
+309 cap

+310 evasion
+311 cap

+312 shield
+313 cap

+314 parrying
+315 cap

+316 divine
+317 cap

+318 healing
+319 cap

+320 enhancing
+321 cap

+322 enfeebling
+323 cap

+324 elemental
+325 cap

+326 dark
+327 cap

+328 summon
+329 cap

+330 ninjutsu
+331 cap

+332 singing
+333 cap

+334 string
+335 cap

+336 wind
+337 cap

+338 blue magic
+339 cap

+340 ~ +349 unknown magic

crafts cap lable/ level
+350 fishing
+352 woodworking
+354 smithing
+356 goldsmithing
+358 clothcraft
+360 leathercraft
+362 bonecraft
+364 alchemy
+366 cooking

+370~+383 hidden crafts????


+9868 fish
+10012 view
+10332 last action


_info_pointers 425860

425860 help
425864 quty +4
425868 inv name +8
42589C bid
42599C target
4259A0 top left
47C4C0 stat +355424
4BCB2C keyboard +619212
4BD9B0 inv +622928
sean1976
Nice! Once again thank you for the ongoing work Rzn.
Lanternus
Very nice, thank you again for sharing this. happy.gif
rzn
Had to change the windowname function to a procedure you can now call windowname at anytime to set the current ffxi window active.

Example:

None static window name
CODE

constants
window = {null}
end

call windowname


Static window name
CODE

constants
window = FFXiApp
end

setactivewindow $window
sean1976
Looks like Vampirequeen found a offset for the chatlog of what you say/enter yourself. here's her posts link for it.

http://forums.cameroncole.com/index.php?showtopic=8251
rzn
ffxi_info update

added $info_cast 1 while casting 2 durning "cast delay" 0 anyother time

i'll update dtact_info tomorrow
PimpJuice
OK, just a quick question. I had version 1.01r working fine before your minor update but afterwards i recieve this error useing Edges fishing script. Getting error Constant Window Defined more than once.

What do I need to change in this release to get it working again. I am useing no windower, just the PID method in Edges fishing script. I know I am overlooking the obvious.

Keep up the good work smile.gif
rzn
fixed forgot to take that out after testing
PimpJuice
That did the trick, all working again. Thanks
rzn
I'm no longer supporting these there are many reasons but none are important.

I do take special orders. if you are working on a project and need an offset or 2 feel free to contact me.

Thanks for all the support and help with ffxi_info it's been fun.
NotMe1963
The below stuff is for the current release as well, it was just posted in the other thread.
Stuff that is not quoted are just copies of my posts. The quote is of Sean.

New stuff at bottom.

-=-

QUOTE (NotMe1963 @ Jul 26 2006, 09:07 AM)
I believe these to be correct:

CODE

 _info_fish   = 3D44E8
 _info_bid   = 42589C
 _info_Craft_Quantity = 425864
 _info_target   = 42599C
 _info_gil   = 804E88



Updating as I find things.  I'm just trying to be a bit useful here.


-=--=-

QUOTE (sean1976 @ Jul 27 2006, 05:08 PM)
The info_fish you got is the same one I got and works great for my bot.  Here are a few others that I have gathered.  Not sure how much will post but figured I would add some of the ones from ffxi info that I have found the current versions of.

CODE
_player_stat = 47C4C0
_last_action = 3D46B8
_player_mp_current = 8035F0
_player_hp_current = 8035EC
_info_player = 3D1F0C
_view = 3D4578


Enjoy


-=--=-

QUOTE (NotMe1963 @ Jul 27 2006, 05:11 PM)
CODE

function info_keyboard //returns 1=compact 0=full
 call memloc 4BCB2C


CODE

function info_zone_name
 call memloc 3A9380


I believe these 2 changes are correct.

Thank's Sean, nice to see someone else posting a few of the fixes for this.  I'm still learning here.

FFXI is fun.  I get to learn new stuff all the time.


-=-

And now something not quoted from the other thread.

New fixes to ffxi_info.inc

CODE

procedure draw_distance
 call memloc 3A8E6C
 setmemoryex $_info_itembase, 999999, longint
 call memloc 3A8E7C
 setmemoryex $_info_itembase, 999999, longint
end
// max char models displayed
procedure mod_display
 call memloc 3A8E50
 setmemoryex $_info_itembase, 255, byte
end


Editted for clarification of a few points and ouch. huh.gif
eragon
anyone know the offset for info_player_pos, info_last_chat_line?
Pyrolol
well....it's not as simple as it seems^^. The way I do it is by:

1- read a 2 byte integer from 0x3CF724.
2- subtract 0x300 from it.
3- read a 4 byte integer (pointer) from 0x3D09E0 + 4 times the number found in step 2.
4- read your pos from (i think its 0x24) after that position.
eragon
thx pyrolol smile.gif

i'll check it out. what about info_last_chat_line? you got that one?
rzn
if the community wants to put together a list of working offsets i'd be happy to update the orginal post. let me know
sean1976
I'd be interested but am unsure of my time available since I have a half dozen projects pulling me in different directions
adidaskid
i'm interested as well, i'm trying to find inventory memlocs:
_info_inv and _info_inv_itemname with little success :/
NotMe1963
CODE

 _player_tp              = 8035F4


Editted for ouch.
NotMe1963
here's something new to ffxi_info.inc

CODE

Function info_Player_Name
 Call memloc 8035CE
 Call ReadMem cstring
 SetConst Result = $_info_memresult
End


not really useful, but whatever.

Edit: ouch.
vampirequeen
i was thinking of finding a memory address of enimity or hate that a mob has on you, dont know if provokeing the mob everytime and searching for a number that increased will work. what you guys think? and anyone have a better idea for searching for it.

i also want to know if there is a limit on enimity, like a max because that would distract my search as well.
Pyrolol
its not clientside.
rzn
yeah it falls under one of the things i was never able to find
rzn
Offset list updated ver 1.1.0 and above does not need to redownload.
partyxboy
is the info_Menu_TopLeftText offset correct?
rzn
offsets have been uploaded topleft text should be working now.

ssjsean
Well done sir! i've been working on finding offsets and you've just saved me hours of work. much obliged, back to going after Lu Shang! a thousand internets for your first born child.
partyxboy
for some odd reason the info_Menu_TopLeftText still isnt workin out...... very strange, i dnt really need it as i can make a work around but it would be better with it.
segfault
Thanks and nice job rzn.
sean1976
party did you try it recently because when it was first updated we had a wrong offset for that but rzn corrected it the next day
partyxboy
lol ok i did check that once and it was the same o well everything is good now thanks, and good job!!
NotMe1963
I see the DrawDistance and Max Models displayed weren't updated as the above values.

You guys also didn't like the addition of info_Player_Name? also as above?

--
ouch.
rzn
this was just to get it funtional again
NotMe1963
Just some changes I made on my copy.

CODE

Function info_Player_Name
 Call memloc $_info_player2
 Call ReadMem cstring
 SetConst Result = $_info_memresult
End
function info_hp_current
 Call memloc $_info_player2
 call readmem smallint, 30
 setconst result = $_info_memresult
end
function info_mp_current
 Call memloc $_info_player2
 call readmem smallint, 34
 setconst result = $_info_memresult
end
function info_tp
 Call memloc $_info_player2
 call readmem smallint, 38
 setconst result = $_info_memresult
end
function info_hp_percent
 Call memloc $_info_player2
 call readmem byte, 42
 setconst result = $_info_memresult
end
function info_mp_percent
 Call memloc $_info_player2
 call readmem byte, 43
 setconst result = $_info_memresult
end
function info_zone_id
 call memloc $_info_player2
 call readmem byte, 44
 dectohex _info_temp = $_info_memresult
 setconst result = $_info_temp
end
function info_zone_name
 dslocate zone, id, $info_zone_id
 set _info_temp0 = zone[name]
 strProper $_info_temp0
 setconst result = $_info_temp0
end


CODE

 _info_player2      = 8035CE


--
ouch.
NotMe1963
With the following code, call draw_distance 1,1 would result in the max you can normally set in FFXI and call draw_distance 0,0 would be the minimum you can normally set in FFXI. Decimal values are accepted such as call draw_distance 15,7.5

QUOTE (NotMe1963 @ My notes and observations)
_drawdist1  Character and terrain features draw distance.  Does not allow PCs/NPCs/Mobs to be seen past 50.  Does allow some terrain feature deforms to occur past 50.  Controls fogginess of NPC texturess at a distance to an extent.
_drawdistance2  Landscape and large terrain features draw distance.  Key objects draw distance.


Have fun:
CODE

procedure draw_distance Using _Dist1, _Dist2
if $_Dist1 <= 0
 setconst _info_temp = 1056964608
else
 if $_Dist1 >= 100
  setconst _info_temp = 1895825408
 else
  compute _info_temp = $_Dist1 * 8388608
  compute _info_temp = $_info_temp + 1056964608
 end
end
 call memloc $_drawdist1
 setmemoryex $_info_itembase, $_info_temp, longint
if $_Dist2 <= 0
 setconst _info_temp = 1056964608
else
 if $_Dist2 >= 100
  setconst _info_temp = 1895825408
 else
  compute _info_temp = $_Dist2 * 8388608
  compute _info_temp = $_info_temp + 1056964608
 end
end
 call memloc $_drawdist2
 setmemoryex $_info_itembase, $_info_temp, longint
end


CODE

 _drawdist1      = 3A8E6C
 _drawdist2      = 3A8E7C


--
ouch.
NotMe1963
Personally I found this to act strangely when adjusted to far from the 25-50 default range SE set. However, unlike SE I think you can make up your own mind. 1-255.
Just don't blame me if you break something.
usage:
call mod_display #
ex:
call mod_display 60

CODE
procedure mod_display Using _models
if $_models <= 0
 setconst _info_temp = 1
else
 if $_models >= 255
  setconst _info_temp = 255
 else
  setconst _info_temp = $_models
 end
end
 call memloc $_maxmodels
 setmemoryex $_info_itembase, $_info_temp, byte
end


CODE

 _maxmodels      = 3A8E50

--
ouch.
sean1976
lol yeah those were not excluded intentionally, we just updated the old version. The only reason for 2 more offsets if I remeber correclty was they no longer fit the same way in the structure so were just done as individual offsets now but they were old material. I think everything should be included in general because even if you don't use it now it may be useful later and it may give oyu insite into the internal structure of data in ffxi. Hope you didn't feel like they were intentionally left out.
NotMe1963
CODE

3D1F0C      4 bytes    unkown           unknown
      +4    2 bytes    Player Max HP    Player's Max Hit Points

just curious, what's that first 4 bytes at the _info_player address for? Is there a significant reason for starting the offset there versus at 3D1F10? I mean besides the functions having the +4. Like did there used to be something there that was useful. ie, was there something in the old memstruct that made that a useful address. At present I have yet to see those 4 bytes change.

Thanks.
rzn
check out the new version i changed everything and probly broke a few things but it will be 100000x easyer to update after updates.
huaxiayaojie
my synthxp bot cannot working
someone can help me
NotMe1963
well, I got home figuring to check out FFXI_INFO2.mac.

Problem1:
Line 16:
CODE
window       = FFXiApp - Windower Enabled

Commented line out as:
CODE
//  window       = FFXiApp - Windower Enabled



Problem2:
Lines 34-37:
CODE
while 1 = 1
 timestamp $info_view
 delay 500
end

Commented out as:
CODE
(* while 1 = 1
 timestamp $info_view
 delay 500
end *)


Problem3:
Lines 21-33:
CODE
(*
constructs
rzn = List
end
dataset zone
ID = string 2
name = string 50
end
HTTPGet rzn, calamity-ls.com/FfXiInFo/test
if fileexists .\zones.xml
dsload zone, .\zones.xml
end
*)

Changed commenting and code structure as follows:
CODE
dataset zone
ID = string 2
name = string 50
end
if fileexists .\zones.xml
dsload zone, .\zones.xml
end
(*
constructs
rzn = List
end
HTTPGet rzn, calamity-ls.com/FfXiInFo/test
*)


Problem4:
Lines 171, 187, 194, 201, 208:
CODE
 Call GetPointer, 9868

Changed all lines above to read:
CODE
 Call GetPointer 9868


With the above changes things appear OK.

rzn
i must have ziped it before i saved that last time.

uploaded the correct copy
leggmann
Just curious but do any of these work for anyone? I'm not able to get any of the memory reads to work at all...

edit: ok so I played with it a lot more and it seems that functions that use the pointers offset don't seem to work at all for me.
rzn
what functions? i'll debug them
sean1976
I'm still using the old ones to a large degree with my bots b8ut have switched some of the code over to the new ones and seems to be working fine. Main one I tested though was Zone ID.
sabotender
rzn - would you be willing to post any information as to how you go about finding the info_player variables, and such, after an update?

I've been toying with some ideas but none have seemed to work all that well thus far.

EDIT: grammar / spelling a bit.
rzn
see first page
NotMe1963
Just to fill in one I know the answer for.

939CB pointer to _info_player2 939CB
+244 TitleID ID number for the current Title of the Player - Enumeration
+246 Current Rank Player's Rank for Nation to which Player Currently holds Allegiance
rzn
going to try and keep a "map" on the first page for community use so please submit anythin you think would be useful
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2010 Invision Power Services, Inc.