Dlsmd (it didnt put the quote from your post i replied to)
you mean key items in the resources folder isnt there? My resources file for KI has them, or you mean some other file?
Dlsmd (it didnt put the quote from your post i replied to)
you mean key items in the resources folder isnt there? My resources file for KI has them, or you mean some other file?
no in windower.ffxi.get_key_items() --your in-game gained key items
thay are in res/key_items.lua
but thay know exactly what needs to be done to fix the issue thay just need to do itCode:[3072] = {id=3072,en="♪Chocobo companion",ja="♪マイチョコボ",category="Mounts"}, [3073] = {id=3073,en="♪Raptor companion",ja="♪ラプトル",category="Mounts"}, [3074] = {id=3074,en="♪Tiger companion",ja="♪剣虎",category="Mounts"}, [3075] = {id=3075,en="♪Crab companion",ja="♪クラブ",category="Mounts"}, [3076] = {id=3076,en="♪Red crab companion",ja="♪赤クラブ",category="Mounts"},
Just noticed, but it's a very very very old bug, that Timers doesn't handle "Soul Voice" and "Clarion Call" duration timers well.
If I use Soul Voice the correct duration of the buff appears in the right window.
If I then proceed to use Clarion Call its duration will appear in the right window too, but it will OVERWRITE the duration of Soul Voice.
This shouldn't happen, should it?
For the mountup addon you could just use the packet to check if you have the ki directly:
This should work, but I have all the mount ki and I'm not sure if the binary order is the correct one, but I think it is.Code:_addon.name = 'MountUp' _addon.version = '1.00' _addon.author = 'Whoever (Shiva)' _addon.command = 'mu' require 'luau' packets = require('packets') mountarray = T{} -- mount table function random_mount() --randomly selects mount local select_mount = 0 while select_mount < 1 do select_mount = math.ceil(math.random(0,#mountarray)) end return mountarray[select_mount] end windower.register_event('incoming chunk', function(id, data) --builds mount list if id == 0x055 then mountarray:clear() local packet = packets.parse('incoming', data) if packet['Type'] == 6 then local ki_mask = string.format('%08d',(data:unpack('b8', 5)):binary()) if string.match(ki_mask, '%d+(%d)') == '1' then mountarray:append("Chocobo") end if string.match(ki_mask, '%d+(%d)%d') == '1' then mountarray:append("Raptor") end if string.match(ki_mask, '%d+(%d)%d%d') == '1' then mountarray:append("Tiger") end if string.match(ki_mask, '%d+(%d)%d%d%d') == '1' then mountarray:append("Crab") end if string.match(ki_mask, '%d+(%d)%d%d%d%d') == '1' then mountarray:append("Red Crab") end end end end) function UseMount() --main function if #mountarray >= 1 then --varifies you have at lest one mount windower.send_command('input /mount "'..random_mount()..'"') end end windower.register_event('addon command', function() UseMount() end)
it should because i thing this ois how the keyitems table is built
example:
but why it stops at packet['Type'] == 5 i dont knowCode:Key_items = t{} function toBits(num, bits) -- returns a table of bits local t={} -- will contain the bits for b=bits,1,-1 do rest=math.fmod(num,2) t[b]=rest num=(num-rest)/2 end return t end windower.register_event('incoming chunk', function(id, data) --builds mount list if id == 0x055 then local packet = packets.parse('incoming', data) local start = (packet['Type'] == 0 and 0 or ((packet['Type'] * 512) -1)) local mask = toBits(packet['Key item available'], 512) for i, v in ipairs(mask) do if v == 1 then Key_items:append(start+i) end end end end)
Sorry it took so long to try out, i immediately forgot about it before i got back to my computer with ffxi on it.
Ok I tried it out. it doesnt give me an error on load finally but it doesnt do anything. Unless Im using the wrong command? what is the command to summon the mount?
just what you wanted //mu
OK tried //mu and it didnt work. I spose //mu is ok if there is no need for a sub command thingie. I just thought that was how addons needed to be lol.
Alright i commented out the mountarray line and put this on next (for temporary fix):
mountarray = T{"Raptor","Tiger","Crab","Red Crab"} -- mount table
Also added in the UseMount funcion this:
windower.send_command('timers c Mount 60 up')
makes a timer for when u can next summon mount, im sure there is a way to make that toggleble.
but the important thing is it works at least til the KI thing is figured out.
weird, it does work for me.
It might be because Im on an XP machine. its always having problems other OSes dont seem to have. some addons dont work at all, like ones that display stuff on screen. But oddly things like pointwatch work and scoreboard. Also I went ahead and alterred it a bit more, and figured out how to make 2 arrays, one for each of my characters since they have different combos of mounts, so that it will summon everytime. if i didnt make 2 separate tables it would sometimes not do anything (which is when it randomly chooses one my mule lacks) But Im happy now and it works like i wanted so thanks Kenshi and dlsmd and everyone else who contributed.
================================================== ================
SPEAKING of pointwatch i noticed when i max out merits it says 11 instead of 75 lately. (I have it fully merited so i can earn 75 total) It used to say 75 like normal, but last night i hit max merits and it is showing 11/11. On mules without merits in merits, it shows 30 as the max so it seems to be at least my characters that have 75 total merits (mule and main) Is this just me?
I do manually download addons. It did update the list not tooo long ago but things like barfiller dont show up in my list. plugins i have no idea where to get anything new in that dept. but im sure i have everything there. i think those tend to update better than addons do. Im not sure if the addons update themselves or not anymore. but i check git hub randomly and download newer versions. My findall seems to have deleted safe 2 again from its storagaes to check again.
take in mid that my code needs to receive the ki packets for it to create the mountarray, so it won't work if you load it while in game till you receive those packets. Maybe it didn't work due to this?
You need to get a computer that's not running XP. It's past EOS for Microsoft.
Has there been any movement on the issue of same time/multi-character zone crashing? It seems to be getting progressively worst. I completely avoid teleporting now because of it, and now it's crashing multiple times a day going in and out of ambuscade. I feel like it's happening because different instances are trying to access the same files. Will having multiple installations of FFXI resolve it?
I havent crashed due to teleporting much but couple days ago i did. I didnt connect it to this issue for some reason though. Ive offset using of warp rings between characters so it never happens at jsut the same time. things like ambuscade though my main is usually the leader and my mule tends to load it in first and my main a couple seconds later so ive never had an issue. i notice alot of times my leader character loads slower to things like assaults and nyzul. that problem is definitely annoying.
@Byrth Yea i want a new pc/my good pc fixed but i dont have a job atm. It might cost alot to fix my good pc so it might just be more worth it to get a new one altogether.
@Kenshi yea as I was lookin at your code i was kinda wonderin if it somehow checked the ki packets themselves cause i couldnt imagine the game was just shooting those KIs around constantly. I was wondering what one could do to get those packets going. Id imagine if u summomed one normally it would get the KI packet or opened that menu but would the addon remember this? Or maybe just need to have it loaded before loggin in I dunno. but for now I altered it with manually filled mountarrays.
------------------------
Also I think i figured out why findall wasnt lookin in safe2 again and also why suddenly pointwatch was sayin 11 merits for max merits when i have 75 total. When i deleted the updates folder a page or so back in this thread as dslmd suggested it downloaded new OLD files. Yesterday when i checked findall's lua, naturally it was missin safe 2. i just checked pointwatch's lua and i found max merits 30. so i suspect this is an older version or something. So Im going to go thru git hub and redownload every addon again. But how could launcher download older files, do they still exist somewhere? why would it not somehow get the new stuff? i dont understand it.
if you want to check if the packets code work for you, zone after loading it or just log in with it loaded to get the ki packets.
Ok I will try that. I pretty much loaded it after i tele holla'd so its entirely possible the thing necer loaded the packets.