If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!
Beyond: Two Souls
Beyond: Two Souls |
---|
Developer: Quantic Dream This game has a hidden developer message. |
Oh wow. Sometimes, you have no idea how morbid the things in these pages can be. This page contains content that is not safe for life, whether it be you or anyone in proximity to you. Such as: Disturbing unused audio from the aftermath of an attempted rape. |
Oh dear, I do believe I have the vapors. This page contains content that is not safe for work or other locations with the potential for personal embarrassment. Such as: Nudity. Undetailed Barbie doll-esque nudity. But still nudity. |
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. |
Beyond: Two Souls is the story of a traumatized Elliot Page and his invisible "friend".
Contents
Unused Dialog
Audio
Like Other Girls
There are some disturbing voice clips in the game's files that are used in the November 2012 build, in which Jodie would be held onto the pool table like in the final build, looping the situation as the audio plays to provoke the player into quickly reacting. Should the player not act, the scene could also time out so Nathan and Cole can come in and prevent further things from happening, while Jodie lashes out at Aiden for not intervening. In the final game, Aiden always comes to the rescue and prevents the abuse from occurring. If the player doesn't leave the bar before the attempted abuse, a tiny bit of the removed abuse scene can be seen at the very end of the game, when Jodie is at the final part in Black Sun.
The Party
In the scene where Kirsten (or Brenda as she's called in the debug mode) opens her birthday gifts, she only opens Jen's gift before opening Jodie's, however, the full dialog shows her opening Emma's gift as well.
Text
Black Sun
After the Hauntings chapter, and the briefing at the DPA, when you sit down with Ryan, there's some unused dialog to one of the options. If there's audio for this is currently unknown.
When you select Regrets at the second option, you will hear this:
https://www.youtube.com/watch?v=MK7i_BQ4qFU&t=2m
The dialog for this part is as follows:
{S}{*1}I shouldn't have accepted that mission.{*2}I was only thinking about my freedom, and that was stupid.{*3}That was really, really stupid...
The last sentence is missing in the game, for the better though.
Development Text
Every single function name, constant name or value and just about any other dev related text is still readable from the precompiled Lua Dynamic Communicator (DynCom) chunks.
A Dynamic Communicator is a block of events, parameters and attributes for a certain script function in the game. These are formatted as precompiled Lua "function chunks". The values of these "settings" are stored either compressed (as a segs entry, which is a split up ZLIB archive), or uncompressed (as a QZIP entry, which is funny, because "ZIP" normally indicates a compressed file entry). The name of these blocks is COM_CONT, which is short for Dynamic Communicator Container. Aside from storing just values as Lua functions, modified versions of Dynamic Communicators are also used for storing the "actual" scene scripts, model data, animation data, (very small amounts of) audio, video (like the sport scenes and cartoons on the in-game TVs), textures, dialog sequence text, and more.
Here are the most notable strings (constants) in the precompiled Lua chunks found so far:
Source File | DynCom Block Offset | Lua (Relative) Function Chunk | String |
---|---|---|---|
BigFile_PS3.d01 | 0x6123C800 | #2 | [ARI] ForceSwitchJodie Done !! |
BigFile_PS3.d01 | 0x6123C800 | #3 | [ARI] ForceSwitchAiden > YOU SHOULD NOT BE HERE !!! /ari call |
BigFile_PS3.d01 | 0x6123C800 | #10 | [SCRIPT][ARI] fSequenceParameters> STEALTH CONFIG !!!! we go in cover |
BigFile_PS3.d03 | 0x19131800 | #20 | [SCRIPT] fDefineGameplay> GMResumeGameplay mais Jodie n'était pas en PAUSE donc je ne relance pas le VariableConnector
(but Jodie was not in PAUSE therefore I will not restart the VariableConnector) |
BigFile_PS3.d03 | 0x19131800 | #39 | [ARI] fDefineGameplay> Cas Impossible !! prevenir ARI !!
(Impossible Situation !! notify ARI !!) |
BigFile_PS3.d03 | 0x19131800 | #39 | [ARI] fDefineGameplay> On est revenu en Jodie, pas la peine de pauser le gameplay
(We returned to Jodie, no need to pause gameplay) |
BigFile_PS3.d03 | 0x19131800 | #43 | SetGenericMotionKitWithVariableConnector |
BigFile_PS3.d03 | 0x19131800 | #43 | [SCRIPT] fDefineGameplay> Try Start Variable Connector Controller |
BigFile_PS3.d03 | 0x7269800 | #2 | [ARI] fPlayAutomatedSequence> EnableCameras, Enable Interaction !!!! |
BigFile_PS3.d03 | 0x7269800 | #5 | [ARI] fPlayAutomatedSequence> Disable Interaction d'abord !!!!
(Disable Interaction first !!!!) |
BigFile_PS3.d03 | 0x7269800 | #6 | [ARI] fPlayAutomatedSequence> DisableCameras, Disable Interaction !!!! |
BigFile_PS3.d03 | 0x7269800 | #11 | [ARI] /////////////////////////////////////////////////////////////////////////////////
[ARI] YOU SHOULD NOT BE HERE> Events non ignorés lors d'un Kill (YOU SHOULD NOT BE HERE> Events not ignored during a Kill |
BigFile_PS3.d03 | 0x7269800 | #27 | [SCRIPT][ARI] ---- fPlayAutomatedSequence> OnResume> Nothing |
BigFile_PS3.d03 | 0x7269800 | #30 | [SCRIPT][ARI] ---- fPlayAutomatedSequence> OnFinish> UNREGISTER ignored, MPAR already Started |
BigFile_PS3.d03 | 0x7269800 | #45 | [SCRIPT][ARI] ---- fPlayAutomatedSequence> OnStop> ETRANGE ON NE DEVRAIT PAS ETRE ICI
(WEIRD SHOULD NOT BE HERE) |
Inside the (decrypted) main executable EBOOT.ELF are many development-related strings. Here are the most notable ones found so far:
Offset | String |
---|---|
0xD7C2B0 | Default type, no reaction |
0xD7C2D0 | The character is supposed to have a reaction, but no steps |
0xD7C310 | The character has a reaction, can make few steps but stays up |
0xD7C350 | The character has a reaction, can put his knees/hips/hands on grownd but finally stays up (note the typo) |
0xD7C3B0 | The character falls to the ground but will get up later |
0x00DBAF3C | iam-trigger |
0x00D86BDC | lazy lazy coder |
0x00D80384 | Out of memory while calling edgeZlibAddInflateQueueElement. The game will crash soon ! |
0x00DE8E98 | 0x3850b752-0x30e46f10:2013-10-09.Physics.SCEE_QuanticDream_BeyondTwoSouls_PS3 |
0x00DE8EE6 | 0x451a0608-0x4daede4a:2013-10-09.Animation.SCEE_QuanticDream_BeyondTwoSouls_PS3 |
0x00DE8F37 | 0x16a72dbc-0x1e13f5fe:2013-10-09.Cloth.SCEE_QuanticDream_BeyondTwoSouls_PS3 |
0x00D98FD8 | MenuDemp (On this position there's also the MenuProduction, MenuGame and MenuE3 strings, though this one is new) |
0x00D90249 | You have to use a CHARACTER instead! |
0x00D90271 | The object will not be visible! |
0x00D90331 | (perhaps an area catalog? don't forget to specify the root entity in this case) |
Various | HEAVY_RAIN_BrainCSPlaceholder, ChronicleBigFile_PS3, PS2_PAD_DEFAULT_NB_BUTTON, KEYBOARD_DEFAULT_NB_KEYS |
And there are many, many more strings. In fact, over 22000 strings!
To do: Upload the complete output of extracted strings? |
Initalization Script
Download Beyond: Two Souls code
File: BeyondTwoSouls-source.zip (33 KB) (info)
|
There's a pretty big, raw script hidden in the game's BigFile_PS3.dat file at 0x5F800. If this script is actually being used or not is currently unknown. The script defines a ton of "Dynamic Communicators" for various functions of the game. Aside from that, and many other initalization stuff it does (like defining every "story-changing" variable), it also defines the different options that can be used while booting the game. Most of these debug options can be controlled from runtime.sdat. Part of this script consists of reading the values from the .sdat file, and then setting various variables accordingly.
For example, on line 5654 of this script there is a "semi"-switch statement which checks for the following values in runtime.sdat's BUILDSONY key:
- GAME
- ANAEL
- PROD
- E3
- GAMEUNLOCK
- PR
To do: Find out what each setting does; PROD is documented below. |
Leftover Debug Mode
runtime.sdat
NOTE: Changing these values only affects versions pre-patch 1.02.
By decrypting the runtime.sdat file, found in root\USRDIR\, a standard INI file is outputted. Notable entries include:
Cheat = 0 DebugMenu = 0
QA Menu
After changing the DebugMenu entry in the runtime.sdat file, re-encrypting and replacing the file in the root\USRDIR\ folder, press L3 in-game to display a "QA Menu". Enabling any of the options will do as it says on the tin, and screenshots are stored in root\USRDIR\ in TGA format. The "GLOBAL", "DIALOGS" and "ANIMATIONS" submenus can be cycled with L1 and R1.
Using the "Free camera", it is possible to see...more of Jodie's model during the shower scene than what is normally shown. The same can also be said for Aiden at another point in the game.
Download Debug Mode Examples
File: Debug Mode Examples.zip (343 KB) (info)
|
Download Modified runtime.sdat
File: Modified runtime.sdat.zip (343 KB) (info)
|
Cheat Menu
You can enable the cheat menu by setting either:
BUILDSONY=PROD
in runtime.sdat, orQDR.Infraworld_Var.BootCheat=4
in BigFile_PS3.dat
It provides access to all chapters and special production environments, such as the "Sandbox Sound Mode".
Further Settings
Setting UseCinemaRatio=0
in runtime.sdat will remove the cinematic black bars on the top and bottom of the screen.
Regional Differences
The European and Japanese versions toned a couple instances of the more excessive violence from the game, including Jodie ramming a pole into a scientist's neck and Ryan Clayton's torture scene.
- Pages missing developer references
- Games developed by Quantic Dream
- Pages missing publisher references
- Games published by Sony Computer Entertainment
- Games published by Quantic Dream
- PlayStation 3 games
- PlayStation 4 games
- Windows games
- Pages missing date references
- Games released in 2013
- Games released in October
- Games released on October 17
- Games released on October 8
- Games released on October 11
- Games released on October 9
- Games with hidden developer messages
- Games with hidden developer credits
- Games with hidden development-related text
- Games with unused sounds
- Games with unused text
- Games with debugging functions
- Games with regional differences
- NSFL articles
- NSFW articles
- Works In Progress
- To do
Cleanup > Pages missing date references
Cleanup > Pages missing developer references
Cleanup > Pages missing publisher references
Cleanup > To do
Cleanup > Works In Progress
Games > Games by content > Games with debugging functions
Games > Games by content > Games with hidden developer credits
Games > Games by content > Games with hidden developer messages
Games > Games by content > Games with hidden development-related text
Games > Games by content > Games with regional differences
Games > Games by content > Games with unused sounds
Games > Games by content > Games with unused text
Games > Games by content > NSFL articles
Games > Games by content > NSFW articles
Games > Games by developer > Games developed by Quantic Dream
Games > Games by platform > PlayStation 3 games
Games > Games by platform > PlayStation 4 games
Games > Games by platform > Windows games
Games > Games by publisher > Games published by Quantic Dream
Games > Games by publisher > Games published by Sony > Games published by Sony Interactive Entertainment > Games published by Sony Computer Entertainment
Games > Games by release date > Games released in 2013
Games > Games by release date > Games released in October
Games > Games by release date > Games released in October > Games released on October 11
Games > Games by release date > Games released in October > Games released on October 17
Games > Games by release date > Games released in October > Games released on October 8
Games > Games by release date > Games released in October > Games released on October 9