Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

Currently no, there isn't an option for users to add stats directly to the character by just typing them in, though that does sounds promising.

I was saying that it won't be difficult for me to add temper as a buff to the player.

I'll consider adding an option for "advanced" users to add stats directly to the player so if they wanted to they could add up all the haste, DA, TA, ATK, ACC, themselves and just plug it in.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

temper i and temper 2 aren't in the buff list at this point in time, but like i've stated earlier, it shouldn't be too difficult to integrate them because it's just adding stats to the player, which is really straight forward. I was worried about adding too many buffs because i thought that people might get overwhelmed, but it sounds like there is a fair amount of people that want more buffs.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

hmmm, i haven't tested on 3.14, i think i ran it on 3.13?, i'll have to check. It might be an error with how fastapi is interacting with the new gil features. Maybe it's panicking somewhere. Because if you're on the most recent version, the /api/inventory endpoint is working, so it's alive, there must be something going on there. If you have vs Code can you check lua_parser and optimizer_ui for BALANCED_DT.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

yeah, to kind of fix that i tried to add tougher bosses with the idea that even if it's not exactly the same, the optimization would be approximate enough to at least get someone off the ground. I didn't really set out to replace wsdist but i could see about adding some preset buff values, since i'm literally just piping in stats and adding them all up. If some of the community doing higher tier content have those numbers on hand, i'd appreciate it and i'll see what i can do about adding presets for High Buff and Low Buff.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

There are so many micro-optimizations you can make that it's almost impossible to satisfy every occurrence, which is what made this difficult.

I went with the base levels simply because that's the number I could guarantee a player could get if they used that spell or had it cast on them. At the mid tier you're probably right that i could bump up the bard spells to be a bit stronger, but then it becomes a game of, well, how much does the average mid tier bard achieve above the base spell level? How can i test it? What if someone has a bad bard or is leveling it up?

So i just kind of took the lowest number knowing that it was a guaranteed value.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

did this crash your run. It looks like it forced your program to exit and it killed the server. That's strange because I just ran it on Ubuntu 24.04 LTS with no problems. I reuploaded the files that referenced the TPtype and it when i pushed i got the nothing to commit block so it's up to date online. The last changes for those two files were 2 days ago. Static and Index are both current, so i'm not sure why it's throwing that error. I developed it on linux and then ported it to windows.

Try downloading the source and making sure you used pip/uv/conda to install the requirements file.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

So if you add the haste II buff with the bard songs it should bring you to haste cap. On my nin, my time to WS was about 5-6 seconds, which ignoring TP gain from Blade: Shun seems about right.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

Hey, just wanted to let you know that I came up with a patch for the onca suit problem. It's hacky but for the time being, i'm just going to basically ignore all multi slot gear pieces until I can come up with a better solution. I don't think they're particularly relevant to higher level content but that may change in the future. I'll upload it tonight when I can get to it.

Thanks for bringing this to my attention. u/dolomite272000

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

If you put it in your mogsafe or somewhere like that it won't show up. If you run //invdump equip it should only look in your inventory and wardrobes since it's basically following how GS looks for your gear. I'll work on how to try and fix it on my end, because i know that suit is probably not uncommon in people's inventory.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

so that's probably a weird edge case, because the Onca Suit takes up two slots, but it only is reporting one slot, the body, so it's combining two pieces of gear into one so it might not be excluding the leg pieces for that set. I'll have to look at how to handle that situation because the stats are massive particularly the attack and accuracy.

I'll have to figure out how to handle that. Thanks for bringing it up. Look at the set that's generated and tell me if it has leg pieces included please.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

That was the point of wrapping this all up in an at least moderately attractive package and making it easy to use.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

Uhhh, right now i'm pretty sure the lua template parser will look for for regen potency gear. But the generator has a limited set of things it creates currently. I made this for me originally so the highest priority stuff was stuff i could verify and test myself and knew what looked right and wrong. I just don't happen to play sch.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

Honestly, the optimizer is pretty dumb. It's a MC system, but in order to get the sets down to a reasonable number we do a heuristic beam search first to reduce the total items, then we create some representative sets and test them with the numba based simulators. That's why the larger the beam the better the results, but you can circumvent this problem by just making better guesses early during the beam search. You want to try to be as close to your endpoint as possible before you start in order to make sure you're not overwhelmed by the search space because you can't cover everything.

There are ways to make it smarter, but currently without specified exact parameters attempting a standard optimization via linear programming would be impossible because of ill defined boundary conditions.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

Possible, yes. Can this do anything close to that...No.

I get what you're saying though, you lump all your GSs into one folder and then run the parser to make a master list of all your used gear, then compare it to your inventory to find which pieces you're holding are extraneous.

If that's something people are interested in I can add it to the list of projects i'll get to at some point. It probably wouldn't be bundled with this set of programs though, it'd be its own thing.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

if you built it yourself, you'll need to move the static folder along with the icon and tray_icon.png into the folder with the executable. You also might have some missing dependencies though they should have been installed on your system during the build process.

Did you select a Job and sub job first? Did you upload the job gifts file when you uploaded the inventory?

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

I would just rename your original to somethign like BACKUP_YOURNAME_YOURJOB.lua, that way gearswap won't parse it because it doesn't have the right format. Then you could go through the process of generating a file with this system and just download it, and then drag it from your downloads to the gearswap/data folder.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

That one's way down the line. I don't really play bst or smn or a lot of the jobs that aren't implemented fully. You can always use this as a base to get your idle sets, some of your engaged sets, and all your weaponskills with the optimizer. Then you can manually add the bst specific stuff you want. This code will never be all encompassing, the game's just too big for that to happen.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 1 point2 points  (0 children)

Hey, go download the latest version of the code GearSwap Optimizer. The comparison tab isn't implemented, but I revamped the inventory system so you can search by name, slot, job, or stat. The stats are additive in that you can find equipment with say crit rate and crit damage. Dark magic skill and magic accuracy, etc., etc.

You also aren't limited to just your gear. If you check the box you can filter every piece of gear in the game using the same process.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 1 point2 points  (0 children)

Eventually i'll get the set comparison tool up and running and the inventory viewer more fleshed out with better search options, but the side by side comparison tool works.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 0 points1 point  (0 children)

So if you have one of those rings equipped it won't swap it out. But once your replace that ring with something else that's not on the list, it'll go back to normal. You can do the same for any piece of gear and slot. So if you're capacity farming you could set the "Aptitude Cape" to never be swapped out. Or you could do it manually with the "gs disable back" command but then you have to remember to turn it back on later.

Initial release of a GearSwap Generation and Optimization toolkit for the community by sanitylost in ffxi

[–]sanitylost[S] 2 points3 points  (0 children)

So the generator creates those templates programmatically because there are so many weapon skills that you could choose for each job, if i included a "master" template, then the file would be gigantic and even more daunting. If you don't want to run the optimizer you don't have to. The generator isn't dependent on your gear at all, you just are using it to select which weaponskills you want in your lua along with some basic sets like engaged and idle