Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2

Author Topic: Tutorial and example spritesheets - Thread for tileset conversions  (Read 19093 times)

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist

Hey guys,

I'd like to show a few sprites and accompanying text files to show some of the under-the-hood changes of the new graphics. It should help the community with the making of new sprites or converting old tilesets to the new format.

Are there any specific requests? I'd start with the dwarf sprite itself and how the paperdoll system for the equipment works. :)
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::

vettlingr

  • Bay Watcher
  • Þjóðalfur
    • View Profile
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #1 on: March 02, 2021, 03:52:41 am »

I want to know how the game assigns custom colors to furniture, clothing, items etc.

Also, are the hair and skin colors preset or are they also assigned by the game?

How does the top layers work? do they support opacity?

General tile variation. To what extent does it apply? Terrain? Walls? Furniture?

Sprite sheets showing these would be appreciated.
« Last Edit: March 02, 2021, 07:00:10 am by vettlingr »
Logged

Vordak

  • Bay Watcher
    • View Profile
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #2 on: March 02, 2021, 06:31:27 am »

1) Examples for [PLANT:MUSHROOM_HELMET_PLUMP].
How does the tile system for the farm plants work in general?

Upd.
2) Example for one-tile furniture item. And same item, but multi-tiled (oblique) in all multiple tiles variations(1x2, 2x1, 1x3...). Without decorations.
3) Same for the animals. I.e., bear and multi-tile giant bear. In all variations - dead, child and other.
4) Something about the UI tiles - I don't know what exactly to ask about UI.
« Last Edit: March 02, 2021, 02:57:41 pm by Vordak »
Logged

jecowa

  • Bay Watcher
    • View Profile
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #3 on: March 02, 2021, 11:22:41 am »

Starting with dwarves sounds good. Dwarf graphics are what interest me the most. And it's probably the most helpful thing to know in advance.
Logged

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #4 on: March 04, 2021, 05:22:25 pm »

Let's start with the first question posted. :)

Quote
are the hair and skin colors preset or are they also assigned by the game?
We made five presets for the skin colors and six for the hair color. Those are assigned to the closest matching color in the raws, for example dwarves with chestnut hair and brown hair take the same brown preset. Initially we wanted to assign the colors just by a color overlay using the actual colors values from the raw files, but a brown haired, brown skinned, brown beared dwarf turned out to be somewhat unreadable because of low contrast; while a alabaster-skinned, black haired, red-bearded dwarf would look comical at best.

The colors and which sprites are assigned can be decided by any modder or tileset-maker in the raws:

Here the difference between light brown stubble and dark brown stubble assignments, taken from graphics_creatures_layered.txt:
Code: [Select]
[LAYER:STUBBLE_LBROWN:DWARF_HAIR:5:0]
[CONDITION_TISSUE_LAYER:BY_CATEGORY:HEAD:HAIR]
[TISSUE_MIN_LENGTH:1]
[TISSUE_MAX_LENGTH:49]
[TISSUE_MAY_HAVE_COLOR:AMBER:AUBURN:BURNT_SIENNA:DARK_CHESTNUT:LIGHT_BROWN:OCHRE:PALE_BROWN:SEPIA:TAUPE_DARK:TAUPE_GRAY:TAUPE_MEDIUM]
[SHUT_OFF_IF_ITEM_PRESENT:BY_CATEGORY:HEAD:HELM:ITEM_HELM_SCARF_HEAD:ITEM_HELM_TURBAN:ITEM_HELM_HELM:ITEM_HELM_VEIL_HEAD:ITEM_HELM_HOOD]
[SHUT_OFF_IF_ITEM_PRESENT:BY_CATEGORY:BODY_UPPER:ARMOR:ITEM_ARMOR_CLOAK]

[LAYER:STUBBLE_DBROWN:DWARF_HAIR:6:0]
[CONDITION_TISSUE_LAYER:BY_CATEGORY:HEAD:HAIR]
[TISSUE_MIN_LENGTH:1]
[TISSUE_MAX_LENGTH:49]
[TISSUE_MAY_HAVE_COLOR:BROWN:BURNT_UMBER:CHOCOLATE:DARK_BROWN]
[SHUT_OFF_IF_ITEM_PRESENT:BY_CATEGORY:HEAD:HELM:ITEM_HELM_SCARF_HEAD:ITEM_HELM_TURBAN:ITEM_HELM_HELM:ITEM_HELM_VEIL_HEAD:ITEM_HELM_HOOD]
[SHUT_OFF_IF_ITEM_PRESENT:BY_CATEGORY:BODY_UPPER:ARMOR:ITEM_ARMOR_CLOAK]

As you can see it looks for the hair tissue color in the creature raws. It starts with LAYER:STUBBLE_LBROWN:DWARF_HAIR:5:0, so we are looking for very short light brown hair on dwarves, followed by the tile coordinates in the spritesheet, 5:0.

It has a condition: CONDITION_TISSUE_LAYER:BY_CATEGORY:HEAD:HAIR, aka the creature needs to have hair in the first place. If the dwarf is bald, it doesn't get a sprite. The other conditions are [TISSUE_MIN_LENGTH:1] to [TISSUE_MAX_LENGTH:49], which means that the hair has to be in this length range to count as "stubble". The final condition is the actual color, where we added the raw-defined colors that are closest to light brown: [TISSUE_MAY_HAVE_COLOR:AMBER:AUBURN:BURNT_SIENNA:DARK_CHESTNUT:LIGHT_BROWN:OCHRE:PALE_BROWN:SEPIA:TAUPE_DARK:TAUPE_GRAY:TAUPE_MEDIUM]

In theory you could split those up into one color each, as you like. Or add pink-haired dwarves. Or make only one hair color and ignore the raws and the extra work.

The last two lines are important to make hair look good with clothing: In case you are wearing helmets, the hair is not shown, since it would either be hidden anyway or the hair sprite would spill over the helmet sprite, which would look odd: [SHUT_OFF_IF_ITEM_PRESENT:BY_CATEGORY:HEAD:HELM:ITEM_HELM_SCARF_HEAD:ITEM_HELM_TURBAN:ITEM_HELM_HELM:ITEM_HELM_VEIL_HEAD:ITEM_HELM_HOOD]
         [SHUT_OFF_IF_ITEM_PRESENT:BY_CATEGORY:BODY_UPPER:ARMOR:ITEM_ARMOR_CLOAK]

The spritesheet looks like this, except for a lot more hair styles in the end:



I will probably make a sheet with all raw-based colors down the line, just because I'm curious, even if it only ends up in my own private set.



Next question:
Quote
How does the top layers work? do they support opacity?

We haven't done much with top layers yet; those are for the end when we refine the look of the ingame objects. The code is written, works and we tested it on metal weapons. We split the spritesheet into a section that gets recolored based on the material color from the raws (like gold, silver, iron) and a part that always retains it's original color, copied on top. That layer supports opacity.

We also have a third file that's just the black outlines of the sprite for now, but technically it isn't needed. Just making extra sure that there is a strong contrast between item sprite and background sprites like floors, grass, etc.

The code looks like this:
Code: [Select]
[WEAPON_GRAPHICS:ITEM_WEAPON_CROSSBOW]
[WEAPON_GRAPHICS_DEFAULT:WEAPONS:0:6]
[WEAPON_GRAPHICS_MATERIAL:WEAPONS:0:6]
[WEAPON_GRAPHICS_WOOD:WEAPONS_WOOD:0:6]
[WEAPON_GRAPHICS_OUTLINE:WEAPONS_OUTLINE:0:6]

WEAPON_GRAPHICS_DEFAULT is the regular weapon sprite, if for some reason something doesn't use the material recolor. It would use the sprite as is.
WEAPON_GRAPHICS_MATERIAL is the sprite that gets recolored.
WEAPON_GRAPHICS_WOOD is the sprite that does not get recolored. Tarn called it wood because we tested it on the weapon shafts and grips, which look like wood. I assume the naming scheme might change later on.
WEAPON_GRAPHICS_OUTLINE is the black border around the sprite. Not sure if we keep it, because technically we could just use the WEAPON_GRAPHICS_WOOD sprite for that too.

Sprites would be in different sheets, but would look something like this:





Quote
General tile variation. To what extent does it apply? Terrain? Walls? Furniture?

We are currently using 4 variants for worldmap tiles, grasses, natural floors, natural walls, some furniture. Anything with a large surface area or anything that is being seen a lot in a fort. We want to make variants on furniture optional and/or selectable. Player should be able to easily cycle through a few looks for a bed or cabinet for example.

There aren't any clear rules for this yet since it's work in progress; making variants of sprites is not a high priority right now, it's more important to draw sprites for objects that don't have any yet.
« Last Edit: March 04, 2021, 07:27:37 pm by Meph »
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::

jecowa

  • Bay Watcher
    • View Profile
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #5 on: March 04, 2021, 07:36:32 pm »

This is a lot more customizable than I was expecting.

Quote
We made five presets for the skin colors and six for the hair color.

Are the presets a hard-coded thing or are you saying the vanilla graphics have 5 skin colors and 6 hair colors?
Logged

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #6 on: March 04, 2021, 08:20:40 pm »

Vanilla DF has 37 hair colors and 18 hair colors.

The presets are not hardcoded. As I explained above, you can edit the text file. Add as many as you like. For my personal use I of course made a file that uses all the RAW colors, but it's a bit large with a meager 1102 sprites:

« Last Edit: March 05, 2021, 05:46:46 am by Meph »
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::

jecowa

  • Bay Watcher
    • View Profile
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #7 on: March 05, 2021, 03:46:47 am »

Is there going to be a labor-based layer so chefs can wear chefs hats and surgeons can wear surgeon masks? What all layers does a dwarf sprite have so far? Will we be able to see a dwarf missing a sock?
Logged

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #8 on: March 05, 2021, 04:36:48 am »

Is there going to be a labor-based layer so chefs can wear chefs hats and surgeons can wear surgeon masks?

Yes, you can change those based on the profession if you'd like. Right now we do this:

Code: [Select]
[LAYER:CLOTHING_LF_DBLUE:DWARF_CLOTHING:15:20][CONDITION_ITEM_WORN:BY_TOKEN:LF:SHOES:ITEM_SHOES_SHOES:ITEM_SHOES_BOOTS:ITEM_SHOES_BOOTS_LOW:ITEM_SHOES_SANDAL:ITEM_SHOES_CHAUSSE:ITEM_SHOES_SOCKS]
[CONDITION_PROFESSION_CATEGORY:FISHERY_WORKER]

Which translated to regular speech means: If a dwarf wears any sort of shoe item on the left foot and is a fishery worker, use the dark blue shoe sprite.

That means you could recolor it; make one for each shoe; give fishery workers a peg-leg if you want them to look like pirates; or give a human fishery worker a completely different sprite from a dwarf fishery worker. It's quite open ended.

Once again, my own private modded version is slightly different from the one above, I have sprites for each shoe type:




Quote
What all layers does a dwarf sprite have so far?

A lot. I think we are at 513 atm.



Quote
Will we be able to see a dwarf missing a sock?

Yeah. :) Only if you have good eyes though, feet are just 5 pixels.
« Last Edit: March 05, 2021, 04:41:15 am by Meph »
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #9 on: March 05, 2021, 05:16:14 am »

Now to Vordaks questions:

Quote
1) Examples for [PLANT:MUSHROOM_HELMET_PLUMP].
How does the tile system for the farm plants work in general?
We haven't done special plants in farmplots yet.

Plump helmets use the same setup as right now in the game, with the one addition of a specific seed/spawn sprite. Here the plant, picked item and seed for plump helmets:



Ultimately we'd like to do some variants and a growth-animation for farm plots, but that's stretch goals for the end.



Quote
2) Example for one-tile furniture item. And same item, but multi-tiled (oblique) in all multiple tiles variations(1x2, 2x1, 1x3...). Without decorations.
Furniture items can't be multi-tiles. Build furniture can, but currently only supports an extra tile on the top for an 1x2 size.

Here a table spritesheet:



The setup we use shows four different materials (top to bottom: wood, stone, metal, glass), seven different qualities (left to right: Regular, Well-crafted, Finely-crafted, Superior quality, Exceptional, Masterful, Artefact), then four variants (top to bottom), five decorations (spikes, rings, studs, images and bands), three wear states (25% broken, 50% broken, 75% broken), and four spatter variants (blood, vomit, water and mud).

Code looks like this:

Code: [Select]
[TILE_GRAPHICS:FURNITURE2:0:1:ITEM_TABLE]
[TILE_GRAPHICS:ITEM_TABLE:0:0:ITEM_TABLE_WOOD:1]
[TILE_GRAPHICS:ITEM_TABLE:1:0:ITEM_TABLE_WOOD:2]
[TILE_GRAPHICS:ITEM_TABLE:2:0:ITEM_TABLE_WOOD:3]
[TILE_GRAPHICS:ITEM_TABLE:3:0:ITEM_TABLE_WOOD:4]
[TILE_GRAPHICS:ITEM_TABLE:4:0:ITEM_TABLE_WOOD:5]
[TILE_GRAPHICS:ITEM_TABLE:5:0:ITEM_TABLE_WOOD:6]
[TILE_GRAPHICS:ITEM_TABLE:6:0:ITEM_TABLE_WOOD:7]
[TILE_GRAPHICS:ITEM_TABLE:0:1:ITEM_TABLE_STONE:1]
[TILE_GRAPHICS:ITEM_TABLE:1:1:ITEM_TABLE_STONE:2]
[TILE_GRAPHICS:ITEM_TABLE:2:1:ITEM_TABLE_STONE:3]
[TILE_GRAPHICS:ITEM_TABLE:3:1:ITEM_TABLE_STONE:4]
[TILE_GRAPHICS:ITEM_TABLE:4:1:ITEM_TABLE_STONE:5]
[TILE_GRAPHICS:ITEM_TABLE:5:1:ITEM_TABLE_STONE:6]
[TILE_GRAPHICS:ITEM_TABLE:6:1:ITEM_TABLE_STONE:7]
[TILE_GRAPHICS:ITEM_TABLE:0:2:ITEM_TABLE_METAL:1]
[TILE_GRAPHICS:ITEM_TABLE:1:2:ITEM_TABLE_METAL:2]
[TILE_GRAPHICS:ITEM_TABLE:2:2:ITEM_TABLE_METAL:3]
[TILE_GRAPHICS:ITEM_TABLE:3:2:ITEM_TABLE_METAL:4]
[TILE_GRAPHICS:ITEM_TABLE:4:2:ITEM_TABLE_METAL:5]
[TILE_GRAPHICS:ITEM_TABLE:5:2:ITEM_TABLE_METAL:6]
[TILE_GRAPHICS:ITEM_TABLE:6:2:ITEM_TABLE_METAL:7]
[TILE_GRAPHICS:ITEM_TABLE:0:3:ITEM_TABLE_GLASS:1]
[TILE_GRAPHICS:ITEM_TABLE:1:3:ITEM_TABLE_GLASS:2]
[TILE_GRAPHICS:ITEM_TABLE:2:3:ITEM_TABLE_GLASS:3]
[TILE_GRAPHICS:ITEM_TABLE:3:3:ITEM_TABLE_GLASS:4]
[TILE_GRAPHICS:ITEM_TABLE:4:3:ITEM_TABLE_GLASS:5]
[TILE_GRAPHICS:ITEM_TABLE:5:3:ITEM_TABLE_GLASS:6]
[TILE_GRAPHICS:ITEM_TABLE:6:3:ITEM_TABLE_GLASS:7]
[TILE_GRAPHICS:ITEM_TABLE:7:0:ITEM_TABLE_LEG_VARIANT:1]
[TILE_GRAPHICS:ITEM_TABLE:7:1:ITEM_TABLE_LEG_VARIANT:2]
[TILE_GRAPHICS:ITEM_TABLE:7:2:ITEM_TABLE_LEG_VARIANT:3]
[TILE_GRAPHICS:ITEM_TABLE:7:3:ITEM_TABLE_LEG_VARIANT:4]
[TILE_GRAPHICS:ITEM_TABLE:8:0:ITEM_TABLE_SPIKES]
[TILE_GRAPHICS:ITEM_TABLE:8:1:ITEM_TABLE_RINGS]
[TILE_GRAPHICS:ITEM_TABLE:8:2:ITEM_TABLE_STUDS]
[TILE_GRAPHICS:ITEM_TABLE:8:3:ITEM_TABLE_ENGRAVING]
[TILE_GRAPHICS:ITEM_TABLE:9:3:ITEM_TABLE_BANDS]
[TILE_GRAPHICS:ITEM_TABLE:9:2:ITEM_TABLE_DAMAGE:1]
[TILE_GRAPHICS:ITEM_TABLE:9:1:ITEM_TABLE_DAMAGE:2]
[TILE_GRAPHICS:ITEM_TABLE:9:0:ITEM_TABLE_DAMAGE:3]
[TILE_GRAPHICS:ITEM_TABLE:10:0:ITEM_TABLE_BLOOD]
[TILE_GRAPHICS:ITEM_TABLE:10:1:ITEM_TABLE_VOMIT]
[TILE_GRAPHICS:ITEM_TABLE:10:2:ITEM_TABLE_WATER]
[TILE_GRAPHICS:ITEM_TABLE:10:3:ITEM_TABLE_MUD]

It's fairly simple, with the item type, the sprite coordinates, and a sprite type with a number after it. For example ITEM_TABLE_DAMAGE:3 is for tables with 75-99% wear, or the ITEM_TABLE_GLASS:6 and 7 are for masterful glass tables and artefact glass tables.



Quote
3) Same for the animals. I.e., bear and multi-tile giant bear. In all variations - dead, child and other.
Creatures are fairly simple and use the same setup as before, except that we added corpse sprites. The undead variants are currently purple recolors, although I handed in a suggestion for a later update that makes actual zombie and skeleton sprites instead.

Here a reindeer:



Code: [Select]
[CREATURE_GRAPHICS:REINDEER]
[DEFAULT:CREATURES_DOMESTIC:0:17:AS_IS]
   [CHILD:CREATURES_DOMESTIC:1:17:AS_IS:DEFAULT]
[ANIMATED:CREATURES_DOMESTIC:2:17:AS_IS]
   [CHILD:CREATURES_DOMESTIC:3:17:AS_IS:ANIMATED]
          [CORPSE:CREATURES_DOMESTIC:10:17:AS_IS]
           [CHILD:CREATURES_DOMESTIC:11:17:AS_IS:CORPSE]

The code is fairly simple: Adult creatures, children, undeads, undead children, corpses, child corpses. The numbers are the tile position, AS_IS means that the sprite displays like it's drawn; without any recolors.

The giant versions are for the most part the same sprites with 2x zoom. Those go up to 96x64 in size. This changes the necessary code a bit, here a giant aardvark code:

Code: [Select]
[CREATURE_GRAPHICS:GIANT_AARDVARK]
     [DEFAULT:CREATURES_SURFACE_GIANT:LARGE_IMAGE:0:0:2:1:AS_IS]
       [CHILD:CREATURES_SURFACE_GIANT:3:1:AS_IS:DEFAULT]
    [ANIMATED:CREATURES_SURFACE_GIANT:LARGE_IMAGE:5:0:7:1:AS_IS]
       [CHILD:CREATURES_SURFACE_GIANT:8:1:AS_IS:DEFAULT]
    [CORPSE:CREATURES_SURFACE_GIANT:10:1:AS_IS]
       [CHILD:CREATURES_SURFACE_GIANT:11:1:AS_IS:CORPSE]

As you can see there is one change, the new tag LARGE_IMAGE. This is being used for sprites that are larger than a tile. It's followed by two coordinates, the top-left corner of a rectangle and the bottom-right corner of a rectangle. Anything within that space will be used for the sprite.

Here the sprites: A big aardvark that takes up 3x2 tiles. We give the coordinates for a box, top-left, bottom-right, and the entire sprite is used:


The corpses are smaller and fit into a single tile because we decided it would look better in stockpiles etc. It's simpler to show a dwarf carrying a 1-tile corpse; having a lot of oversized corpses right next to each other in a stockpile would look extremely busy. That's why they got a little downsizing. :)


Quote
4) Something about the UI tiles - I don't know what exactly to ask about UI.
The UI is not anywhere near finished, we only occasionally do a few sprites for the Steam screenshots, but none of them are intended for the final version.
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::

jecowa

  • Bay Watcher
    • View Profile
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #11 on: March 05, 2021, 07:33:52 pm »

512 layers is a lot. That sounds kind of intensive. Could I just use hair, skin, and profession? Or could I include just the profession layer as a lazy way to port dwarfs from legacy graphics packs?
Logged

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #12 on: March 05, 2021, 08:04:15 pm »

How are creature caste sprites handled?
They just have a unique ID per caste.

For example if you have a regular creature with one sprite for male and female, it's :[CREATURE_GRAPHICS:DAMSELFLY_MAN]
But if you want to split it up by caste, it's: [CREATURE_CASTE_GRAPHICS:DEER_MAN:MALE] with MALE being the Caste ID. It could be QUEEN for ant queens, or GOLEM_2_SWORD_HANDS_ADAMANTINE. It's up to the modder.

The only changes to regular creature sprites from CREATURE_GRAPHICS:CREATURE_ID to CREATURE_CASTE_GRAPHICS:CREATURE_ID:CASTE_ID. That's it.

512 layers is a lot. That sounds kind of intensive. Could I just use hair, skin, and profession? Or could I include just the profession layer as a lazy way to port dwarfs from legacy graphics packs?
You can set the file up as you like, be it 0 layers or 10.000. If you just want one dwarf sprite for each profession, regardless of their equipment, then that's all you have to do. But if you want to show off those adamantine artefact gauntlets, you might have to define the hands as a separate layer at least.
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::

vettlingr

  • Bay Watcher
  • Þjóðalfur
    • View Profile
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #13 on: March 06, 2021, 09:43:41 am »

Code: [Select]
[TILE_GRAPHICS:FURNITURE2:0:1:ITEM_TABLE]
[TILE_GRAPHICS:ITEM_TABLE:0:0:ITEM_TABLE_WOOD:1]
[TILE_GRAPHICS:ITEM_TABLE:1:0:ITEM_TABLE_WOOD:2]
[TILE_GRAPHICS:ITEM_TABLE:2:0:ITEM_TABLE_WOOD:3]
[TILE_GRAPHICS:ITEM_TABLE:3:0:ITEM_TABLE_WOOD:4]
[TILE_GRAPHICS:ITEM_TABLE:4:0:ITEM_TABLE_WOOD:5]
[TILE_GRAPHICS:ITEM_TABLE:5:0:ITEM_TABLE_WOOD:6]
[TILE_GRAPHICS:ITEM_TABLE:6:0:ITEM_TABLE_WOOD:7]
[TILE_GRAPHICS:ITEM_TABLE:0:1:ITEM_TABLE_STONE:1]
[TILE_GRAPHICS:ITEM_TABLE:1:1:ITEM_TABLE_STONE:2]
[TILE_GRAPHICS:ITEM_TABLE:2:1:ITEM_TABLE_STONE:3]
[TILE_GRAPHICS:ITEM_TABLE:3:1:ITEM_TABLE_STONE:4]
[TILE_GRAPHICS:ITEM_TABLE:4:1:ITEM_TABLE_STONE:5]
[TILE_GRAPHICS:ITEM_TABLE:5:1:ITEM_TABLE_STONE:6]
[TILE_GRAPHICS:ITEM_TABLE:6:1:ITEM_TABLE_STONE:7]
[TILE_GRAPHICS:ITEM_TABLE:0:2:ITEM_TABLE_METAL:1]
[TILE_GRAPHICS:ITEM_TABLE:1:2:ITEM_TABLE_METAL:2]
[TILE_GRAPHICS:ITEM_TABLE:2:2:ITEM_TABLE_METAL:3]
[TILE_GRAPHICS:ITEM_TABLE:3:2:ITEM_TABLE_METAL:4]
[TILE_GRAPHICS:ITEM_TABLE:4:2:ITEM_TABLE_METAL:5]
[TILE_GRAPHICS:ITEM_TABLE:5:2:ITEM_TABLE_METAL:6]
[TILE_GRAPHICS:ITEM_TABLE:6:2:ITEM_TABLE_METAL:7]
[TILE_GRAPHICS:ITEM_TABLE:0:3:ITEM_TABLE_GLASS:1]
[TILE_GRAPHICS:ITEM_TABLE:1:3:ITEM_TABLE_GLASS:2]
[TILE_GRAPHICS:ITEM_TABLE:2:3:ITEM_TABLE_GLASS:3]
[TILE_GRAPHICS:ITEM_TABLE:3:3:ITEM_TABLE_GLASS:4]
[TILE_GRAPHICS:ITEM_TABLE:4:3:ITEM_TABLE_GLASS:5]
[TILE_GRAPHICS:ITEM_TABLE:5:3:ITEM_TABLE_GLASS:6]
[TILE_GRAPHICS:ITEM_TABLE:6:3:ITEM_TABLE_GLASS:7]
[TILE_GRAPHICS:ITEM_TABLE:7:0:ITEM_TABLE_LEG_VARIANT:1]
[TILE_GRAPHICS:ITEM_TABLE:7:1:ITEM_TABLE_LEG_VARIANT:2]
[TILE_GRAPHICS:ITEM_TABLE:7:2:ITEM_TABLE_LEG_VARIANT:3]
[TILE_GRAPHICS:ITEM_TABLE:7:3:ITEM_TABLE_LEG_VARIANT:4]
[TILE_GRAPHICS:ITEM_TABLE:8:0:ITEM_TABLE_SPIKES]
[TILE_GRAPHICS:ITEM_TABLE:8:1:ITEM_TABLE_RINGS]
[TILE_GRAPHICS:ITEM_TABLE:8:2:ITEM_TABLE_STUDS]
[TILE_GRAPHICS:ITEM_TABLE:8:3:ITEM_TABLE_ENGRAVING]
[TILE_GRAPHICS:ITEM_TABLE:9:3:ITEM_TABLE_BANDS]
[TILE_GRAPHICS:ITEM_TABLE:9:2:ITEM_TABLE_DAMAGE:1]
[TILE_GRAPHICS:ITEM_TABLE:9:1:ITEM_TABLE_DAMAGE:2]
[TILE_GRAPHICS:ITEM_TABLE:9:0:ITEM_TABLE_DAMAGE:3]
[TILE_GRAPHICS:ITEM_TABLE:10:0:ITEM_TABLE_BLOOD]
[TILE_GRAPHICS:ITEM_TABLE:10:1:ITEM_TABLE_VOMIT]
[TILE_GRAPHICS:ITEM_TABLE:10:2:ITEM_TABLE_WATER]
[TILE_GRAPHICS:ITEM_TABLE:10:3:ITEM_TABLE_MUD]

I notice the
   [TILE_GRAPHICS:ITEM_TABLE:7:0:ITEM_TABLE_LEG_VARIANT:1]
   [TILE_GRAPHICS:ITEM_TABLE:7:1:ITEM_TABLE_LEG_VARIANT:2]
   [TILE_GRAPHICS:ITEM_TABLE:7:2:ITEM_TABLE_LEG_VARIANT:3]
   [TILE_GRAPHICS:ITEM_TABLE:7:3:ITEM_TABLE_LEG_VARIANT:4]
Seem to be variable regardless of quality, disrepair, decorations etc. Is there a limit to how many variants are possible, and is there a way to make them share the same material colour as ITEM_TABLE_METAL or ITEM_TABLE_STONE?

Meph

  • Bay Watcher
    • View Profile
    • worldbicyclist
Re: Tutorial and example spritesheets - Thread for tileset conversions
« Reply #14 on: March 06, 2021, 12:08:58 pm »

To keep the sprite count lower, I made the variants separate from the quality, decoration, etc. Currently there are 4 hardcoded variants for furniture. Those can't be changed. Maybe that will change, but that's the current setup. The plan was that people can cycle through those ingame as they like or disable them. We haven't discussed making the amount of variants editable.
Logged
::: ☼Meph Tileset☼☼Map Tileset☼- 32x graphic sets with TWBT :::
::: ☼MASTERWORK DF☼ - A comprehensive mod pack now on Patreon - 250.000+ downloads and counting :::
::: WorldBicyclist.com - Follow my bike tours around the world - 148 countries visited :::
Pages: [1] 2