-
Notifications
You must be signed in to change notification settings - Fork 5
Boosts
Boosts have been added to give small upgrades to mobs and make them more dangerous as the raid and the waves go on.
Following Boosts have all been defined in the minecraft namespace. Their intent is to offer a base set of vanilla boosts.
-
Attributes: All attributes increase the target strength by 1.
- attribute/generic.armor: Common, increases natural armor by 1.
- attribute/generic.armor_toughness: Very rare, Increases natural armor toughness by 1
- attribute/generic.attack_damage: Common, increases attack damage by 1.
- attribute/generic.attack_knockback: Uncommon, increases attack knockback by 0.15.
- attribute/generic.attack_speed: Uncommon, increases attack speed by 0.1.
- attribute/generic.flying_speed: Common, increases flying speed by 0.1.
- attribute/generic.knockback_resistance: Uncommon, increases knockback resistance by 0.1.
- attribute/generic.max_health: Common, increases max health by 1.
- attribute/generic.movement_speed: Common, increases movement speed by 0.1.
-
Armor: Lets the entity wear an armor. Only one armor boost can be applied.
- armor/leather: Unommon, A full set of leather armor.
- armor/iron: Rare, A full set of iron armor.
- armor/diamond: Very rare, A full set of diamond armor.
-
Hand: Lets the entity wear a weapon. One in mainhand and one in offhand, vanilla only creates a mainhand boost, as there is no AI for offhand items.
- hand/iron_sword: Uncommon, makes the unit hold an iron sword.
- hand/diamond_sword: Very rare, makes the unit hold a diamond sword.
- hand/iron_axe: Uncommon, makes the unit hold an iron axe.
- hand/iron_pickaxe: Uncommon, makes the unit hold a pickaxe, useful to distinguish diggers.
- hand/diamond_axe: Very rare, makes the unit hold a diamond axe.
-
Mount: Lets the character ride a mount. All vanilla mount boosts have a rarity of 0. Use a rarity override to access them. These mounts are NOT part of the factions.
- mount/chicken
- mount/horse
- mount/skeleton_horse
- mount/zombie_horse
- mount/spider
-
Special: Special boosts that have a more unique effect. Usually should have none rarity.
- special/leather_daylight_protection: Used to protect burning entities from the sunlight. Gives them an undroppable, unbreakable leather helmet and changes their AI to no longer flee the sun. The helmet can be replaced by an armor boost.
- special/melee_attack: Used to give passive or ranged only entities the ability to attack in melee.
Following boost comes from the faction_craft namespace, it has some more unique interaction with factions and raids.
-
Faction Mount: Use this for mounts that should be read from the faction file. Théy will spawn as defined in the file and won't work if their minimum wave has not yet been reached. These mounts will thus be part of the raid, it's recommended to use them only for agressive mounts like ravagers.
- mount/faction_ravager
- mount/faction_spider
-
AI : These boosts change the entity's AI by giving them new abilities.
- special/ai/barehanded_digger_ai: Used to make the entities able to mine blocks to reach their target, the blocks are temporarily broken and will turn back to normal after the raid ends or after a certain time outside of raids.
- special/ai/tool_digger_ai: Used to make the entities able to mine blocks to reach their target, the blocks are temporarily broken and will turn back to normal after the raid ends or after a certain time outside of raids. This one requires the entity to wield a tool to work.
- special/ai/proper_tool_digger_ai: Used to make the entities able to mine blocks to reach their target, the blocks are temporarily broken and will turn back to normal after the raid ends or after a certain time outside of raids. This one requires the entity to wield a proper tool to work.
- special/ai/shield_ai: Makes the entity able to block incoming hits when armed with a shield in his offhand, the shield's guard can broken temporarily with axes or any weapons that would normally break shields.
- special/ai/throw_healing_potion: Makes the entity able to throw healing potions at hurt allies.
Also located under the faction_craft namespace, roles could be defined as boost bundles, offering multiple and often related boosts to the entity, giving it a specific role in the wave, this is often achieved with the afromentioned AI boosts. As of now, the default roles are the following :
- tank: Gives a shield, shield AI and higher armor at the cost of less damage to the entity, experimental features need to be toggled in the config for the entity to actually use the shield, otherwise it'll only increase its armor value.
- bottle_healer: Gives the entity the throw_healing_potion AI, making it able to heal surrounding allies.
All boosts are assigned a default rarity. This rarity translates into a weight, used with a weighted randomizer to choose which random boost to apply. Following rarities are recognized:
- super_common: Weight: 30, should not be used for standard boosts, is made available for rarity overrides, in case a thing should be super common in a faction, but not mandatory.
- common: Weight: 10
- uncommon: Weight: 5
- rare: Weight: 2
- very_rare: Weight: 1
- none: Weight: 0, this special case can NEVER be randomly assigned. You either have to make it a mandatory boost or override its rarity. Useful for making more unique boosts that should only apply to a specific mob or faction. For example, a unique set of armor.
Every faction has a boost distribution type. This determines how the boosts should be distributed among their units.
- random: Boosts are applied completely random.
- uniform_all: A boost is selected at random and then applied to all entities in the party.
- uniform_type: A boost is selected at random and then applied to specific entities in the party.