|
Lua Addon Ideas
Serveur: Odin
Game: FFXI
Posts: 200
By Odin.Ewellina 2018-04-21 15:32:41
Yeah it's just it still takes a solid 10 minutes to do it.
10.5 sets of "buy" then "sell" @ 833 stacks @ 1 second each
im sure 10 mins is nothing in comparison to doin it manually though. There is goin to be a limitation to how fast you can go, and the faster you go the more dangerous it gets im prety sure ^^
Bismarck.Dunigs
Serveur: Bismarck
Game: FFXI
Posts: 83
By Bismarck.Dunigs 2018-04-21 15:41:13
Lines ~68/70 of SellNPC add a wait delay of random number between 1-2 seconds between sells, probably to make it seem more human. You can modify the lines from coroutine.sleep(whatever) to coroutine.sleep(0.01) and it will go much faster (you need SOME delay or you'll crash, so don't remove it entirely). Do so at your own risk. Bellhop for Ashita does everything at once but you'd have to port the purchasing addon to Ashita.
Also for what it's worth SellNPC (at least at the time I downloaded it) doesn't check that you're next to the actual NPC so you technically don't have to move from the Unity NPC at all between sells. Definitely do so at your own risk, though.
Serveur: Leviathan
Game: FFXI
Posts: 6052
By Leviathan.Comeatmebro 2018-04-21 18:20:57
if you wanted to just buy and sell at the npc you could dump them in under 45 seconds, but selling w/o a valid npc is questionable (friend got banned for doing it in reives even though theres a npc in the zone by entrance)
it's only ~5min to buy 80 stacks, sellall, repeat.. you can buy any quantity using packets but you're only shaving off 3-4 seconds per cycle so it's not really that important vs using the menu manually
far as i can tell there's no risk to selling them all at once, i've been doing it with all sorts of items for the better part of a decade
Asura.Eiryl
Serveur: Asura
Game: FFXI
By Asura.Eiryl 2018-04-21 18:58:51
With sellall its about 13 minutes not 5 u_u
Minimum being one second, 833 times
Quite a long time, if we're considering 6 caps a day, losing an entire hour just npcing
Code if not appraised[item] then appraised[item]=true,coroutine.sleep((1+math.random())) return sell_npc_item(item) end
windower.packets.inject_outgoing(0x085,string.char(0x085,0x04,0,0,0x01,0,0,0))
coroutine.sleep((1+math.random()))
return sell_npc_item(item)
When you change it to the .002 (fastest uncrashable speed?) what do you change
Serveur: Leviathan
Game: FFXI
Posts: 6052
By Leviathan.Comeatmebro 2018-04-21 19:24:35
I mean, you're basically asking people to write you plugins so you can sell gil better. If you're that invested in the business, maybe it's time to start learning lua. By 5 min, I meant with bellhop. You would change the contents of coroutine.sleep() to reduce the delay.
[+]
Asura.Eiryl
Serveur: Asura
Game: FFXI
By Asura.Eiryl 2018-04-21 19:27:05
Leviathan.Comeatmebro said: »I mean, you're basically asking people to write you plugins so you can sell gil better. If you're that invested in the business, maybe it's time to start learning lua.
Well, i'm not asking "for me" I'm just interested in it as well. And I would love to learn this ***. Every time I ask a question about it to try all I get is nothing in response. Or sarcasm.
I've probably asked 60 times how to make changes to gearswaps. I've stopped bothering.
Asking about the synergy lua too, make absolutely zero profit of any kind from it, when I did it originally I did all syngery for free for anyone that asked. But I no longer have 80 synergy on characters I currently use. I also craft anything I'm capable of crafting for free.
By pchan 2018-04-22 04:58:59
Sellnpc is slow because its complexity is O(n^2) instead of O(n) ,if you see what I mean, as for each sell it compares 2 big lists of items which is HELP I AM TRAPPED IN 2006 PLEASE SEND A TIME MACHINE. If you want something faster make your own lua with a list of length 1 containing your item's codes, pb solved. You'll probably sell 80 slots in under 1 sec.
Bahamut.Ivebian
Serveur: Bahamut
Game: FFXI
Posts: 39
By Bahamut.Ivebian 2018-04-22 13:46:00
Just remove the coroutine.sleep((1+math.random())) and it will sell everything instantly.
On second thought, should move the actual selling inside the find_item function to reduce that call.
Asura.Cair
VIP
Serveur: Asura
Game: FFXI
Posts: 246
By Asura.Cair 2018-04-22 15:00:07
Selling everything instantly is detectable & they explicitly ban for it if you're abusing it too much.
Serveur: Leviathan
Game: FFXI
Posts: 6052
By Leviathan.Comeatmebro 2018-04-22 15:33:54
Selling everything instantly is detectable & they explicitly ban for it if you're abusing it too much. Do you have any proof of that? They certainly ban for making too much gil off NPC too quickly now(mass vendoring an exploit, for instance).
However, I've never had a character banned for selling full inventory instantaneously, given I do it at a real NPC with the menu open using legitimate items. I've done it every time I dumped accolades since they were added, and for cruor before that. Plenty of people I know do it every gain exp for all 4 hours, Ashita has yet to have any complaints about Bellhop getting anyone banned in the years it's been available. I think there was probably something else involved in whatever ban you're thinking of.
Not saying it isn't detectable, it is, but in much the same way that gearswap and organizer and a host of other things people do are. They'd need a reason to pursue it.
Asura.Cair
VIP
Serveur: Asura
Game: FFXI
Posts: 246
By Asura.Cair 2018-04-22 15:47:47
Didn't mean for a single inventory. That's probably fine, but I'd do it with caution. It's just related to how much you're NPCing in some unspecified time frame.
Serveur: Leviathan
Game: FFXI
Posts: 6052
By Leviathan.Comeatmebro 2018-04-22 16:04:33
Without getting too specific, my impression is that it far exceeds the amount any legitimate player will get and it's not related to how quickly you sell an individual inventory, but how much gil you produce from NPC over time.
Selling thousands of stacks of prize powders as fast as you can farm accos is fine. Making 100m+ in a week off NPC is not. The only times I've heard of/seen bans in any way similar to that were related to exploits. Maybe someone extremely dedicated could trigger it running puks>sparks 20 hours a day, but I don't know.
Asura.Eiryl
Serveur: Asura
Game: FFXI
By Asura.Eiryl 2018-04-22 16:07:37
2 cents thing, I'm pretty sure one of my accounts (in 2013 or 14) hit that "unknown" amount in "unknown" timeframe.
I was getting like 7m a day strictly npcing "items" and sparks when they first came out. The ban email sited RMT, which I was not doing (yet). I assumed it was related to volume of NPCables.
I believe Dasva got hit with it as well, around the same time.
Quetzalcoatl.Landsoul
Serveur: Quetzalcoatl
Game: FFXI
Posts: 78
By Quetzalcoatl.Landsoul 2018-05-01 14:33:46
Maybe FFXIDB / Minimap addon to LUA? Lua would give it a lot more customizabilities. FFXIDB being locked as plugin gives it very minimal customizeability. I cant resize it. FFXIDB also has a problem not scaling propperly on 4k despite setting the UI scaling to 1.5x FFXIDB doesn't get bigger.
Maybe a custom buff tracker that you can individual buffs you set up in the settings and custom icons maybe.
Custom cast bar addon.
Ragnarok.Martel
Serveur: Ragnarok
Game: FFXI
Posts: 2954
By Ragnarok.Martel 2018-05-01 15:06:26
The Timers plugin supports custom timers, including custom icons. It's how I handled AM3 when the built in timers were inaccurate. You just have to have your lua initiate/cancel the cutsom timers.
Timers also has lists where you can say, don't track this buff etc.
By pchan 2018-05-04 12:17:32
In case ppl didn't notice the concensus has been to hide to the playerbase an addon that handles efficient prize powders buying and selling. So here we go, don't hate me.
https://drive.google.com/open?id=1tX56_wpbSSDQ4OgDfB5dCaG93NoxPX66
https://drive.google.com/open?id=12nQSFXJFF-FfaAYMYX0DqBuRxx_uJ-Hx
Read the README files. If you want to sell somewhere else ... adapt. Can also quickly buy acheron shields with an addon that actually works too (especially with send) !
Sylph.Feary
Serveur: Sylph
Game: FFXI
Posts: 455
By Sylph.Feary 2018-05-05 00:09:56
can we have a addon that functions to Answeringmachine for bazaar sales.
where after bazaar for 8 hours to get a recap of what i've sold.
BazaaringMachine.
//bm play
//bm clear
etc
Quetzalcoatl.Landsoul
Serveur: Quetzalcoatl
Game: FFXI
Posts: 78
By Quetzalcoatl.Landsoul 2018-05-06 20:16:11
The Timers plugin supports custom timers, including custom icons. It's how I handled AM3 when the built in timers were inaccurate. You just have to have your lua initiate/cancel the cutsom timers.
Timers also has lists where you can say, don't track this buff etc. I tried adding custom icon for Finishing moves 1-5 and it didn't work. Are you able to monitor regular buffs / debuffs that aren't bound to any JA or spell?
Ragnarok.Martel
Serveur: Ragnarok
Game: FFXI
Posts: 2954
By Ragnarok.Martel 2018-05-06 20:24:56
I'm not entirely certain what you mean by your question. Could you explain exactly what the desired result is, and what you attempted?
Quetzalcoatl.Landsoul
Serveur: Quetzalcoatl
Game: FFXI
Posts: 78
By Quetzalcoatl.Landsoul 2018-05-06 20:40:48
Dancer has a buff called "Finishing Move (1)" to "Finishing Move (5)"
I want it printed either as a text or icon with the number of finishing move up at the time.
Ragnarok.Martel
Serveur: Ragnarok
Game: FFXI
Posts: 2954
By Ragnarok.Martel 2018-05-06 21:53:07
I appear to have badly misunderstood your intention. Usually when someone says buff tracker, that refers to tracking buff durations. That doesn't appear to be what your after. I apologize for pointing you in the wrong direction.
That said I'm still very confused as to what you do want, because the default finishing move buff icon in game already has a number affixed to it(and so does the XIview custom icon version. I'd say the number is a bit easier to see in the XIview version though.) So I think I must still be misinterpreting what you're going for here.
Quetzalcoatl.Landsoul
Serveur: Quetzalcoatl
Game: FFXI
Posts: 78
By Quetzalcoatl.Landsoul 2018-05-07 00:32:58
I appear to have badly misunderstood your intention. Usually when someone says buff tracker, that refers to tracking buff durations. That doesn't appear to be what your after. I apologize for pointing you in the wrong direction.
That said I'm still very confused as to what you do want, because the default finishing move buff icon in game already has a number affixed to it(and so does the XIview custom icon version. I'd say the number is a bit easier to see in the XIview version though.) So I think I must still be misinterpreting what you're going for here. For a few reasons. One reason being able to choose which buff being displayed and all clumped together with the debuff timers custom target bars etc.
Secondly, I play on 4k and icons are really tiny and hard to see when not close to the screen.
Asura.Sechs
Serveur: Asura
Game: FFXI
Posts: 10114
By Asura.Sechs 2018-05-07 01:32:57
Another thing is that you can store up to 9 Finishing Moves, but there are only 5 icons (1, 2, 3, 4 and 5+).
There is no message in the chatbox about how many maneuvers you have exactely, unless you use the 3mins CD JA "No Foot Rise", that returns a chat message with the exact number of finishing moves you currently have.
As far as I know it doesn't happen under any other circumstance (i.e. when you "spend" finishing moves or when you gain them "normally" through steps)
I might be wrong of course. Being able to manually "force" the packet where that *full* info is conveyed when you use the NFR JA would be extremely handy and would allow a local client-based addon to track the correct number of FMs.
Think we kinda need people with a big knowledge of FFXI packets technology like Cair, Byrth or Comeatmebro to know wether or not that would be technically feasible or not.
It's no big deal of course, but I've personally wished I could see the exact number of finishing moves myself. I've asked about this in the past but received (partially) conflicting replies.
Utsusemi Shadows are in a similar position (you can have up to 7 shadows, but the icons show only 1, 2, 3 and 4+), with the difference that there is no special JA that displays in the chatbox the exact number of current shadows.
Ragnarok.Martel
Serveur: Ragnarok
Game: FFXI
Posts: 2954
By Ragnarok.Martel 2018-05-07 02:00:23
Ok, now this makes sense. Not being a DNC main myself, I was not aware that you could have more than 5 FMs.
It should be entirely possibly to code something that tracks this, whether that be integrated into a gearswap lua, or coded as a stand alone addon. It would kinda be a pain though, since there are a lot of variables to account for. Reading up on the various factors that increase and reduce finishing move, I'm not seeing anything that would make this impossible to do though.
But there's nothing currently existing, that I'm aware of, that would do this. So, valid new addon request.
Asura.Sechs
Serveur: Asura
Game: FFXI
Posts: 10114
By Asura.Sechs 2018-05-07 02:23:42
Tracking through chatbox text lines (even if done through packets) presents further issues though, aside from the obvious missed-packet one.
Allow me to explain why since you don't know DNC much yourself
1) /DNC gain 1 Finishing Move for each landed step
2) DNC main gain 2 Finishing Moves per landed step
3) ...unless the monster is at 9 or higher steps of the same category already (cap is 10 for main, 5 for /DNC). In which case you gain only 1 Finishing Move.
4) DNC with Terpsichore main gains +1 Finishing Move for each Step you land
5) "Presto" JA (15 secs cooldown) makes so the next step you land will give you +1 Finishing Move
6) If you have Grand Pas up (SP2) you can do Flourishes without expending Finishing Moves (up to 3 times or until the SP2 ends)
Given these aspects tracking through chatbox is of course possible (it's what a DNC does with his own eyes more or less, after all) but extremely complicated and with several variables risking to create errors in the process.
In my opinion the only reliable and accurate way to track the current number of FMs would be by using the same packet used by the JA "No Foot Rise", which returns the exact number of FMs.
Supposing that information is somewhere in the packets and it simply hasn't been found out/used so far.
But that's being very optimistic.
More realistically I'm afraid that's a special packat that requires client<>server communication and only happens when you use NFR JA and there is no way to make that special packet happen in any other circumstance =/
Ragnarok.Martel
Serveur: Ragnarok
Game: FFXI
Posts: 2954
By Ragnarok.Martel 2018-05-07 03:13:58
I don't think I ever said anything about tracking through chat messages or packets.
This isn't something you try to make the game report to you about. You add or remove steps based on actions successfully taken and the conditions they were taken under. Basically, you emulate.
And there's nothing in that list that couldn't be accounted for.
1+2: Sub vs main, not an issue to account for in code.
3: I have a vague recollection of there being a step tracking addon floating around somewhere... In any case it's definitely possible to track steps on a given target.
4: Mythic is easily accounted for in code.
5: A simple buff check, or even variable setting like is often used for SA ws, would work fine for presto.
6: Another buff. Not an issue.
There's nothing randomized here. Nothing that could change without us being able to tell what that change would be, and account for it in advance.
Now, integrating all of these would be a fair bit of work. but there's nothing impossibly to address here. All of this is probably within even my limited ability to code. Tracking steps(daze lvl) on the mob would probably be the hardest part for me personally to code.
So, a valid addon request that should be entirely possible for someone to make, and I see no reason that it wouldn't be able to accurately track your current finishing moves. You just need to find someone who's interested enough to make that effort.(I.E. not me.)
Asura.Sechs
Serveur: Asura
Game: FFXI
Posts: 10114
By Asura.Sechs 2018-05-07 03:34:17
The only steps tracking addon that I can think of was tracking the level of "step debuff" on targets, and it worked through chat box (wether parsing or packets I don't know).
Haven't been using it for a long time, it was a bit clunky last time I checked.
I think 3) would be a bit complex to check imo.
If you're at 5 or more FMs and you land a step, the only way to know whether that step generated 1 FM or more is to check the chat message it gives for instance "Step reaches level 10 on target" and knowing what level it was before (was it already 10? was it 8 or lower?). You kinda need to combine these two info to be sure.
The only way you can do this is through the chatbox, wether you parse the log file on the client or you parse the incoming chatbox packets, but I think it's the only way?
Furthermore I don't own a Terpsichore myself so I'm not sure how it works. Do you still get the +1 FM if you land a step with a target fully debuffed for that step already?
Likewise with Presto, do you still get the +1 FM if already fully debuffed for that step?
I agree the other conditions would be simple work (main/sub job, buffs up, mythic mainhand etc), but this in particular looks a bit more annoying to handle, as in you have to rely on the chat info.
Which is why I was hoping to find another route through the mentioned JA "No Foot Rise", but as I said I'm afraid I already know the answer for that.
Seraph.Ringoko
Serveur: Seraph
Game: FFXI
By Seraph.Ringoko 2018-05-07 04:24:03
Terps will only give you one FM once the cap is reached and the same applies when using Presto, 1 FM max.
[+]
Serveur: Odin
Game: FFXI
Posts: 200
By Odin.Ewellina 2018-05-07 04:41:36
im gona quickly chuck in my 2 cents here. This doesnt sound complicated in my honest opinion. Steps (debuff) only last a set amount of time on the mob like all buffs, and using a step before that timer expires will refresh that timer (please correct me if im wrong here). So here is the basic premise. Just like the TH tracker lib in Gearswap that motenton made for THF, all you need to do is create a table for the mob your swinging at. if you use a step (and it hits) add the relevant value to its table of steps and specifically a time that the step was landed. then the next time you land a step you check the previous time for that step, and if it would have expired, then start again. This would even allow you to change target, and come back to the original mob and still know how many steps it has on it. By tracking this you can then make a rather accurate guess at how many finishing moves your acquiring per step.
Code Mob _table = {
['mob_ID'] = {
steps = {
['quick step'] = {
time = ########,
count = ##,
},
['some other step'] = {
time = ########,
count = ##,
},
},
},
['mob_ID'] = {
},
['mob_ID'] = {
},
}
etc etc. just keep updating the table. offcourse if theres a packet message for the mob loosing the debuff then use that (which im sure there is), either way this seems prety simple logic to me, conception would just need to track several things at once (equipment, merits, jobs, jp's, gifts etc.), which is all simple but time consuming.
[+]
Hello everyone!
With the exposed action packet come a much larger range of potential Lua addons that windower users can create. Because FFXIAH has a up-voting system and this handy subforum, I think making a thread here for people to post their plugin ideas in (and get voted on) would be useful.
For more information on what is possible with Lua, see the wiki:
https://github.com/Windower/Lua/wiki
Lua can use all the information obtained from Input Interface Functions to react at times defined by Events in ways limited to the Output Interface Functions.
For instance, I am currently writing an addition to battlemod that will allow it to display skillchain damage even when the skillchain is blocked by blinking. I do this using "event_action" for the closing weapon skill, which contains the skillchain information that is sometimes blocked. I then output this to the chat log using the output interface function "add_to_chat" and block the original message (if it would have displayed) using the "event_incoming_text".
When making posts in this thread, don't worry too much about going through the wiki and making sure something is possible before you suggest it. Just throw the idea out there and see how many votes it gets. However, be aware that some things are impossible because your client does not receive the required information.
Please limit yourself to one idea per post so that it is possible to vote on your ideas.
|
|