"paintSource_null": "If present, always ignores paintSource.", "faceModes_null": "If present, always ignores faceModes.", This is typically not needed, but some mods use marker entries in their tile entities' NBT that lead to ignoring serialized values otherwise (for example, EnderIO does this with its _null keys). The NBT stripping definition is used before applying serialized NBT to a newly deserialized tile entity. Thus, an empty filter means no NBT is serialized at all. Keep in mind that the present filter keys are the NBT entries that are kept. However, they can also be a nested filter definition, allowing to filter nested NBT tag compounds. The values can be used for comments or just be an empty string. NBT filters are defined as a list of keys to keep. Similar to block filters a tile entity filter can be condensed into just the block's registry name if there are no additional settings. whitelist.jsonĬontains a list of tile entity filters, which are made up of a block state filter (see blacklist), a sort index and a NBT filter and strip definition. Important: the blacklist is checked against the original block state of the block in question, not the mapped one. This would only blacklist chests facing east, but all furnaces, regardless of orientation. These contain a list of simple mappings of resource location to resource location, i.e. JSON file structure block_mappings.json and item_mappings.json whitelist.json is used to allow serialization of blocks with tile entities and defines NBT filtering and sort index configuration.Allows filtering by block state properties. This is tested even before converters are looked up. blacklist.json is used to completely forbid serialization of blocks.Note that this is used after block mapping has occurred, so mappings must be from mapped block to item where applicable. Typically used for some blocks that have no such relation registered, e.g. This takes priority, thus allows overriding the registered item for a block. item_mappings.json is used to look up items for blocks.Note that when mapping to a different block class, metadata will not be kept. Typically used to use an equivalent "default state" block in the blueprint, e.g. This mapping is done before any normal converter is run. block_mappings.json is used to replace blocks. Uses the sort index defined in the whitelist, defaulting to that of solid blocks. to prevent inventories or other unwanted state being copied. Used to handle tile entities whitelisted in whitelist.json, taking care of proper tile entity NBT filtering, e.g. Uses the same serialization logic as the simple block converter, but only operates on vanilla liquid blocks and fluid blocks by checking if the block implements IFluidBlock. Uses the same serialization logic as the simple block converter, but only operates on blocks that can fall (like sand and gravel) by checking if the block extends BlockFalling. If the block state's isFullBlock or isFullCube property is true, it will use the sort index for solid blocks, otherwise that for attached blocks. Operates on blocks that do not have a tile entity, and that do have a known item representation. All of them serialize both the block's registry name and metadata. These default converters operate on heuristics and a black- and whitelist to determine whether they are allowed to operate on any given block, and another heuristic determining whether the block is a "full" block or not, having to be placed before "attached" blocks. This is important, because otherwise there'd be no guarantee solid blocks are placed before blocks that rely on them, such as torches and levers. It also does some more stuff, like consuming materials, but the only other thing relevant here is that converters also provide a sort order for deserialization. So in other words, a converter is responsible for providing a two-way transformation between in-world blocks and a serialized representation of the block. Architect uses what I call converters to serialize blocks when converting a sketch into a blueprint, and again when deserializing a blueprint into the world. ConfigurationĪrchitects configuration is mainly done through JSON files controlling its built-in converters. I'd be happy to hear about you using it, though, just out of curiosity. This means you can use this mod in any mod pack as you please. All assets are public domain, unless otherwise stated all are free to be distributed as long as the license / source credits are kept. This mod is licensed under the MIT license. This mod requires Java 8! License / Use in Modpacks It provides a streamlined workflow for creating blueprints (patterns) from existing structures in the world, which can then be placed again at any position and rotation given the required materials are found in the player's inventory or accessible via a provider. Architect is a Minecraft mod that aims to make repetitive building tasks easier.
0 Comments
Leave a Reply. |