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!

Purble Place

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Purble Place

Developer: Oberon Games
Publisher: Microsoft
Platform: Windows
Released internationally: January 30, 2007


GraphicsIcon.png This game has unused graphics.
SoundIcon.png This game has unused sounds.
TextIcon.png This game has unused text.
DebugIcon.png This game has debugging material.
BonusIcon.png This game has hidden bonus content.


ProtoIcon.png This game has a prototype article
NotesIcon.png This game has a notes page

Purble Place is one of the new games (or, rather, a collection of games) included with Windows Vista and 7. The collection is intended for very young children and it shows.

Hmmm...
To do:
  • See if more of the options work in the Vista version. This was tested with the Windows 7 version.
  • There's much more to document. A good place to start would be to use Resource Hacker on the game executable and DLLs.
  • Apparently, there are more unused dialogs leftover from earlier builds.
  • Developer comments in some XML files.
  • There is a large amount of unused strings in the MUI file.
  • Unused "blah" menu at Menu Item 171 of the MUI.
  • Any hidden stuff in the save files?
  • Win8 DP1 (6.2.8102.0 (winmain_win8m3.110823-1455)) saw the removal of the built-in Windows games from the edition manifest for Prerelease(ARM); this change would be later expanded through the removal of most Win7 client editions (excluding Starter(N), Professional(N) and Enterprise(N)) from the source tree during early 830x, orphaning the games entirely. The only catch to this, however, is that the Win7 games were still compiled from until as late as Win10 v1703, which is when MS decided to ditch the rest of the older editions entirely. The binaries were included in the provided repair content sources for the following builds: 8250 (Win8 Consumer Preview), 8400 (Win8 Release Preview), 9200 (Win8 RTM), 9431 (Win8.1 BlueMP), 9600 (Blue RTM), 10586 (Win10 v1511) and 14393 x86 (Win10 v1607). As the enablement flags for the games are still present in every SKU's product policies, it'd be a good idea if someone were to re-enable them through ProductPolicyEditor and look through any noticeable code changes from within their binaries.
    • Related note: The main Purble Place dynamic link library in the repair content for Win8 Consumer Preview (and later) use MSDelta compression (treated as a null update delta), and will cause DISM to complain about invalid SHA-256 hashes; this also causes the Win7 editions to fail staging entirely with code STATUS_SXS_FILE_HASH_MISMATCH unless the offending component is either decompressed first or removed from the respective edition manifest.
  • Debug symbols for the built-in Windows games exist on the Microsoft Symbol Server.
  • Add things from this

Sub-Pages

Read about prototype versions of this game that have been released or dumped.
Prototype Info
Miscellaneous tidbits that are interesting enough to point out here.
Notes
PurblePlace MediaCenterIcon.png
Media Center Purble Place
A full-screen version of the game embedded into the game's executable that can be launched from Windows Media Center.
SoundIcon.png
Unused Sounds
They didn't even bother deleting sounds from the prototypes!

Debug Menus

As with most other games shipped with Vista and 7, it has an internal g_debugEnabled variable. However, the debug menus aren't seen until entering one of the mini-games.

Purble Shop

Purbleplacerpublepairsdebugmenu.png

The only part of the menu that appears to work is "Toggle Curtain", allowing the player to see behind the curtain. The rest appear to have been for the figure the player has to guess for, but they don't appear to be functional. The options consist of trying to pick the graphics currently available.

Comfy Cakes

Purbleplacecomfycakesdebugmenu.png

The only option that appears to work is "Win Game", which does indeed let the player win. "Reload Variables" doesn't appear to do anything on the surface, while "Time Attack Mode" would have toggled the automatically sliding conveyor belt mechanic.

Purble Pairs

Purbleplacepurbleshopdebugmenu.png

This menu is comparatively intact, with almost all of the options working. The options included in this menu are:

  • Sneak Peak - Lets the player look at all the tiles, but only if none of them are flipped.
  • Force Win - As you'd expect, the player automatically wins the game.
  • Mixer - Mimics the sundae dessert "power-down"; the tiles are moved all across the playfield.
  • Force Lose - Automatically makes the player lose in timed games. Does not work on untimed games.
  • Time - Doesn't work. Possibly would have controlled the timer.

Revisional Differences

Hmmm...
To do:
Are there more to find?

The Windows Vista version has the main menu's logo and the loading screen written in Comic Sans MS. In Windows 7, it is now in Arial.

Windows Vista Windows 7
Purble Place Vista.png Purbleplacetitle.png
Purble Place Vista Loading Screen.png Purbleplaceloading.png

Early Minigame Titles

Internally, Purble Pairs and Purble Shop are called "Concentration" and "BuildAPurble" respectively.

XInput Support

An interesting feature that isn't documented anywhere (Help Menu-wise) is XInput (gamepad) support - if the game detects an Xbox 360 controller plugged into a USB port, the P1 corner on the controller will light up, signifying the controller can be used. Possibly undocumented because Oberon Media thought people were too used to the traditional controls, and little kids wouldn't be using a controller.

It's a neat little feature, nonetheless.

Controls

Button Effect
Left analog stick/D-Pad/Shoulder Buttons/Triggers Moves the cursor. Oddly, they can also be used to navigate the menu bar.
B/Back Varies.
A/X Selects whatever the cursor is on.
Y/Start Opens the Game Menu.

Unused Graphics

ui/buildapurble

features/icons

Alongside the icons for the used Purble Shop eyes exist these icons of the early versions of the Red/Pink eyes. These eyes were used in prototype builds pre-Windows Vista Build 5308.

features

Inside the parent directory where the aforementioned Red Eye icons are buried contains these Green Mouth and Yellow Nose graphics. GreenMouthX2.png, however, is never seen in any of the available prototypes, and has been inside the game's files since the Windows Vista Build 5219 prototype.

shelffeatures

The shelffeattures directory contains a shelf graphic for one of the Green Hair features seen in early prototypes.

Comfy Cakes

Within the sheets for Comfy Cakes contains an early version of the filling machine, which was seen in the Build 5219 prototype.

Compared to the one used in the final build, this version notably features a less-detailed appearance.

Unused Dialogs

Leftover Texture Pack Dialog

PurblePlace UnusedCardDeckDialog.PNG

The other Windows Vista games allow the player to choose a texture pack, but since Purble Place doesn't use texture packs, this dialog goes unused.

  CONTROL "OK", 1, BUTTON, BS_DEFPUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_GROUP | WS_TABSTOP, 236, 278, 72, 14 
  CONTROL "Cancel", 2, BUTTON, BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 310, 278, 72, 14 
  CONTROL "Select Card Deck", 5002, STATIC, SS_LEFT | WS_CHILD | WS_VISIBLE | WS_GROUP, 7, 7, 234, 8 
  CONTROL "", 5000, "SysListView32", LVS_ICON | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SHAREIMAGELISTS | LVS_ALIGNLEFT | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_GROUP | WS_TABSTOP, 7, 17, 380, 108 
  CONTROL "Select Background", 5003, STATIC, SS_LEFT | WS_CHILD | WS_VISIBLE | WS_GROUP, 7, 135, 234, 8 
  CONTROL "", 5001, "SysListView32", LVS_ICON | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SHAREIMAGELISTS | LVS_ALIGNLEFT | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_GROUP | WS_TABSTOP, 7, 145, 380, 101 
  CONTROL "&Randomly choose deck and background", 5004, BUTTON, BS_AUTOCHECKBOX | WS_CHILD | WS_VISIBLE | WS_GROUP | WS_TABSTOP, 7, 253, 233, 10

Media Center Purble Place dialogs

purbleplace.exe.mui contains dedicated dialogs, tips, scripts, etc., but there's also unused fullscreen dialog boxes of these.

Unused Tips

Comfy Cakes

Ingredient-on-top-of-Ingredient Tips

In the final build, you are able to place a decoration on top of a decoration, replacing it. The same applies for batter, and thus, leaves both of these tips unused.

<Message>|42768|CCTips|Oops, you can't correct batter. You're allowed some mistakes, work on the other cakes on your line. // When you try to put batter on a batter already there.</Message>
<Message>|57636|CCTips|There's already a decoration there! // When you put a decoration on top of another decoration.</Message>

Game Over Tip

This tip would have appeared when you "clog" the production line. It is unknown how you would do so.

   <Tip>
       <Id>GameLoseLineClog</Id>
       <Title>|54450|CCTips|Lost Game//Tip title</Title>
       <MinWidth>350</MinWidth>
       <Message>|58004|CCTips|You've clogged the production line. Too bad! I'm sure you can do better next time. // When you clog the line and lose.</Message>
       <Type>Intro</Type>
       <Duration>10</Duration>
   </Tip>

Rotating Cake Requirement

These tips relate to the rotate cake mechanic, which for unknown reasons was cut after the Build 5219 prototype.

   <Tip>
       <Id>ContextualPreDecorationTurn</Id>
       <Title>|65202|CCTips|Cake Incorrect//Tip title</Title>
       <MinWidth>350</MinWidth>
       <Message>|61750|CCTips|You may have to turn the cake before putting on a decoration in order to get it in the right spot. Use the turn arrows. // When you have a decoration of the wrong orientation.</Message>
       <Type>Intro</Type>
   </Tip>
   <Tip>
       <Id>ContextualPostDecorationTurn</Id>
       <Title>|65202|CCTips|Cake Incorrect//Tip title</Title>
       <MinWidth>350</MinWidth>
       <Message>|61700|CCTips|You may have to turn the cake after putting on a decoration in order to get it in the right spot. Use the turn arrows. // When you have a decoration of the wrong orientation.</Message>
       <Type>Intro</Type>
   </Tip>

Purble Pairs

Blank Card Flipping

This tip would have displayed when trying to select an already-matched tile. You cannot do that in the final game, so this tip goes unseen.

   <Tip>
       <Id>BlankCard</Id>
       <Title>|64710|TIPS|Matched Tile// Tip title</Title>
       <Message>|65388|CON_Tip_GamePlay|This tile has already been matched. Clear the entire board to win.</Message>
       <MinWidth>175</MinWidth>
       <Type>Error</Type>
       <NoTimeout>false</NoTimeout> 
       <Duration>10</Duration>
   </Tip>


Obscured Sprites

PurblePlace-ConcentrationProfessorSheet32X2.png

Full head of Professor's head, without any face.

PurblePlace-ComfyCakesConveyorSheet5X24.png

A full faceless head of Chef Purble.

Undocumented Comfy Cakes Keyboard Binds

Interestingly, there are undocumented Comfy Cakes keyboard binds for moving the cake. W is for backwards movement, and E is for forwards movement.

Unused Purble Pairs Cards

UI/CONCENTRATION/CARDS/CARDS.XML contains a bunch of unused card entries. The entire file could be unused since the files that are referenced by most of the entries do not exist.

Purble Shop

Entries for cards that likely relate to prototype versions of Purble Shop.

<Card>
<id>1</id>
<type>0</type>
<chefitem>0</chefitem>
<path>UI\Concentration\Cards\EggPurbleHead.xml</path>
<internalName>EggPurbleHead</internalName>
</Card>
<Card>
<id>24</id>
<type>4</type>
<chefitem>0</chefitem>
<path>UI\Concentration\Cards\LumpyPurbleHead.xml</path>
<internalName>LumpyPurbleHead</internalName>
</Card>
<Card>
<id>25</id>
<type>4</type>
<chefitem>0</chefitem>
<path>UI\Concentration\Cards\RoundPurbleHead.xml</path>
<internalName>RoundPurbleHead</internalName>
</Card>
<Card>
<id>27</id>
<type>4</type>
<chefitem>0</chefitem>
<path>UI\Concentration\Cards\PearPurbleHead.xml</path>
<internalName>PearPurbleHead</internalName>
</Card>
<Card>
<id>14</id>
<type>0</type>
<chefitem>0</chefitem>
<path>UI\Concentration\Cards\PurpleHat.xml</path>
<internalName>PurpleHat</internalName>
<Card>
<id>16</id>
<type>0</type>
<chefitem>0</chefitem>
<path>UI\Concentration\Cards\RedBowTie.xml</path>
<internalName>RedBowTie</internalName>
</Card>

Comfy Cakes

Entries for unseen Comfy Cakes cards. What the Sad Chef card does, is unknown.

<Card>
<id>19</id>
<type>0</type>
<chefitem>0</chefitem>
<path>UI\Concentration\Cards\Trash.xml</path>
<internalName>Trash</internalName>
</Card>
<Card>
<id>20</id>
<type>0</type>
<chefitem>0</chefitem>
<path>UI\Concentration\Cards\TV.xml</path>
<internalName>TV</internalName>
</Card>
<Card>
<id>36</id>
<type>2</type>
<chefitem>0</chefitem>
<path>UI\Concentration\Cards\SadChef.xml</path>
<internalName>SadChef</internalName>
</Card>

Oddities

Filling Internal Name Oddities

The files for the filling ingredients have several name oddities.

  • The mint and raspberry filling files in the UI/ComfyCakes/Layers are named "raspberry" and "fudge" respectively.
  • There are animation scripts in UI/ComfyCakes/Machines named FILLINGMACHINECHOCOLATEBASEANIM.xml, FILLINGMACHINELEMONBASEANIM.XML, and FILLINGMACHINESTRAWBERRYBASEANIM.XML.

Purble Shop Icon Oddity

The Purble Shop seen in the menu has a oddity; the window which has Purble on it smiling uses early versions of Purbles seen in some prototypes.

Unused Sad Chef Constant

Hmmm...
To do:
Are there functions of the Sad Chef card?

UI\Concentration\ConcentrationGame.xml has an entry named "MatchPointsSadChef" which is set to 10 like the other match points entries.