This week I’ve been working on designing and implementing a “Contractor Details” screen in Mercantile.
What and Why
A major part of Mercantile will be managing your roster of contracted adventurers, or contractors. In order to do this effectively, you’ll need the ability to “zoom in” on individual contractors to see their stats, buffs/debuffs, and equipped items. That’s the job of the Contractor Details window!
I had a rough idea in my head for how the screen should look, and decided to start laying it out directly in Godot. Working with the UI system in Godot is a pretty smooth process, so I don’t think I lost much time doing it this way. YMMV, especially if you’re on a team and need to take feedback and revision into account.
(Credit goes to wulax on OpenGameArt.org for the placeholder character sprite at bottom left)
Iterate, Iterate, Iterate
I was happy with that basic design, but left it to percolate in my brain for a bit after finishing the first draft. A day or so later, I went back to it and had some new ideas. I think this version is much better!
Here’s my rationale for the changes:
- Having smaller “parchment” sections against a wooden backdrop helps break up the screen and provides clear delineation between the sections.
- Having the contractor’s stats in two columns removes a big empty spot, and allows for more room for the equipment section.
- The equipment section, while now having only three slots, is much more visually impactful and appealing.
- The “Replace Equipment” button at the bottom of the Item Details section makes the UX for accomplishing that function much more obvious.
Connecting the Wires
After making my changes, I was ready to start connecting the UI to game data so it can actually be used in game. As you can see from the video above, I’ve got that mostly done already. All that remains is for me to code the logic for opening this screen in the first place, when you click on a contractor in your roster.
I hope to check back in soon with more updates on Mercantile’s development! If you’d like to be notified of major development milestones, consider subscribing to my mailing list below. I don’t send much email — it will only be for big things like beta testing and release, not little devlogs like these. If you’d like to see smaller posts from me in your inbox, let me know and I might add an option for that. I’d rather play it safe for now though.