1. The Labyrinth
  2. News

The Labyrinth News

Beta Branch Update: October 4th - End-game content

Notes
  • The game's end content has been finalized and added into the game! Once you reach the final floor of the game you'll be able to beat it. There's additional content and some hidden stuff that I would prefer remain a secret so that you can play and encounter it for yourself, but do know it's a lot of fun and I hope you enjoy it! I've also added global statistics so you can see your accumulated stats across all your runs!


Bugfixes
  • Fixed being able to spam-select enemies with queued attacks and spells to make them activate multiple times
  • Fixed Bosses with minions not spawning the correct amount of minions
  • Fixed the Knight's passive, Knight's Guard, crashing the game if its effect attempted to activate after you quit and reloaded the game
  • Fixed the Dragon Slayer's Tunnel Vision losing bonus damage gained from Slay when you reloaded the game
  • Fixed the Marauder's Laceration second upgrade granting +22% initial damage instead of +25%
  • Fixed the Cursed Warrior's Dazing Blow not Stunning properly
  • Fixed the Bandit's In Debt second upgrade crashing the game
  • Cleaned up auto-targeting for enemies which should make things run a tiny bit smoother and clear up occasional hard freezes


Changes
  • I reduced the amount of floors you have to go through for each run length since now floors are longer as a result of the addition of the map. Short runs have 5 (down from 6) floors, medium have 12 (down from 18), long have 40 (down from 54), and labyrinth have 100 (down from 162)
  • Changed the alignment of the text in the Stat Check Room since the description now takes up more space and the text was overlapping with the action icons
  • Added better AI to the Forgotten King so he'll be smarter in his spell use
  • Reduced the Dragon Slayer's Dragon's Blessing Damage gain from 5 (3 intial + 2 upgrade) to 3 (2 initial + 1 upgrade), but the second upgrade's Maximum Health gain increased to +50 from +35


Additions
  • Added end-game content! There's now a unique encounter when you reach the last floor of the game determined by the run length you chose. This encounter should spawn even if you're using an old save as long as you're not on or after the last floor. If you're on the last floor or beyond on an old save then you unfortunately aren't going to be able to encounter this event and will have to start a new game for it
  • Added another set of saved data: statistics! This statistics save is a global tracker for all your runs. Things like games played, classes picked, damage dealt and taken, etc. are shown on this screen and is accessible from the main menu


Buffs
  • Bosses that spawn with minions (Necromacer and Forgotten King) gain Debuff Resist equal to 25% for each empty battle tile at the start of combat. This means the boss can gain anywhere between 0% and 50% Debuff Resist depending on how many minions it spawns alongside with
  • Bosses that spawn alone gain +35% to their Main Stats, increased from +25%
  • Increased the Forgotten King's Iron Fist Maximum Health & Bonus Damage steal from 20% to 25%


Nerfs
  • Reduced the ability to stack the Dragon Slayer's Slay. Gaining stacks was incredibly easy to the point where you can quickly get ridiculous damage on the spell after just a few floors. Slay can now only activate once per Combat and Bosses grant more Damage than regular Enemies. Here's the full breakdown:
    • Slay - Cost: 65 75 Mana
    • Deals 75% Attack Damage, permanently increasing Slay's Damage by 2.5% 1% if this Kills the Target (increased to 2% against Bosses, Slay can only activate once per Combat)
    • Upgrade: Increases the Damage by 1% if this doesn't Kill the Target Additionally reduces the Mana Cost by 1 every 2 Kills (to a minimum of 25)
    • Upgrade (same as before): Additionally increases the initial Damage of Sacrifice and Tunnel Vision by 1% if this Kills the Target


Known Issues
  • There seems to be an issue with enemy generation if you play the game for a long time. I've gotten reports of the game attempting to generate multiple enemies but there only being one in the combat room with the game throwing an error. I'm trying to figure out where this issue is stemming from


To-Do
  • Re-add Mystical items so that bosses can spawn with more unique items
  • Repair Room. This room will allow you repair your items, removing negative conditions or applying positive ones. This room will also allow you to upgrade your item rarities, for a price of course! This will allow for your items to have better multipliers than they otherwise could get from spawning naturally
  • Run modifiers. I want to add some optional modifiers to make the game more interesting. Maybe something like permadeath or persistent buffs/debuffs to make any given run easier/harder for the player
  • Change the way enemies level up. Right now they are always the level of your party members, but I feel this makes the experience multiplier worthless. An idea I have floating around is giving the enemies a set pool of experience based on your run length and current floor, not affected by your experience multiplier. This would mean you could curve faster than enemies, which will make the experience multiplier a stat you will actually need to take care of if you want to get ahead
  • Re-add inventory sorting and quick-destroy options
  • As I put in more enemies and more spells, I get a better understanding of what my code is capable of. I want to make spells that are extremely dynamic and unique for each class. I'd like to spend some time going through older classes I've made and see if they could use any sort of tweaking to bring them up to my current standards

Beta Branch Update: September 24th - New font renderer

Notes
  • This update introduces a new renderer for my fonts! I made this renderer myself to bypass Flash's built-in one since I was consistently running into problems with text being too large or cutting off in some instances. This new renderer allows text to be pixel-perfect so the program will never make text that's too big for the window or text that cuts off during rendering! There's also many fixes and changes as I iron out the remaining kinks before transitioning to end-game content for the upcoming updates


Bugfixes
  • Fixed music not transitioning when it should
  • Fixed spells not showing negative Cooldown Reduction in their cooldown cost description
  • Fixed the Enchantment room not automatically updating equipped values if you scaled an item (you had to manually unequip and requip to get the scaled values)
  • Fixed the Talisman not applying its effect to an enemy's allies if they were spawned after the Talisman was equipped
  • Fixed the game crashing if you swapped items with specials that increased a stat (for example the Offhand special that grants +15% to one of your main stats) if your equipped item shared the same special with the item you were swapping it for
  • Fixed the inventory not updating properly after you destroy an equipped item
  • Fixed the Brewer's Drink Up crashing the game if you bought the second upgrade
  • Fixed the game applying previously-encountered Monks' Courageous passive effect into future battles
  • Fixed the Cursed Mage's Steal Knowledge sometimes crashing the game if it stole specific spells
  • Fixed the Cursed Archer casting Well-Equipped every turn
  • Fixed the Shadow Manifest casting Hive Mind even after a previous Shadow Manifest cast it (essentially providing no benefit to their team)
  • Fixed the Shadow Manifest casting Shadow Absorption even if it was the last one alive (thus ending battle)


Overhauls
  • I made a brand new text parser to bypass Flash's less-than-ideal font renderer. I constantly ran into issues with text being cut off or too large for the game window which would cause other display features to misalign. I'm extremely proud of this parser and hope it finally puts the old font issues to rest


Changes
  • Changed the sans serif font the game uses from Roboto to Yantramanav. This is because although I liked Roboto the characters were much taller than the serif font. This made it take up much more height than the serif font. Yantramanav fits the serif font better so both fonts are about the same size now
  • Changed the Blood Mage's Hemorrhage second upgrade. Instead of granting a 25% chance to activate twice, it now permanently reduces a random Enemy's Maximum Health by 10% per use. This change is so you aren't incentivized to wait until the spell is fully upgraded until you start using it
  • Changed the Hunter's Relentless Hunter passive. It no longer requires Bosses or Minions to be killed for the overall damage bonus. This is because of how unreliable boss spawns are. The bad news is you won't be able to get as many stacks on this passive as before, but the good news is you have to kill less enemies overall to get the extra bonus from killing all the ones you need
  • I condensed the amount of stats shown in combat to reduce the overall clutter. I removed the Name field since the names are shown above the character icons. I also removed the Class field since enemy classes are already shown as their name, and I added your party members' class name to their respective icon name. I also condensed Defense and Damage Reduction into one field (with the syntax looking like "Defense: 5 (5% reduction"))


Buffs
  • The Blood Mage's Hemorrhage first upgrade grants +25% Spellsteal per 5 uses instead of +5% per use. This now accumulates even when not unlocked but isn't gained until the upgrade is unlocked. This change is so you aren't incentivized to wait until the spell is fully upgraded until you start using it


Nerfs
  • Reduced the amount of gold you get when you defeat a boss
  • The Hunter's Tracking Shot now applies a Debuff, requiring this Debuff to apply for the secondary effects of Tracking Shot to activate. This means if the target resists the application of the Debuff, the secondary effects do not automatically apply
  • The Assassin's Mercy cannot be cast on enemies above 90% Health
  • The Brewer's Full Rounds now costs 25% Mana with a 50 Mana minimum cost
  • The Monk's Courageous passive now applies a buff to their party members. This means the effect no longer persists on other enemies if you kill the Monk beforehand


Known Issues
  • There seems to be an issue with enemy generation if you play the game for a long time. I've gotten reports of the game attempting to generate multiple enemies but there only being one in the combat room with the game throwing an error. I'm trying to figure out where this issue is stemming from


To-Do
  • Repair Room. This room will allow you repair your items, removing negative conditions or applying positive ones. This room will also allow you to upgrade your item rarities, for a price of course! This will allow for your items to have better multipliers than they otherwise could get from spawning naturally
  • Run modifiers. I want to add some optional modifiers to make the game more interesting. Maybe something like permadeath or persistent buffs/debuffs to make any given run easier/harder for the player
  • Change the way enemies level up. Right now they are always the level of your party members, but I feel this makes the experience multiplier worthless. An idea I have floating around is giving the enemies a set pool of experience based on your run length and current floor, not affected by your experience multiplier. This would mean you could curve faster than enemies, which will make the experience multiplier a stat you will actually need to take care of if you want to get ahead
  • Re-add inventory sorting and quick-destroy options
  • As I put in more enemies and more spells, I get a better understanding of what my code is capable of. I want to make spells that are extremely dynamic and unique for each class. I'd like to spend some time going through older classes I've made and see if they could use any sort of tweaking to bring them up to my current standards

Quick Beta Branch Update: Font Changes

I changed my fonts because I want to support open and free fonts for developers and users alike. The serif font I chose to use is Crimson Text, designed by Sebastian Kosch and licensed under the SIL OPEN FONT LICENSE Version 1.1. The sans serif font I chose to use is Roberto, designed by Christian Robertson and licensed under the Apache License Version 2.0.

These licenses allow anyone to use their fonts, commercial or otherwise, for digital and physical works. I greatly appreciate the work these creators allow users like me to take advantage of and I want to support their work by featuring their fonts in my game. The least I can give back are these credits in case others out there are looking for free-to-use fonts of their own. You can check out the entire list of available fonts at Google Fonts (this isn't sponsored I just really like the service this website provides and want to share with others).

Beta Branch Update: September 5th - Enemies Galore

Notes
  • This patch is the return to normalcy as I come back to work on the game. I focused hard to get lots of enemies done in this patch because I want to finish all of them soon so that the rest of development time can be spent refining aspects and fixing bugs. ALL non-boss enemies are done and added in the game! A breakdown of every added enemy is found below.


Bugfixes
  • Fixed some minor issues with status effect descriptions
  • Fixed an exploit with Constitution/Intelligence that allowed you to full restore your health/mana with stat points
  • Fixed the post-combat screen not reviving dead party members
  • Fixed the Forgotten King casting Cowardice on dead Bandits


Changes
  • Shatter no longer converts Attacks taken into percent Maximum Health Divine Damage. Any damage taken now deals additional percent Maximum Health Divine Damage. This is to prevent rare scenarios in which the Divine Damage ends up dealing less damage than the original damage
  • The Marauder's Deep Cuts now Shatters by 15% instead of 25%. This isn't necessarily a nerf since Shatter now activates when the target takes either Attack or Spell Damage instead of just Attack Damage
  • Harder difficulties give much higher chances of getting more enemies in combat. Nightmare now guarantees 4 enemies every combat!


Additions
  • Added further functionality for custom status effect names and description. This will allow for more unique and descriptive effects during combat to better differentiate where effects came from. I'll start updating older effect code to implement these new additions in later patches
  • Added the Flesh Eater. This warrior enemy exists in the base game but has been tweaked for the full release version. It has a spawn of 66, meaning you'll only start encountering it once you're two-thirds of the way through your run. Here is the detailed breakdown:
    • Active: Tear Flesh - Deals 100% Attack Damage, Healing the Flesh Eater by 20% of the Target's Maximum Health
    • Cost: 50 Mana; Cooldown: 5 Turns
    • Upgrade: +25% Initial Damage
    • Upgrade: Additionally Health Cripples the Target by 35% for 5 turns
    • ----------
    • Active: Bloody Lust - For 3 turns the Flesh Eater gains 50% Lifesteal but takes Spell Damage equal to 100% of its Current Health over the duration
    • Cost: 50 Mana; Cooldown: 5 Turns
    • Upgrade: +2 Turn Duration
    • Upgrade: +25% Lifesteal
    • ----------
    • Active: Cannibalism - Consumes a corpse, Healing the Flesh Eater by 50% of the Target's Maximum Health. For the rest of Combat the Target cannot Revive (cannot be Cast on a Target already consumed)
    • Cost: None; Cooldown: 5 Turns
    • Upgrade: +25% Maximum Health Heal
    • Upgrade: Additionally increases the Flesh Eater's Maximum Health by 100
    • ----------
    • Active: Blood Conversion - The Flesh Eater gains 2 Constitution per Intelligence but loses all Intelligence
    • Cost: 200 Health; Cooldown: 0 Turns
    • Upgrade: +1 Intelligence multiplier
    • Upgrade: Tear Flesh and Bloody Lust now cost Health equal to 2.5 times their Mana cost
    • ----------
    • Passive: Growing Strength - The Flesh Eater gains 3 Constitution on Basic Attack
    • Upgrade: +2 Constitution gain
    • Upgrade: Additionally increases Health Regen by 1%
    • ----------
    • Passive: Loose Flesh - +50% Damage Reduction, but -15% Maximum Health when Damaged
    • Upgrade: +25% Damage Reduction
    • Upgrade: -5% Health Loss
    • ----------
    • Infinite: Thirst - +1% Health Steal on Basic Attack per level
    • ----------
    • Infinite: Evergrowing - +1 Maximum Health per turn per level
    • ----------
    • Infinite: Hunger - +2% Missing Health Heal on Kill per level

  • Added the Cursed Warrior. This warrior enemy does not exist in the base game! It's the final non-boss warrior enemy. It has a spawn of 66, meaning you'll only start encountering it once you're two-thirds of the way through your run. Here is the detailed breakdown:
    • Active: Overpower - Deals 100% Attack Damage, increased by 25% if the Enemy has less Maximum Health than the Cursed Warrior
    • Cost: 75 Health; Cooldown: 4 Turns
    • Upgrade: +25% Initial Damage
    • Upgrade: If the Enemy is a Warrior the Cursed Warrior steals 35% of their Max Health for 3 turns
    • ----------
    • Active: Enfeeble - Deals 75% Attack Damage and Weakens the Target by 25% for 3 turns
    • Cost: 75 Mana; Cooldown: 5 Turns
    • Upgrade: +2 Turn Duration
    • Upgrade: Additionally Exposes by 25% for the duration
    • ----------
    • Active: Dazing Blow - Deals 65% Attack Damage and Stuns for 2 turns
    • Cost: 100 Health; Cooldown: 5 Turns
    • Upgrade: +35% Initial Damage
    • Upgrade: Bypasses Debuff Resist Chance
    • ----------
    • Active: Rally - For 4 turns the Cursed Warrior takes 50% increased Damage, but every Ally gains 50% Damage Reduction
    • Cost: 75 Mana; Cooldown: 6 Turns
    • Upgrade: +25% Damage Reduction
    • Upgrade: Shrouds any Ally below 35% Health for 1 turn
    • ----------
    • Passive: Cursed Sword - The Cursed Warrior deals bonus Damage equal to 10% of its Maximum Health on Attack
    • Upgrade: +5% Health Mult
    • Upgrade: Additionally deals bonus Damage equal to 10% of the Target's Maximum Health
    • ----------
    • Passive: Warrior's Curse - The Cursed Warrior takes Spell Damage equal to 20% of its Maximum Health each turn, but gains 35% Lifesteal
    • Upgrade: -5% Health Mult
    • Upgrade: Additionally grants +35% Attack Damage Reduction
    • ----------
    • Infinite: Blade Frenzy - +1.5% Damage Dealt but +1% Damage Taken per level
    • ----------
    • Infinite: Tower Over - +1% Health and Mana Cripple on Targets with less Maximum Health than the Cursed Warrior for 1 turn on Attack per level
    • ----------
    • Infinite: Warrior's Training - +2 bonus Constitution per level

  • Added the Hellbringer. This mage enemy exists in the base game but has been tweaked for the full release version. It has a spawn of 66, meaning you'll only start encountering it once you're two-thirds of the way through your run. Here is the detailed breakdown:
    • Active: Flame Torrent - Deals 75% Spell Damage to each Enemy, but also deals 50% Spell Damage to each party member
    • Cost: 50% Mana (150 minimum); Cooldown: 7 Turns
    • Upgrade: +25% Enemy Damage Dealt
    • Upgrade: -15% Party Damage Dealt
    • ----------
    • Active: Purging Fire - Purges an Enemy of Buffs, dealing 20% Spell Damage per Buff removed
    • Cost: 75 Mana; Cooldown: 5 Turns
    • Upgrade: +15% Damage Dealt per Debuff
    • Upgrade: Additionally Debuffs the Target for 3 turns, increasing the Duration of subsequent Debuffs applied to the Target by 2
    • ----------
    • Active: Melting Armor - Exposes each Enemy by 20% for 3 turns
    • Cost: 100 Mana; Cooldown: 5 Turns
    • Upgrade: +15% Expose
    • Upgrade: Additionally Armor Shreds by 50% for the duration
    • ----------
    • Active: Fire Shield - For 2 turns each party member gains 30% Damage Reduction and 75% Damage Reflection
    • Cost: 150 Mana; Cooldown: 5 Turns
    • Upgrade: +20% Damage Reduction
    • Upgrade: +25% Damage Reflection
    • ----------
    • Passive: Flame Wall - Grants +30% Spell Damage Reduction
    • Upgrade: +20% Damage Reduction
    • Upgrade: Additionally grants Immunity to Reflection Damage
    • ----------
    • Passive: Mana Burn - Drains 10% Mana to the Source when Damaged
    • Upgrade: +5% Drain
    • Upgrade: Additionally deals Spell Damage equal to the Mana Drained
    • ----------
    • Infinite: Lingering Flame - +1.5% Current Health Burn over 3 turns on Spell Cast per level
    • ----------
    • Infinite: Volatile - +1% chance to double Spell Damage Dealt per level
    • ----------
    • Infinite: Spiritsteal - +1% Spiritsteal per level

  • Added the Cursed Mage. This mage enemy does not exist in the base game! It's the final non-boss mage enemy. It has a spawn of 66, meaning you'll only start encountering it once you're two-thirds of the way through your run. Here is the detailed breakdown:
    • Active: Knowledge Absorption - The Cursed Mage copies a random Active Spell from the target, replacing Knowledge Absorption for the rest of Combat
    • Cost: 200 Mana; Cooldown: 0 Turns
    • Upgrade: Additionally grants both upgrades for the copied Spell
    • Upgrade: The copied Spell's Resource Cost is reduced by 35% and the Cooldown is reduced by 1 (copied Spell's Cooldown cannot go below 1)
    • ----------
    • Active: Divine Magic - Deals 100% Divine Damage
    • Cost: 150 Mana; Cooldown: 4 Turns
    • Upgrade: +35% Damage
    • Upgrade: Additionally deals bonus Divine Damage equal to 45% of the Target's Maximum Health over 3 turns
    • ----------
    • Active: Arcane Strike - Deals Spell Damage equal to 30% of the Target's Maximum Mana
    • Cost: 100 Mana; Cooldown: 3 Turns
    • Upgrade: +20% Maximum Mana Multiplier
    • Upgrade: Additionally Mana Cripples by 50% for 3 turns
    • ----------
    • Active: Magical Surge - Grants each party member +50% Mana Cost Reduction for 3 turns
    • Cost: 25% Mana (100 minimum); Cooldown: 5 Turns
    • Upgrade: +25% Mana Cost Reduction
    • Upgrade: Additionally grants +2 Cooldown Reduction for the duration
    • ----------
    • Passive: Cursed Staff - The Cursed Mage deals bonus Spell Damage equal to 10% of its Maximum Mana on Basic Attack
    • Upgrade: +5% Maximum Mana Multiplier
    • Upgrade: Additionally permanently reduces the Target's Maximum Mana by 5%
    • ----------
    • Passive: Mage's Curse - The Cursed Mage loses 20% Mana each turn, but gains 20% Soulsteal and Spiritsteal
    • Upgrade: +15% Soulsteal and Spiritsteal
    • Upgrade: Additionally returns 25% Divine Damage Dealt as Mana
    • ----------
    • Infinite: Magical Affinity - +1% Target's Maximum Mana converts to Spell Damage on Basic Attack per level
    • ----------
    • Infinite: Divine Connection - +1% Spell Damage Dealt converts to Divine Damage per level
    • ----------
    • Infinite: Mage's Training - +2 Intelligence per level

  • Added the Jester. This rogue enemy exists in the base game but has been tweaked for the full release version. It has a spawn of 66, meaning you'll only start encountering it once you're two-thirds of the way through your run. Here is the detailed breakdown:
    • Active: Uncertainty - Deals between 75% and 125% Attack Damage
    • Cost: 50 Mana; Cooldown: 3 Turns
    • Upgrade: +25% Damage Thresholds
    • Upgrade: The Damage gains 1% Pierce per 1% lower it is from the maximum percentage
    • ----------
    • Active: Jester's Dance - Targets 4 random characters, dealing 75% Attack Damage to Enemies and Healing by 20% Maximum Health to Allies
    • Cost: 35% Mana (50 minimum); Cooldown: 5 Turns
    • Upgrade: +25% Damage Dealt
    • Upgrade: +15% Healing Dealt
    • ----------
    • Active: Laughing Fit - For 3 turns, 2 random Enemies get their Health Regen set to 0%, the other 2 Enemies get their Mana Regen set to 0%
    • Cost: 50 Mana; Cooldown: 5 Turns
    • Upgrade: The Regen not chosen is reduced by half for the duration
    • Upgrade: Additionally grants each party member either +10% Health Regen or +10% Mana Regen for the duration
    • ----------
    • Active: Unsettling Gaze - Reduces the Damage Dealt of two random Enemies by 50% for 3 turns
    • Cost: 75 Mana; Cooldown: 5 Turns
    • Upgrade: +25% Damage Reduction
    • Upgrade: +2 Turn Duration
    • ----------
    • Passive: Disturbing - Each turn a random party member gains 30% Damage Reduction for 1 turn
    • Upgrade: +20% Damage Reduction
    • Upgrade: If the Jester is targeted it also gains 25% Damage Dealt for the duration
    • ----------
    • Passive: Lifeless - Once per combat on Death the Jester Revives by 50% but gets permanently Silenced
    • Upgrade: +25% Revive
    • Upgrade: Additionally grants +25% Maximum Health before the Revive
    • ----------
    • Infinite: Dextrous - +2% Damage Dealt for 2 turns on Basic Attack per level
    • ----------
    • Infinite: Eerie Smile - +1% bonus Pierce per level
    • ----------
    • Infinite: Puppeteer - +1% chance to Redirect 50% Damage Taken to the Source per level

  • Added the Cursed Rogue. This rogue enemy does not exist in the base game! It's the final non-boss rogue enemy. It has a spawn of 66, meaning you'll only start encountering it once you're two-thirds of the way through your run. Here is the detailed breakdown:
    • Active: Turn Weapon - For 3 turns the Target takes Attack Damage equal to 50% of their Damage per turn
    • Cost: 75 Mana; Cooldown: 5 Turns
    • Upgrade: +25% Damage Dealt
    • Upgrade: +2 Turn Duration
    • ----------
    • Active: Enslave Soul - Deals 100% Attack Damage, permanently increasing Enslave Soul's Damage by 30% if this Kills the Target
    • Cost: 25% Mana (50 minimum); Cooldown: 6 Turns
    • Upgrade: +20% Damage on Kill
    • Upgrade: Additionally permanently reduces the Cooldown by 1
    • ----------
    • Active: Breach - Shatters by 15% for 1 turn, dealing 15% Maximum Health Divine Damage if the Target is Damaged
    • Cost: 65 Mana; Cooldown: 5 Turns
    • Upgrade: +10% Shatter
    • Upgrade: +1 Turn Duration if the Target is below 50% Health
    • ----------
    • Active: Harness Curse - For 3 turns the Cursed Rogue gets Silenced but gains +100% Critical Strike Chance and Critical Damage
    • Cost: 100 Mana; Cooldown: 5 Turns
    • Upgrade: Additionally grants +50% Pierce for the duration
    • Upgrade: Additionally grants Disarm Immunity for the duration
    • ----------
    • Passive: Cursed Dagger - The Cursed Rogue deals bonus Damage equal to 15% of the Target's Missing Health on Basic Attack
    • Upgrade: +10% Missing Health Multiplier
    • Upgrade: If the Target is a Rogue, Cripple by 50% for 1 turn
    • ----------
    • Passive: Rogue's Curse - The Cursed Rogue takes 25% Missing Health Spell Damage per turn, but gains 50% Accuracy
    • Upgrade: -10% Damage Multiplier
    • Upgrade: Additionally grants +10% Instant Kill Chance
    • ----------
    • Infinite: Soul Shackle - +2 Bonus Damage on Kill per level
    • ----------
    • Infinite: Blade Bane - +1% Target's Damage deals bonus Damage on Basic Attack per level
    • ----------
    • Infinite: Rogue's Training - +2 Dexterity per level

  • Added the Incinerator. This archer enemy exists in the base game but has been tweaked for the full release version. It has a spawn of 66, meaning you'll only start encountering it once you're two-thirds of the way through your run. Here is the detailed breakdown:
    • Active: Oil Slick - Applies a stack of Oil Slick (up to 5) on each Enemy for 3 turns, Exposing by 10% per stack
    • Cost: 10% Mana (10 minimum); Cooldown: 1 Turn
    • Upgrade: +2 Debuff Duration
    • Upgrade: +5% Expose per stack
    • ----------
    • Active: Incinerate - Deals 50% Spell Damage to each Enemy, increased by 15% per Oil Slick stack (removes all Oil Slick)
    • Cost: 50 Mana; Cooldown: 5 Turns
    • Upgrade: +10% Damage per stack
    • Upgrade: Additionally deals 15% Maximum Health Spell Damage per stack over 3 turns
    • ----------
    • Active: True Flame - Deals 150% Divine Damage over 5 turns (bypassing Debuff Resist)
    • Cost: 65 Mana; Cooldown: 5 Turns
    • Upgrade: +50% Damage Dealt
    • Upgrade: -2 Turn Duration
    • ----------
    • Active: Cleansing Flame - Cleanses each party member, but deals 15% Spell Damage per Debuff Cleansed
    • Cost: 50 Mana; Cooldown: 5 Turns
    • Upgrade: -5% Damage per Debuff
    • Upgrade: Additionally grants each party member +50% Debuff Resist for 3 turns
    • ----------
    • Passive: Flicker - 20% of Spell Damage Dealt deals additional Spell Damage
    • Upgrade: +15% Spell Damage Dealt
    • Upgrade: Additionally Drains by 25% of Spell Damage Dealt
    • ----------
    • Passive: Molten Armor - 20% Damage Taken Reflects as Spell Damage
    • Upgrade: +15% Damage Reflection
    • Upgrade: 50% Reflection Damage Dealt returns as Health
    • ----------
    • Infinite: Flame Lick - +1% Spell Damage Dealt deals bonus Damage to a random Enemy per level
    • ----------
    • Infinite: Combustion - +2% Spell Damage Dealt, but +1% Spell Damage Taken per level
    • ----------
    • Infinite: Divine Flames - +2% Divine Damage Reflection per level

  • Added the Nature Guardian. This archer enemy exists in the base game but has been tweaked for the full release version. It has a spawn of 66, meaning you'll only start encountering it once you're two-thirds of the way through your run. Here is the detailed breakdown:
    • Active: Overgrowth - Heals each party member by 30% Maximum Health, but Heals all Enemies by half current percent
    • Cost: 50% Mana (50 minimum); Cooldown: 8 Turns
    • Upgrade: +20% Heal
    • Uprade: Additionally Revives all Dead characters by half the current Heal percent
    • ----------
    • Active: One With Nature - Grants each party member +15% Health Regen for 3 turns
    • Cost: 65 Mana; Cooldown: 6 Turns
    • Upgrade: Grants an additional 1% Regen per 5% Missing Health
    • Upgrade: Additionally grants +10% Mana Regen for the duration
    • ----------
    • Active: Thorny Wrath - Grants each party member +30% Damage Reflection for 3 turns
    • Cost: 75 Mana; Cooldown: 6 Turns
    • Upgrade: +20% Damage Reflection
    • Upgrade: Additionally Heals a party member by 25% Maximum Health if they get a Kill from Damage Reflection
    • ----------
    • Active: Entangle - Disarms each Enemy for 1 turn
    • Cost: 50 Mana; Cooldown: 5 Turns
    • Upgrade: Additionally deals 50% Spell Damage
    • Upgrade: Grants a 50% chance to Stun instead of Disarm
    • ----------
    • Passive: Nature's Embrace - Grants +10% bonus Health and Mana Regen
    • Upgrade: +5% Health and Mana Regen
    • Upgrade: Additionally grants +10 bonus Constitution and Intelligence
    • ----------
    • Passive: Overcharge - Healing Dealt is increased by 30%, but Healing Taken is reduced by 35%
    • Upgrade: +20% Healing Dealt
    • Upgrade: -10% Healing Taken Reduction
    • ----------
    • Infinite: Overheal - +1% Maximum Health Heal per level
    • ----------
    • Infinite: Nature'd Blessing - +0.75% Health and Mana Regen per level
    • ----------
    • Infinite: Life Tap - +10 Maximum Health and Mana per level

  • Added the Cursed Archer. This archer enemy does not exist in the base game! It's the final non-boss archer enemy. It has a spawn of 66, meaning you'll only start encountering it once you're two-thirds of the way through your run. Here is the detailed breakdown:
    • Active: Adaptive Arrow - Deals 100% Attack Damage, Poisoning by 15% for 3 turns if the Target has higher Current Health Percent than Missing Health Percent, otherwise Bleeding by 15% for 3 turns
    • Cost: 75 Mana; Cooldown: 5 Turns
    • Upgrade: +10% Debuff Potency
    • Upgrade: Critically Kills if the Target is at exactly 50% Health
    • ----------
    • Active: Multishot - Self Casts deal 50% Attack Damage to each Enemy, Enemy Casts deals 50% Attack Damage 4 times
    • Cost: 65 Mana; Cooldown: 4 Turns
    • Upgrade: Enemy Casts deal bonus Damage equal to 25% of the Target's Maximum Health
    • Upgrade: Self Casts Heal by 75% of the Damage Dealt
    • ----------
    • Active: Quickness Curse - Sets each Enemy's Quickness to 0 for 3 turns
    • Cost: 50 Mana; Cooldown: 5 Turns
    • Upgrade: Additionally permanently reduces each Enemy's Quickness by 15%
    • Upgrade: Additionally deals Attack Damage equal to 4 times each Enemy's Quickness before reduction
    • ----------
    • Active: Well-Equipped - Increases the Cursed Archer's Bonus Damge by 20
    • Cost: 20% Mana (50 minimum); Cooldown: 1 Turn
    • Upgrade: +15 Bonus Damage
    • Upgrade: Additionally grants +10 Bonus Defense
    • ----------
    • Passive: Cursed Bow - The Cursed Arhcer deals bonus Damage equal to 15% of the Target's Current Health on Basic Attack
    • Upgrade: +10% Current Health Mult
    • Upgrade: 50% Basic Attack Damage Dealt deals bonus Damage to the Target of the Cursed Archer's previous Basic Attack
    • ----------
    • Passive: Archer's Curse - The Cursed Archer loses 25% Missing Mana per turn, but Steals 15% Mana on Basic Attack
    • Upgrade: -10% Missing Mana Loss
    • Upgrade: +10% Mana Steal
    • ----------
    • Infinite: Acceptance - +0.5% Maximum Health Heal if Current Health Percent is lower than Current Mana Percent, otherwise Restore +0.5% Maximum Mana, per turn, per level
    • ----------
    • Infinite: Rain of Arrows - +1% Basic Attack Damage Dealt deals bonus Damage to each other Enemy per level
    • ----------
    • Infinite: Archer's Training - +2 bonus Swiftness per level


Buffs
  • Increased the Health Pulse and Mana Pulse Armor Specials from 10% Missing Health/Mana restoration per turn to 15%


Known Issues
  • When you have an equipped offhand and you destroy it, two-handed weapons in your inventory do not update their visuals to show you're able to equip them. This is purely cosmetic and won't prevent you from equipping them
  • When you use the enchantment room to scale an item to a character's level, the item's new properties don't immediately apply. You have to unequip and re-equip the item to get the new values
  • There seems to be an issue with enemy generation if you play the game for a long time. I've gotten reports of the game attempting to generate multiple enemies but there only being one in the combat room with the game throwing an error. I'm trying to figure out where this issue is stemming from
  • The game experiences rare crashes when doing specific things that are really hard to pin down since I can't recreate the issues. In almost every scenario a solution is to restart the game. You'll have to do that until I can figure out the problem


To-Do
  • Repair Room. This room will allow you repair your items, removing negative conditions or applying positive ones. This room will also allow you to upgrade your item rarities, for a price of course! This will allow for your items to have better multipliers than they otherwise could get from spawning naturally
  • Run modifiers. I want to add some optional modifiers to make the game more interesting. Maybe something like permadeath or persistent buffs/debuffs to make any given run easier/harder for the player
  • Change the way enemies level up. Right now they are always the level of your party members, but I feel this makes the experience multiplier worthless. An idea I have floating around is giving the enemies a set pool of experience based on your run length and current floor, not affected by your experience multiplier. This would mean you could curve faster than enemies, which will make the experience multiplier a stat you will actually need to take care of if you want to get ahead
  • As I put in more enemies and more spells, I get a better understanding of what my code is capable of. I want to make spells that are extremely dynamic and unique for each class. I'd like to spend some time going through older classes I've made and see if they could use any sort of tweaking to bring them up to my current standards

Beta Branch Update: August 30 - Map Update

It's been a very long time since the last update which I apologize for. Quarantine laziness coupled with overall motivation problems led to a lull in programming for me. I worked on a few side projects to get my creative juices flowing again and I feel I'm back in the groove of things. This update mainly focuses on the map, subsequent updates will go back to adding more content in the game and fixing any issues I come across along the way!



Notes
  • This is a HUGE update that adds a brand new concept to the game I feel is going to have a big impact on your enjoyment of the game: branching paths on each floor that allows you to choose which room you go in to next!
  • The biggest detriment I felt that was holding the game back was the singular floor generation system. It worked to an extent but your ability to get through the floor was weighted just a little too much on luck. If you got a floor that was too hard, you basically had no alternatives. You HAD to get through those rooms to continue the game.
  • Now I've adopted a 4-path system where each floor has 4 paths and these paths branch into each other to allow you to have many more options in the overall decision you have behind which rooms you go in to. This fundamentally changes how you go about progressing through the game and I really hope I found a good mixture of new concepts interlocking with the old system the game used.
  • This new system brings about several changes such as full-heal rooms spawning in intervals throughout the floor instead of randomly, logic that prevents more than 3 combat rooms spawning side by side, and the removal of those death bonuses you can choose after you lose the game.
  • It goes without saying that this update is not compatible with old saves. As always I apologize for this but these major changes are happening in early access so that the full-release version sees as little overhauls as possible.


Bugfixes
  • Added additional cleanup code that aims to make the game run more efficiently without increasing lag as the game goes on
  • Fixed a seed bug that would not make the same floor spawn if you put in the same seed
  • Fixed the game adding to the enemy stat multiplier every time you loaded into the starting room after the final floor instead of when you enter the room for the first time
  • Fixed the Lifebreaker's Put Down crashing the game
  • Fixed the Bloodseeker being able to cast Tear Away on untargetable party members if it used Bloodlust beforehand
  • Fixed the Deathbringer crashing the game post-combat if it had Cheat Death unlocked


Overhauls
  • Floors no longer spawn a single path, there are now 4 paths that branch into each other. This change brings many new concepts that I hope are seen as improvements over the original formula. Firstly, no more than 3 combat rooms can spawn side by side on one branch. Secondly, full-heal rooms no longer spawn randomly and now are encountered in intervals throughout the floor (the interval is larger on harder difficulties). These rooms spawn about every 6th room. Non-healing and non-combat rooms are inhabited by all the other room types (gambling, sacrifice, treasure, potion, etc)
  • This new update to the floor system also sees the removal of the death screen rewards system. I had that in place because I was trying to prevent scenarios in which you encountered a series of combat rooms that were impossible to get through on your own. You could spend some resources to help you get through these encounters. However I feel with the new path system, the guaranteed generation of full-heal rooms, and floor generation rules that prevent combat rooms from bunching together, I feel this system is no longer necessary


Changes
  • The statistics and spell list icons during gameplay now glow if any character has points to spend instead of glowing only if the current character has points
  • I changed the statistics/spell list glow to be more efficient as well as no longer getting off-sync
  • Combat rooms no longer spawn more frequently on harder difficulites, they now only increase the chance of fighting more enemies per encounter. Harder difficulties now increase the distance between full-heal rooms
  • Full-heal rooms now give you a choice to give your party a 25% damage buff or a 25% damage buff for the next combat encounter
  • Map rooms now allow you to see the entire floor while you stay in that room. Once you leave the map room you no longer get to see the whole floor so memorize which path you want to go down before you leave!
  • Treasure rooms items are now generated for a random character


Buffs
  • Buffed the Bandit's Worthy Sacrifice to grant the Forgotten King increased Maximum Health equal to 50% (30% initial + 20% upgrade) of its Maximum Health instead of 75% (50% + 25% upgrade) Current Health


Additions
  • The game now runs on 64bit architecture, allowing it to use more memory which should help performance


Known Issues
  • When you use the enchantment room to scale an item to a character's level, the item's new properties don't immediately apply. You have to unequip and re-equip the item to get the new values
  • There seems to be an issue with enemy generation if you play the game for a long time. I've gotten reports of the game attempting to generate multiple enemies but there only being one in the combat room with the game throwing an error. I'm trying to figure out where this issue is stemming from
  • The game experiences rare crashes when doing specific things that are really hard to pin down since I can't recreate the issues. In almost every scenario a solution is to restart the game. You'll have to do that until I can figure out the problem


To-Do
  • Repair Room. This room will allow you repair your items, removing negative conditions or applying positive ones. This room will also allow you to upgrade your item rarities, for a price of course! This will allow for your items to have better multipliers than they otherwise could get from spawning naturally
  • Run modifiers. I want to add some optional modifiers to make the game more interesting. Maybe something like permadeath or persistent buffs/debuffs to make any given run easier/harder for the player
  • Change the way Shatter works. Right now Shatter is in a weird spot because the way it works doesn't necessarily make it a good buff. It currently converts all Damage Taken into Divine Damage, but this makes any damage increase effects you have not apply, which could make you deal less damage than you would have. The Marauder's Deep Cuts has a Shatter with a temporary change while I figure out what to do with the buff
  • Change the way enemies level up. Right now they are always the level of your party members, but I feel this makes the experience multiplier worthless. An idea I have floating around is giving the enemies a set pool of experience based on your run length and current floor, not affected by your experience multiplier. This would mean you could curve faster than enemies, which will make the experience multiplier a stat you will actually need to take care of if you want to get ahead
  • As I put in more enemies and more spells, I get a better understanding of what my code is capable of. I want to make spells that are extremely dynamic and unique for each class. I'd like to spend some time going through older classes I've made and see if they could use any sort of tweaking to bring them up to my current standards