• Weekly Update – June 21, 2024

    I fixed bugs, playtested, and balanced this week.

    • Multiple random item sets for actors. Actors could previously have a random number of items from a pool of one or more item types (all consumables, scrolls only, potions only, etc.). Now actors can have multiple random item sets. This feature was added to increase the frequency of health potions carried by some actors while still allowing the actors to carry random items.
    • Balancing adjustments. Increased starting melee weapon item health because these weapons were breaking too soon. Reduced likelihood of Skeleton Archers spawning on level 1. Increased health potion drop rate. Reduced Skeleton melee damage. Reduced likelihood of multiple Skeletons spawning in the same location. Increased the minimum and maximum damage range for some weapons and enemies.
    • Many bug fixes. There was a mix of bugs from recent rework and older bugs that had gone unnoticed.
      • Item stacking. While troubleshooting an issue where the quantity wasn’t updating in the Ammo Quick Switch Slot, I discovered that item stacking wasn’t fully implemented. Specifically, stacking between equipped and unequipped items wasn’t handled. This was one of the most time-consuming tasks I worked on this week because it required multiple changes to the inventory manager and inventory UI.
      • Player actions. I’m still finding bugs originating from the recent changes in the logic that determines whether an action can be performed. Most often, the problem is that an entity involved in the action or the action itself isn’t properly configured. A number of attributes can dictate which actions can be performed, including the list of actions an actor can perform, the list of actions that can be performed on an entity, the action’s range, and the resources required to perform the action. Context is also taken into account; some actions can only be performed in certain contexts. For example, the Combine action can only be performed when inspecting an entity. Another source of bugs is the handling of entities involved in the action. These entities are specified through constructor parameters based on the entity’s role in the action. For example, a Fill action is instantiated with the actor performing the action, the item being filled, and the object/entity that the item is being filled with. The parameters are named actionActor, actionWith, and actionTarget. Not all actions require an actionWith or actionTarget. I have often populated the wrong parameter, causing a particular action to fail. I think the root cause of these issues is ambiguity in the intended use of the parameters; I need to create a map of entities to parameters for each action. 

    The remaining tasks for the demo are:

    • Missing sound effects added (95%)
    • Major bugs fixed (70 -> 75%)
    • Balancing: (40 -> 50%)

    Next week, work continues on bugs and balancing.

  • Weekly Update – June 14, 2024

    I didn’t work on Legend at all until today due to life events. I squeezed in some time this morning to stay on track with my weekly updates.

    • New Sound Effects: monster attacks and abilities.
    • New Items: Ability Books. The player reads these to learn new abilities.
    • Fine-tuned cave reverb. Last week I mentioned having difficulty getting the right reverb effect for a cave. The issue was that the Wet Level was too high.
    • Miscellaneous bug fixes.

    The demo status is as follows:

    • Play Test 3: 100%
    • Performance optimization: 100%
    • Minimap: 100%
    • Major UI/UX issues fixed: 100%
    • Missing sound effects added: 95%
    • Major bugs fixed: 70%
    • Balancing: 40%

    Next week, I’ll work on bugs and balancing.

  • Weekly Update – June 7, 2024

    The confluence of life events this week left me with almost no free time.

    • Added reverb to sound effects. A reverb effect is now applied to sounds. The effect was easy to add using FMOD. A nice feature in FMOD is that it can connect to the game, allowing me to tweak the reverb effect settings in real time. Despite this convenience, I’m struggling to produce a reverb effect that sounds right for a cave.
    • Added version text (Demo 2024.1) to Title, Select Class, and Continue screens.
    • UI/UX review. I reviewed UI/UX across all screens and, after some small fixes, I think it’s good enough for the demo.
    • Descoped liquid content from the demo. It’s more work than anticipated and not critical for the demo. I need to think more about the interactions of liquids, such as how potions of varying power levels and effects are combined and how different volumes of liquids (potions, puddles, cisterns, fountains, pools) are combined. I’m getting carried away with the logic. I need to take a step back and reassess what all of this adds to the gameplay.
    • Bug fixes. Misaligned UI elements, incorrect log message grammar/content.

    The demo status is as follows:

    • Play Test 3: 100%
    • Performance optimization: 100%
    • Minimap: 100%
    • Major UI/UX issues fixed: 100%
    • Missing sound effects added: 90%
    • Major bugs fixed: 60%
    • Balancing: 40%
    • Missing liquid content: 50%

    Next week, life will settle down just slightly. I will have another go at getting reverb right but I’m not making any firm plans beyond that.

  • Weekly Update – May 31, 2024

    It was a week of random activities inside and outside of the game.

    • Ambient sound handling. The audio problem I mentioned last week was solved. Ambient sounds can now be heard by the player regardless of their location, if the sound can reach the player. This was a somewhat significant effort. It required adding an ambient sound manager that tracks the entities that have ambient sounds (fountains, fire, etc.) and which sounds are currently playing (audible to the player).  
    • Added a scrollbar to the Inventory Panel. I needed to add more inventory slots but didn’t want to increase the size of the Inventory Panel so I added a scrollbar. 
    Scrollbar added to Inventory Panel
    • Bought Hot Reload. This is a Unity asset that allows code edits without having to restart/recompile. It’s already saving me loads of time. I wish I had heard about it sooner.
    • Website improvements. I added a contact form to the website and removed the social media links from the top of the page after watching a video about digital marketing.

    The demo status is as follows:

    • Play Test 3: 100%
    • Performance optimization: 100%
    • Minimap: 100%
    • Major UI/UX issues fixed: 95%
    • Missing sound effects added: 90%
    • Major bugs fixed: 55%
    • Missing liquid content: 50%
    • Balancing: 40%

    Next week, I’ll aim to close out the UI/UX and sound demo tasks.

  • Weekly Update – May 24, 2024

    Audio is really coming along, but there is one major problem: sounds don’t play if the player can’t see the source of the sound. I’m working out an efficient solution for this. There are potentially actors making noise throughout the dungeon level. These noises can be the result of an action, such as opening a door, or ongoing, such as a crackling fire. Determining which actors can hear a sound is expensive. Doing this for multiple sounds each turn brings the game to a crawl.

    This week’s accomplishments:

    • Many sound effects added, including cave ambience, enemy-specific attacks, UI interactions, and miscellaneous events.
    • Bug fixes.

    The demo status is as follows:

    • Play Test 3: 100%
    • Performance optimization: 100%
    • Minimap: 100%
    • Major UI/UX issues fixed: 90%
    • Missing sound effects added: 85%
    • Major bugs fixed: 55%
    • Missing liquid content: 50%
    • Balancing: 40%

    Next week, I’ll work on the sound problem I mentioned above, adding more sound effects, and fixing more bugs.