If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!
This article has a talk page!

Bugsnax

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Bugsnax

Developer: Young Horses
Publishers: Young Horses, Fangamer (Physical release)
Platforms: Windows, PlayStation 4, PlayStation 5, Xbox One, Nintendo Switch, Xbox Series X
Released internationally: November 12, 2020, April 28, 2022 (Switch, Xbox One/Series)


AreasIcon.png This game has unused areas.
GraphicsIcon.png This game has unused graphics.
ModelsIcon.png This game has unused models.
ItemsIcon.png This game has unused items.
DebugIcon.png This game has debugging material.


PrereleaseIcon.png This game has a prerelease article

This cactus is UNDER CONSTRUCTION
This article is a work in progress.
...Well, all the articles here are, in a way. But this one moreso, and the article may contain incomplete information and editor's notes.
Hmmm...
To do:
  • Dig through Isle of Bugsnax.
  • Document prototype levels found in the switch release.
  • Include more info about lures.
  • Look into the audio bank files for unused sounds and music.

Bugsnax is a game all about catching Bugsnax and feeding them to Grumpuses. Kero Kero Bonito made a song for it!

Sub-Page

Read about prerelease information and/or media for this game.
Prerelease Info

Unused Text

Unscannable Objects

  • These are unused because the Objects linked to them either don't exist anymore, or you just can't scan them in the first place!


Rock - "A chunk of rock just small enough to be picked up."
Toilet Paper - "A roll of disposable cloth used to clean the nether regions."
Locked Beach Door - "This locked door is blocking the way to the rest of the beach. There's no way to get it open right now..."
Fossil Trap - "Triffany will use this to smoosh Bugsnax."
Clumby - "But a big plate of lasagna will make her day!" spoken by Lizbert
Fossil Trap - "It's time for you to go extinct don'tchaknow!"
Honey - "So sweet yet so sticky!"
Sauce Slinger - "It slings sauces!" - spoken by Wambus
Snaxscope - "A clear picture of your surroundings!" - spoken by Clumby

Audio

The game has a few unused audio files left in its sound banks.

Alternate Wiggle Ghost Stories Dialogue

There is an alternate version of Wiggle's "Bugsnax Queen" song. Unlike in the final version, the dialogue is not sung.

Placeholder Snak Sounds

GameAudio_BugVoices.bank includes some temporary placeholder sounds, presumably used in development for bugs that had no lines yet.

Idle

Frozen

Graphics

Developer notes on leaves texture

Clipping leaves is the last thing anyone wants

Removing the alpha channel on "Content/FX/Leaves3.dds" reveals some notes left by the developers.

Beffica's Locket

Developer Megan Varde on Twitter revealed that there is a hidden image inside Beffica's locket, showing some happy fries. The texture is part of her hair file.

(Source: [1])

Lures

Textures have been found for the unused Lures, which were replaced by sauces.

(Source: WolfosB)

Tools

Hmmm...
To do:
A couple of these like the hose and honey feel like they're pretty much all there, need to figure out if there's any way at all they can still be used

The game has many different tools that didn't make the cut, many of which either have models left in the game or have their (non-functional) entities placed in a map.

Balloon - It's not clear what this would have done in the context of a tool. The model and textures are present but not much else.

Cannon - Has a model but doesn't seem to have any accompanying textures. The entity for is referenced in the "RealFakeLevel" test map but nothing spawns. No way at all to tell how it would have functioned.

Drone - Another tool that only seems to be left as non-functioning entity in the "RealFakeLevel" test map. It's possible that this tool was recycled into the drone used in the game's finale.

Hose - Irrlicht scene file is still present. It is derived from the slingshot's scene and seems like it could have acted as something of an upgrade to the slingshot. Doesn't seem to have a model.

Lures - Lures come in different flavours - Fruity, Meaty, Salt, Sugary and Super - they likely worked similar to sauce in attracting certain bugs but would have probably been physics objects instead of splatting on stuff like sauce does. Remnants of them remain in various places. Their models and textures are still present and some of the game's XML files still refer to them, but unfortunately no definition files or Irrlicht scenes seem to have survived, except for the base scene named "Lure_Base".

Snak Motel - Irrlicht scene file is still present. Derived from the SnapTrap and is made out of SnapTrap components. Not entirely clear how it would have worked differently to the SnapTrap but based on the scene file it may have been intended to work with lures.

Rock - Classified as a lure internally. You can pick it up but it isn't accessible in any way afterwards. The Irrlicht scene and definition files are still present but given the removal of the lures system it's not clear if there's still any way to re-add the ability to use it after picking it up.

Honey - A cut sauce. Model, definition file and icons are all still present, though unfortunately it isn't useable after being picked up. Its model still appears in various places in the game as a non-interactive environmental prop.

Maps

Test

The game has a map simply named "Test", likely used for various things over the course of development. On loading the map, you'll be given access to all tools. The Buggy Ball, Lunchpad, Snak Trap and Trip Shot can be found off to the left. Near them are two cubes, one blue and one orange. In the centre of the map is Beffica. A lone Strabby is trapped in a small box and off to the side you can find one of every sauce in the game barring super sauce.

Examination of the map file reveals that a Pinkle is present on the map, albeit disabled. If re-enabled, it will spawn on the right "wall" then wander in a small circle in the top left of the map.

Bugsnax-UnusedArea-Test.png

RealFakeLevel

This map is structurally similar to the "Test" map, though it only contains the Buggy Ball and a rock.

While it may not seem interesting, examination of the map's file reveals that it's intended to contain a whole host of tools that were cut from the game including a drone, a cannon and lures. The only remnant of this that still spawns is the rock, which is actually a lure. Unlike other grabbable objects in the game, picking up the rock doesn't allow you to hold it in your hands and throw it around, instead it seems to end up stored in your inventory and becomes unusable with no way to see or access it.

Bugsnax-UnusedArea-RealFakeLevel.png

ModelPreview

This map contains a ton of models, including various Bugsnax as well as some environmental props. The Snakgrappler spawns, but can't be collected or selected in the gadget wheel. The Snak Trap is also loaded but can't be seen except for its shadow. It doesn't show up in the gadget menu either. Even the Journal can't be opened in this map. The Bugsnax cycle through all their animations, and cannot be caught as they're just models rather than the actual entities.

Bugsnax-UnusedArea-ModelPreview.png

Navmeshes

The "NavMesh" folder contains some navmesh data for levels that don't have any other data in the files.

  • "StrawberryDemo" has a single unlabeled navmesh.
  • "PizzaDemo" has a navmesh labelled as "BombinoNavMesh", referring to the explosive bugsnax used to fight the Mothza Supreme boss.
  • "RamenDemo" has a navmesh labelled as "NavMeshNoLava".

While there's no way to view these navmeshes, their names suggest these were likely demo maps used to either test specific bug types or show them off somewhere.

Debug Mode

Hmmm...
To do:
See if this is in the console versions. Clean up section and properly document each option.

Press Left Shift + Right Shift + Pause Break at any time. A "Debug" selection will be added to the pause menu's settings, containing various options:

  • Level Select (also accessible by pressing F8)
  • Max Out Inventory
  • Transform All Grumpuses
  • Complete Pinned Quest
  • Unlock All Player Hut
  • Unlock All Hats
  • Clear Feeding History

Additionally, map-specific options will be shown at the bottom of the list if the current map has any. These are usually used to debug quests.

Bugsnax-Debug-Menu.png

Level Select opens a file browser that defaults to showing the Content/Levels directory. This directory contains all the scenes in the game (which includes both entity prefabs as well as the game's levels, due to how the Irrlicht engine works).

Bugsnax-Debug-LevelSelect.png

Max Out Inventory does exactly as it says, Filling the players inventory with 99x of every bugsnax in the game.

Bugsnax-Debug-MaxInv.png

Snaxburg Specific Debug Buttons

  • DebugFillDonations
  • DebugReturn
  • DebugCelebration
  • DebugStories
  • DebugIntruder
  • DebugMajorParty
  • DebugQuake
  • DebugAllBosses
  • DebugInterviewsAndClues
  • DebugDLCAvailable
  • DebugDLCComplete

Unused Strings

VariableDecay.xml

  • This content has been Removed.

The file "Content/Definitions/VariableDecay.xml" is used to define variables that should decrease over time. It contains commented out definitions for each character's "fullness", suggesting that at some point you'd have needed to actually keep characters fed. The final game has no such requirement.

The file also contains a variable related to lures, however as lures were removed from the game it likely no longer serves a purpose, which would make this entire file obsolete.

Dev Notes in Challenges.xml

<!-- 
		It's important this order stays the same for PlayStation trophies!! 
		If you change it after release you need to add new ID attributes to match original order and update.
--> 

PS4 Platinum in PC Version

  • PS4 Platinum exists in the PC Versions challenges file for.. some reason
<Achievement id="ACH_PLATINUM" 				name="$AchievementNamePlatinum" 		description="$AchievementTextPlatinum" 			display="30" />

Flavor Text

 
<DefinitionLiterals>

	<DefinitionLiteral file = "Strawberry.xml" name="FlavorText1" text="They're a little shy, but that's okay! They just need some space." />

</DefinitionLiterals>








Editor Leftovers

Hmmm...
To do:
Upload images

While the game does not currently ship with an editor, the game's files contain various assets for one. This includes some transparent solid colours used to indicate things such as triggers, some simple shape models and icons for things such as checkpoints, objectives and sound/light sources. Most of these assets, including a "browse workshop" button, seem to be leftovers from Octodad.

Octodad leftovers

Leftover Strings

PlayerStatus.xml

The file "Content/Config/PlayerStatus.xml" is a leftover from the developer's previous game, "Octodad: Dadliest Catch". It defines various character "suspicion" types that are normally used to penalise the player in that game. Needless to say, it serves no purpose in Bugsnax.

<Suspicion>
	<!-- amount (range: no suspicion 0.0 - 100.0 full suspicion). -->
	<!-- HitByDad: Octodad's limbs collides with character, speedThreshold is the velocity at contact to trigger. -->
	<CharacterSuspicion characterType="Family" suspicionType="HitByDad" amount="3.5" speedThreshold="40.0"/>
	<!-- HitByGrabbed: Octodad hits the character with something he's holding, speedThreshold is the velocity at contact to trigger. -->	
	<CharacterSuspicion characterType="Family" suspicionType="HitByGrabbed" amount="7.5" speedThreshold="20.0"/>
	<!-- HitByThrown: Octodad hits the character with something he threw, speedThreshold is the velocity at contact to trigger. -->
	<CharacterSuspicion characterType="Family" suspicionType="HitByThrown" amount="2.5" speedThreshold="1.0" />
	<!-- DadSeen: Octodad is seen by the character, speedThreshold is the number of seconds until suspicion triggers. -->
	<CharacterSuspicion characterType="Family" suspicionType="DadSeen" amount="0.0" speedThreshold="0.0" />
	
	<CharacterSuspicion characterType="Stranger" suspicionType="HitByDad" amount="7.0" speedThreshold="40.0"/>
	<CharacterSuspicion characterType="Stranger" suspicionType="HitByGrabbed" amount="15.0" speedThreshold="20.0"/>
	<CharacterSuspicion characterType="Stranger" suspicionType="HitByThrown" amount="5.0" speedThreshold="1.0" />
	<CharacterSuspicion characterType="Stranger" suspicionType="DadSeen" amount="0.0" speedThreshold="0.0" />

	<CharacterSuspicion characterType="Scientist" suspicionType="HitByDad" amount="25.0" speedThreshold="20.0"/>	
	<CharacterSuspicion characterType="Scientist" suspicionType="HitByGrabbed" amount="25.0" speedThreshold="1.0"/>
	<CharacterSuspicion characterType="Scientist" suspicionType="HitByThrown" amount="20.0" speedThreshold="1.0" />
	<CharacterSuspicion characterType="Scientist" suspicionType="DadSeen" amount="2.0" speedThreshold="1.0" repeatInterval="0.2" />
	
	<CharacterSuspicion characterType="Exposed" suspicionType="HitByDad" amount="25.0" speedThreshold="20.0"/>	
	<CharacterSuspicion characterType="Exposed" suspicionType="HitByGrabbed" amount="25.0" speedThreshold="1.0"/>
	<CharacterSuspicion characterType="Exposed" suspicionType="HitByThrown" amount="10.0" speedThreshold="1.0" />
	<CharacterSuspicion characterType="Exposed" suspicionType="DadSeen" amount="3.0" speedThreshold="1.0" repeatInterval="0.2"/>
	
	<CharacterSuspicion characterType="ExposedLogManiac" suspicionType="HitByDad" amount="25.0" speedThreshold="20.0"/>	
	<CharacterSuspicion characterType="ExposedLogManiac" suspicionType="HitByGrabbed" amount="25.0" speedThreshold="1.0"/>
	<CharacterSuspicion characterType="ExposedLogManiac" suspicionType="HitByThrown" amount="10.0" speedThreshold="1.0" />
	<CharacterSuspicion characterType="ExposedLogManiac" suspicionType="DadSeen" amount="3.0" speedThreshold="0.45" repeatInterval="0.1"/>
	
	<CharacterSuspicion characterType="Chef" suspicionType="HitByDad" amount="100.0" speedThreshold="1.0"/>	
	<CharacterSuspicion characterType="Chef" suspicionType="HitByGrabbed" amount="100.0" speedThreshold="1.0"/>
	<CharacterSuspicion characterType="Chef" suspicionType="HitByThrown" amount="10.0" speedThreshold="1.0" />
	<CharacterSuspicion characterType="Chef" suspicionType="DadSeen" amount="0.0" speedThreshold="1.0" repeatInterval="0.1"/>
	
	<CharacterSuspicion characterType="ZeroSuspicion" suspicionType="HitByDad" amount="0.0" speedThreshold="1.0"/>	
	<CharacterSuspicion characterType="ZeroSuspicion" suspicionType="HitByGrabbed" amount="0.0" speedThreshold="1.0"/>
	<CharacterSuspicion characterType="ZeroSuspicion" suspicionType="HitByThrown" amount="0.0" speedThreshold="1.0" />
	<CharacterSuspicion characterType="ZeroSuspicion" suspicionType="DadSeen" amount="0.0" speedThreshold="0.0" />
	
	<!-- <CharacterSuspicion characterType="ChefThrow" suspicionType="HitByDad" amount="100.0" speedThreshold="1.0"/> -->
	<!-- <CharacterSuspicion characterType="ChefThrow" suspicionType="HitByGrabbed" amount="100.0" speedThreshold="1.0"/> -->
	<!-- <CharacterSuspicion characterType="ChefThrow" suspicionType="HitByThrown" amount="100.0" speedThreshold="1.0" /> -->
	<!-- <CharacterSuspicion characterType="ChefThrow" suspicionType="DadSeen" amount="0" speedThreshold="1.0"/> -->
</Suspicion>

Collection.xml

  • The XML that contains Octodad's ties is still in the game files. for.. some reason
<TieCollection>

	<!-- Church Ties -->
	<Tie tieID="0" path="Content/Models/Ties/ClassicRedTie.dds" name="Wedding Bells - Classic Red" levelOwner="Content/Levels/Church_Main.irr" description="Octodad's favorite necktie!" />



</TieCollection>

PlayerMovement.xml

  • Strings for well, Values on how the player moved in Octodad.
<?xml version="1.0"?>
<Game>
	<float name="ArmSpeed" value="3.500000" />
	<float name="ArmSpeedMax" value="5.000000" />
	<float name="ArmSpeedMin" value="0.400000" />
	<float name="GrabSpeed" value="6.000000" />
	<float name="MaxTipRaiseAmount" value="1.000000" />
	<float name="MinTipRaiseAmount" value="-0.500000" />
	<float name="TipRaiseAmountMult" value="4.000000" />
	<float name="ThrowThreshold" value="0.050000" />
	<float name="ThrowForce" value="130.000000" />
	<float name="MaxThrowForce" value="180.000000" />
	<float name="ArmDamping" value="0.200000" />
	<float name="LegFallSpeed" value="3.850000" />
	<float name="LegDeceleration" value="0.200000" />
	<float name="LegExtensionFalloff" value="0.500000" />
	<float name="LegRaisingSpeed" value="31.000000" />
	<float name="LegHorizontalSpeed" value="10.500000" />
	<float name="LegSpeedMax" value="3.000000" />
	<float name="LegDamping" value="0.100000" />
	<float name="TorsoUpwardForce" value="5.900000" />
	<float name="MinTorsoUpwardForce" value="4.500000" />
	<float name="TorsoDamping" value="0.400000" />
	<float name="SuspicionInkJetDecrementAmount" value="2.000000" />
	<float name="InkJetImpulseUpwardForce" value="8000.000000" />
	<float name="InkJetImpulseForwardForce" value="4500.000000" />
	<float name="InkJetContinuedUpwardForce" value="2500.000000" />
	<float name="InkJetContinuedForwardForce" value="3000.000000" />
	<float name="SlipPhase1Time" value="0.050000" />
	<float name="SlipPhase1HorizontalSpeed" value="12605.000000" />
	<float name="SlipPhase2Time" value="0.050000" />
	<float name="SlipPhase2TripHazardSlowPercentage" value="1.750000" />
	<float name="SlipPhase2FeetSlowPercentage" value="0.250000" />
	<float name="SlipPhase3Time" value="0.050000" />
	<vector3d name="SlipPhase3TripHazardImpulseForce" value="0.000000, 625.000000, 0.000000" />
	<vector3d name="SlipPhase3FeetImpulseForce" value="0.000000, 1950.000000, 0.000000" />
	<vector3d name="SlipPhase3TorsoImpulseForce" value="0.000000, -350.000000, 0.000000" />
	<float name="SlipPhase4Time" value="0.350000" />
	<vector3d name="SlipPhase4TorsoForce" value="0.000000, 6650.000000, 0.000000" />
	<vector3d name="Gravity" value="0.000000, -55.000000, 0.000000" />
	<position name="AnimationRange" value="0, 200" />
</Game>

StringLiterals.xml

  • Inside of the English Localization files for Bugsnax, some Octodad Leftovers

<StringLiteral id="304" text="Number of Players" />
	
<StringLiteral id="305" text="Player" />
<StringLiteral id="306" text="Player 1" />
<StringLiteral id="307" text="Player 2" />
<StringLiteral id="308" text="Player 3" />
<StringLiteral id="309" text="Player 4" />