He just pm’d me back saying hes been keeping up with the tileset situation and that his body is ready.
I expect he will have a tileset ready almost as soon we get a version with tileset support.[/quote]
This week?
He just pm’d me back saying hes been keeping up with the tileset situation and that his body is ready.
I expect he will have a tileset ready almost as soon we get a version with tileset support.[/quote]
This week?
I’m still up for working on the tileset. I just don’t really remember where I left of and what was already sprited. Maybe have a general list of what still needs done on the OP?
Check the project’s link
Whelp, what’s the point of us even working on a tileset if some unknown deity is suppose to come in and “churn one out” lol.
Deon’s already made a tileset for Cataclysm back in Whales’ days and it wouldn’t hurt to have an alternative.
Perhaps all the tilesets could come in the options menu.
Options
Tileset: Default -> Deon’s Tiles -> CDDA Community Tiles -> Samscale’s Tiles (If I ever get around to finishing it)
I feel like making a tileset of my own so when that is done I will upload it. Sorry, guys Im dropping out of this one to go solo.
Any of the tiles on here can still be used or you can redo them I am redoing everything for my set so Its all up to you.
Yeah, I’m backing out as well. Any of my work can be used in anyone’s tilesets, you have full permission to do whatever you want with them.
I read a question on items which take up multiple tiles, like beds and benches?
What about just generalizing the tiles?
Like make a bench be several vertical slats of wood (Kind of like a locker room’s bench)
and beds could just be the mattress with no pillows or sheets or ‘edges’ (Just some indentations for where the springs are in the middles)
They should still be easy to Identify visually and be able to be added easily without looking weird when viewed from any angles.
I have seen it done before, and it typically works well.
Yeah, sure. I’ll send out my full list of hardcoded objects It’s rather lengthy heh
What I have so far:
Explanation and example snippit
Multitile Object Requirements:
Tag in JSON file: "multitile": 0 or 1 (default 0)
A 1 fully enclosed center tile
B 1 corner tile
C 1 t-connection tile
D 1 single width edge tile
E 1 end tile
F 1 unconnected tile
.........F.F
.BCB...F....
.CAC......F.
.BCB....F...
..........F.
.EDDDE...F..
............
Additional tags:
"additional_tiles": [] - Contains an array of extra tile references to display as each of the 6 above tiles.
If "multitile": 1 then the tile definition's "fg" and "bg" tags are ignored in favor of the contained tags,
unless one of the 6 tags is not specified, in which case it is set to the tile definition's values.
Something being multitile automatically assumes that some of its tiles can rotate; all but A and F in the above list.
Things that can be multitile:
Just about any terrain, though the majority will look better as just tiles and not contextually placed
Some fields (actually, pretty much any of them should look okay as a multitile except maybe the gibs)
Some Furnitures (beds, tables)
Tile Rotations:
Tag in JSON file: "rotates": 0 or 1 (default 0)
Tiles that rotate will check for the appropriate rotation and change their display automatically.
Example Use
{
"comments": "the <id> tag is required, but no other tags are required and will be set to default values of 0, 0, 0, 0, and [] in order. ",
"more_comments": "<fg> is the tile number of the foreground tile, drawn second. <bg> is the tile number of the background tile, drawn first.",
"even_more_comments": "<multitile> will automatically set rotates to true and then skip <rotates> tag. <additional_tiles> tag contains tile references",
"id":"value_from_list_below",
"fg":number,
"bg":number,
"multitile":0 or 1,
"rotates":0 or 1,
"additional_tiles":
[
{
"id": "center",
"fg": number
},
{
"id": "corner",
"fg": number
},
{
"id": "t_connection",
"fg": number
},
{
"id": "edge",
"fg": number
},
{
"id": "end",
"fg": number
},
{
"id": "unconnected",
"fg": number
}
]
}
Hardcoded Keys
LIGHTING KEYS
lighting_boomered_light,
lighting_boomered_dark,
lighting_lowlight_light,
lighting_lowlight_dark,
lighting_hidden
PC/NPC KEYS
npc_male,
npc_female,
player_male,
player_female
TERRAIN KEYS
t_hole
t_dirt
t_sand
t_dirtmound
t_pit_shallow
t_pit
t_pit_corpsed
t_pit_covered
t_pit_spiked
t_pit_spiked_covered
t_rock_floor
t_rubble
t_ash
t_metal
t_wreckage
t_grass
t_metal_floor
t_pavement
t_pavement_y
t_sidewalk
t_floor
t_dirtfloor
t_grate
t_slime
t_bridge
t_skylight
t_emergency_light_flicker
t_emergency_light
t_wall_log_half
t_wall_log
t_wall_log_chipped
t_wall_log_broken
t_palisade
t_palisade_gate
t_palisade_gate_o
t_wall_half
t_wall_wood
t_wall_wood_chipped
t_wall_wood_broken
t_wall_v
t_wall_h
t_concrete_v
t_concrete_h
t_wall_metal_v
t_wall_metal_h
t_wall_glass_v
t_wall_glass_h
t_wall_glass_v_alarm
t_wall_glass_h_alarm
t_reinforced_glass_v
t_reinforced_glass_h
t_bars
t_door_c
t_door_b
t_door_o
t_door_locked_interior
t_door_locked
t_door_locked_alarm
t_door_frame
t_chaingate_l
t_fencegate_c
t_fencegate_o
t_chaingate_c
t_chaingate_o
t_door_boarded
t_door_metal_c
t_door_metal_o
t_door_metal_locked
t_door_bar_c
t_door_bar_o
t_door_bar_locked
t_door_glass_c
t_door_glass_o
t_portcullis
t_recycler
t_window
t_window_taped
t_window_domestic
t_window_domestic_taped
t_window_open
t_curtains
t_window_alarm
t_window_alarm_taped
t_window_empty
t_window_frame
t_window_boarded
t_window_stained_green
t_window_stained_red
t_window_stained_blue
t_rock
t_fault
t_paper
t_tree
t_tree_young
t_tree_apple
t_underbrush
t_shrub
t_shrub_blueberry
t_shrub_strawberry
t_trunk
t_root_wall
t_wax
t_floor_wax
t_fence_v
t_fence_h
t_chainfence_v
t_chainfence_h
t_chainfence_posts
t_fence_post
t_fence_wire
t_fence_barbed
t_fence_rope
t_railing_v
t_railing_h
t_marloss
t_fungus
t_tree_fungal
t_water_sh
t_water_dp
t_water_pool
t_sewage
t_lava
t_sandbox
t_slide
t_monkey_bars
t_backboard
t_gas_pump
t_gas_pump_smashed
t_generator_broken
t_missile
t_missile_exploded
t_radio_tower
t_radio_controls
t_console_broken
t_console
t_gates_mech_control
t_gates_control_concrete
t_barndoor
t_palisade_pulley
t_sewage_pipe
t_sewage_pump
t_centrifuge
t_column
t_vat
t_stairs_down
t_stairs_up
t_manhole
t_ladder_up
t_ladder_down
t_slope_down
t_slope_up
t_rope_up
t_manhole_cover
t_card_science
t_card_military
t_card_reader_broken
t_slot_machine
t_elevator_control
t_elevator_control_off
t_elevator
t_pedestal_wyrm
t_pedestal_temple
t_rock_red
t_rock_green
t_rock_blue
t_floor_red
t_floor_green
t_floor_blue
t_switch_rg
t_switch_gb
t_switch_rb
t_switch_even
TRAP KEYS
tr_bubblewrap
tr_cot
tr_brazier
tr_funnel
tr_rollmat
tr_beartrap
tr_beartrap_buried
tr_snare
tr_nailboard
tr_tripwire
tr_crossbow
tr_shotgun_2
tr_shotgun_1
tr_engine
tr_blade
tr_light_snare
tr_heavy_snare
tr_landmine
tr_landmine_buried
tr_telepad
tr_goo
tr_dissector
tr_sinkhole
tr_pit
tr_spike_pit
tr_lava
tr_portal
tr_ledge
tr_boobytrap
tr_temple_flood
tr_temple_toggle
tr_glow
tr_hum
tr_shadow
tr_drain
tr_snake
FIELD KEYS
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
MONSTER KEYS
mon_squirrel
mon_rabbit
mon_deer
mon_moose
mon_wolf
mon_coyote
mon_bear
mon_cougar
mon_crow
mon_dog
mon_cat
mon_ant_larva
mon_ant
mon_ant_soldier
mon_ant_queen
mon_ant_fungus
mon_fly
mon_bee
mon_wasp
mon_graboid
mon_worm
mon_halfworm
mon_sludge_crawler
mon_zombie
mon_zombie_cop
mon_zombie_shrieker
mon_zombie_spitter
mon_zombie_electric
mon_zombie_smoker
mon_zombie_fast
mon_zombie_brute
mon_zombie_hulk
mon_zombie_fungus
mon_boomer
mon_boomer_fungus
mon_skeleton
mon_zombie_necro
mon_zombie_scientist
mon_zombie_soldier
mon_zombie_grabber
mon_zombie_master
mon_beekeeper
mon_zombie_child
mon_jabberwock
mon_triffid
mon_triffid_young
mon_triffid_queen
mon_creeper_hub
mon_creeper_vine
mon_biollante
mon_vinebeast
mon_triffid_heart
mon_fungaloid
mon_fungaloid_dormant
mon_fungaloid_young
mon_spore
mon_fungaloid_queen
mon_fungal_wall
mon_blob
mon_blob_small
mon_chud
mon_one_eye
mon_crawler
mon_sewer_fish
mon_sewer_snake
mon_sewer_rat
mon_rat_king
mon_mosquito
mon_dragonfly
mon_centipede
mon_frog
mon_slug
mon_dermatik_larva
mon_dermatik
mon_spider_wolf
mon_spider_web
mon_spider_jumping
mon_spider_trapdoor
mon_spider_widow
mon_dark_wyrm
mon_amigara_horror
mon_dog_thing
mon_headless_dog_thing
mon_thing
mon_human_snail
mon_twisted_body
mon_vortex
mon_flying_polyp
mon_hunting_horror
mon_mi_go
mon_yugg
mon_gelatin
mon_flaming_eye
mon_kreck
mon_gracke
mon_blank
mon_gozu
mon_shadow
mon_breather_hub
mon_breather
mon_shadow_snake
mon_dementia
mon_homunculus
mon_blood_sacrifice
mon_flesh_angel
mon_eyebot
mon_manhack
mon_skitterbot
mon_secubot
mon_hazmatbot
mon_copbot
mon_molebot
mon_tripod
mon_chickenbot
mon_tankbot
mon_turret
mon_exploder
mon_hallu_zom
mon_hallu_bee
mon_hallu_ant
mon_hallu_mom
mon_generator
FURNITURE KEYS
f_hay
f_bulletin
f_indoor_plant
f_bed
f_toilet
f_makeshift_bed
f_sink
f_oven
f_woodstove
f_fireplace
f_bathtub
f_chair
f_armchair
f_sofa
f_cupboard
f_trashcan
f_desk
f_exercise
f_bench
f_table
f_pool_table
f_counter
f_fridge
f_glass_fridge
f_dresser
f_locker
f_rack
f_bookcase
f_washer
f_dryer
f_dumpster
f_crate_c
f_crate_o
f_canvas_wall
f_canvas_door
f_canvas_door_o
f_groundsheet
f_fema_groundsheet
f_skin_wall
f_skin_door
f_skin_door_o
f_skin_groundsheet
f_mutpoppy
VEHICLE PART KEYS
vp_seat
vp_saddle
vp_bed
vp_frame_h
vp_frame_v
vp_frame_c
vp_frame_y
vp_frame_u
vp_frame_n
vp_frame_b
vp_frame_h2
vp_frame_v2
vp_frame_cover
vp_frame_handle
vp_board_h
vp_board_v
vp_board_y
vp_board_u
vp_board_n
vp_board_b
vp_aisle_h2
vp_aisle_v2
vp_floor_trunk
vp_roof
vp_door
vp_door_o
vp_door_i
vp_window
vp_blade_h
vp_blade_v
vp_spike_h
vp_wheel
vp_wheel_wide
vp_wheel_bicycle
vp_wheel_motorbike
vp_wheel_small
vp_engine_gas_1cyl
vp_engine_gas_v2
vp_engine_gas_i4
vp_engine_gas_v6
vp_engine_gas_v8
vp_engine_motor
vp_engine_motor_large
vp_engine_plasma
vp_engine_foot_crank
vp_fuel_tank_gas
vp_fuel_tank_batt
vp_fuel_tank_plut
vp_fuel_tank_hydrogen
vp_fuel_tank_water
vp_cargo_trunk
vp_cargo_box
// Adds coloring only
vp_steel_plate
vp_superalloy_plate
vp_spiked_plate
vp_hard_plate
vp_head_light
The example bits at the top may change a little as I do testing…
*Edit: Forgot to add a tag for non-viewable bits so you can make a tile not just a black square if you’d like.
Galenevil - is there any plan or ability to add multiple icons to a single monster (at least), and have it randomly choose which one to use when created? It would, in my opinion, add quite a bit to the monster horde if we could have a bit of graphical variety.
Maybe not worth the effort, though.
It’s not in the plans at the moment, hadn’t thought of it hehe. It is definitely doable so I’ll add it to my list as it seems like a cool feature. May not be going into the initial release if I start getting close to the wire.
Ill make say 5 variants of each monster if you want an idea of how many variant skins to code in Galen. Does the furniture and blood and stuff like that record what tile it is standing on? So I can give it a transparent background. Would it be possible to add seasonal variants to trees and triffids? Eg in summer they are deep green. In winter they have no leaves, In autumn they have red leaves etc Also I will make a new thread in The Lab for my own tileset.
@Samscale1: they do not directly record their locations, but it’s accessible through map::something(x,y). Seasonal variants would probably be easy enough to do, but like GG’s idea it will probably have to wait just a little while so I can get everything in the original plan working. Should mostly be just adding a few tags to the JSON and logic to handle it on my end. I’ll add it to the list of additional functionality I have going now so I can remember to work on it.
Edit: To prevent a dblpost just gonna edit this one:
Was unable to finish tile support last night, and I will have limited time to program over the next 5 days. I hope to use that limited time to its fullest and get this finished before I return on Tuesday though. I am heading to a family reunion for 5 days (today through Tuesday). The posted list should give any tile makers a good deal of stuff to work on though. I have one more tweak to add to the JSON files and then I will be able to post up the full list of tags and format, which I will do tonight after I get to my destination and can get it worked into the build.
For the moment, the only Terrain pieces that will be checked for multi-tile arrangement are Wall types, any that would have the ‘|’ (pipe) or ‘-’ (hyphen) symbols. Traps, Fields, Furniture can be multitilable and the support is there for it. Vehicle parts only need a single tile per visible part, and will be rotated as needed automatically. The reason for only walls being checked is because there are a lot of special cases that I need to work through to get everything playing nicely and I’ll need to test more to figure out all of the special cases.
Sorry for the additional wait, and thanks for the patience.
So the tileset support is going to make it easier for people to “put in” (I don’t know what the technical term is) their own tilesets?
also, what types of picture file compression will be used for the tiles? .gif? .png? .jpeg?
Sorry if I’m taking away time from your busy work schedule asking these questions.
I say BMP, PNG or TGA. Definitely not JPG :).
png would be my guess cause bmp would make the filesize way bigger
TGA IMHO is the best in terms of processing by many engines, however it makes sense when we talk about 3d games with many textures. Here, for pixel art, it usually does not matter, and it’s much easier to make .png transparency than TGA via alpha channels (at least in photoshop), so I would vote for png.
What about resolutions? Would 32x32 work fine like in old cataclysm?
Hey, Deon, Nice to see you back in action with a tileset. Im working on one too. I use 16 by 16 since its the default. I think. Can it be bigger, I didnt know
Would it be possible to change the player icon depending on the way they start? Like unemployed get a generic player with a t-shirt and jeans or scoundrel gets a hoodie and jeans in the sprite.