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!

Club Penguin: Elite Penguin Force

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Club Penguin: Elite Penguin Force

Also known as: Club Penguin: Force d'Elite (FR)
Developer: 1st Playable Productions
Publisher: Disney Interactive Studios
Platform: Nintendo DS
Released in US: November 25, 2008
Released in EU: March 13, 2009
Released in AU: April 16, 2009


AreasIcon.png This game has unused areas.
DevTextIcon.png This game has hidden development-related text.
GraphicsIcon.png This game has unused graphics.
ItemsIcon.png This game has unused items.
MusicIcon.png This game has unused music.
DebugIcon.png This game has debugging material.
RegionIcon.png This game has regional differences.
Carts.png This game has revisional differences.


See, this is why server preservation is important.
This game's online features are no longer supported.
While this game's online features were once accessible, they are (as of May 20, 2014) no longer officially supported and online-exclusive features may be documented as now-unseen content.
Hmmm...
To do:
  • Document the recently discovered unused sprites and the unused 3D model.
  • Details on DGamerArchive.fun and .lzc files.
  • There are some regional differences as well.

Club Penguin: Elite Penguin Force is Club Penguin's debut on the Nintendo DS. But, it's basically just a collection of new Agent missions, however, it has DGamer!

Yay...?

Unused Graphics

Unused cutscene 1.png Unused cutscene 2.png

Selecting the 30th cutscene in the debug menu reveals an early version of the Protobot 3000 cutscene, which unlike the final, isn't animated. There is text at the bottom left, most likely reading 'FPO', which is an abbreviation of "for placement only".

Unused Sprites

Hmmm...
To do:
There are way more unused sprites than this, including sprites for an earlier iteration of the Snowboarding minigame.

Early Designs for Dot

Dot Large.png Dot small.png DotTrash Out.png

Unused sprites of what are presumed to be early designs for Dot.

Unused Rooms

Hmmm...
To do:
get a screenshot of the unused map screen.

There is an unused room in the game with ID 00. It resembles the map screen, but has large orange crosses where the locations are supposed to be.

You can access this room with an Action Replay code to edit the destination room during a transition. You will need to find the address in RAM for the destination room, as this address changes location. Search for E8 addresses while standing in a room, then go to the snow forts and search for addresses with 28 before the transition circle closes all the way (pausing using an emulator is recommended.) Keep doing this with different room IDs according to the table below, and you will find the transition destination address.

During a transition, before the circle closes, set the address to the room you want to go to. Before the circle fully opens again at the destination, set the address to E8 to prevent a softlock. Finally, when you have arrived, turn off the code.

ID Room
00 Weird map screen
01 Ski lodge attic
02 Beach
03 Beacon
04 Boiler room
05 Book room
06 Wilderness cave
07 Coffee shop
08 Command room (softlock if not unlocked)
09 Dock
0A Dojo
0B Ice fishing pond
0C Forest
0D Gadget room (softlock if not unlocked)
0E Gadget room (Mission 13)
0F Gary's room
10 Gift Shop
11 Gift Shop office
12 Gift Shop roof
13 HQ (softlock if not unlocked)
14 Iceberg
15 Ice rink
16 Lighthouse
17 Ski lodge
18 Dance lounge
19 Mine shack
1A Mine cave
1B Cave where Gary was trapped
1C Protobot lair
1D Softlock
1E Tool shed
1F Night club
20 Pet shop
21 Pizza parlor
22 Plaza
23 Cave
24 Puffle training room (softlock if not unlocked)
25 Ski hill
26 Ski village
27 Softlock
28 Snow forts
29 Sport shop
2A Stage
2B Stage (Mission 13)
2C Softlock
2D Tallest Mountain (Mission 13)
2E Tallest Mountain (Mission 13) (Empty, unused)
2F Town
30 Wilderness next to cliff
31 Wilderness next to fallen log
32 Wilderness river-stump-cliff room
33 Wilderness tree stump
34 Wilderness river
35 Wilderness outside cave

Unused Music

There is a seemingly unused track in the game, with ID 01. The track sounds very similar to the Command Room music, so it could be an early version.

It can be accessed in-game with the following code:

0227988C 000000??

Replace ?? with one of these IDs:

ID Music
00 Main theme
01 Unused?
02 Command room
03 Coffee shop
04 Ski village
05 HQ
06 Town
07 Gift Shop
08 Ski lodge
09 Pizza Parlor
0A Coffee Shop
0B An Agent's Work is Never Done
0C Cart Surfer
0D Ice fishing
0E Gadget room
0F Night club
10 Dojo
11 Boiler room
12 Menu
13 Stage
14 Beach
15 Mine shack
16 Mine caves
17 Jet Pack Adventure
18 Snowboarding
19 Snow trekker
1A Mission complete

Unused Cutscene

Hmmm...
To do:
There's another one of these somewhere in the files.

A test background for the snowboarding minigame.

Debug Menu

Cpepf-debugmenu.png

There is a debug menu still present in the game's code. It allows you to modify the player's coins, activate minigames and missions, and view cutscenes.

It can be accessed with the following Action Replay code (EU)ː

1210AD2C 00002024

Once the debug menu has been accessed, the second half of the code must be changed to 00006800, or you will not be able to do anything.

Build Dates

Each of the game's releases have a version label and build date that are loaded in memory. The numbers in the "T" segment are Unix timestamps.

Version Offset String Timestamp
US Rev0 0x1B08F4
[VERSIONBLOCK|V15146          |T1223422984|MGoliath2       |]
Oct 07 2008 23:43:04
EU 0x1ABFA0
[VERSIONBLOCK|V15270          |T1232148633|MGoliath2       |]
Jan 16 2009 23:30:33
FR 0x1B20B4
[VERSIONBLOCK|V15530          |T1237250813|MGoliath2       |]
Mar 17 2009 00:46:53
US Rev1 0x1B21F4
[VERSIONBLOCK|V15543          |T1237565400|MGoliath2       |]
Mar 20 2009 16:10:00
US Rev2 0x1ADBC4
[VERSIONBLOCK|V15650          |T1277264395|MGAMBIT         |]
Jun 23 2010 03:39:55
SP 0x1ADBA4
[VERSIONBLOCK|V15669          |T1279641405|MGAMBIT         |]
Jul 20 2010 15:56:45
GE 0x1A04B4
[VERSIONBLOCK|V15816          |T1320190560|MROGUE          |]
Nov 01 2011 23:36:00

DGamer.xml

Inside the /dgamer/ folder is a XML file named DGamer.xml. The file itself contains general settings for DGamer on the DS, but it also has a few dev comments in it.

<dgamer gamename="Club Penguin" cmsid="136103" ggid="0x00400583" platform="DGamerDS" version="2008.09.05.11.27.16" embededSRL="true">
  • The build date of the Client.
 <!-- Default items are like game unlockables, but backend only, so category DGamer.  I'm carving out
         slots for them in the DGamer_Data array to avoid confusion, but they don't actually need them.  -->
    <!-- <unlockable category="DGamer" id="161460" dgamerid="46848" /> --> <!--  Club Penguin T-shirt -->
    <!-- <unlockable category="DGamer" id="161465" dgamerid="46849" /> --> <!--  Spy Costume -->
    <!-- <unlockable category="DGamer" id="161466" dgamerid="46851" /> --> <!--  Club Penguin Puffle T-shirt -->
  • This one, which is in <Unlockables>, has some outfits that were commented out.
<!-- Enter up to eight (8) Wireless (adhoc) chat stages/lobbies that will be listed to player -->
  <!-- They will be listed on the client according to the order attribute (A-Z = top-bottom) -->
  <stages>
    <stage name="Bronze Room" order="A" />
    <stage name="Gold Room" order="B" />
    <stage name="Green Room" order="C" />
    <stage name="Orange Room" order="D" />
    <stage name="Pink Room" order="E" />
    <stage name="Purple Room" order="F" />
    <stage name="Silver Room" order="G" />
    <stage name="Yellow Room" order="H" />
  </stages>
  • This has something to do with the chat lobbies.
<events>
    <event id="136103" gameid="0" source="GAME" type="dgamer_ClubPenguin_ElitePenguinForceTrainee 0 0 0 dgamer" />
    <event id="136103" gameid="1" source="GAME" type="dgamer_ClubPenguin_ElitePenguinForceRank1 0 0 0 dgamer" />
    <!-- The following event was improperly created on the backend, however, it's easier to break it here as well, rather than fix the backend -->
    <event id="136103" gameid="2" source="GAME" type="dgamer_ClubPenguin_unlockElitePenguinForceRank2 0 0 0 dgamer" />
    <event id="136103" gameid="3" source="GAME" type="dgamer_ClubPenguin_ElitePenguinForceRank3 0 0 0 dgamer" />
    <event id="136103" gameid="4" source="GAME" type="dgamer_ClubPenguin_ElitePenguinForceRank4 0 0 0 dgamer" />
    <event id="136103" gameid="5" source="GAME" type="dgamer_ClubPenguin_ElitePenguinForceRank5 0 0 0 dgamer" />
    <event id="136103" gameid="6" source="GAME" type="dgamer_ClubPenguin_RegisteredDGamer 0 0 0 dgamer" autofire="true" />

    <event id="136103" gameid="7" source="GAME" type="dgamer_ClubPenguin_unlockClubPenguinTShirt 0 0 0 dgamer" autofire="true" />
    <event id="136103" gameid="8" source="GAME" type="dgamer_ClubPenguin_unlockSpyCostume 0 0 0 dgamer" />
    <event id="136103" gameid="9" source="GAME" type="dgamer_ClubPenguin_unlockClubPenguinPuffleTShirt 0 0 0 dgamer" />
    <!-- The following event was also improperly created on the backend, now broken here to match -->
    <event id="136103" gameid="10" source="GAME" type="dgamer_ClubPenguin_unlockSpyglasses 0 0 0 dgamer"  />
    <event id="136103" gameid="11" source="GAME" type="dgamer_ClubPenguin_unlockBluePuffleTShirt 0 0 0 dgamer"  />
    <event id="136103" gameid="12" source="GAME" type="dgamer_ClubPenguin_unlockEPFBaseballCap 0 0 0 dgamer"  />
    <event id="136103" gameid="13" source="GAME" type="dgamer_ClubPenguin_unlockRedPuffleTShirt 0 0 0 dgamer"  />
    <event id="136103" gameid="14" source="GAME" type="dgamer_ClubPenguin_unlockYellowPuffleTShirt 0 0 0 dgamer"  />
    <event id="136103" gameid="15" source="GAME" type="dgamer_ClubPenguin_unlockEPFTShirt 0 0 0 dgamer"  />
    <event id="136103" gameid="16" source="GAME" type="dgamer_ClubPenguin_unlockToque 0 0 0 dgamer"  />
    <event id="136103" gameid="17" source="GAME" type="dgamer_ClubPenguin_unlockPuffleTShirt 0 0 0 dgamer"  />
    <event id="136103" gameid="18" source="GAME" type="dgamer_ClubPenguin_unlockBlackPuffleTShirt 0 0 0 dgamer"  />
    <event id="136103" gameid="19" source="GAME" type="dgamer_ClubPenguin_unlockPurplePuffleTShirt 0 0 0 dgamer"  />
    <event id="136103" gameid="20" source="GAME" type="dgamer_ClubPenguin_unlockAstroBlasterTShirt 0 0 0 dgamer"  />
    <event id="136103" gameid="21" source="GAME" type="dgamer_ClubPenguin_unlockSpyPod 0 0 0 dgamer"  />
  </events>
  • Game specific events for DGamer.
<!-- DGamer DS dynamic configuration, for Club Penguin DS -->
  • Seen at the beginning of the XML, this probably means that the DGamer client was made during early development.
 <!--  DGamer specific unlockables, note that these shouldn't be fired if id (e.g. 117358) already exists in the backpack -->
    <unlockable category="StarterSet" starterSetID="0" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetA0 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="0" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetA1 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="0" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetA2 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="0" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetA3 0 0 0 dgamer"/>

    <unlockable category="StarterSet" starterSetID="1" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetB0 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="1" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetB1 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="1" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetB2 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="1" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetB3 0 0 0 dgamer"/>

    <unlockable category="StarterSet" starterSetID="2" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetC0 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="2" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetC1 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="2" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetC2 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="2" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetC3 0 0 0 dgamer"/>

    <unlockable category="StarterSet" starterSetID="3" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetD0 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="3" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetD1 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="3" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetD2 0 0 0 dgamer"/>
    <unlockable category="StarterSet" starterSetID="3" id="117358" eventid="116060" source="GAME" type="dgamer_dgamer_registerSetD3 0 0 0 dgamer"/>
  • DGamer Specific Unlockables.

Revisional Changes

Besides the original release, this game has 2 revisions, and was released across many different regions.

Title Screen

Probably the biggest change is the removal of DGamer in the European release and the microphone option being added from the first revision onwards.

USA v1.0 Europe USA v1.1
Club Penguin Elite Force titlescreen.png Club Penguin - Elite Penguin Force (Europe).png Club Penguin - Elite Penguin Force (USA v1.1).png

"Licensed by Nintendo"

Another visual change is the "Licensed by Nintendo" screen, changing each revision.

USA v1.0 Europe USA v1.1
Club Penguin - Elite Penguin Force (USA) licensedbynintendoscreen (v1.0).png Club Penguin - Elite Penguin Force (Europe) licensedbynintendoscreen.png Club Penguin - Elite Penguin Force (USA) licensedbynintendoscreen (v1.1).png