Tileset confusion

I am working on tileset editor, and I thought that parsing files in data\json (and mod directories) for objects containing type, id and symbol in hopes these would be all that needs some tiles to be assigned.

While importing existing tileset (RetroDays), I have found that there are tiles defined for objects not existing in jsons, and nope, not few special cases listed in wiki aka special names.

Special names

There are several special names for things that aren’t defined in any JSON. They shall be enumerated here.
cursor: The sprite for the cursor
explosion: The sprite of an explosion
footstep: The sprite of a noise indicator
animation_line: The sprite for a line
animation_hit: The sprite for a hit animation
highlight_item: The highlight, e.g. for containers with items in them

I have over a hundred of tiles mapped to objects that are defined god knows where… to name a few: fd_smoke, fd_gibs_flesh, player_male, vp_box, vp_seat, plenty of other vp_ stuff

Now, I guess some are obsolete… but is anywhere updated list of special non-json objects that should have tile attached?

The vehicle parts use the vp_ prefix. So if the json contains a vehicle part “cargo_space” the game looks for “vp_cargo_space” to display it.

fd_* are fields (fire, smoke, blood, …). The fields are defined in “src/fields.cpp” right at the top. There are the names that are shown for them. Look at src/field.h at the top is the list of the ids that the tileset should use.

player_male / player_female - the tile for the player ‘@’ - there is also npc_male and npc_female

“lighting_hidden”, “lighting_lowlight_light”, “lighting_lowlight_dark”, “lighting_boomered_light”, “lighting_boomered_dark” - those tiles represent squares that are not visible for various reasons.

Look into src/cata_tiles.cpp - that’s where the tiles come to life.

Thank you very much. I will check it out.

[quote=“BevapDin, post:2, topic:5326”]The vehicle parts use the vp_ prefix. So if the json contains a vehicle part “cargo_space” the game looks for “vp_cargo_space” to display it.

fd_* are fields (fire, smoke, blood, …). The fields are defined in “src/fields.cpp” right at the top. There are the names that are shown for them. Look at src/field.h at the top is the list of the ids that the tileset should use.

player_male / player_female - the tile for the player ‘@’ - there is also npc_male and npc_female

“lighting_hidden”, “lighting_lowlight_light”, “lighting_lowlight_dark”, “lighting_boomered_light”, “lighting_boomered_dark” - those tiles represent squares that are not visible for various reasons.

Look into src/cata_tiles.cpp - that’s where the tiles come to life.[/quote]

Could be very helpful to have that info integrated into the wiki, I might look into that in a moment.

These are all specials I have found… not counting unknown_CATEGORY and unknown_CATEGORY_SUBCATEGORY (by the way, my original plan was to generate these variants, until I found that category and subcategory are taken from different json fields, monster subcategory is specie, items subcategory is category (lol?)… my guess is for other things it would be different field again :stuck_out_tongue: )

{ "Tiles": [ "fd_blood", "fd_bile", "fd_gibs_flesh", "fd_gibs_veggy", "fd_web", "fd_slime", "fd_acid", "fd_sap", "fd_sludge", "fd_fire", "fd_rubble", "fd_smoke", "fd_toxic_gas", "fd_tear_gas", "fd_nuke_gas", "fd_gas_vent", "fd_fire_vent", "fd_flame_burst", "fd_electricity", "fd_fatigue", "fd_push_items", "fd_shock_vent", "fd_acid_vent", "fd_plasma", "fd_laser", "fd_blood_veggy", "fd_blood_insect", "fd_blood_invertebrate", "fd_gibs_insect", "fd_gibs_invertebrate", "lighting_hidden", "lighting_lowlight_light", "lighting_lowlight_dark", "lighting_boomered_light", "lighting_boomered_dark", "player_male", "player_female", "npc_male", "npc_female", "animation_hit", "animation_line", "animation_bullet_normal", "animation_bullet_flame", "animation_bullet_shrapnel", "weather_acid_drop", "weather_rain_drop", "weather_snowflake", "line_target", "line_trail", "cursor", "corpse", "highlight_item", "explosion", "footstep", "unknown" ] }