April 2
For today, I have some anticlimactic news. In the previous Dev Log, I mentioned the possibility of spending all of April on the Titles module. That will not be the case, I have already finished about as far as it can go for now.
I also promised at the time that I would show some pics of the old version as well. I am here to deliver on that, and to talk about how this finished ahead of schedule. To start off, for the reference to explain things, here is an image of the Titles module in its default state:
Each is hovering on Ruins of Sanctity, and as labelled, the left-side one is the old version. I have dubbed this state "Grid view", where it will list in a grid all of the sub-groups within the selected category. In this case, it is listing each region within Colhen as a selectable title group. Clicking one of the other categories will switch the grid to display that categories sub-groups, and so on. Upon clicking one of the sub-group options...
Here we have "List view", where all of the titles within this group are listed. At the top, you have the category you have selected, and then the sub-group you are viewing. Clicking the label for the category will take you back to grid view. Clicking one of the title blocks will mark it as acquired, and this will be indicated by the box on the right turning Green.
As you can see, while the grid view design is pretty close to identical between versions, this one changed more substantially. Instead of a plain scrollable panel, it is now a full on table complete with a header. The title descriptions have been swapped out for the goal descriptions, which are much less lengthy. The selected state has changed from coloring the entire block to only coloring a right-side indicator. What hasn't changed is the unfortunate need to reserve two lines for title descriptions, as it is still required in some cases.
Additionally, list view has more options, as compared to the old version. For a focus on only titles that will increase your stats, you can check the box to filter out all statless titles. For those wanting to just do all of the titles, you can check the box to remove the filler of every title you have already done and dusted. Or you can even check both at once to really slim the list down.
The focus of this module's design has been to make it manageable to parse through over a thousand titles. To do this requires numerous efficient filters and organization options. Not yet present, grid view will have a second row of tabs added. This second row will be to change categorization methods.
The default type is "Region"; the other three will be "Type", "Difficulty", and "Brevity" (names not final). These will, in order, group titles based on type of task (kill boss, do breakoff, kill mobs, etc), by difficulty (easy repetitive actions, semi-skillful tasks such as breakoffs, and so on), and by time investment (titles that can be quickly knocked out vs those that take a lot of runs).
There will also be a series of "Mark all listed titles", "Give all stat titles", "Give all titles" etc options, but I don't know where I want to put these yet.
Notably absent in the new version, you can see that there are no markers or labels for title sharing across an account. This was one of the biggest sticking points that walled me on handling title data. To not only have to handle 1000 plus titles per character profile, but to also cross-reference across an entire grouped account to sort out what an individual profile has and what stats it has. I can't think of a way to explain this that does justice to the complexity of that, at least at my current skill level.
I debated how to resolve this, and even designed a version of the Titles module that had extra indicators for a title was shared or shared but also level locked. In the end, I have decided to cut this functionality from the Armory. It would certainly have been convenient, but between the difficulty and the possible confusion it could cause, it's not worth it. Even if it worked server-side, there would still be instances where a user accidentally groups their actual ingame char profiles with a theoretical build profile that has a bunch of extra titles marked that they don't yet have. These titles would be shared, causing stat mismatches on every other profile, that would be a pain in the ass to track down the source of.
So it was easier to cut the feature out, and work around it from there. Some mechanism will be added to allow users to copy over their choice of either all titles from another profile, or all sharable titles from another profile, for as many profiles as they need to import from. This makes it a fully controlled setting by the user, and massively reduces server-side workload.
But with all of this talk of server-side saving character profiles, we ignore the bigger issue. The Armory doesn't actually have such a thing yet. This is why I can't fully finish off the Titles module yet. My new task from here is to create a Profiles module, so that such a thing can exist.
Unlike the old Armory, where a save was everything together, v4 splits them conceptually into Profiles and Loadouts. Profiles will store character type, base stats, skill ranks, titles, Ein Lacher progress, and Redeemers progress. Each Loadout save will store up to all 10 sets in the Gear tab, as separate saves from character data. The Item Storage module will remain separate from these as it did before, and be saved on a per account basis.