Madlem Changelog TODO: - Make the menus fancy. - Make the shop fancy. [-] Finalise Ker design. - Finalise Entity design. [-] Finalise Moonguide design. - Add bomb visuals. [-] Add new player shot visuals. -* Add at least 1 stage, 1 boss and menu music. - Add remaining item sprites. OPTIONAL: - New sound effects. - Add boss animations. - Make shop music. - Add and balance Sunder acts. [-] Make the stage alerts fancy (stage number and boss approaching) - Update Ember design. - v0.1.10 - --------------------------------------------------- NEW: - Added new player shot sprites and effects. - Added SFX and BGM volume settings to the options menu. - Added Moonguide's Portrait and temp boss sprite. - Added Moonguide player sprite. - Added Ker's Portrait and temp boss sprite. - New boss warning popup. - New stage intro popup. - Some new sound effects here and there. - Added stage and boss specific colour codes for styling certain ui elements. - Expanded text functionality, now supports multiple colours per line and better positioning. - New Item: Phylactery. - New Item: Forbidden Fang. - Added some new spells. - Added new jagged movement pattern for some enemies and spells. - Added debug control F8: Hold to fast forward gameplay by x6 (GodMode recommended). CHANGES: - Removed the test achievement. - Mouse cursor is no longer visible inside the window. - Razor-Sharp Snowflake projectiles now slow down and linger a certain distance from the explosion. - The practice stage no longer reloads data whenever it is restarted. - The Poisoned Cradle (Bomb) now reduces main shot and familiar shot damage while it's active. - Shop now increases prices each stage. - Makeshift Missiles has been reworked into a weapon that fires explosive projectiles. - Reworked the Voiceless boss fight, specifically how the parasite works. - Rank changes: - Lives in stock now contribute to rank gain. - Rank loss from bomb activation has been reduced. - Death now heavily decreases rank. - At the end of each act, rank will additionally increase based on the percentage of enemies killed. - For boss spells this increase will be based on a percentage of the time taken to defeat it (always 100% for survival spells). FIXES: - Fixed item Loophole being completely messed up. - Fixed crash caused by Entity's randomised bomb. - Fixed a rare issue that caused rank to update to NaN. - Fixed an issue that disabled pausing during gameplay. - v0.1.9 - --------------------------------------------------- NEW: - Added a scuffed controls rebinding menu to the title screen. - Added laser sparks. - Expanded 3d library, now includes modular material shaders and global fog. - Added stage background for Sunder. - 3d Particle effect support (currently unused and completely inefficient but it exists). - Added some player sprites. - Added weapon sprites. CHANGE: - Improved straight laser rendering. - Increased base range of most bombs. - Textures may now utilise mipmaps. - Big rank increases no longer require at least 3 bombs in stock but rank increase per bomb reduced slightly. - Increased base pickup radius. - Desecration Doll tracks enemies better. - Experimenting with rendering optimisations. - Backgrounds are no longer rendered while another background is being rendered above it. - Increased base deathbomb time from 3 to 5 frames. - Voiceless bomb no longer prevents shooting, but has itself reduced damage. - Voiceless bomb now deals reduced damage if the reflected shot was created very recently (prevents extreme shotgunning but not removed entirely). FIXES: - Fixed crash caused by lives or bombs being granted while in the shop. - Fixed issues where boss summons would continue shooting after the spell was cleared. - Hopefully fixed an issue that caused some bullets not to be created. - Fixed a crash caused by killing a boss while a charging effect was active. - Fixed rank increases doubling up on midbosses. - Fixed some graphical weirdness with enemy explosion particles. - Entity now properly loads and displays the appropriate backgrounds. - Bosses no longer have collision while out of bounds. KNOWN BUGS: - Disintegration Ray item damage is very inconsistent. - v0.1.8.1 - --------------------------------------------------- NEW: - Implemented GameObject Pooling (potentially unstable). CHANGE: - Brought back automatic memory management but added manual as a hidden setting. - Minor changes to make instantiating new game objects more efficient. - Added count of pooled objects onto the extra HUD (F5). - Dropped pickups are now launched up slightly depending on how close they were to the bottom of the screen. - Improved performance of coroutines. - Bullet delay effects are now rendered with sprite batches, should improve rendering performance. - Same for player shots. - Same for pickups. - Fullscreen is now enabled by default. - Debugging profiler control moved to f12. FIXES: - Fixed a crash caused by the Mother Jellyfish enemy. - Fixed single stack Plexian Helix and Disintegration Ray not working properly on players other than their owners. - Fixed an issue that cause the tickrate to not be locked to 60 on some machines. - Pressing f12 now properly disables the profiler if its currently enabled, instead of just hiding it. - v0.1.8 - --------------------------------------------------- NEW: - New fancy game interface. - New debug controls: - F4: Toggles on screen profiler. - F5: Toggles extra information on the HUD (FPS, DPS, Object Count). - F6: Toggles visibility of the entire HUD. - Added new Sunder act. - Rudamentary title sprite. - Added Entity as a player. - Added most of the starting item sprites. CHANGE: - Reduced rank influence on point drop rate by about half. - Slowed rank increase from act progression. - Clearing a boss spell now clears bullets much faster and starting from the boss position instead of the player. - Increased cost of Spider Totem. - Changes to how player shots apply their damage: - When a shot hits an enemy it will lose power equal to the damage dealt. - If the shot deals overkill damage it won't be destroyed, instead continuing with less power. - Experimental memory management changes: - Automatic memory garbage collection is paused during stages. - Garbage is manually collected at the end of each act and boss spell. - Redid some of the old item sprites to fit the new style. - Updated stage intro graphic. FIXES: - Fixed life count visually returning to 1 when game overring. - Fixed Ker and Roach giving old boss items. - Fixed several small issues with screen shaking and view positioning. - Fixed DPS counter. - Fixed rank not resetting properly between normal and practice runs (for real this time?) - Fixed a problem with save file corruption. - Fixed Disintegration Ray weapon crashing on characters other than Roach. - v0.1.7 - --------------------------------------------------- NEW: - Added Ker's Bomb. - Added Ember's Portrait. - Added BulletBehavior object that can apply complex bullet behaviors without use of per bullet coroutines. - Added boss charge up effect to some spells. - Added new character: Entity. - Instead of having unique spells as a boss, Entity uses spells owned by the current player character instead. - Added a new Sunder act. - Added explosion effects to Makeshift Missiles and Red Glint Quartz. - Added a rudamentary pressure dial on the game interface to represent current rank. - Added effects to lives and bombs on the interface when destroyed. - Implemented Flytrap's background. CHANGE: - Reworked Roach again. - Reworked Ker again. - Cleaned up player select menu animations. - Replaced 'Familiar' terminology with 'Weapon'. - Items that aren't weapons are labelled 'Passive'. - You can no longer face a midboss or boss that you are playing as currently. - If such a boss would be encountered, you will now encounter Entity instead. - You can no longer face a stage boss that you've encountered in the last 4 stages. - If there are not enough viable bosses after this checks then this rule will be ignored. - Lowered base main shot damage. - Increased most weapon damage. - Buffed and added more interactions with Desecration Doll item. - Reworked internal player data and save/load system that should work with save files from any older version. - Reworked rank system again: - Rank is no longer linked to score. - Rank is no longer affected by stage progression. - Rank is added after each act and boss spell. - The amount added is small but a large amount is added based on your bomb stock amount if it's above 2. - Bombing reduces rank, deathbombing even further. - Reduced enemy health increase from rank slightly. - Rank now increases point item droprate. - Item 'Shattered Witness' renamed to 'Razor-Sharp Snowflake'. - Item 'Gleaming Witness' renamed to 'Red Glint Quartz'. FIXES: - Fixed pause menu sometimes popping up immediately upon starting a run. - Fixed shop supplying items when player has reached the max stack amount for that item. - Fixed weird stat problems occurring when continuing. - Fixed continuing in practice mode restarting the stage or spell instead. - Improved memory management, should generally improve performance. - Fixed achievements. - Fixed a rare case that caused the player to become permanently invulnerable. - Fixed Corpse Bloom debuff never expiring when applied to bosses when a spell is ended. - Rank properly resets upon restarting a run. - Further optimised The Chewing Machine. - v0.1.6 - --------------------------------------------------- NEW: - Added Ember's Bomb. - New starting items for Roach. - Added a bunch of spells. - Added outline shader to some text. CHANGE: - Reduced base deathbomb time window to 3 frames (previously 8). - Reduced all deathbomb time buffs from items. - Reworked rank and score system - Now less reliant on individual stage and overall run progression. - Killing enemies, grazing, doing most things will increase score. - Deathbombing now reduces score slightly. - Dying now reduces score instead of rank directly. - Rank is now affected by score. - Score will have other implications in future. - Life charge required to gain a life no longer increases every time life charge is maxxed out. - Practice mode now grants bosses 25% extra health to account for rank that would be gained through a normal stage. FIXES: - Window now positions itself properly in the center when resizing. - Removed 'They Sing For Me' spell temporarily, it kinda sucked anyway you're not missing much. - Fixed radial damage effects. - Removed shop on stage 1. - Removed a bunch of unnecessary bullet coroutine tasks (should help with lag on some patterns). - Fixed big frame drops on spell "The Chewing Machine", especially on higher ranks. - Fixed some messed up rendering on bendy lasers. - Countdown sound no longer glitches out when the spell is defeated on a frame-perfect second. - Fixed lives sometimes not resetting after dying between seperate runs. - v0.1.5 - --------------------------------------------------- NEW: - Blood Splatter / Explodey effects when hitting and killing enemies. - Replaced bullet and laser destroy effect. - New Playable Character: The Dancer. - New Playable Character: Ker. - Added 3d rendering library. - Added curved lasers. - Bunch of new spells. - Latent discord rich presence for some reason. CHANGE: - Shops now appear at the start of stages instead of at the end (not stage 1), allowing time for async loading of stage resources. - Trying out new shop visuals. - Particles now utilise sprite batches for faster rendering. - Flytrap Bomb now instantly absorbs pickups dropped from all enemies killed. - Bullet Pattern objects can now apply to Lasers of any type. - Enemy HP Bars are hidden during certain boss movements to avoid mixing them up with bullets. - Roach's starting items have been effectively given to Ker instead, Roach will be redesigned later. FIXES: - Fixed stage tasks overlapping events between stages. - Fixed starting items being duplicated upon restarting a run / stage. - Grazing effect now properly applies to laser grazing. - v0.1.4 - --------------------------------------------------- NEW: - Portrait for Roach. - Portrait for Voiceless. - Added 3 new Flytrap spells. - Added 1 new Roach spell. - Added 5 new Sunder acts. - Added 1 new item. - Added a character portrait on the practice menu based on the spell currently selected. - Added some sweet lookin' lasers. - Full boss fights can now be generated on the practice menu. CHANGE: - Exitting out of the practice stage will take you back to the practice menu instead of the title menu. - The practice menu will remember which spell was selected when returning to it. - Changed the method of character declaration, players and bosses are now linked. - Rank now starts at 1 and scales smoothly. (gameplay balance mostly unaffected, mainly visual change) - Particle effects can now be defined externally and stored on load. FIXES: - Removed instances where textures could potentially be stored before they are loaded. - LOVE2D version - Migrating engine to Love2D NEW: - Real and fully working async loading of resources with a funky new loading screen. - Added spell icons to boss hp bars. - Added Poison auras. CHANGE: - Bullet render and update handling now allows far more bullets on screen without FPS drops. - Bullets now use lighten blend mode instead of add and subtract. - Changed the structure of non-gameobject classes (possibly unstable) - Boss markers now flash while damaging the boss. - Hue shift shader is now almost twice as efficient. - Smoothed out the boss ui animations. - Smoothed out menu transitions. - v0.1.3 - --------------------------------------------------- NEW: - Added saving and loading of game data including: - Unlocked players and last selected player. - Game stats like total enemies killed, total deaths, etc. - Achievement progress. - Collected items (for potential codex in future). - Remebering your settings. - New Playable Character: Roach. (but for real this time) - Added customisable rank to the practice menu (press left and right to change rank) - Added a subtle glow behind all bullets. - Added a very violent explosion when things die. - Added a few new Sunder stage acts. CHANGE: - Player characters now require you to have beaten them as a boss to unlock them. (since not every boss exists, players without a boss will be unlocked by default) - Enemies on the practice stage no longer scale their health with rank value. - Removed slowdown upon defeating a boss in the practice stage. - Time spent waiting before a boss attack actually starts is generally shorter. - Made most patterns generally faster. - Removed glow effect on pickups. - Stages now sort the order of acts such that they won't repeat until the act selection has been exhausted. - Reworked many Sunder stage enemies and acts. - Increased the cost of all items by 25%. - Reduced the health of most boss attacks. - Laser warning lines are now deleted when their laser is deleted. - Voiceless' bomb's reflected shots now deal damage based on the size of the bullet destroyed. - Fonts are now loaded from info provided by the current language file. - Revamped audio framework. This will fix panning and provide more control over how sounds are played. FIXES: - Removed many instances of duplicate texture loading. - Fixed particles not being updated upon first emit. - Fixed item stacking causing item events to stack more than they should. - Fixed Heartbreak killing you too many times and too quickly. - Fixed screenshake interferring with many positioning based things. - v0.1.2 - --------------------------------------------------- NEW: - New background for Flytrap boss. - New Playable Character: Voiceless. - New Item: Fissure Worm. - New Item: Makeshift Missiles. - Added polygon bullet pattern type for scripting. - Added codenames to background in the BG Showcase test spell (in practice menu). - Added achievements. (very basic and are not saved when closing the game) - Added a bunch of new item sprites. - Added new font for basic text info. (items, descriptions, lore, anything that is meant to be readable) - New debug controls: - F1: Toggles cheat mode. (cannot die while in cheat mode) - F2: Grants maximum points (99999). - F3: Skips current act or spell. - Added new hit and death effect for player. CHANGE: - Reworked Item: Plexian Helix is now a familiar that fires helix shots. (the old item is now 'Twisted Mirror') - Bosses can no longer use a timeout spell for their first attack unless they're a midboss. - Lasers are cleared immediately between spells and acts to prevent them from cheapshotting the player. - Player shots now have increased size the higher their damage. - Renamed a bunch of items. - Modified Item: Cornucopia (previously Perserverance) - Now grants life charge when collected in addition to at the end of each stage. - Cost reduced. - Now stackable up to 3. - Modified Item: Spider Totem (previously Flay Shot) - Now fires 8 shots in an even spread every 8 shots for 80% damage each. - Modified Item: Counting Cuts - Now grants bomb charge and blood charge directly when damaging enemies instead of through pickups. - Modified Item: Pale Spyglass (previously Point of Collection) - No longer increases the value of pickups. - Changed the damage calculation of main shots when fired. Rebalanced all items that create additional main shots. - Shop now always generates with one boss item. - Improved item event system to be more efficient. - The practice stage no longer starts in cheat mode. - The practice stage has faster animations to make retrying spells fast and fun. FIXES: - Fixed bosses skipping through multiple spells when timing out a non-timeout spell. - Fixed BG Showcase test spell crashing on certain backgrounds. Please enjoy the backgrounds to their fullest in the Practice menu. - Fixed noise shader in the Dollhouse background not being applied properly. - Fixed one of the midbosses being skipped over entirely. - Removed asyncronous loading of textures before stages as it sometimes causes crashes (this may make load times between stages a tad longer). - Fixed practice mode starting a normal run the second time it's opened. - v0.1.1 - --------------------------------------------------- NEW: - Bosses now allow for a short entry animation before their first spell. - Bosses now wait a short duration between spells. - Some menus disabled briefly after being opened. - Some sounds now have subtly randomised pitches. - New player hitbox visuals and effects. - Added a subtle glow behind player sprite. - Added sketchy player sprite for Flytrap. - Added some new effects to enemy healthbars. - New Item: Big Death Bomb. - New Item: Death Bomb Time Up. - New Item: Pierce Bounce. - New Item: Hadal Devil. - New Item: Spirit Shackles. - New Item: Violence Engine. - New Item: Desecration Doll. - Added loading screen at the start of the game. - New Bullet State and Bullet Pattern objects to aid in scripting. CHANGE: - Modified shot homing formula. Should be more accurate at longer ranges. - Modified Item: Homing Shot - Homing increased. - Increased base player movement speed and pickup radius slightly. - Increased point item reward from perfectly clearing a spell. - Increased rate at which pickup radius and graze radius are boosted by items. - Improved bomb scaling from the bomb support stat. - 3 large bomb pickups are needed to get a bomb extend instead of 5. - If you die with more than 3 bombs then your bombs don't get reset. - Survival spells no longer appear on stage 1. - Low health enemy damage sound grows louder from zero as health lowers. - Improved closest enemy targetting to be more accurate. - Homing shots now gradually lose homing if enough time has passed to prevent shots potentially never leaving the screen. - Invulnerability and bomb cooldown when bombing is now controlled by the bomb object instead of the player. - 'Bomb Efficiency' stat renamed to 'Bomb Support'. It mostly affects radius but can affect other attributes depending on the bomb. - Enemy healthbars are more transparent when the player is close to the enemy. - Changed window title. - Enemies no longer flash while invulnerable. - Temporarily removed item: Tubular Bells. (it doesn't even do what it says lol). FIXES: - Invulnerable enemy damage sound no longer pans horribly. - Fixed some screen shaking not working. - Fixed flytrap bomb target effects sometimes spawning at (0,0). - Got rid of the ui goop blocking the spell timer and music name. - Fixed bosses spawned on the practice stage sometimes dropping pickups upon spawn. - Fixed an infinite loop caused when certain familiar's attack speed was too high. - v0.1.0 - 13/03/2023 --------------------------------------------------- FIRST PRE-ALPHA RELEASE