JMP Info

treasuretable field properties Documentation

OTHER : Item ID (key_xxx)

Room: Room ID

Size : Size Of The Chest Or Item (0 small, 1 medium, 2 large)

Coin: Amount Of Coins Chest Spawns

Bill: Amount Of Bills Chest Spawns

Gold: Amount Of Gold Chest Spawns

Spearl: Amount Of Small Pearls Chest Spawns

Mpearl: Amount Of Medium Pearls Chest Spawns

Lpearl: Amount Of Large Pearls Chest Spawns

Sapphire: Amount Of Sapphires Spawned

Emerald: Amount Of Emeralds Spawned

Ruby: Amount Of Rubies Spawned

Diamond: Amount Of Diamonds Spawned

Cdiamond: Amount Of Red Diamonds Spawned

Rdiamond: Amount Of Gold Diamonds Spawned

effect: Effect Used For Chest (0 none, 1 golden sparks)

camera: Whether the camera zooms on the chest when spawning or not (0 does not, 1 zooms in, 2 alternative zoom)


Info on how to add ghosts to rooms / how they work when already placed in rooms

Ghost names:


yapoo1 = Gold Ghost

yapoo2 = Temper Terror (Elemental Gold Ghost)


mapoo1 = Purple Puncher 

mapoo2 = Flash (Elemental Puncher)


mopoo1 = Blue Twirler

mopoo2 = Blue Blaze (Elemental Twirler)


putcher1 = Bowling Ghost


banaoba = Garbage Can Ghost


heypo = Shy Guy Ghost



Entry Configuration (based on opeydopey's custom InfoFR build):


name = Internal name of the ghost you want to use.


create_name = Always like this: ----. If you want to use waves with the ghost, set it to something 

  like this: NN_W (in this case, NN = room number and W = wave number). WARNING: setting W to values

  that correspond to waves that doesn't exist/are not configured may cause issues.


path_name = Always like this: (null). If the room that the ghost will spawn has paths

  specifically for it and or/you want to use this ghost in waves, set this to 

  the name of the path for that room configured for your desired wave (Example: if the

  ghost will spawn in room 35 (Parlor) and in the second wave, you will want to use the

  obake_35_2 path.) If paths for the room and its spawn waves don't exist, leave this 

  as it is.

  

access_name = Always set it to (null), but if you want to use waves, do the same as needed for

  create_name: NN_W (in this case, NN = room number and W = wave number). WARNING: setting W to values

  that correspond to waves that doesn't exist/are not configured may cause issues.


CodeName = This's the event actor name of the ghost meant to be used in events with tags that use

  this. You may set this to whichever name you want, but usually leave this as it is (unless you're

  going to use this with events).


pos_X, pos_Y and pos_Z = The XYZ positions for the ghost; this is pure trial and error. It's strongly 

  suggested you use positions from furnitureinfo for some reference.


dir_X, dir_Y and dir_Z = The XYZ rotations for the ghost. Usually leave this as it is.


room_no = The value for the room that the ghost will be used in. I suggest checking

  LMTalk's room documentation for this: http://lmtalk.proboards.com/thread/74/room-ids


floating_height = Unknown; leave this unaltered.


appear_percent = How high the chances of the ghost spawning are. The higher the number,

  the bigger are the chances it will spawn. Usually leave this at 100 to make sure the

  ghost will always spawn, but you may set this to other values if you want to add some 

  sort of "special" ghost.

  

appear_flag-item_table: Leave these unaltered.


cond_type-stay: Set these to 70696 if you don't need to use a path for this ghost (mostly

  hallways and rooms that don't use spawn waves) and 103464 if you're using a path for it.



Adding Money to Furniture

item_table' determines the chances of money spawning.

  - a value of 11 will always spawn money.

  - a value of 2 will have a 50% chance to spawn money

  - Change the chances in itemappeartable if you want, or make a custom entry.


'generate_num' determines how much will spawn. In the case of coins/bills, it applies to both. 

So for example, choosing a generate_num value of 1 for coins/bills will generate 1 coin and 1 bill. There is a cap to how many of each object can load at once, and loading too many can cause lag.


Finally, 'generate' determines what comes out of the furniture. Use this list:

01 - Coins

02 - Bills

03 - Coins/Bills

04 - Sapphire

05 - Ruby

06 - Emerald

07 - Gold Bar

08 - Dark Red Diamond


JMP Loading In RAM & DOL (TreasureTable Values)


RAM Address: 800bcaf0

DOL Address: 0x0B9850


RAM Address: 800bcaf4

DOL Address: 0x0B9854


These RAM / DOL addresses mess around with JMP loading in the games memory. If nopped or messed with, it will destroy generators, make all candles purple, make ghosts drop hundereds of treasure, destroys chests and make the game lag (When sucking with the Poltergust it doesn't lag?). And maybe even more.


Infofile Descriptions

(incomplete, feel free to ping me if you have any more info)


`characterinfo:` where portrait ghosts, chests, and some other things are spawned from

`enemyinfo:` where all of the regular enemies are spawned from

`eventinfo:` where event entries are located

`furnitureinfo:` where all of the furniture is spawned from

`generatorinfo:` where generators are spawned from (like rats, bomb ghosts, elemental spirits etc.)

`groupinfo:` useless, removed from the dol, seems to be an older version of roominfo

`itemappeartable:` where items that come out of opened furniture and defeated ghosts are defined

`itemfishingtable:` where items that come out of fleeing ghosts are defined

`iteminfotable:` where information for keys, mario items, etc. are defined

`itemtable:` UNKNOWN (used for something, the game crashes without it)

`iyapootable:` where treasure lists for speedy spirits and gold rats are defined

`keyinfo:` where keys that spawn out of thin air (like wardrobe room) are defined

`objinfo:` where things like candle fire, coins, effects, etc. are spawned from

`observerinfo:` where ghost spawn waves, Toads, and some other important things are defined

`polygoninfo:` contains data for all polygons in col.mp (icy floor or regular floor)

`railinfo:` where ladders and paths for ghosts are defined

`roominfo:` where dust level, thunder %, light color, etc. for rooms are defined

`soundgroupinfo:` sound data?

`soundpolygoninfo:` contains data for all polygons in col.mp (Luigi's footstep sounds)

`teiden____:` teiden files function the same as others, but only activate during the blackout

`telesa:` where parameters for all 35 boos in the mansion are defined (HP, speed, etc.)

`treasuretable:` where treasure that comes out of chests (based on room #) is defined



Boo Sequence Breaking Cheat Sheet

> If you're going to sequence break your mod and include Boo spawning, you'll need to make sure you plan ahead. If these conditions aren't met, the Boos will instantly disappear the moment you spawn them.

> Note that simply activating a boss defeated flag or defeating the boss itself is not enough. The boss must be captured and the <ACCOUNT> cutscene must play in order for an area to be considered cleared and for Boos to spawn.

```Boos that always spawn correctly (Area 1):

Anteroom

Wardrobe Room

Study

Master Bedroom

Nursery

Twin's Room```

```Boos that need Chauncey, Bogmire, OR Boolossus defeated (Area 2):

Ball Room

Storage Room

Fortune-teller's Room

Laundry Room

Butler's Room

Hidden Room

Conservatory

Dining Room

Kitchen

Rec Room

Billiards Room

Projection Room```

```Boos that need Bogmire OR Boolossus defeated (Area 3):

Tea Room

Nana's Room

Astral Hall

Sitting Room

Guest Room

Safari Room

Artist's Studio```

```Boos that need Boolossus defeated (Area 4):

Telephone Room

Clockwork Room

Armory

Ceramics Studio

Breaker Room

Cellar

Pipe Room

Cold Storage


Boo Actors Explained


Documentation Megapost on All JMP Files

*by weirdboo, many thanks to CyrusLoS and LMFinish for various findings*


**Note:** *Names marked with* `(停電)` *have blackout variants that begin with "teiden". These variants will only activate when the <TURNON> event script tag is used, otherwise known as "The Blackout". They are functionally identical to their normal counterparts.*

===================================================


`(停電)` Character Info

            Actor List


`(停電)` Enemy Info


           Eventinfo

           EventIf Types


          Furniture Info

           ⊛  Furniture Money

           ⊛  Furniture Sheets

           ⊛  Furniture Sounds

           ⊛  Move Types


Generator Info

   Generator Types


◉ Item Fishing Table


Item Info Table

    Item Types


◉ Iyapootable


`(停電)` ◉ Key Info


Object Info

           ⊛  Objects List

           ⊛  Candle Types


`(停電)` ◉ Observer Info

           ⊛  Cond Types

           ⊛  Do Types


Sound Polygon Info


Rail Info


Room Info

           ⊛  Lv Colors


Telesa


Treasure Table