-
Notifications
You must be signed in to change notification settings - Fork 16
Resource Packs
assets/packid/textures/atlas/tile/*.png|mcmeta
Tiles are in an autotile-like format.
They're split into 8x8 "subtiles", each being drawn depending on which of the neighbouring textures are "tiling" to them:
The top left subtiles are used for tight outer corners, the top right used for inner corners, and the bottom subtiles are used for larger contiguous areas.
Because of this, the center 4 tiles must tile to themselves in order for the texture to appear without seams - this is often achieved by leaving it almost blank as above.
// base/sand.json
{
"antique_atlas:tiling": {
"parent": "antique_atlas:base/flat",
"tags": [
"antique_atlas:sand"
],
"tilesTo": [
"#antique_atlas:sand",
"#antique_atlas:sand_hills_low"
]
}
}
The metafile is used entirely to control which other textures should be "tiled" to.
That is, when "connecting" subtiles should be used instead of the border ones when it is a neighbour.
The parent
field can be used to inherit all fields from another texture - most biomes inherit from a "base" that provides a terrain shape.
The tag
field can be used to add this texture to a group, used when specifying tiling.
The tilesTo
, tilesToVertical
, and tilesToHorizontal
arrays make this texture connect to those specified.
The tilesToThis
, tilesToThisVertical
, and tilesToThisHorizontal
arrays make the specified textures connect to this one instead.
This takes some time to unpick and has a lot of redundant options - peruse the builtin pack for usage examples and always be sure to test in-game.
assets/packid/textures/atlas/marker/*.png|mcmeta
Markers without metafiles are 32x32 and displayed centered on the cursor.
If a marker is in the custom/
subfolder, it will be added to the "add marker" modal in-game.
An optional *_accent.png
can be added which will be drawn directly over the main texture, tinted to the dye colour of the landmark.
// end_city.json
{
"antique_atlas:marker": {
"textureWidth": 64,
"textureHeight": 64,
"mipLevels": 2,
"offsetY": -48
}
}
The metafile is used to adjust texture rendering specifics for the marker.
This can be used to create abnormally large (textureWidth
and textureHeight
) or uncentered (offsetX
and offsetY
) markers as above.
The offset is how the texture should be panned relative to the top left of the texture - this is -width/2
and -height/2
by default (centered).
The mipLevels
field allows power-of-two mipmap textures to be added to the right of the main texture.
In the end city example, the first mip level is 32x32, then the second mip level is 16x16 - for a total of 2 mip levels. (and a 112x64 texture, which is calculated for you)
assets/namespace/atlas/biome/path.json
for biomenamespace:path
// assets/minecraft/atlas/biome/frozen_ocean
{
"textures": "antique_atlas:biome/nonland/ocean/frozen/ice_ice_spikes"
}
The parent
field allows deferring the entire definition of the biome to another existing biome's - useful for quickly configuring modpacks.
Otherwise, the textures
field is used to directly set the textures for the biome.
The field accepts a tile texture ID (without the textures/atlas/tile/
part) - which is then used to represent the biome in the map.
It can also accept an array of texture IDs, which will be used at random, or a texture -> integer object, for randomness with weights.
Finally, the texture field also accepts an object with elevations - valley
, low
, mid
, high
, and peak
- each accepting the above.
These will be used when the terrain is at Y <73, <83, <98, <113, and above respectively - adjusting to sea level changes.
// assets/minecraft/atlas/biome/badlands
{
"textures": {
"valley": [
"antique_atlas:biome/arid/desert/sand_1",
"antique_atlas:biome/arid/desert/sand_cacti_sparse",
"antique_atlas:biome/arid/desert/sand_shrubs"
],
"low": {
"antique_atlas:biome/arid/badlands/terracotta_shrubs_tiered": 4,
"antique_atlas:biome/arid/badlands/terracotta_tiered": 2,
"antique_atlas:biome/arid/badlands/terracotta_tiered_rough": 2,
"antique_atlas:biome/arid/badlands/terracotta_tiered_separate": 1
},
"peak": [
"antique_atlas:biome/arid/badlands/shrubs_plateau_low",
"antique_atlas:biome/arid/badlands/terracotta_plateau_low"
]
}
}
assets/namespace/atlas/structure/start/path.json
for structurenamespace:path
assets/namespace/atlas/structure/tag/path.json
for structures of tag#namespace:path
assets/namespace/atlas/structure/type/path.json
for structures of typenamespace:path
assets/namespace/atlas/structure/piece/type/path.json
for structure pieces of typenamespace:path
assets/namespace/atlas/structure/piece/jigsaw/single/path.json
for single jigsaw piecenamespace:path
assets/namespace/atlas/structure/piece/jigsaw/feature/path.json
for feature jigsaw piecenamespace:path
// assets/minecraft/atlas/structure/piece/type/necsr.json
{
"displayId": "minecraft:nether_fortress_corridor_nether_warts_room", // for debug mode
"priority": 50,
"textures": "antique_atlas:structure/fortress/nether/nether_fortress_corridor_nether_warts_room"
}
Structures are provided a priotity
field, which determines how whether they should appear on top of other structures if they appear in the same chunk.
Lower is more important.
Like biomes, structures use the textures
field in the same manner for tile textures.
Instead of elevation, structures instead have a variety of identified "Chunk Matchers" which determine whether the texture should appear, as well as over which chunks.
ID | Behavior |
---|---|
center | always shown, at the center of the object's bounding box. Used when no matcher is specified. |
center_above_ground | only shown if the center of the box is above sea level. |
center_top_above_ground | only shown if the top of the box is above sea level. |
center_horizontal | only shown if the box is longer horizontally |
center_vertical | only shown if the box is longer vertically |
bridge_horizontal | only shown if multiple chunks are spanned horizontally, over all those chunks. |
bridge_vertical | only shown if multiple chunks are spanned vertically, over all those chunks. |
path_straight_horizontal | only shown if a jigsaw has two junctions and they are aligned horizontally |
path_straight_vertical | only shown if a jigsaw has two junctions and they are aligned vertically |
// assets/minecraft/atlas/structure/piece/type/iglu.json
{
"displayId": "minecraft:igloo",
"textures": {
"center_top_above_ground": "antique_atlas:structure/igloo/igloo"
}
}
// assets/minecraft/atlas/structure/start/village_savanna.json
{
"markers": "antique_atlas:structure/plains_village"
}
// assets/antique_atlas/lang/en_us.json
{
"structure.start.minecraft.village_savanna": "Savanna Village"
}
Just a direct reference to the marker texture (without the texture/atlas/marker
part).
The translation key is used for the tooltip, and matches the path used for the json file.
Please keep in mind that all textures in this project are CC BY-NC-SA - if you derive from them, you must adhere to this license.
Feel free to contribute any resource packs to the Antique Atlas 4 Resource Packs Repo - where we're also happy to help with any technical questions.
Thank you!