June 1
Shippuu wrote:May 23
My next module that I had set my eyes on was the ability to save Character profiles. As I went to manually edit my save data to add the tab to my page, I realized that I had a more immediate feature to implement. The Settings Prompt.
...
It is looking promising that I might actually have something to show regarding this new prompt as early as tomorrow, even if it's mostly empty on every other tab. The tab to manage Armory modules is already half done.
Oh had I only known then what I was getting into. This rather simple goal led into an incredibly comprehensive refactoring and rebuilding of numerous site-wide objects and classes, and the merger of several of those.
Oh and I also needed to build a mechanism to save and load settings to and from the server, since that didn't exist at all either.
Fortunately that work is now done. When logged in, window configurations now save to the server 10 seconds after your most recent change (to prevent wasting a lot of bandwidth sending redundant changes). When not logged in, saves will go to localStorage with a 5 millisecond delay, provided that you have given the Armory permission to use localStorage (laws and all that).
The Tab Manager on the Settings window looks like this for now:

(Ignore the duplicate tabs or odd tabs, a lot of these are just test dummies at the moment.)
Tabs that are open on the page somewhere will be lit up, and tabs that are not, are not lit. Clicking on a tab's button will summon it to button, based on your tooltip alignment settings (the same as on the older Armory). If the tab was already on the page, clicking on its button will dismiss it from the page and remove it from whatever tab it was on. If it was the only tab on that window, the window itself will be removed.
With this massive unexpected hurdle done with, to my great relief, my focus is once again on a Character Profiles module. To be clear, as mentioned in an older Dev Log, the v4 Armory will not handle profiles like the v2 Armory did. Character Profiles will save character data such as character type, level, skill ranks, titles, etc. Equipment Presets (name undecided) will save all equipped items on the Gear tab, on all ten tabs. This split was to reduce the data burden on loading a single profile, and to require the use of fewer mostly redundant saves in general.
On release, the Armory will only have access to the "Simple" calculation mode; "Simulation" mode will come at a later date. Simple mode functions as the old Armory did; base stats will represent your stats from level ups, titles, skill ranks, Ein Lacher medals, Redeemers progress, and anything else. This will include the same issues as before, with always active buffs such as VIP and Partholon Vanguard.
Simulation mode removes the Base Stats tab, and enables use of the Skills, Titles, Redeemers, and Ein Lacher tabs. It will be slower to use, but in turn its capabilities are significantly greater. Those capabilities will come up in future, when Simulation mode resumes development.
Despite simple mode being, well, simple, there will still be some interesting challenges in creating the Character Profiles module. Even though Simulation mode won't exist yet, it still needs to support it. This means the server must be able to accept save data in either format. While those save formats don't have to be 100% finalized now, I need to get pretty close to save myself a refactoring headache in future. Titles in particular will be rough, since there are thousands.
The next Dev Log will either be a draft of the UI of the module, a post announcing the module is complete, or a rant at some other unexpected roadblock.