YAGDRSL - Yet Another God Damn GeaR Swap Library

Eorzea Time
 
 
 
Language: JP EN FR DE
users online
Forum » Windower » General » YAGDRSL - Yet Another God Damn geaR Swap Library
YAGDRSL - Yet Another God Damn geaR Swap Library
Offline
Posts: 20
By darkwaffle 2025-12-28 12:05:45
Link | Quote | Reply
 
tl;dr = Here's the Github link.

- - - - -

About ten years ago when I returned to Vana'diel for the second or third time I used Windower and Gearswap for the first time. I eventually got the hang of it but not without some frustrations lol, I just didn't have much experience with or knowledge of programming nor LUA to be able to make sense of Mote's files. So while I was able to make it do some of what I wanted it to... I didn't really 'get it'. Fast forward to this past summer when I returned to the game again and I was now a bit better equipped to 'get it'. I decided that I wanted to make my own Gearswap library that worked in a way that I thought was more intuitive and logical and that gave control over equipment in-game in a way that is hopefully both easy and nuanced.

Today I'm really pleased to make YAGDRSL available publicly. I've worked on it on and off for a few months now and I've played my DNC/PLD/PUP primarily with it for the last month or two. So while I don't doubt there may still be some bugs hiding away I don't think there's many of them.

The github repo contains a bevy of documentation but if you're just curious here's a list of what I consider to be significant features of YAGDRSL.

  • Thoughtful mapping of spells and abilities into groups so that more sets and more gear can be defined by purpose rather than by individual spells. (eg: Blue magic split into groups like blue.enfeebling, blue.enhancing and blue.cure. Bloodpact Rage split into bloodpact.rage.physical, bloodpact.rage.magical, bloodpact.rage.hybrid)

  • Gearsets that are put together through an additive process so that items don't need to be repeated as often, updates are easier to complete and gearset files are shorter overall.

  • Gearset "mods" that can quickly modify gearsets on the fly and .lua functions to easily create them.

  • Gearset "overrides" to create sets for unique situations that can easily be turned on and off without affecting regularly used sets.

  • Buff tracking that is straightforward to setup and that can be used to create buff-specific mods by simply naming the mod after the buff (eg: mods.engaged["Berserk"] or mods.precast.ws["Sneak Attack"])

  • Optional automatic tracking of other dynamic game elements like pet name, character movement and character-target facing that can all be used to apply mods.

  • A simple but clear Control Panel UI with customizable content and style to display both user mod and library mod values and options.

  • Built in validation command that can evaluate gear for a single job or all jobs without requiring any changes to the files.

  • Built in demo command and comprehensive debug messages to test and understand how a gearset is put together through precast-midcast events.

  • Hook functions in all major Gearswap and library events that users can override to implement custom logic.



If you're feeling adventurous please check it out and I'm happy to answer any questions about what it does, how it works, if it can do something, how to do something, etc.

Lastly a big thanks to the Windower team for helping to keep this game alive and interesting and providing such a useful and complete LUA framework, Byrth for Gearswap and the helpful members of the Windower Discord for answering some questions I just couldn't quite get to the bottom of myself.
[+]