-
Added hitbox redirects. Note: hitbox redirects are applied via checking base variant and will not be applied if you use nametag.
- Hitbox redirects should go in
hitbox_redirects
folder in your data pack under any namespace. - For each species file should be named respectively (i.e.
triple_stryke
for Triple Stryke andmonstrous_nightmare
for Monstrous Nightmare)-
Each record in hitbox redirects file can have the following fields:
name
- name of the variant to which will be affected, mandatorypassenger_positions
- overrides passenger positions relative to the entity, optional. Presented in form of an array that contains relative positions, which are itself are arrays with size of 3, for each passenger in order. I.e. writing like this:
"passenger_positions": [ [-1, 2, 0], [2, 3, -3] ]
means that first passenger (aka controlling passenger or rider) will be offset on -1, 2 and 0 on x, y and z axis respectively relative to vehicle (aka dragon in our case) entity's center. Second passenger will be offset on 2, 3 and -3 on x, y and z axis respectively relative to the center. If there's no redirect for passenger position is found, passenger will be positioned according to how base mod does it.
hitbox
- overrides entity's hitbox, optional. Has the following fields:width
andheight
. Both are mandatory. If not specified, default hitbox will be usedattack_box
- overrides attack box sizes for dragons that have it (Gronkle, Stinger, Triple Stryke), optional. Just likehitbox
, haswidth
andheight
fields and both are mandatoryattack_box_position
- position of attack box relative to the entity, written as array of 3 numbers, which are x, y and z coordinates relative to the entity. Optional. If not specified, the box will be positioned like in base mod
-
- Hitbox redirects should go in
-
Added possibility to make passenger model follow movement of specific bones
- This means that Variant Loader will automatically look up for bones called
passengerN
to position passenger model relative to this bone.N
here represents passenger's number, where count starts from 0 (first passenger will have number 0, thus mod will look for bonepassenger0
, second will have number 1 and mod will look forpassenger1
and so on). - If specific bone is not present, passenger will be rendered normally
- This means that Variant Loader will automatically look up for bones called
-
Fixed bug that caused variants that applied via nametags to be applied incorrectly if those variants didn't have redirects that base variant has
-
Fixed issue that caused model caches to be reset incorrectly, which caused all sorts of weird visual issues with models
-
Mod now will automatically assign corresponding Variant Loader variant according to variant id from base mod if it can't find. This means you no longer have to fix dragon variants manually when adding Variant Loader to existing worlds
-
Added new
surface_restriction
field to spawn conditions that allows to define if dragon has or has not to be on surface in order to spawn -
If place has dragon spawn, but no variants, dragon will now simply not spawn. If it still manages to spawn, mod will set variant to default and warn in logs instead of throwing exception
-
If spawn has weight over 0 and no allowed or banned biome restrictions specified, allowed biomes will automatically be restricted to Overworld ones (via
#forge:is_overworld
tag)
- Client config no longer creates unnecessary backup files (bug fix)
- Updated translation/localisation key generator to support new localisaton keys
- Translation/localisation key generator now only generates keys for variants that have model redirect
- Added possibility to redirect egg textures, models and item models per variant
- Added possibility to redirect localisation keys used for dragon and egg entities and egg item if those don't have custom name (this may not work for already existing eggs, thank IoB's sheetcode)
- Minimal required Forge version is now 40.2.10
The 2.0.0 update
Initially released as beta due amount of changes
Changelog:
- Entire backend was rewritten, so some unexpected things may be expected
- Added asset path caching for optimization
- Added inheritance for breeding (behaviour can be edited via config)
- By default there's 70% chance to inherit parent's variant (independent from place of breeding). If config value inheritance_chance (in iob_variant_loader.toml) set to 0, variant from breeding will be always random
- Eggs of all species now can have predetermined variant
- If egg has variant, it'll be applied on hatching (behaviour can be edited via config)
- Variant on the egg determined by place of parents breeding rather the place of egg hatching (behaviour can be edited via config)
- The variant that egg has is shown at tooltip. If it's invalid, some gibberish will appear
Regarding data and resource packs:
- Added field "nametag_accessible" for model redirects. If set to false, this variant cannot be applied via nametag. If not specified, defaults to true
- Variant name shown in tooltip can be edited via language file (changes only displayed name in tooltip, doesn't change actual name of the variant)
- Deadly Nadder membranes now accept it's own glowing layer
- Added field "breeding_weight" for variant spawn declaration. Determines weight of the variant in breeding. If set to 0, variant cannot be obtained from breeding. If not specified, defaults to value specified in "weight"
- "weight" field is now only responsible for variants for wild dragons (naturally generated) All old packs should work as before
Added client config (iob_variant_loader-client.toml) with following fields:
- disable_glowing - disables glowing layer on dragons. False by default
- disable_named_variants - disables nametag variants, instead shows actual dragon variant. False by default
- generate_translations - autogenerates translation keys for variants added via resource packs
- ignored_by_generator, ignored_by_generator_endings - some filters for key generator
- Glow layer is now can be added as texture file rather than .mcmeta file (just add "texturename_glowing.png" alongside regular texture (in case of this example regular texture would be "texturename.png"))
- Saddle texture now can be redirected
- Fixed mod trying to look path for "gronkle" instead of "gronckle" within assets folder