the cutting room mirror

Joan Jade and the Gates of Xibalba (Nintendo DS)

A hidden object game in which archaeologist Joan Jade searches for her missing children while at the same time exploring some Mayan ruins.

Commented-Out Strings#

The game's stage parameter files, which can be found inside of the folder data\ENG\SceneGamePlay, contain commented-out strings, listed as follows:

Stage1.txt#

Contains an early version of Event 301, which is used for the tutorial. The final game splits this in two events; the final Event 301, and Event 307.

//#Event_[301]//Tutorial
//#Require [-1&0]
//#Action      [10](In this game, you must search for \nitems, collect them and then \nuse them on other items until \nyou open a passage to another \nlocation. Touch on this \nitem to learn more about it.) - [0]
//#Action      [4](5,R)    - [0]
//#Action      [10](Now you know the chest is locked,\nso you must find a key.\nPerhaps it fell into \nthe excavation.)    - [2]
//#Action      [4](6,R)    - [2]
//#Action      [4](5,H)    - [2]
//#Action      [14]()      - [3]
//#End 

Stage2.txt#

Contains what seems to be early versions of Events 328 and Events 329, which use different dialogue compared to the final game (Maybe I should put some kind of a crystal there.).

//#Event_[332]//àÁ×èÍ «èÍÁ Tooth àÊÃç¨áÅéÇ áÅéÇä» ¨ÔéÁâ´¹ ÊÑ­ÅѡɳìÊբͧ crystal
//#Requre      [23]
//#Condition   [PRESS]-EVENT[6-R]-USE[0x00]
//#Action      [10](Hmmm...  Could these symbols\nbe a clue as to what to\ndo with the crystals?) - [0]
//#Action      [14]() - [1]
//#Trigger [-332]
//#End

//#Event_[333]//àÁ×èÍ «èÍÁ scale àÊÃç¨áÅéÇ áÅéÇä» ¨ÔéÁâ´¹ ÊÑ­ÅѡɳìÊբͧ crystal
//#Requre      [24]
//#Condition   [PRESS]-EVENT[7-R]-USE[0x00]
//#Action      [10](Hmmm...  Could these symbols\nbe a clue as to what to\ndo with the crystals?) - [0]
//#Action      [14]() - [1]
//#Trigger [-333]
//#End

Stage4.txt#

Events 331 to 336, while not completely unused, contain commented-out lines of code.

//#Action      [4](20,R)       - [0]
//#Action      [12](20,2,1)    - [0]
//#Action      [15](20,25,55)  - [0]

//#Action      [4](20,R)       - [0]
//#Action      [12](20,2,1)    - [0]
//#Action      [15](20,45,55)  - [0]

//#Action      [4](20,R)       - [0]
//#Action      [12](20,2,1)    - [0]
//#Action      [15](20,55,55)  - [0]

//#Action      [4](20,R)       - [0]
//#Action      [12](20,2,1)    - [0]
//#Action      [15](20,195,45) - [0]

//#Action      [4](20,R)       - [0]
//#Action      [12](20,2,1)    - [0]
//#Action      [15](20,230,45) - [0]

//#Action      [4](20,R)       - [0]
//#Action      [12](20,2,1)    - [0]
//#Action      [15](20,240,45) - [0]

Stage5.txt#

Event 383 is completely unused.

//#Event[383]
//#Require [70&64&66]
//#Action      [9](BG_SUB_5,BG_SUB_WHEEL)  - [0]
//#Action      [10](These three wheels should\nhelp me unlock the gate\nto the corridor.) - [0]
//#Action      [14]()          - [1]
//#End

Stage6.txt#

Event 303 is completely unused. Note that this event, barring the requirements, is identical to the aforementioned Event 383 in Stage5.

//#Event[303]
//#Require [69&64&66]
//#Action      [9](BG_SUB_6,BG_SUB_WHEEL)  - [0]
//#Action      [10](These three wheels should\nhelp me unlock the gate\nto the corridor.) - [0]
//#Action      [14]()          - [1]
//#End

Stage7.txt#

Events 73, 303 and 325 have commented-out strings. There's also an earlier version of Event 333, which has different dialogue compared to the final game (I need to make a rung to reach the vines.).

//#Action      [2](20,2)       - [0]
//#Action      [16](20,5,0)    - [0]
//#Action      [4](20,R)       - [1]

//#Trigger     [-303]  

//#Action      [16](20,7,0)    - [0]
//#Action      [2](20,2)       - [0]
//#Action      [4](20,R)       - [0]

//#Event_[333]
//#Require [73&-80]
//#Condition   [PRESS]-EVENT[5-R]-USE[0x00]
//#Action      [10](I need somthing heavier)   - [0]
//#Action      [14]()  - [1]
//#Trigger [-333]
//#End

Stage8.txt#

Event 92 contains some commented-out strings.

//#Action      [16](6,2,0)     - [0]
//#Action      [2](6,2)        - [1]

//#Action      [4](6,R)        - [1]

Stage12.txt#

Events 342 to 344 are completely unused.

//#Event_[342]
//#Require  [-135]
//#Condition    [PRESS]-EVENT[9-H]-USE[0x00]
//#Action       [10](This figure is where it should be.) - [0]
//#Action       [14]()   - [1]
//#End

//#Event_[343]
//#Require  [-136]
//#Condition    [PRESS]-EVENT[10-H]-USE[0x00]
//#Action       [10](This figure is where it should be.) - [0]
//#Action       [14]()   - [1]
//#End

//#Event_[344]
//#Require  [-137]
//#Condition    [PRESS]-EVENT[11-H]-USE[0x00]
//#Action       [10](This figure is where it should be.) - [0]
//#Action       [14]()   - [1]
//#End

Stage13.txt#

Event 401 is completely unused.

//#Event_[401]//§Ñ´
//#Require     [144]
//#Condition       [PRESS]-EVENT[8-R]-USE[0x00]
//#Action          [2](10,12)  - [0]
//#Action          [2](11,13)  - [0]
//#Action          [4](9,H)        - [0]
//#Action          [4](8,H)        - [0]
//#Action          [4](10,R)       - [0]
//#Action          [4](11,R)       - [0]
//#End

Stage17.txt#

Event 304 has a commented-out line which refers to a different condition for it to happen.

//#Condition   [PRESS]-EVENT[12-R]-USE[0x00]

Stage18.txt#

Event 402 has three commented-out lines of code:

//#Action      [16](6,0,0)     - [0] //TYPE_MOVE_EVENT_TO_EVENT
//#Action      [2](6,2)        - [1] //TYPE_REPLACE_ANI

//#Action      [4](6,R)        - [1]

Stage19.txt#

Contains a completely unused event, numbered 324, as well as several commented-out lines in 325.

//#Event_[324]
//#Require [203&204]
//#Action      [10](That should be enough to carry me.) - [0]
//#Action      [14]()  - [1]
//#End

//#Action      [16](7,2,0)     - [0]
//#Action      [2](7,2)        - [1]

//#Action      [4](7,R)        - [1]

Stage21.txt#

Contains three unused events, numbered 259 to 261:

//#Event_[259]//à¡çº Water Essence
//#Require  [254&-258&-260&-261]
//#Condition    [PRESS]-EVENT[7-H]-USE(0x00)
//#Action       [6](7,0x24e)    - [0]
//#End

//#Event_[260]//à¡çº Air Essence
//#Require  [254&-258&-259&-261]
//#Condition    [PRESS]-EVENT[9-H]-USE(0x00)
//#Action       [6](9,0x254)    - [0]
//#End

//#Event_[261]//à¡çº Earth Essence
//#Require  [254&-258&-259&-260]
//#Condition    [PRESS]-EVENT[10-H]-USE(0x00)
//#Action       [6](10,0x245)   - [0]
//#End

Stage24.txt#

Contains a commented-out parameter in Event 278:

//#Action      [4](6,H)        - [0]

Stage/Minigame Templates#

Numerous template files and guides for some minigames can be found within the game's filesystem, as follows:

data\ENG\SceneGameplay\StageTemplete.txt#

//@0 [1/0x33]-[R/H]-(x,y)-@2
#INITIAL
@0  [0x33]-[R]  
@1  [0x34]-[R]
@2  [0x34]-[R]
@3  [0x34]-[R]
@4  [0x34]-[R]
@5  [0x34]-[R]
@6  [0x34]-[R]
@7  [0x34]-[R]
@8  [0x34]-[R]
//@16 [1]-[H]-(24,80)       Param(Ani|Cell)-[H]-(x,y)
#END

//#Event_[id]
//#Require  [10&12&13...]&[14|15|16|...]
//#Condition    [TYPE]-EVENT[IDX_EVENT-(U/R/H)]-USE[0x01, 0x03, ...]
//--Condition---[TYPE] = [PRESS],[WAIT_EX]
//#Action   [TYPE](Param1, Param2, ...)-[Priority]
//#Trigger  [10,11]
//#End
//---Action---
//  1   = TYPE_REPLACE_CELL         Param(IDX_EVENT, CELL_EVENT)
//  2   = TYPE_REPLACE_ANI          Param(IDX_EVENT, ANI_EVENT)
//  3   = TYPE_ADD_ITEM             Param(CELL_ITEM)//+ = Add, - = Remove
//  4   = TYPE_SET_RENDER           Param(IDX_EVENT, (R/H)) //R - Render, H - Hide
//  5   = TYPE_MOVE_ITEM_TO_EVENT   Param(IDX_EVENT, MOVE_TIME)
//  6   = TYPE_MOVE_ITEM_TO_SLOT    Param(IDX_EVENT, CELL_ITEM, MOVE_TIME)
//  7   = TYPE_MOVE_EVENT_TRAN      Param(IDX_EVENT, TRANS_X, TRANS_Y, MOVE_TIME)
//  8   = TYPE_NEXT_SCENE           Param(sSCENE, nStage)
//  9   = TYPE_FADE_BG              Param(sPathOri, sPathFade)  //change to PROCESS_BG
//  10  = TYPE_SHOW_TEXT            Param(sText)            //change to PROCESS_SHOWTXT
//  11  = TYPE_REMOVE_ITEM          Param()
//  12  = TYPE_PLAY_EFFECT          Param(IDX_EVENT, ANI_EFFECT ,PLAYTIME )
//  13  = TYPE_MOVE_EVENT_TO_POS    Param(IDX_EVENT, POS_X ,POS_Y, MOVE_TIME )
//  14  = TYPE_CLOSE_TEXT           Param() //Close Text and change to PROCESS_INPUT
//  15  = TYPE_SET_POS              Param(IDX_EVENT, POS_X ,POS_Y)
//  16  = TYPE_MOVE_EVENT_TO_EVENT  Param(IDX_EVENT, IDX_DEST, MOVE_TIME)

#Event_[11]
#Require    [10]
#Condition  [PRESS]-EVENT[2-R]-USE[]
#Action     []
#End

data\ENG\SceneMiniGameMaze\Maze.txt (within)#

//Dimension 24x14
//0=Wall, 1=Empty, 2=Key

data\ENG\SceneMiniGameSliders\Pattern1.txt (within)#

//V2 = Vertical    length : 2
 //H3 = Horizontal  length : 3
 //id:0 = key

data\ENG\SceneMiniGameTrap\TrapTemplete.txt#

This also doubles as an unused level for the Trap minigame, as the pattern seen here does not match any of the ones actually called by the game.

//0 = Empty
//S = Stone
//E = Statue Hand Empty
//H = Statue Hand Stone
//> = Fire Right
//< = Fire Left
//^ = Fire Up
//v = Fire Down
//Player [POS]-DIR
//Lightning Pillar [PILLAR_1]-[PILLAR_1]|[PILLAR_2]-[PILLAR_2]

#STAGE_111
00v>0L
0E0000
0HL00L
0S0S0L
0EL000
0S000L
#PLAYER [0,2]-U
//------|---0---|---1---|---2---|
#MOVABLE [1,1]-E|[1,2]-H|[1,4]-E|
#LIGHTNING [5,0]-[5,2]|[2,2]-[2,4]|[5,3]-[5,5]|
#HINT_0 @0->[2,1]
#HINT_1 @1->[2,2]
#HINT_2 @2->[4,4]
#HINT_3 @2->[4,0]
#END_111

//HINT_[Prior] @[IDX]->[DestX, DestY]

References#


  1. MobyGames↩︎