Pick-A-Toon Screen
In Toontown Realms, Realm hosters can customize the Pick-A-Toon screen.
To customize the Pick-A-Toon screen, create a new file named pickatoon.json
in the config/
folder in your Realms's root directory.
Pick-A-Toon Format
Note: For the background to load in-game, you need to at least specify either a dna_file
or at least one prop
. You can combine these, but you must have at least one of these.
key | type | description |
---|---|---|
camera_pos | PosHpr (Read Below) |
Specifies the position of the camera. The 6 floats specify, in this order, the x, y, and z positions, and the h, p, and r rotations. |
dna_storages | List of string [Optional, required if "dna_file" is specified] |
Specifies which DNA Storages to load. DNA Storages specify which models are available for DNA files to load |
dna_file | string [Optional, required if "props" is not specified or empty] |
Specifies the DNA file to load for the background. If this is unspecified, no DNA file will be loaded but you will still be allowed to use the rest of the custom Pick-A-Toon features, like props. |
sky | int [Optional] |
Specifies which sky texture we're using. The indexes can be found below |
toon_positions | List of 6 PosHpr (Read Below) [Optional] |
Species the positions to place the player's Toon models in 3D space. If this is unspecified, the game will continue to show the 2D 6-square picker, but will still show your 3D background. |
props | List of Prop (Read Below) |
Specifies a list of props to load. Currently there is a limit of 300 props. |
PosHpr Type
A PosHpr type is simply a list of 6 floats that specify the x, y, and z positions, and h, p, and r rotations. Example:
"camera_pos": [-8.5, 15, 5.42, 0, -15, 0], "toon_positions": [ [-16, 26, -0.48, 210, 0, 0], [-13, 27, -0.48, 200, 0, 0], [-10, 31, 0.02, 190, 0, 0], [-7, 31, 0.02, 160, 0, 0], [-4, 28, -0.48, 153, 0, 0], [-1, 26, -0.48, 136, 0, 0] ],
Sky Indexes
- Toontown Central / Daisy Gardens (Day Sky)
- Donald's Dock / The Brrrgh (Foggy Sky)
- Minnie's Melodyland (Evening Sky)
- Donald's Dreamland (Night Sky)
- Cog HQs
Prop Type
key | type | description |
---|---|---|
model_path | string |
Specifies the model bam file to load |
node_path | string [Optional] |
Specifies a path to search for to find a sub node within the loaded model, such as finding a specific door type in the door model file which includes all door types |
pos | List of 3 float [Optional | default = (0, 0, 0)] |
Specifies the x, y, and z position to place this prop at |
hpr | List of 3 float [Optional | default = (0, 0, 0)] |
Specifies the h, p, and r rotation to place this prop at |
scale | List of 3 float [Optional | default = (1.0, 1.0, 1.0)] |
Specifies the x, y, and z scale to set the prop to |
color | List of 4 int[0-255] [Optional | default = (255, 255, 255, 255)] |
Specifies the red, blue, green, and alpha color scales - This is on a 0-255 scale, not 0.0-1.0 |
texture_overrides | Dictionary of key-value pairs [Optional] | Specifies texture overrides for specific nodes in the loaded model. The key will be the node path name, the value will be the new texture file path. |
Prop Example
This example loads a texture plane prop which we then will set to the appearance of water
"props": [ { "model_path": "phase_14.5/models/props/ttoff_m_propgen_texPlane", "pos": [4, 25, -0.5], "hpr": [0, 90, 0], "scale": [20, 20, 20], "color": [255, 255, 255, 120], "texture_overrides": { "Plane": "phase_4/maps/water3.png" } } ]
Complete Example #1
This example loads the DNA file of the Minnie's Melodyland themed main menu background, adds a couple of props, and uses 3D Toon models
{ "dna_storages": [ "phase_6/dna/ttrm_d_strg_mml.dna", "phase_6/dna/ttrm_d_strg_mml_sz.dna", "phase_6/dna/ttrm_d_strg_mml_town.dna" ], "dna_file": "phase_3/dna/ttoff_d_launch_backgroundMM.dna", "camera_pos": [-8.5, 15, 5.42, 0, -15, 0], "toon_positions": [ [-16, 26, -0.48, 210, 0, 0], [-13, 27, -0.48, 200, 0, 0], [-10, 31, 0.02, 190, 0, 0], [-7, 31, 0.02, 160, 0, 0], [-4, 28, -0.48, 153, 0, 0], [-1, 26, -0.48, 136, 0, 0] ], "sky": 2, "props": [ { "model_path": "phase_4/models/props/tt_a_ara_ttc_sillyMeter_default.bam" }, { "model_path": "phase_14.5/models/props/ttoff_m_propgen_texPlane", "pos": [4, 25, -0.5], "hpr": [0, 90, 0], "scale": [20, 20, 20], "color": [255, 255, 255, 120], "texture_overrides": { "Plane": "phase_4/maps/water3.png" } } ] }
This example loads the same scene above, except instead of using 3D Toon models, it uses the classic 2D picker
{ "dna_storages": [ "phase_6/dna/ttrm_d_strg_mml.dna", "phase_6/dna/ttrm_d_strg_mml_sz.dna", "phase_6/dna/ttrm_d_strg_mml_town.dna" ], "dna_file": "phase_3/dna/ttoff_d_launch_backgroundMM.dna", "camera_pos": [-8.5, 15, 5.42, 0, -15, 0], "sky": 2, "props": [ { "model_path": "phase_4/models/props/tt_a_ara_ttc_sillyMeter_default.bam" }, { "model_path": "phase_14.5/models/props/ttoff_m_propgen_texPlane", "pos": [4, 25, -0.5], "hpr": [0, 90, 0], "scale": [20, 20, 20], "color": [255, 255, 255, 120], "texture_overrides": { "Plane": "phase_4/maps/water3.png" } } ] }