Version 0.4 is out now! PLUS, a 40% off sale!


I'm very happy to announce that Baldi's Basics Plus version 0.4 is available right now! I know it's been a long wait, but this update brings with it a lot of changes that not only make for a significantly better gameplay experience, but also a much smoother development experience on my end. That means that you all will get more content more often. Approximately every two months to be exact!

To celebrate the release of version 0.4, let's do some math!

0.4 X $10.00 = $4.00...

and then $10.00 - 4.00 = ...

$6.00!

That's right, Baldi's Basics Plus is on sale at 40% off for two weeks! That's the lowest price it's ever had!

I sincerely want to thank you all for your patience. I'm very excited for this new chapter of the game's development and can't wait to show you all what I have planned.

With all that said, here's the changelog. Get ready, this one's a doozy!

Additions

  • Added a new character, Dr. Reflex!
    • Dr. Reflex wanders around and chases the player if he sees them. When he reaches them, he makes them take a reflex test which involves quickly clicking a circle icon he lifts up with random timing.
      • Successfully completing the test awards some YTPs. There is no penalty for failing other than wasted time, as Dr. Reflex will keep giving you another chance until you win.
    • Unlike other NPCs, Dr. Reflex can only see the player if they are in his line of sight.
    • During this test, the player can still move freely. If they leave before the test is finished, Dr. Reflex becomes upset and heads back to his examination room.
    • Once there, he grabs a giant percussion hammer and hunts for the player. He hears sounds made by the player and will use them to track them down. As he hunts, he will squish any NPCs he encounters with his hammer.
    • This continues until he finds and squishes the player. After this he returns to his default wandering state with a short cooldown.
    • The more times you take Dr. Reflex's test in a level, the more difficult/time consuming they become.
    • For all 0.4.X versions of the game, Dr. Reflex will be guaranteed to spawn in level 2. In later major updates, he will be set to have a random chance of spawning similar to the other characters.
    • Unlike other NPCs, Dr. Reflex can only see the player if they are in his line of sight.
  • Added the squished status effect. When the player is squished, they cannot interact with most objects in a level. When an NPC is squished, they cannot trigger their usual effects when colliding with other entities.
  • Ambience was added to outdoor areas.
  • Several custom made rooms have been added to the game for the new level generator changes (See below for more info)
  • Pre-made hallway areas can now be loaded into levels alongside the standard generated hallways. This allows for more interesting level layouts.
  • Added a callout when all notebooks are collected notifying the player that they now must exit the level.
  • Added a button to the about screen that opens the game's save folder (May not work on all platforms).
  • Added a new door texture for the Principal's office.
  • Added several new objects for level décor: A computer, filing cabinets, bookshelves and a new desk.
  • Added an echo audio effect when entering the library.

Changes

  • Tweaked Principal of the Thing
    • The Principal now knocks on faculty room doors a few seconds before entering them.
    • The Principal will now quickly open and close the Principal's office doors during detention when entering or leaving the room, instead of just passing through them.
    • Individual rule breaks now have their own timing for how long the Principal must see the player before he will get angry at them.
  • Tweaked Beans.
    • Added previously unused sound effects for when Beans is about to spit gum, when the gum is moving through the air, and when it hits an object.
    • The gum overlay is now rendered behind other HUD elements.
    • Beans' now runs away from his gum once it hits something.
  • Tweaked Playtime.
    • Playtime will end jump rope if she loses sight of the player at any point.
    • Playtime no longer ends jump rope based on the player moving a certain distance. This functionality was made obsolete by the above change since moving far enough away causes Playtime to lose sight of the player.
  • Tweaked It's a Bully.
    • The Bully no longer drops below the level when he leaves. Instead, the relevant components are simply disabled.
    • NPCs are now blocked by the Bully and must navigate around him,
    • The Bully now pushes entities that collide with him away instead of just being an impassible collider. This means it is now possible to pass through the Bully with enough speed.
  • Tweaked Chalkles.
    • Chalkles no longer instantly cools down when leaving a room. Instead, it cools down over time the player is not in any of its rooms.
    • Chalkles can now spawn in faculty rooms, though a smaller percentage of them than class rooms.
  • Sound is now propagated through levels by wrapping around walls, rather than just passing through everything. For example, if you are in a room with only one entrance, all sounds you hear will sound as if they are coming through the door, regardless of where the character is relative to you.
  • The shape, size and contents of rooms are no longer procedurally generated. All rooms are now designed by hand and then loaded into levels procedurally. This allows for more interesting, better designed rooms to be added to the game.
    • Some objects in rooms can be randomized such that there is a chance they will be replaced by another object (E.g. BSODA machines in the cafeteria have a chance to be changed to a Zesty machine or, rarely, a crazy vending machine).
  • Math Machines are now placed closer to the walls so that players cannot hide behind them.
  • Made improvements to the map.
    • Tiles are now filled in with a transparent background to make it easier to tell the difference between actual rooms and empty space.
    • Changed room colors to better reflect the danger level of each room type (Class rooms are green, faculty rooms are red, etc.).
    • Added icons to the background of rooms when viewing the advanced map to make it more obvious what kind of room it is and improve color blindness accessibility.
    • Doors now have proper icons on the map which show if a door is locked or not.
    • Windows also have a proper indicator on the map.
    • Map icons for things like items and notebooks now stay right-side-up no matter how the map is oriented.
    • Elevators are now indicated on the map with an up arrow. This turns green when open and becomes a red "X" when the elevator is locked.
  • The library no longer generates as a maze, and is instead a premade room like the others.
  • The backer credits have been completely reworked with several improvements.
    • Names are now sorted alphabetically to make it easier to find a specific name.
    • Backer credits are now displayed with a pixelized font like text in the rest of the game.
    • The way credits are loaded has been changed to make it easier to add or change names.
  • Math Machine balloons now drop down a little when they can be interacted. This makes it easier to tell which balloon you will grab when interacting with one.
  • Adjusted the way items are placed in levels.
  • The Energy Flavored Zesty Bar now makes a crunching sound when used.
  • Changed the BSODA sprite to something more in-line with the game's current graphical standard and that can be seen through so it doesn't block the player's view.
    • The BSODA sprite is also randomly rotated when spawned.
  • BSODA can now push the player, but only if they re-enter the trigger after exiting it.
  • The alarm clock is now an entity and can be moved by outside forces.
  • Playtime's music and the party music are now categorized as sound effects and will not have their volume adjusted by the music volume setting.
  • Several NPCs now unlock locked doors when they pass through them. These NPCs include Baldi, the Principal and Mrs. Pomp.
  • The tape player/pay phone now causes all NPCs to flee from it (Unless they are aggroed) alongside its old behavior of preventing sounds from being heard while it's playing.
  • The flood waters during the flood event can now be seen from underneath. When the camera is underneath, there is also an underwater visual effect that limits how far you can see. You cannot be seen by NPCs while under water.
  • Increased the launch and initial pull speeds of the grappling hook.
  • Improved the appearance of the mystery room.
  • Improved the placement of buttons in levels.
  • The merry-go-round can now be walked on and it will spin any entities that are on it.
  • Increased the speed of the roto-hall, and made it spin in the direction that will get it to the next valid position the fastest.
  • Conveyor belts now only generate on Hide & Seek level 3.
  • Safety Scissors now work against multiple things at once. Using them while playing jump rope and covered in gum will clear both for example.
  • Misc. game balance changes.

Technical

  • Created a new entities system used by nearly all moving objects with collision. Things like the player, NPCs, BSODA spray, math machine balloons, etc. now move via one unified system. This means interactions with and between entities are much more consistent and it opens more possibilities for emergent gameplay. It also means status effects, such as being squished, can easily be created such that all entities are able to have them.
    • All entities except for the player use a custom made collision detection system when calculating movement. The player uses Unity's built-in CharacterController component as it always has.
    • One new feature of this system is the ability to apply a force with frame rate independent acceleration to entities. This is useful for applying quick bursts of  movement to entities, such as with the Bully's new pushing mechanic.
    • Physics updates are now called manually in order to work with the new entity system.
  • Converted all NPCs and NPC navigation to a new state machine system.
    • The NPC state machine allows me to more easily program and bug fix complex behaviors.
    • The navigation state machine allows for more dynamic NPC behavior when conditions that alter how an NPC should behave are present (E.g. the party at the principal's office event).
  • Created a custom occlusion culling system that prevents most areas that cannot be seen at any given moment and the objects in those areas from being rendered. This significantly improves performance and ensures it remains consistent, especially on larger levels.
    • This system is capable of re-calculating occlusion data during gameplay, so changes to the level layout (E.g. using a portal poster) will be respected by the culling system.
  • Completely reworked the way level layout data is managed. "Cells" are now used to hold navigation and other important data, "tiles" are now just the 3D models the levels are made of. Previously cell data was tied to the tile objects. These improvements paved the way for faster level generation and loading as well as properly enabling the level layout to be changed during gameplay.
  • Improvements to the way cell navigation data is checked when pathfinding.
  • NPCs can now navigate through out of bounds areas if they somehow end up in them. They will try to navigate back in bounds if this happens.
  • Changes made to level generator allowing for the new pre-made room system to work.
  • Level loading is no longer based on the frame rate. Now, the level loader/generator will do as much as it can in a single frame before yielding to let the next fame begin. This allows levels to load much more quickly while still keeping the game responsive.
  • Created a new room function system which allows me to easily add and change functionality for specific rooms (For example, to trigger the silence effect when entering the library or ambient noise when in certain rooms). This new system is based on player position, rather than colliding with a trigger as it worked previously.
    • This new system also opens the possibility to affect NPCs and/or entities as well as players.
  • Improvements to door placement.
  • Improvements to room distribution (E.g. a level is less likely to place all class rooms on one side of a level).
  • Improvements to the system which prevents objects from generating on top of other objects.
  • The level generator will now reuse matching room texture atlases instead of generating several identical room texture atlases. This improves load times and reduces memory usage.
  • Other misc. level generation improvements.
  • Implemented a Dijkstra map manager that is used for things like sound propagation, getting NPCs to flee locations, level generation, etc.


Bug Fixes

Note: Due to how long it's been since the last public update, I may accidentally list bug fixes for bugs that were introduced and then fixed internally between 0.3.8 and 0.4. Similarly, there may be some bugs that were fixed as a side effect of the extensive changes I've made, but that are not listed here since I didn't note them as bug fixes in my Git history.

  • Disabled MacOS auto graphics API and added OpenGLCore as a supported graphics API. This will hopefully resolve an issue that caused graphics to not render on some older devices. If you notice any significant issues on MacOS with this update, please let me know as testing for this change has been minimal.
  • The game's resolution can no longer be set to a width below 480 and/or a height below 360. This fixes a bug where setting the resolution lower than that would make the menus unusable.
  • Fixed NPCs occasionally clipping through objects when navigating through open areas.
  • Fixed Steam Input not switching to the "Interface" action set when finishing a round of endless mode.
  • Fixed being able to get teleported into parts of rooms that cannot be escaped by assigning designated safe spawn locations to rooms.
  • Fixed whirlpools being able to spawn in unreachable areas.
  • Fixed the floodwaters running at half the frame rate when they were rising at the beginning of the flood event.
  • Fixed being able to endlessly scroll the credits past the beginning.
  • Made several improvements to NPC navigation to prevent them from turning around in certain situations when it makes no sense to do so (For example, sometimes NPCs chasing the player would see them enter a room, walk up to the door, and then immediately turn around instead of entering the room).
  • Fixed Gotta Sweep occasionally not returning to his closet when done sweeping.
  • Fixed a bug that caused Baldi to not move quite right when being slowed down or sped up by an outside force.
  • Fixed a divide by zero error that could occur in some scenarios with characters like Gotta Sweep. This issue may have been responsible for some strange game freezing bugs reported by some users. In doing so, I also improved the smoothness of the pushing effect.
  • Fixed some billboarded sprites updating their rotation with a one-frame delay.
  • Fixed a bug that caused doors to play opening and closing sounds twice at the exact same time.
    • Fun fact: At the time this was fixed, it was probably the oldest unfixed bug in the game!
  • Fixed issues with Arts and Crafters' attack animation.
  • Fixed lockdown doors z-fighting with the skybox.
  • Fixed Baldi being able to collide with the player through walls.
  • Made improvements to level generation that should better prevent areas the player can get permanently trapped in from generating.
  • The roto-hall will spin entities inside of it while it rotates. This prevents being able to clip inside of it, getting stuck.
  • Fixed the controller vibrating when inside the library.
  • Fixed a bug that made it hard if not impossible to use safety scissors on First Prize while being pushed. The safety scissors will now cut his wires while being pushed, even if not facing him.
  • Fixed multi-angle sprites, such as those used by First Prize and The Test, rotating the wrong way when upside down.

Pre-release Changes

These are changes made between the pre-release and public release of 0.4.

  • Decreased the starting pitch of Dr. Reflex saying "THIIIIINK FAST!"
  • Decreased the volume of Arts and Crafters' sounds.

Pre-release Bug Fixes

These are bugs that were present in the pre-release version of 0.4 that I have fixed for the public release.

  • Fixed Dr. Reflex continuing to say "THIIIIIIIII..." even after losing the player.
  • Fixed apples not getting knocked down from trees with the grappling hook.
  • Fixed the Bully not being seeable by the Principal.
  • Fixed CoreGameManager audio, like Baldi's "all notebooks" notification, continuing to play when loading a level.
  • Fixed the elevator screen being displayed when visiting what's left of the farm.
  • Fixed portal posters not allowing sound through.
  • Fixed NPCs not re-routing when placing a portal poster that opens a shorter path to their destination.
  • Fixed Dr. Reflex entering an endless "THIIIIIIIII..." loop if the party event started while he was chasing the player.
  • Fixed conveyor belts, Cloudy Copter's wind, whirlpools and Gotta Sweep only moving the player and NPCs. They will now affect all entities accordingly.
  • Fixed Arts and Crafters' audio frequently cutting out during his attack animation.
  • Fixed Mrs. Pomp stomping rapidly for several frames when she spawns.
  • Fixed non-grounded entities not flipping upside down properly when squished.
  • Fixed plants generating inside lockers.
  • Fixed the counter and examination table in Dr. Reflex's clinic not carving the NavMesh, allowing NPCs to walk through them.
  • Fixed Beans wandering weirdly in open areas when switching between walking and running.

Removals

  • Removed the farm field trip until further notice as it is currently broken. I have plans to revamp field trips one more time, so instead of fixing it only to replace it later, I've decided to just disable it for now.
  • Removed several unused and obsolete scripts/assets.

Known Issues

  • NPCs are able to go through walls in rare cases, seemingly between adjacent open areas. I'm not entirely under what conditions this is possible, but I've seen it happen a couple of times now.
  • Balloons occasionally clip outside of rooms.
  • NPCs will often not try to flip themselves when they are oriented opposite the player during Gravity Chaos. This can lead to strange NPC behavior.
  • NPCs will occasionally appear to turn-around when entering open areas where a hallway bridges between two different parts of that open area.
  • Lockdown doors near spawn can be seen snapping into the open position at game start.
  • Principal Office door can rarely get stuck open.
  • Dr. Reflex will not always be facing the entity he is hitting with his hammer.
  • Dr. Reflex can squish NPCs even when they do not match his orientation during Gravity Chaos.
  • Dr. Reflex will always know where the player is the moment he becomes angry, even if he cannot see them.
  • Captions are more likely to stack on top of each other and become hard to read due to the new sound propagation system. I plan on finding a way to prevent captions from rendering on top of each other.
  • There is no indication for when entities are about to become unsquished (Not a bug, just an issue I intend to address soon).
  • It is possible to see out of bounds while being rotated by a gravity flipper while squished.
  • On some screen resolutions, it is possible to see a gap through some elements on the elevator screen.
  • Some NPCs are very annoying when they are squished.
  • Notebook icons are not positioned correctly on the map in pre-made levels.
  • Wind and conveyor belt audio is not propagated.
  • NPCs will occasionally end up wandering into an area they should be fleeing from.
  • Dr. Reflex can sometimes get his hammer early while being pushed around by outside forces.
  • NPCs will occasionally get stuck on the marry-go-round.

Whew, that's a big list! As always, if you encounter any bugs that I don't know about please do so on the pinned bug report thread here.

So what's next? Well as I get around to fixing bugs I'll push out a few minor updates. If there are any super game breaking bugs, I'll fix those ASAP, but otherwise you can expect bug fixes to be released about a week apart as needed. Meanwhile, I'll also be busy working on new content for 0.5, which will release around the end of April/beginning of May. I hope you all will look forward to that!

Files

BaldisBasicsPlus_0.4_Windows.zip 69 MB
Feb 24, 2024
BaldisBasicsPlus_0.4_Linux.zip 84 MB
Feb 24, 2024
BaldisBasicsPlus_0.4_OSX.zip 76 MB
Feb 24, 2024

Get Baldi's Basics Plus

Buy Now$9.99 USD or more