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

User:Tilderain/Transistor

From The Cutting Room Floor
Jump to navigation Jump to search
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.

Title Screen

Bastion

Developer: Supergiant Games
Publisher: Warner Bros. Interactive Entertainment
Platforms: Windows, PlayStation 4, IOS, Mac OS X, Linux
Released internationally: May 20, 2014


AnimationsIcon.png This game has unused animations.
AreasIcon.png This game has unused areas.
CodeIcon.png This game has unused code.
DevTextIcon.png This game has hidden development-related text.
EnemyIcon.png This game has unused enemies.
GraphicsIcon.png This game has unused graphics.
MovieIcon.png This game has unused cinematics.
SoundIcon.png This game has unused sounds.
TextIcon.png This game has unused text.
DebugIcon.png This game has debugging material.
LevelSelectIcon.png This game has a hidden level select.
Carts.png This game has revisional differences.


Cactus 2.0!
This article has just been started and needs the article basics added.
Help us out and add them.

When hitting "End Process" just isn't enough.

Hmmm...
To do:
everything
  • A massive amount of cut voicelines.
  • Unused subtitles to go with them, as well as some for audio that doesn't exist.
  • Debug mode code and scripts.
  • Things in the code
  • More graphics more problems
  • Hidden objects in the levels.
  • Level 4 graphics exist for most of the Process, but they're the same as the level 1 graphics
  • Sounds and/or references to those.
  • Internal names, and fun comments?

Subpages

Undertale toby dog.gif
Unused Voice Lines
Unfortunately, there are no insects to be found in this mode.

Debug Mode

Hmmm...
To do:
  • Document hotkeys.
  • There's probably a cleaner way to activate this.
  • Figure out what half of these do

Open Engine.dll (x86 or x64) in the game directory with a hex editor, and change this array of bytes 7E D1 1E 00 04 2A to 17 00 00 00 00 2A.


Keys Effect
F1 Opens level select.
Ctrl + D Increments Debug.s_messageTypeDisplayIndex and does Debug.s_messageTypeDisplayIndex = Functions.wrap(Debug.s_messageTypeDisplayIndex, 0, Enum.GetValues(typeof(Debug.DebugText)).Length)
Ctrl + Shift + D Decrements Debug.s_messageTypeDisplayIndex and does Debug.s_messageTypeDisplayIndex = Functions.wrap(Debug.s_messageTypeDisplayIndex, 0, Enum.GetValues(typeof(Debug.DebugText)).Length)
Ctrl + A Toggles music volume.
Ctrl + Shift + A Sets master volume to music volume.
Ctrl + M Adds 20 of "supply" (mem slots).
Ctrl + Shift + W Debug.m_drawWeaponOrganization = !Debug.m_drawWeaponOrganization; and ConfigOptions.DrawWeaponCenter = !ConfigOptions.DrawWeaponCenter; Doesn't appear to have an effect.
Ctrl + G Toggles godmode. Extremely fast speed, replenishes your health, invulnerability, and 100x damage multiplier.
Ctrl + Shift + PgDn Sets health to 0.
Ctrl + Shift + S Damages you by 10% of your max health.
Ctrl + Shift + K Toggles guaranteed crits, but doesn't appear to have an effect. Ends a fight, showing the process terminated box, and focuses the camera on the player, disabling any camera locks.
Ctrl + Shift + E Toggles showing collision bounds.
Ctrl + O Toggles drawing player pathfinding, but doesn't have an effect.
Alt + Shift + Back (xbox controller?) Resets your Steam stats?
Ctrl + Numpad9 Increases brightness.
Ctrl + Numpad7 Decreases brightness.
Ctrl + Plus Increases blur distance.
Ctrl + Minus Decreases blur distance.
Ctrl + PgUp Increases blur strength.
Ctrl + PgDn Decreases blur strength.
Ctrl + Shift + Scrollwheel Does some funky or freezes the game. My scrollwheel is broken right now so I can't check.
 if (input.isCtrlDown() && input.isShiftDown())
			{
				int scrollWheelChange = input.getScrollWheelChange();
				if (scrollWheelChange < 0)
				{
					Game.Instance.TimeScale /= 1.15f;
				}
				else if (scrollWheelChange > 0)
				{
					Game.Instance.TimeScale *= 1.15f;
				}
				else if (input.wasMouseButtonPressed(Controls.MouseButtons.Middle))
				{
					Game.Instance.TimeScale = 1f;
				}
				if (scrollWheelChange != 0 || input.wasMouseButtonPressed(Controls.MouseButtons.Middle))
				{
					float arg_58E_0 = Game.Instance.TimeScale;
				}
Ctrl + Scrollwheel Zooms in or out the camera.
Ctrl + MiddleMouseButton Resets the camera.
Ctrl + U Randomizes your functions, from a preset list. ?
Ctrl + Shift + Y Destroy all nearby enemies.
F2 Open Functions screen.
F3 Open the CardBuyScreen (level up screen). Crashes once you click confirm since there's nothing to confirm.
F5 Opens the limiters menu.
F6 Opens the function slot upgrade menu, where you can upgrade your function upgrade slots.
F7 Opens the Recursion (new game plus) menu or ending screen.
F11 Toggles Camera.TrackPlayers
F12 Toggles UI instantly.
Ctrl + Shift + H Increments supply (mem slots) by 1.
Ctrl + Up Upgrades all process by one level.
Ctrl + Down Does the opposite of the above.
Ctrl + Shift + N Warps you to either the next map, or a preset spot in the current one, usually near the exit.
Shift + Right Does the above, but more ????
 	if VerifyProgressDataAccurate then
		VerifyProgressDataAccurate()
	end
	MapSkipCheat()
	wait(0.5)

	if numCardChoicesMade ~= nil then
		numChoices = currentLevel - numCardChoicesMade - 1
	end

	if numChoices > 0 then
		CardBuySpam(numChoices)
	end
}
Shift + Up Levels you up by 1 also this is commented out
 	if currentLevel == 4 then
		--FireTrigger({ Name = "Camerata1Dead" })
	elseif currentLevel == 11 then
	--	FireTrigger({ Name = "Camerata2and3Dead" })
	elseif currentLevel == 15 then
	--	FireTrigger({ Name = "Camerata4Dead" })
	end
Ctrl + PgUp (in sandbox) Sends you to the next sandbox scenario in the sandbox map. There are some unused ones, but they crash the game on entry. needs further investigation
Ctrl + Pgdn (in sandbox) Does the same as above, but in reverse.
Ctrl + Shift + L Adds 99 to your current level, and gives you none of the benefits that come with it.
Shift + U Toggles UI, with a fadeout.
Ctrl + Shift + V Saves the game.
Ctrl + Shift + O Loads the game.
Ctrl + Shift + I Teleports you based on your username to a different part of the map you're in based on the cheat maker placed by the developer. Does other things depending on your map.
Ctrl + X Destroys the player, taking away one of your functions. (kill urself)
Ctrl + Comma Unlock all upgrade slots.
Ctrl + Shift + Period RecordCardUsage({ })
Ctrl + Alt + C Toggles performance capturing.
Ctrl + Alt + B Reveals all function information, for the inspect function function.
Ctrl + Comma Unlock all upgrade slots.
Ctrl + Shift + Period RecordCardUsage({ })
Ctrl + Alt + C Toggles performance capturing.
Ctrl + Alt + B Reveals all function information, for the inspect function function.
Shift + Tilde Enable New Game Plus.
Tilde Does some weird stuff
Ctrl + Alt + C Toggles performance capturing.
Ctrl + Alt + B Reveals all function information, for the inspect function function.

registerdebugkey

more

Keys Effect
Alt + D Toggles visibility of stats, or tries to divide by zero and crashes the game.
Ctrl + B Goes through bloom presets.
Ctrl + Shift + B Goes through bloom presets the other way.
all the number keys and plus minus to numpad 01
Ctrl + Shift + Tilde Toggles damage.
Ctrl + Shift + Comma Reloads all effects and crashes the game.
Shift + PgUp Debug.dumpTextures();
Ctrl + Shift + Question Mark Debug.garbageCollect(false);
Shift + G Debug.garbageCollect(true);
Ctrl + P Enables performance mode.
				ConfigOptions.PerformanceMode = !ConfigOptions.PerformanceMode;
				ConfigOptions.DrawFlyers = false;
				ConfigOptions.DrawHealthFX = false;
				ConfigOptions.DrawLight = false;
				ConfigOptions.DrawCamera = false;
				ConfigOptions.DrawBackground = false;
				ConfigOptions.DrawBloom = false;
				ConfigOptions.ShowFPS = false;
				App.getCounter().Visible = ConfigOptions.ShowFPS; 
Ctrl + F Shows FPS and memory usage for each module.
Ctrl + Z ConfigOptions.ZTesting = !ConfigOptions.ZTesting;
Ctrl + I ConfigOptions.DrawIds = !ConfigOptions.DrawIds;
Ctrl + Shift + Semicolon ConfigOptions.DrawIds = !ConfigOptions.DrawIds;
Ctrl + Shift + N ConfigOptions.DebugNetworkDraw = !ConfigOptions.DebugNetworkDraw; but is overridden
Ctrl + Shift + PgUp ConfigOptions.VotingStatsForcedWinner++;

if (ConfigOptions.VotingStatsForcedWinner > 4) { ConfigOptions.VotingStatsForcedWinner = -1; }

Ctrl + Alt + V ConfigOptions.DebugDrawAnims = !ConfigOptions.DebugDrawAnims;
Ctrl + T Toggles trailer mode.
					GameplayScreen.getInGameUI().UserVisible = false;
					ConfigOptions.DebugMessages = false;
					ConfigOptions.DebugDraw = true;
					AnimationManager.HideAllTextAnimations();
					ConfigOptions.ShowUIAnimations = false;
					ConfigOptions.UseOcclusion = false;
					ConfigOptions.DropLoot = false;
					ConfigOptions.Invincibility = true;
					PlayerManager.getFirstPlayerUnit().Life.HealFraction(1f);
					ProgressHelper.depositMoney(872);
					ConfigOptions.EasyDebugKeys = true;
Ctrl + Shift + T Takes a screenshot of the game next frame and saves it as "Screenshot_" + timestamp + .png in the game folder. Works only once (?)
P Toggles pause.
[ Pauses the game when the next script action is run.
] Frame-by-frame advance when the game is paused, until the script action ends.
Ctrl + L Hotload
Ctrl + T Reloads UI.
Ctrl + Shift + P Shows performance information (explain)
			Debug.registerDebugKey(Debug.KeyModifier.Shift, Keys.Multiply, new Debug.DebugKeyCallback(Debug.doException));
			Debug.registerDebugKey(Debug.KeyModifier.None, Keys.Up, new Debug.DebugKeyCallback(Debug.ScrollUp));
			Debug.registerDebugKey(Debug.KeyModifier.None, Keys.Down, new Debug.DebugKeyCallback(Debug.ScrollDown));
			Debug.registerDebugKey(Debug.KeyModifier.None, Keys.PageUp, new Debug.DebugKeyCallback(Debug.ScrollPageUp));
			Debug.registerDebugKey(Debug.KeyModifier.None, Keys.PageDown, new Debug.DebugKeyCallback(Debug.ScrollPageDown));
			Debug.registerDebugKey(Debug.KeyModifier.None, Keys.Home, new Debug.DebugKeyCallback(Debug.ScrollToStart));
			Debug.registerDebugKey(Debug.KeyModifier.None, Keys.End, new Debug.DebugKeyCallback(Debug.ScrollToEnd));
			Debug.registerDebugKey(Debug.KeyModifier.Alt, Keys.S, delegate
Something with debug messages?
Alt + S Load/Save Screen?
Ctrl + Alt + P Shows performance timers (explain)
Ctrl + Alt + R Resets performance timers
Ctrl + End Resets the map and removes all of your functions
Ctrl + Home Clears progress?

Boat01

F Loads the next map (Doors01)

Farewell01

T K Sets some cheating flag, and warps you to the final area Y Starts the scrolling up ending sequence L Displays the orange transistor logo where the player is J Teleports you to the final ending picture Z Saves the game and opens the recursion screen C Displays the credits (text only)

Flashback01

Ctrl+Shift+I Skips the intro, warps you outside the map Ctrl+Shift+J Skips the intro Ctrl+Shift+C Skips the intro, warps past the stabbed man

Goldwalk02

The map doesn't exist so i can't really say anything

// *********
// * SETUP *
// *********


Import Color.txt

// **********
// * EVENTS *
// **********

OnLoad
{
	wait(1.0)
	WeaponsOn()
}


// *********
// * DEBUG *
// *********

OnKeyPressed None C
{
	SetScene(11111)
}

OnKeyPressed Shift C
{
	SetScene(22222)
}

OnKeyPressed ControlShift C
{
	RestorePreviousScene()
}

OnKeyPressed Shift A
{
	TransitionScene(77777)
}

OnKeyPressed Shift B
{
	TransitionScene(55555)
}

OnUsed 40089
{
	TransitionScene(40089)
}

Monster01

Ctrl+Shift+J warps you to the elevator with the stabbing spine

ReturnToWelcome01

G Transitions to the poster area Ctrl+Shift+R Builds a bridge J Warps to the bridge overlook

Rooftops

Shift+J AddToGroup({ Name = "JumpPads2", Ids = GetIds({ Name = "JumpPads" }) })

Sandbox01

Ctrl+Shift+G Disables sandbox doors and displays access denied on all of them

C Removes the sun and associated effects

SandboxEndless02

Ctrl+N Sends in the next wave

SandboxShowdown01

Ctrl+Shift+Y Takes a life off the red clone

Showdown01

Ctrl+Shift+R Disables Royce. If in the intro, skips the intro only.

Ctrl+Shift+W Starts the fight instantly.

M Sets Royce on his last life.

Welcome01

Ctrl+Shift+I Skips the intro, warps to the poster area and plays music Ctrl+Shift+J Skips the intro, warps to the poster area Ctrl+Shift+C Skips the intro, warps to the telescope

Esc

OnKeyPressed None Escape ; RequiredFlag = PlayerLifeLost
{
	SetFlagFalse({ Name = "PlayerLifeLost" })
	SetFlagTrue({ Name = "PlayerRecovering" })
	playerLifeLost = false

	AdjustFullscreenBloom({ Name = defaultBloom, Duration = 1.0, Delay = 0 })
}


Shift+M Starts the turn tutorial Shift+F Skips the tutorial


StressAudio

TerminalScripts

Ctrl+Shift+T Reloads and checks terminal usability.

In Combat

I Debug prints a bunch of stuff.

		scriptCounterXP = currentXP
		scriptCounterLevel = currentLevel
		scriptSupply = GetCounterValue({ Set = "GENERAL", Name = "SUPPLY" })
		--scriptCardBuyPoints =

		debugXPMessage = "Script XP: "..currentXP.." | ".."Counter XP: "..scriptCounterXP
		debugLevelMessage = "Script Level: "..currentLevel.." | ".."Counter Level: "..scriptCounterLevel
		debugSupplyMessage = "Supply: "..scriptSupply
		fullDebugMessage = debugXPMessage.." "..debugLevelMessage.." "..debugSupplyMessage

Ctrl + Shift + Z Adds 100 to granted exp. Can break the level counter box.

Shift + E Debug prints discarded cards ???? There's a bunch in here about the scrapped card playing system, but probably not enough to get it to work

Limiters Screen

Ctrl+U Unlocks all limiters.

Level Select

Command-Line Options

Easy Debug Keys

if (ConfigOptions.EasyDebugKeys)
			{
				if (input.wasButtonPressed(Buttons.RightShoulder))
				{
					World.togglePause();
				}
				Debug.s_framesSinceLastStep++;
				if (input.wasButtonPressed(Buttons.LeftShoulder) || (input.isButtonDown(Buttons.LeftShoulder) && Debug.s_framesSinceLastStep > 4))
				{
					World.stepFrame();
					Debug.s_framesSinceLastStep = 0;
				}
				if (input.wasButtonPressed(Buttons.LeftStick))
				{
					Camera.toggleTrackPlayers();
				}
				if (input.wasButtonPressed(Buttons.RightStick))
				{
					App.TakeScreenshot();
				}
				if (input.isButtonDown(Buttons.DPadLeft))
				{
					Camera.move(new Vector2(-1f, 0f));
					return;
				}
				if (input.isButtonDown(Buttons.DPadRight))
				{
					Camera.move(new Vector2(1f, 0f));
					return;
				}
				if (input.isButtonDown(Buttons.DPadUp))
				{
					Camera.move(new Vector2(0f, -1f));
					return;
				}
				if (input.isButtonDown(Buttons.DPadDown))
				{
					Camera.move(new Vector2(0f, 1f));
				}
			}

Unused Graphics

Hmmm...
To do:
* Lotsa in the Auden Build Packages directory are unused.

Dev_Textures_00

Dev_Textures_01

TestButton

Transistor-TestButton.png

GUI_Textures_02

Title_Muse_01

Transistor-Title Muse 01.png

background_box_02

GUI_Textures_07

inspect_portrait_15

Transistor-inspect portrait 15.png

transistor_panel_goldRing

Transistor-goldring.png

GUI_Textures_09

GUI_Textures_10

GUI_Textures_15

GUI_Textures_16

power_slam_02

Transistor-slam.png

GUI_Textures_19

power_snipe_02

Transistor-snipe.png

muse_approve & muse_disapprove

Transistor-muse approve.png Transistor-muse disapprove.png

Launch_Textures_00

load_bar

Transistor-load bar.png

Lighting_Textures_00

Transistor-Lighting Textures00.png

GUI/HUD

GUI/Powers

Transistor-meta icon 01.png Transistor-passive attack 01.png Transistor-passive defense 01.png Transistor-passive generic 01.png Transistor-passive icon 01.png Transistor-passive speed 01.png Transistor-power aoe 01.png Transistor-power debuff 01.png Transistor-power evolve 01.png Transistor-power icon 01.png Transistor-power melee 01.png Transistor-power movement 01.png Transistor-power range 01.png Transistor-power selfBuff 01.png Transistor-power summon 01.png Transistor-power targeted 01.png Transistor-power unique 01.png

SandboxCycle_world_Textures02

Singer_01

Transistor-SandboxCycle world Textures02.png

Uncategorized

Transistor-deck 01.png

Bastion Leftovers

Unused Videos/Animations

Hmmm...
To do:
* Video players are a big big and clunky, replace them with something else?
  • Videos have transparency, upload transparent gifs?
  • The last bit of MuseFinalAct is doesn't play ingame.

Unused Text

Used text will be indicated by italics.

HelpText.en.xml

Terminal Text Content / Terminals

<Text Id="MonsterAttackStory_ReplyAccept1" DisplayName="> Hey. It's me. It's me. Are you still there? Answer me."/>

<Text Id="MonsterAttackStory_ReplyAccept2" DisplayName="> Hey. It's me. It's me. Look we're going to get out of this mess you and me we like w"/>

<Text Id="MonsterAttackStory_ReplyAccept3" DisplayName="> Look we're going to get ourselves out of this OK?"/>

<Text Id="MonsterAttackStory_ReplyAccept4" DisplayName="> Look we're going to get out of this, are you picking this up still?"/>

<Text Id="MonsterAttackStory_ReplyAccept5" DisplayName="> Look I'm sorry but I don't I think we don't have much time because"/>

<Text Id="MonsterAttackStory_ReplyAccept6" DisplayName="> Hold on you just try to hold on all right?"/>

<Text Id="MonsterAttackStory_ReplyAccept7" DisplayName="> Hold on, you have to hold on, I'm going to..................."/>

<Text Id="MonsterAttackStory_ReplyAccept8" DisplayName="> I'm going to find the thing that's doing this and I'm going to break its heart."/>

Hand Screen & HandScreenSlotDialog

<Text Id="FaceDownCard" DisplayName=""
        Description="\Color Yellow Unread Address \n \n Reveal this Address to discover what it is and what it can do. "/>

<Text Id="FaceDownCard_NoDraws" DisplayName=""
        Description="\Color Red Unavailable Address \n \n Use available Addresses. A maximum of three Addresses may be revealed at a time."/>

<Text Id="DrawPreqreqDescription" DisplayName="Cells Required:"/>
	
<Text Id="PlayerUpgradeType" DisplayName="Background Process"
		Description="Spend Cells to Unlock"/>

<Text Id="Upgrade_Capacity" DisplayName="Plug-in"
		Description="Place {A1} to Install"/>

<Text Id="Draw" DisplayName="Permission"
		Description="Double-click to Apply"/>

Welcome

<Text Id="Welcome01_Text12" DisplayName="> Please Return Cells"/>
<Text Id="Welcome01_Text28" DisplayName="> Why"/>
<Text Id="Welcome01_Text51" DisplayName="> Use Cells to Power Up"/>


Flashback01 Story Text

<Text Id="Story_00" DisplayName="Last night"/>
<Text Id="Story_01" DisplayName=""/>
<Text Id="Story_02" DisplayName="Red was a star"/>
<Text Id="Story_03" DisplayName="Then"/>
<Text Id="Story_04" DisplayName="Four assassins confronted her"/>
<Text Id="Story_05" DisplayName="But she was not alone"/>
<Text Id="Story_06" DisplayName="An extraordinary weapon slipped free in the commotion"/>
<Text Id="Story_07" DisplayName="It transported her across the city in an instant"/>

Long Menu Strings (Old)

<Text Id="ReturnToMainMenu" DisplayName="Progress from the beginning of this area will be lost. \n \n Return to the Main Menu?"/>
<Text Id="StartNewGame" DisplayName="Start from the beginning? \n \n Existing progress will be lost."/>
<Text Id="EnterFinalMapSequence" DisplayName="Once you enter this area, there is no turning back. Are you ready?"/>
	<!-- Cycle01 / Demo End -->
	<Text Id="Info_HowToAccel" DisplayName="{A1} to Accelerate"/>
	<Text Id="Info_HowToAccel_Mouse" DisplayName="{M} to Accelerate"/>
	<Text Id="Info_HowToWheelie" DisplayName="{WL} to Wheelie"/>
	<Text Id="Cycle01_ToBeContinued" DisplayName="To Be Continued"/>
	<Text Id="Cycle01_Reboot" DisplayName="Goodbye/Hello"/>
	<Text Id="Cycle01_Text01" DisplayName="> Release Date:"/>
	<Text Id="Cycle01_Text02" DisplayName="> 20-May-2014"/>
	<Text Id="Cycle01_Text03" DisplayName="> Probably"/>
	<Text Id="Cycle01_Text04" DisplayName="> Launch Platforms:"/>
	<Text Id="Cycle01_Text05" DisplayName="> PlayStation 4"/>
	<Text Id="Cycle01_Text06" DisplayName="> and PC"/>
	<Text Id="Cycle01_Text07" DisplayName="> Thank You For Your Input"/>
	<Text Id="Cycle01_Text08" DisplayName="> Until Next Time"/>
	<Text Id="Cycle01_Text09" DisplayName="> User Signed Off"/>
	<Text Id="Cycle01_Text10" DisplayName="> {A1} to Reboot"/>
	<Text Id="Cycle01_Text11" DisplayName="> Rebooting..."/>

PDB Location

c:\Jenkins\workspace\Auden PC Latest\Auden\GSGE\Game.Windows\obj\x64\Release\Transistor.pdb

Internal Names

Notable Developer Comments=

DebugScripts.txt

// Dedicated to responsible cheating in video games through the use of sustainable cheat markers and cheat keys

ArtistFxAnimations.xml

	<!-- Jen Auden Prototype -->
	<!-- DESCRIPTIONS:
	
	CircleA: Turquoise, single circle gets thinner as it expands
	CircleB: Green, multi-thin rings
	
	BurstSquareA: Square particles that get smaller
	BurstSquareB: Square particles that get larger
	
	-->

	<!-- ::::::::::::::::::::::::::::   LIGHTS!   :::::::::::::::::::::::::::::::::-->

more

Welcome01.scripts

// REACTIVE MOMENT

OnUsed 50173 ; RequiredFlag = CUT_FOR_THE_MILLIONTH_TIME

Unused Screens

LoadScreen.xml

DownloadScreen.xml

Unused Scripts

ScratchScripts.txt

Many different unused scripts all bunched together.

// In Progress / Archived / Useful // Maybe we'll come back to these ideas?

For example, a script with support for four different quest types.

// Support for multiple quest types and progression // POINTS, FETCH, POWER, GO

/Decks/

Unused Maps

PlayerAnims

Crashes the game when trying to access it.

Internal Name

The game and sometimes the files for the unknown man/Boxer are referred to as Auden, which means "old friend".

Crash Screen

todo picture A spooky screen shows up when you manage to crash the game. It displays the version number, and the function stack that crashed the game.