Dev Log 6

TTRPG dice with white lettering, a Raspberry Pi 3 with a re USB stick plugged into it, and a black and white USB. All of this is sitting on top of a red and black fabric.
Image of TTRPG dice, a Raspberry Pi 3, and some USBs.

New format that I'm going to try to stick to. I figured this would be the easiest to maintain and follow. Sorry it took me six posts to decide what feels right!

One of the biggest things I incorporated this round was Faculties. A lot of you will recognize the concept from other games under names like Proficiencies, Disciplines, Abilities, Aptitudes, or Affinities. Abilities and Affinities are already in use in my game, and I might add crafting later, which rules out Disciplines. That left Aptitudes, but it could be confused with Abilities and Affinities. At a loss for words, I turned to the trusty thesaurus and found Faculties. It works. I didn't want the baggage and expectations that come with terms other TTRPGs use (like "skills"), and Faculties keeps things separate enough to teach my players about my game from the start.

Here's the list of things that needed to be changed or updated, with what I did and how.

  • Durability font: Changed the color from a pale shade to a more solid one. A simple code change, nothing groundbreaking.
  • Market readability: A player asked if I could make shopping easier to read, and fair enough: some areas had small fonts that could strain the eyes. I switched to an easier palette (charcoal and amber), increased the font size, and reworked the rows. Each item now gets its own row with all of its information, where before it was squished together with no dividing lines.
  • Vendor NPC windows: These needed cleanup. There were three tabs (Overview, Market, Notes), and the window opened on Overview, which is where the NPC's profile description goes. There was also an empty space in the top right. I moved the description there, so it now displays next to the profile image and name, and the window now opens on the Market tab.
  • Market scroll reset: Whenever a player bought an item, the whole market scrolled back to the top. The scroll position now stays locked after a purchase and only resets when the player changes category or tab.
  • Haggle exploit: A new player "abused" the haggle system, as a previous expedition had also done. I fixed it to prevent further shenanigans: once a player haggles with a vendor, that price sticks, and they can't exit or cancel and retry.
  • Affinities in the market: About a month ago I added affinity matching to the market, but only my husband's test character had tested it. All I really wanted was a warning telling players whether an item matches their class. Refusing to display or sell mismatched items doesn't help if a player is buying for another party member, or for an NPC if a quest calls for it. Mismatches now show in red text with a small warning sign.
  • Upgrade NPC: One NPC is technically a vendor but is also the upgrade NPC. He wasn't recognizing items players had bought from other vendors, so he couldn't see them in inventory, let alone accept them for sale. This was hard to track down because his code was a slight variation of the vendor code with the added upgrade capability. It turned out I never updated him for the revised market module settings. He was still running the original market code, so the item data from my other two vendors didn't match anything he could read. Once I found that, it was an easy fix. He also applies upgrades as originally intended, which was great news.
  • .csv market format: I got inventory items showing as equippable for players, which works great. Armor, however, has five different pieces to suit up, and most of my players asked for subcategories in both the vendor market and their codex. It took a bit to figure out the approach, but I got it locked in. I expect I'll be reworking the .csv market format a few more times before it's complete.
  • Equip dropdown (watch item): One player couldn't see more than three items in the equip dropdown, and another couldn't equip some items from her inventory. I can't reproduce this as GM or with my husband's test character. I think both players had old stock (no longer usable) that my system no longer recognizes as equipment. Noted for future watching.
  • Affinity mismatch on purchase: When a player bought an item that didn't match their affinity, they weren't told whether it was equippable. FoundryVTT now displays a warning that they can't equip the item due to affinity mismatch, and the item isn't equipped.
  • Market access bug (watch item): One player clicked the vendor token and opened the window, but couldn't shop because the game registered her as another NPC. I'm not sure where this misfired, and no one else had the issue as far as I recall. Deleting and redeploying her token seemed to fix it. Noted for future cases.
  • Click interactions: Players had trouble with single and double clicks, mostly when they met their first enemy. Nothing worked: single or double, left or right click. When I rechecked the wiring, I found partial matches in the code that would cause this behavior, and I fixed them. I also made double-clicking an enemy token pop up the mini dossier window, which gives players enough information at a glance to decide how to approach.
  • Abilities window (watch item): One player couldn't open the Ability window from the Abilities tab in their codex. I double-checked the wiring and it's correct, and other players confirmed they could interact with it. Noted for future cases.
  • Abilities tied to weapons: Some classes have Abilities that enhance or use the equipped item in the player's codex. I hadn't wired this at all, because I forgot it needed to exist. The Marksman is a good example: his Aim and nearly every other Ability tie directly to his equipped weapon (a rifle). It's working now and just needs testing.
  • Critical hits: One player seemed to land critical hits constantly, even when the math didn't add up. I'd set it to default to critical hits no matter what. Fixed.
  • Dead targets: During encounters, players click the target they're attacking. After a target was removed from the map or marked Dead, it stayed active for Abilities and attacks in the player's codex. I added checks on target status so that once those conditions are met, the target is also removed from the codex.
  • Armor and resistances: Creatures were ignoring player armor and resistances, mostly because I hadn't uncommented a section. I think it's working now.
  • Loot modifier field: Added an extra loot modifier field to the map. If a player stands in a certain area and rolls Observation, a natural 20 earns a loot roll. I added this while checking the reactive world tile, which has been hit or miss.
  • Dice macro: To handle math and multiple dice rolls for future features, I created a macro button. It can be slotted into a macro key field or rolled through the Observation button on the Overview page of the codex.

That was a lot of small details to fix, but it should free up a lot of things and give me more time to work on Abilities for my playtesters. I'm moving play sessions to every other week, unless schedules conflict. My playtesters are really invested in where the game is going, which keeps me motivated.

If you read the previous dev log, you know I still haven't finished the updated PDFs on Ko-fi. They're still in the works, but with so much to do before this past weekend's sessions, I couldn't find the time. I do want to get them done this month. I'm also back to posting Bestiary entries on Mondays, which is a win in my book. After more testing and the next play session (October 10th for Group 1!), I'll have more feedback on what still needs fixing before I start on Abilities and combat. That's when I hope to slow game work down a little and put that time toward finishing the PDFs.

Finally, the next big announcement: we're officially in October! By the end of this year, I'm hoping to hold a small "showcase" that opens my game and world to more of the internet. I'll be taking screenshots of the game, picking some creatures from the Bestiary, and building some hype for the reveal. It won't be huge, since it's literally just me and my playtesters. I also have a spotlight creature who will become the mascot, or flagship creature, for everything, including a real-life version I'm working on. Here's to hoping I can get it all done!

Cheshire

Cheshire

Game designer, streamer, crafter, and blogger. I'm just...me.
Mexico