diff --git a/assets/common/abilities/ability_set_manifest.ron b/assets/common/abilities/ability_set_manifest.ron index cdbfd1ac58..41b0c565d9 100644 --- a/assets/common/abilities/ability_set_manifest.ron +++ b/assets/common/abilities/ability_set_manifest.ron @@ -34,11 +34,15 @@ secondary: "common.abilities.custom.husk.triplestrike", abilities: [], ), + Custom("Husk Brute"): ( + primary: "common.abilities.custom.husk_brute.singlestrike", + secondary: "common.abilities.custom.husk_brute.chargedmelee", + abilities: [], + ), Tool(Spear): ( primary: "common.abilities.spear.doublestrike", secondary: "common.abilities.spear.dash", abilities: [], - ), Custom("Hammer Simple"): ( primary: "common.abilities.hammersimple.doublestrike", @@ -53,8 +57,7 @@ Custom("Sword Simple"): ( primary: "common.abilities.swordsimple.doublestrike", secondary: "common.abilities.swordsimple.dash", - abilities: [ - ], + abilities: [], ), Custom("Staff Simple"): ( primary: "common.abilities.staffsimple.firebomb", diff --git a/assets/common/abilities/custom/husk_brute/chargedmelee.ron b/assets/common/abilities/custom/husk_brute/chargedmelee.ron new file mode 100644 index 0000000000..9b778e9af8 --- /dev/null +++ b/assets/common/abilities/custom/husk_brute/chargedmelee.ron @@ -0,0 +1,18 @@ +ChargedMelee( + energy_cost: 0, + energy_drain: 0, + initial_damage: 50, + scaled_damage: 450, + initial_poise_damage: 50, + scaled_poise_damage: 150, + initial_knockback: 0.0, + scaled_knockback: 0.0, + range: 3.5, + max_angle: 45.0, + speed: 1.0, + charge_duration: 1.5, + swing_duration: 0.1, + hit_timing: 0.8, + recover_duration: 0.5, + damage_kind: Crushing, +) diff --git a/assets/common/abilities/custom/husk_brute/singlestrike.ron b/assets/common/abilities/custom/husk_brute/singlestrike.ron new file mode 100644 index 0000000000..3c93be79ca --- /dev/null +++ b/assets/common/abilities/custom/husk_brute/singlestrike.ron @@ -0,0 +1,28 @@ +ComboMelee( + stage_data: [ + ( + stage: 1, + base_damage: 160, + damage_increase: 0, + base_poise_damage: 12, + poise_damage_increase: 0, + knockback: 5.0, + range: 3.5, + angle: 60.0, + base_buildup_duration: 0.25, + base_swing_duration: 0.07, + hit_timing: 0.5, + base_recover_duration: 0.25, + forward_movement: 0.5, + damage_kind: Crushing, + ), + ], + initial_energy_gain: 0, + max_energy_gain: 0, + energy_increase: 0, + speed_increase: 0.0, + max_speed_increase: 0.0, + scales_from_combo: 0, + is_interruptible: false, + ori_modifier: 0.6, +) diff --git a/assets/common/abilities/custom/minotaur/cleave.ron b/assets/common/abilities/custom/minotaur/cleave.ron index dff30a6fe4..3aa9a1b690 100644 --- a/assets/common/abilities/custom/minotaur/cleave.ron +++ b/assets/common/abilities/custom/minotaur/cleave.ron @@ -1,8 +1,8 @@ ChargedMelee( energy_cost: 0, energy_drain: 0, - initial_damage: 0, - scaled_damage: 500, + initial_damage: 50, + scaled_damage: 450, initial_poise_damage: 50, scaled_poise_damage: 150, initial_knockback: 0.0, diff --git a/assets/common/entity/dungeon/tier-5/cultist.ron b/assets/common/entity/dungeon/tier-5/cultist.ron new file mode 100644 index 0000000000..8b19091d2d --- /dev/null +++ b/assets/common/entity/dungeon/tier-5/cultist.ron @@ -0,0 +1,18 @@ +EntityConfig ( + name: Some("Cultist"), + body: Some(RandomWith("humanoid")), + + loot: Some(LootTable("common.loot_tables.dungeon.tier-5.enemy")), + + main_tool: Some(Choice([ + (1.0, Some(Item("common.items.weapons.axe_1h.orichalcum-0"))), + (2.0, Some(Item("common.items.weapons.sword.cultist"))), + (1.0, Some(Item("common.items.weapons.hammer.cultist_purp_2h-0"))), + (1.0, Some(Item("common.items.weapons.hammer_1h.orichalcum-0"))), + (1.0, Some(Item("common.items.weapons.bow.velorite"))), + ])), + second_tool: None, + + loadout_asset: Some("common.loadout.dungeon.tier-5.cultist"), + skillset_asset: Some("common.skillset.dungeon.tier-5.enemy"), +) diff --git a/assets/common/entity/dungeon/tier-5/husk_brute.ron b/assets/common/entity/dungeon/tier-5/husk_brute.ron new file mode 100644 index 0000000000..40f26815b6 --- /dev/null +++ b/assets/common/entity/dungeon/tier-5/husk_brute.ron @@ -0,0 +1,12 @@ +EntityConfig ( + name: Some("Husk Brute"), + body: Some(RandomWith("husk_brute")), + + loot: Some(LootTable("common.loot_tables.dungeon.tier-5.miniboss")), + + main_tool: None, + second_tool: None, + + loadout_asset: None, + skillset_asset: None, +) diff --git a/assets/common/entity/dungeon/tier-5/warlock.ron b/assets/common/entity/dungeon/tier-5/warlock.ron index 0932bd714c..369bd091cb 100644 --- a/assets/common/entity/dungeon/tier-5/warlock.ron +++ b/assets/common/entity/dungeon/tier-5/warlock.ron @@ -1,12 +1,15 @@ EntityConfig ( name: Some("Cultist Warlock"), - body: Some(RandomWith("humanoid")), + body: Some(RandomWith("cultist_warlock")), loot: Some(LootTable("common.loot_tables.dungeon.tier-5.enemy")), - main_tool: Some(Item("common.items.weapons.staff.cultist_staff")), + main_tool: Some(Choice([ + (1.5, Some(Item("common.items.npc_weapons.staff.bipedlarge-cultist"))), + (1.0, Some(Item("common.items.npc_weapons.bow.bipedlarge-velorite"))), + ])), second_tool: None, - loadout_asset: Some("common.loadout.dungeon.tier-5.warlock"), - skillset_asset: Some("common.skillset.dungeon.tier-5.enemy"), + loadout_asset: None, + skillset_asset: None, ) diff --git a/assets/common/entity/dungeon/tier-5/warlord.ron b/assets/common/entity/dungeon/tier-5/warlord.ron index b85cb504de..fe2152e6e4 100644 --- a/assets/common/entity/dungeon/tier-5/warlord.ron +++ b/assets/common/entity/dungeon/tier-5/warlord.ron @@ -1,18 +1,15 @@ EntityConfig ( name: Some("Cultist Warlord"), - body: Some(RandomWith("humanoid")), + body: Some(RandomWith("cultist_warlord")), loot: Some(LootTable("common.loot_tables.dungeon.tier-5.enemy")), main_tool: Some(Choice([ - (1.0, Some(Item("common.items.weapons.axe_1h.orichalcum-0"))), - (2.0, Some(Item("common.items.weapons.sword.cultist"))), - (1.0, Some(Item("common.items.weapons.hammer.cultist_purp_2h-0"))), - (1.0, Some(Item("common.items.weapons.hammer_1h.orichalcum-0"))), - (1.0, Some(Item("common.items.weapons.bow.velorite"))), + (1.5, Some(Item("common.items.npc_weapons.sword.bipedlarge-cultist"))), + (1.0, Some(Item("common.items.npc_weapons.hammer.bipedlarge-cultist"))), ])), second_tool: None, - loadout_asset: Some("common.loadout.dungeon.tier-5.warlord"), - skillset_asset: Some("common.skillset.dungeon.tier-5.enemy"), + loadout_asset: None, + skillset_asset: None, ) diff --git a/assets/common/items/armor/warlock/back.ron b/assets/common/items/armor/warlock/back.ron deleted file mode 100644 index 8f71921ef1..0000000000 --- a/assets/common/items/armor/warlock/back.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlock cape", - description: "Belong to a mighty warlock.", - kind: Armor(( - kind: Back("Warlock"), - stats: ( - protection: Normal(4.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Moderate, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlock/belt.ron b/assets/common/items/armor/warlock/belt.ron deleted file mode 100644 index 571cf5f704..0000000000 --- a/assets/common/items/armor/warlock/belt.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlock Belt", - description: "Belong to a mighty warlock.", - kind: Armor(( - kind: Belt("Warlock"), - stats: ( - protection: Normal(8.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Moderate, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlock/chest.ron b/assets/common/items/armor/warlock/chest.ron deleted file mode 100644 index 83879ed7b8..0000000000 --- a/assets/common/items/armor/warlock/chest.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlock Vest", - description: "Belong to a mighty warlock.", - kind: Armor(( - kind: Chest("Warlock"), - stats: ( - protection: Normal(40.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Moderate, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlock/foot.ron b/assets/common/items/armor/warlock/foot.ron deleted file mode 100644 index 6d94314cea..0000000000 --- a/assets/common/items/armor/warlock/foot.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlock Slippers", - description: "Belong to a mighty warlock.", - kind: Armor(( - kind: Foot("Warlock"), - stats: ( - protection: Normal(8.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Moderate, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlock/hand.ron b/assets/common/items/armor/warlock/hand.ron deleted file mode 100644 index 95a430624d..0000000000 --- a/assets/common/items/armor/warlock/hand.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlock Gloves", - description: "Belong to a mighty warlock.", - kind: Armor(( - kind: Hand("Warlock"), - stats: ( - protection: Normal(15.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Common, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlock/head.ron b/assets/common/items/armor/warlock/head.ron deleted file mode 100644 index 5efede3c7e..0000000000 --- a/assets/common/items/armor/warlock/head.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlock", - description: "Belong to a mighty warlock.", - kind: Armor(( - kind: Head("Warlock"), - stats: ( - protection: Normal(10.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Common, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlock/pants.ron b/assets/common/items/armor/warlock/pants.ron deleted file mode 100644 index 6140b196af..0000000000 --- a/assets/common/items/armor/warlock/pants.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlock Kilt", - description: "Belong to a mighty warlock.", - kind: Armor(( - kind: Pants("Warlock"), - stats: ( - protection: Normal(30.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Moderate, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlock/shoulder.ron b/assets/common/items/armor/warlock/shoulder.ron deleted file mode 100644 index 105a3458c6..0000000000 --- a/assets/common/items/armor/warlock/shoulder.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlock Shoulders", - description: "Belong to a mighty warlock.", - kind: Armor(( - kind: Shoulder("Warlock"), - stats: ( - protection: Normal(22.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Common, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlord/back.ron b/assets/common/items/armor/warlord/back.ron deleted file mode 100644 index 2cd9450e7e..0000000000 --- a/assets/common/items/armor/warlord/back.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlord cape", - description: "Belong to a mighty warlord.", - kind: Armor(( - kind: Back("Warlord"), - stats: ( - protection: Normal(4.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Moderate, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlord/belt.ron b/assets/common/items/armor/warlord/belt.ron deleted file mode 100644 index ae60e2fcd2..0000000000 --- a/assets/common/items/armor/warlord/belt.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlord Belt", - description: "Belong to a mighty warlord.", - kind: Armor(( - kind: Belt("Warlord"), - stats: ( - protection: Normal(8.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Moderate, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlord/chest.ron b/assets/common/items/armor/warlord/chest.ron deleted file mode 100644 index dbaee7548f..0000000000 --- a/assets/common/items/armor/warlord/chest.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlord Cuirass", - description: "Belong to a mighty warlord.", - kind: Armor(( - kind: Chest("Warlord"), - stats: ( - protection: Normal(40.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Moderate, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlord/foot.ron b/assets/common/items/armor/warlord/foot.ron deleted file mode 100644 index 993cd6d067..0000000000 --- a/assets/common/items/armor/warlord/foot.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlord Feet", - description: "Belong to a mighty warlord.", - kind: Armor(( - kind: Foot("Warlord"), - stats: ( - protection: Normal(8.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Moderate, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlord/hand.ron b/assets/common/items/armor/warlord/hand.ron deleted file mode 100644 index 36f79edf77..0000000000 --- a/assets/common/items/armor/warlord/hand.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlord Handguards", - description: "Belong to a mighty warlord.", - kind: Armor(( - kind: Hand("Warlord"), - stats: ( - protection: Normal(15.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Common, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlord/head.ron b/assets/common/items/armor/warlord/head.ron deleted file mode 100644 index ba518e0cdf..0000000000 --- a/assets/common/items/armor/warlord/head.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlord Helmet", - description: "Belong to a mighty warlord.", - kind: Armor(( - kind: Head("Warlord"), - stats: ( - protection: Normal(10.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Common, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlord/pants.ron b/assets/common/items/armor/warlord/pants.ron deleted file mode 100644 index b896347aa2..0000000000 --- a/assets/common/items/armor/warlord/pants.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlord Legguards", - description: "Belong to a mighty warlord.", - kind: Armor(( - kind: Pants("Warlord"), - stats: ( - protection: Normal(30.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Moderate, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/warlord/shoulder.ron b/assets/common/items/armor/warlord/shoulder.ron deleted file mode 100644 index c38f423aff..0000000000 --- a/assets/common/items/armor/warlord/shoulder.ron +++ /dev/null @@ -1,17 +0,0 @@ -ItemDef( - name: "Warlord Shoulderguards", - description: "Belong to a mighty warlord.", - kind: Armor(( - kind: Shoulder("Warlord"), - stats: ( - protection: Normal(22.0), - poise_resilience: Normal(0.0), - energy_max: 0, - energy_reward: 0.0, - crit_power: 0.0, - stealth: 0.0, - ), - )), - quality: Common, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/crafting_ing/hide/rugged_hide.ron b/assets/common/items/crafting_ing/hide/rugged_hide.ron index 0c8bcc29d7..3a2f8ae583 100644 --- a/assets/common/items/crafting_ing/hide/rugged_hide.ron +++ b/assets/common/items/crafting_ing/hide/rugged_hide.ron @@ -4,7 +4,7 @@ ItemDef( kind: Ingredient( kind: "RuggedHide", ), - quality: Common, + quality: Epic, tags: [ Material(Leather) ], diff --git a/assets/common/items/npc_weapons/bow/bipedlarge-velorite.ron b/assets/common/items/npc_weapons/bow/bipedlarge-velorite.ron new file mode 100644 index 0000000000..40c9d278dc --- /dev/null +++ b/assets/common/items/npc_weapons/bow/bipedlarge-velorite.ron @@ -0,0 +1,18 @@ +ItemDef( + name: "Giant Velorite Bow", + description: "Infused with Velorite power.", + kind: Tool(( + kind: Bow, + hands: Two, + stats: Direct(( + equip_time_secs: 0.4, + power: 1.6, + poise_strength: 1.1, + speed: 0.8, + crit_chance: 0.140625, + )), + )), + quality: Epic, + tags: [], + ability_spec: Some(Custom("Bow Simple")), +) \ No newline at end of file diff --git a/assets/common/items/npc_weapons/hammer/bipedlarge-cultist.ron b/assets/common/items/npc_weapons/hammer/bipedlarge-cultist.ron new file mode 100644 index 0000000000..1493bb69a2 --- /dev/null +++ b/assets/common/items/npc_weapons/hammer/bipedlarge-cultist.ron @@ -0,0 +1,18 @@ +ItemDef( + name: "Giant Cultist Warhammer", + description: "This belonged to an evil Cult Leader.", + kind: Tool(( + kind: Hammer, + hands: Two, + stats: Direct(( + equip_time_secs: 0.5, + power: 1.6, + poise_strength: 1.0, + speed: 0.8, + crit_chance: 0.140625, + )), + )), + quality: Epic, + tags: [], + ability_spec: Some(Custom("Hammer Simple")), +) \ No newline at end of file diff --git a/assets/common/items/npc_weapons/staff/bipedlarge-cultist.ron b/assets/common/items/npc_weapons/staff/bipedlarge-cultist.ron new file mode 100644 index 0000000000..13139bd011 --- /dev/null +++ b/assets/common/items/npc_weapons/staff/bipedlarge-cultist.ron @@ -0,0 +1,18 @@ +ItemDef( + name: "Giant Cultist Staff", + description: "The fire gives off no heat.", + kind: Tool(( + kind: Staff, + hands: Two, + stats: Direct(( + equip_time_secs: 0.3, + power: 1.6, + poise_strength: 1.0, + speed: 0.8, + crit_chance: 0.140625, + )), + )), + quality: Epic, + tags: [], + ability_spec: Some(Custom("Staff Simple")), +) \ No newline at end of file diff --git a/assets/common/items/npc_weapons/sword/bipedlarge-cultist.ron b/assets/common/items/npc_weapons/sword/bipedlarge-cultist.ron new file mode 100644 index 0000000000..06eae29d7a --- /dev/null +++ b/assets/common/items/npc_weapons/sword/bipedlarge-cultist.ron @@ -0,0 +1,18 @@ +ItemDef( + name: "Giant Cultist Greatsword", + description: "This belonged to an evil Cult Leader.", + kind: Tool(( + kind: Sword, + hands: Two, + stats: Direct(( + equip_time_secs: 0.5, + power: 1.6, + poise_strength: 1.0, + speed: 0.8, + crit_chance: 0.140625, + )), + )), + quality: Epic, + tags: [], + ability_spec: Some(Custom("Sword Simple")), +) \ No newline at end of file diff --git a/assets/common/items/npc_weapons/unique/husk_brute.ron b/assets/common/items/npc_weapons/unique/husk_brute.ron new file mode 100644 index 0000000000..c2389e824c --- /dev/null +++ b/assets/common/items/npc_weapons/unique/husk_brute.ron @@ -0,0 +1,18 @@ +ItemDef( + name: "Husk Brute", + description: "testing123", + kind: Tool(( + kind: Natural, + hands: Two, + stats: Direct(( + equip_time_secs: 0.0, + power: 1.0, + poise_strength: 1.0, + speed: 1.0, + crit_chance: 0.0625, + )), + )), + quality: Low, + tags: [], + ability_spec: Some(Custom("Husk Brute")), +) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-5/cultist.ron b/assets/common/loadout/dungeon/tier-5/cultist.ron new file mode 100644 index 0000000000..426a32c963 --- /dev/null +++ b/assets/common/loadout/dungeon/tier-5/cultist.ron @@ -0,0 +1,17 @@ +({ + Armor(Shoulders): Item("common.items.armor.cultist.shoulder"), + Armor(Chest): Item("common.items.armor.cultist.chest"), + Armor(Belt): Item("common.items.armor.cultist.belt"), + Armor(Hands): Item("common.items.armor.cultist.hand"), + Armor(Legs): Item("common.items.armor.cultist.pants"), + Armor(Feet): Item("common.items.armor.cultist.foot"), + + Armor(Back): Item("common.items.armor.misc.back.dungeon_purple"), + + Lantern: Choice([ + (1.0, Some(Item("common.items.lantern.black_0"))), + (2.0, None), + ]), + + Glider: Item("common.items.glider.glider_purp"), +}) diff --git a/assets/common/loadout/dungeon/tier-5/warlock.ron b/assets/common/loadout/dungeon/tier-5/warlock.ron deleted file mode 100644 index bcc428fbda..0000000000 --- a/assets/common/loadout/dungeon/tier-5/warlock.ron +++ /dev/null @@ -1,17 +0,0 @@ -({ - Armor(Shoulders): Item("common.items.armor.warlock.shoulder"), - Armor(Chest): Item("common.items.armor.warlock.chest"), - Armor(Belt): Item("common.items.armor.warlock.belt"), - Armor(Hands): Item("common.items.armor.warlock.hand"), - Armor(Legs): Item("common.items.armor.warlock.pants"), - Armor(Feet): Item("common.items.armor.warlock.foot"), - - Armor(Back): Item("common.items.armor.warlock.back"), - - Lantern: Choice([ - (1.0, Some(Item("common.items.lantern.black_0"))), - (2.0, None), - ]), - - Glider: Item("common.items.glider.glider_purp"), -}) diff --git a/assets/common/loadout/dungeon/tier-5/warlord.ron b/assets/common/loadout/dungeon/tier-5/warlord.ron deleted file mode 100644 index 2d83fef3fa..0000000000 --- a/assets/common/loadout/dungeon/tier-5/warlord.ron +++ /dev/null @@ -1,17 +0,0 @@ -({ - Armor(Shoulders): Item("common.items.armor.warlord.shoulder"), - Armor(Chest): Item("common.items.armor.warlord.chest"), - Armor(Belt): Item("common.items.armor.warlord.belt"), - Armor(Hands): Item("common.items.armor.warlord.hand"), - Armor(Legs): Item("common.items.armor.warlord.pants"), - Armor(Feet): Item("common.items.armor.warlord.foot"), - - Armor(Back): Item("common.items.armor.warlord.back"), - - Lantern: Choice([ - (1.0, Some(Item("common.items.lantern.black_0"))), - (2.0, None), - ]), - - Glider: Item("common.items.glider.glider_purp"), -}) diff --git a/assets/common/loot_tables/creature/quad_low/salamander.ron b/assets/common/loot_tables/creature/quad_low/salamander.ron new file mode 100644 index 0000000000..faad9ec4e5 --- /dev/null +++ b/assets/common/loot_tables/creature/quad_low/salamander.ron @@ -0,0 +1,4 @@ +[ + (1.0, Item("common.items.crafting_ing.hide.tough_hide")), + (3.0, Item("common.items.crafting_ing.hide.scales")), +] \ No newline at end of file diff --git a/assets/common/loot_tables/creature/quad_medium/dreadhorn.ron b/assets/common/loot_tables/creature/quad_medium/dreadhorn.ron index 74c79cede6..dbdeda8a3a 100644 --- a/assets/common/loot_tables/creature/quad_medium/dreadhorn.ron +++ b/assets/common/loot_tables/creature/quad_medium/dreadhorn.ron @@ -2,5 +2,5 @@ (1.5, Item("common.items.food.meat.beast_small_raw")), (0.5, Item("common.items.food.meat.beast_large_raw")), (2.0, Item("common.items.crafting_ing.animal_misc.large_horn")), - (3.0, Item("common.items.crafting_ing.hide.carapace")), + (3.0, Item("common.items.crafting_ing.hide.rugged_hide")), ] \ No newline at end of file diff --git a/assets/common/loot_tables/creature/quad_medium/horned.ron b/assets/common/loot_tables/creature/quad_medium/horned.ron new file mode 100644 index 0000000000..d3767b3bc1 --- /dev/null +++ b/assets/common/loot_tables/creature/quad_medium/horned.ron @@ -0,0 +1,4 @@ +[ + (1.0, Item("common.items.crafting_ing.hide.rugged_hide")), + (1.0, Item("common.items.crafting_ing.animal_misc.large_horn")), +] \ No newline at end of file diff --git a/assets/common/loot_tables/creature/quad_medium/mammoth.ron b/assets/common/loot_tables/creature/quad_medium/mammoth.ron new file mode 100644 index 0000000000..810ff5b9a5 --- /dev/null +++ b/assets/common/loot_tables/creature/quad_medium/mammoth.ron @@ -0,0 +1,4 @@ +[ + (1.0, ItemQuantity("common.items.crafting_ing.hide.rugged_hide", 1, 2)), + (1.0, ItemQuantity("common.items.crafting_ing.animal_misc.large_horn", 2, 3)), +] \ No newline at end of file diff --git a/assets/common/loot_tables/creature/quad_medium/wool.ron b/assets/common/loot_tables/creature/quad_medium/wool.ron new file mode 100644 index 0000000000..3b3fa3f62d --- /dev/null +++ b/assets/common/loot_tables/creature/quad_medium/wool.ron @@ -0,0 +1,6 @@ +[ + (1.5, Item("common.items.food.meat.beast_small_raw")), + (0.5, Item("common.items.food.meat.beast_large_raw")), + (1.0, Item("common.items.crafting_ing.hide.animal_hide")), + (5.0, ItemQuantity("common.items.crafting_ing.cloth.wool", 2, 5)), +] \ No newline at end of file diff --git a/assets/common/loot_tables/creature/quad_small/sheep.ron b/assets/common/loot_tables/creature/quad_small/wool.ron similarity index 100% rename from assets/common/loot_tables/creature/quad_small/sheep.ron rename to assets/common/loot_tables/creature/quad_small/wool.ron diff --git a/assets/common/loot_tables/creature/theropod/generic.ron b/assets/common/loot_tables/creature/theropod/generic.ron index 14dbec1175..17b921280a 100644 --- a/assets/common/loot_tables/creature/theropod/generic.ron +++ b/assets/common/loot_tables/creature/theropod/generic.ron @@ -1,3 +1,3 @@ [ - (1.0, Item("common.items.crafting_ing.hide.plate")), + (1.0, Item("common.items.crafting_ing.hide.rugged_hide")), ] \ No newline at end of file diff --git a/assets/common/loot_tables/creature/theropod/raptor.ron b/assets/common/loot_tables/creature/theropod/raptor.ron index 2cd8de953f..818f740948 100644 --- a/assets/common/loot_tables/creature/theropod/raptor.ron +++ b/assets/common/loot_tables/creature/theropod/raptor.ron @@ -1,5 +1,5 @@ [ (0.5, Item("common.items.food.meat.beast_large_raw")), - (1.0, Item("common.items.crafting_ing.hide.tough_hide")), + (1.0, Item("common.items.crafting_ing.hide.scales")), (1.0, Item("common.items.crafting_ing.animal_misc.raptor_feather")), ] \ No newline at end of file diff --git a/assets/common/npc_names.ron b/assets/common/npc_names.ron index ca8be884c0..0339622c22 100644 --- a/assets/common/npc_names.ron +++ b/assets/common/npc_names.ron @@ -546,7 +546,23 @@ snowleopard: ( keyword: "snowleopard", generic: "Snow Leopard" - ) + ), + mammoth: ( + keyword: "mammoth", + generic: "Mammoth" + ), + ngoubou: ( + keyword: "ngoubou", + generic: "Ngoubou" + ), + llama: ( + keyword: "llama", + generic: "Llama" + ), + alpaca: ( + keyword: "alpaca", + generic: "Alpaca" + ), ) ), quadruped_small: ( @@ -886,6 +902,18 @@ keyword: "oni_red", generic: "Red Oni" ), + cultist_warlord: ( + keyword: "cultist_warlord", + generic: "Cultist Warlord" + ), + cultist_warlock: ( + keyword: "cultist_warlock", + generic: "Cultist Warlock" + ), + husk_brute: ( + keyword: "husk_brute", + generic: "Husk Brute" + ), ) ), golem: ( diff --git a/assets/common/recipe_book.ron b/assets/common/recipe_book.ron index 9f8f48e7dd..16bf38cecd 100644 --- a/assets/common/recipe_book.ron +++ b/assets/common/recipe_book.ron @@ -275,7 +275,7 @@ output: ("common.items.mineral.ingot.bloodsteel", 2), inputs: [ (Item("common.items.mineral.ore.bloodstone"), 1), - (Item("common.items.mineral.ore.iron"), 1), + (Item("common.items.mineral.ingot.iron"), 1), (Item("common.items.mineral.ore.coal"), 1), ], craft_sprite: Some(Forge), @@ -283,7 +283,7 @@ "steel ingot": ( output: ("common.items.mineral.ingot.steel", 1), inputs: [ - (Item("common.items.mineral.ore.iron"), 1), + (Item("common.items.mineral.ingot.iron"), 1), (Item("common.items.mineral.ore.coal"), 1), ], craft_sprite: Some(Forge), @@ -917,8 +917,8 @@ "woolen belt": ( output: ("common.items.armor.cloth.woolen.belt", 1), inputs: [ - (Item("common.items.crafting_ing.cloth.wool"), 2), - (Item("common.items.crafting_ing.cloth.cotton"), 2), + (Item("common.items.crafting_ing.cloth.wool"), 1), + (Item("common.items.crafting_ing.cloth.cotton"), 1), (Item("common.items.crafting_ing.animal_misc.fur"), 1), (Item("common.items.crafting_tools.sewing_set"), 0), ], @@ -927,7 +927,7 @@ "woolen chest": ( output: ("common.items.armor.cloth.woolen.chest", 1), inputs: [ - (Item("common.items.crafting_ing.cloth.wool"), 10), + (Item("common.items.crafting_ing.cloth.wool"), 8), (Item("common.items.crafting_ing.cloth.cotton"), 2), (Item("common.items.crafting_ing.animal_misc.fur"), 2), (Item("common.items.crafting_tools.sewing_set"), 0), @@ -937,7 +937,7 @@ "woolen feet": ( output: ("common.items.armor.cloth.woolen.foot", 1), inputs: [ - (Item("common.items.crafting_ing.cloth.wool"), 3), + (Item("common.items.crafting_ing.cloth.wool"), 2), (Item("common.items.crafting_ing.cloth.cotton"), 1), (Item("common.items.crafting_ing.animal_misc.fur"), 1), (Item("common.items.crafting_tools.sewing_set"), 0), @@ -947,7 +947,7 @@ "woolen hands": ( output: ("common.items.armor.cloth.woolen.hand", 1), inputs: [ - (Item("common.items.crafting_ing.cloth.wool"), 3), + (Item("common.items.crafting_ing.cloth.wool"), 2), (Item("common.items.crafting_ing.cloth.cotton"), 1), (Item("common.items.crafting_ing.animal_misc.fur"), 1), (Item("common.items.crafting_tools.sewing_set"), 0), @@ -957,7 +957,7 @@ "woolen pants": ( output: ("common.items.armor.cloth.woolen.pants", 1), inputs: [ - (Item("common.items.crafting_ing.cloth.wool"), 8), + (Item("common.items.crafting_ing.cloth.wool"), 6), (Item("common.items.crafting_ing.cloth.cotton"), 2), (Item("common.items.crafting_ing.animal_misc.fur"), 2), (Item("common.items.crafting_tools.sewing_set"), 0), @@ -967,7 +967,7 @@ "woolen shoulder": ( output: ("common.items.armor.cloth.woolen.shoulder", 1), inputs: [ - (Item("common.items.crafting_ing.cloth.wool"), 8), + (Item("common.items.crafting_ing.cloth.wool"), 6), (Item("common.items.crafting_ing.cloth.cotton"), 2), (Item("common.items.crafting_ing.animal_misc.fur"), 2), (Item("common.items.crafting_tools.sewing_set"), 0), diff --git a/assets/voxygen/item_image_manifest.ron b/assets/voxygen/item_image_manifest.ron index 8159668653..6d6e8d75ce 100644 --- a/assets/voxygen/item_image_manifest.ron +++ b/assets/voxygen/item_image_manifest.ron @@ -1548,56 +1548,6 @@ "voxel.armor.bonerattler.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), - //Warlord Set - Armor(Chest("Warlord")): VoxTrans( - "voxel.armor.warlord.chest", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, - ), - Armor(Pants("Warlord")): VoxTrans( - "voxel.armor.warlord.pants", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, - ), - Armor(Belt("Warlord")): VoxTrans( - "voxel.armor.warlord.belt", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.4, - ), - Armor(Foot("Warlord")): VoxTrans( - "voxel.armor.warlord.foot", - (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, - ), - Armor(Hand("Warlord")): VoxTrans( - "voxel.armor.warlord.hand", - (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, - ), - Armor(Shoulder("Warlord")): VoxTrans( - "voxel.armor.warlord.shoulder", - (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, - ), - //Warlock Set - Armor(Chest("Warlock")): VoxTrans( - "voxel.armor.warlock.chest", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, - ), - Armor(Pants("Warlock")): VoxTrans( - "voxel.armor.warlock.pants", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, - ), - Armor(Belt("Warlock")): VoxTrans( - "voxel.armor.warlock.belt", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.4, - ), - Armor(Foot("Warlock")): VoxTrans( - "voxel.armor.warlock.foot", - (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, - ), - Armor(Hand("Warlock")): VoxTrans( - "voxel.armor.warlock.hand", - (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, - ), - Armor(Shoulder("Warlock")): VoxTrans( - "voxel.armor.warlock.shoulder", - (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, - ), //Rawhide Set Armor(Chest("Rawhide")): VoxTrans( "voxel.armor.hide.rawhide.chest", @@ -2183,14 +2133,6 @@ "voxel.armor.misc.back.backpack", (0.0, 0.0, 0.0), (-90.0, 0.0, 0.0), 1.0, ), - Armor(Back("Warlord")): VoxTrans( - "voxel.armor.warlord.back", - (0.0, 0.0, 0.0), (-90.0, 0.0, 0.0), 1.0, - ), - Armor(Back("Warlock")): VoxTrans( - "voxel.armor.warlock.back", - (0.0, 0.0, 0.0), (-90.0, 0.0, 0.0), 1.0, - ), // Rings Armor(Ring("Scratched")): VoxTrans( "voxel.armor.misc.ring.scratched", diff --git a/assets/voxygen/voxel/biped_large_central_manifest.ron b/assets/voxygen/voxel/biped_large_central_manifest.ron index 4d2830c1b2..2ecc30c8f1 100644 --- a/assets/voxygen/voxel/biped_large_central_manifest.ron +++ b/assets/voxygen/voxel/biped_large_central_manifest.ron @@ -936,4 +936,160 @@ central: ("armor.empty"), ) ), + (Cultistwarlord, Male): ( + head: ( + offset: (-10.0, -6.0, -9.0), + central: ("npc.cultist_warlord.male.head"), + ), + torso_upper: ( + offset: (-8.0, -6.0, -6.0), + central: ("npc.cultist_warlord.male.torso_upper"), + ), + torso_lower: ( + offset: (-7.0, -5.0, -9.0), + central: ("npc.cultist_warlord.male.torso_lower"), + ), + jaw: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + tail: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + second: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ) + ), + (Cultistwarlord, Female): ( + head: ( + offset: (-10.0, -6.0, -9.0), + central: ("npc.cultist_warlord.male.head"), + ), + torso_upper: ( + offset: (-8.0, -6.0, -6.0), + central: ("npc.cultist_warlord.male.torso_upper"), + ), + torso_lower: ( + offset: (-7.0, -5.0, -9.0), + central: ("npc.cultist_warlord.male.torso_lower"), + ), + jaw: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + tail: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + second: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ) + ), + (Cultistwarlock, Male): ( + head: ( + offset: (-6.0, -5.5, -6.5), + central: ("npc.cultist_warlock.male.head"), + ), + torso_upper: ( + offset: (-7.0, -5.5, -5.5), + central: ("npc.cultist_warlock.male.torso_upper"), + ), + torso_lower: ( + offset: (-6.0, -4.5, -10.0), + central: ("npc.cultist_warlock.male.torso_lower"), + ), + jaw: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + tail: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + second: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ) + ), + (Cultistwarlock, Female): ( + head: ( + offset: (-6.0, -5.5, -6.5), + central: ("npc.cultist_warlock.male.head"), + ), + torso_upper: ( + offset: (-7.0, -5.5, -5.5), + central: ("npc.cultist_warlock.male.torso_upper"), + ), + torso_lower: ( + offset: (-6.0, -4.5, -10.0), + central: ("npc.cultist_warlock.male.torso_lower"), + ), + jaw: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + tail: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + second: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ) + ), + (Huskbrute, Male): ( + head: ( + offset: (-6.0, -6.0, -6.5), + central: ("npc.husk_brute.male.head"), + ), + torso_upper: ( + offset: (-8.0, -8.0, -8.0), + central: ("npc.husk_brute.male.torso_upper"), + ), + torso_lower: ( + offset: (-7.0, -6.5, -9.0), + central: ("npc.husk_brute.male.torso_lower"), + ), + jaw: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + tail: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + second: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ) + ), + (Huskbrute, Female): ( + head: ( + offset: (-6.0, -6.0, -6.5), + central: ("npc.husk_brute.male.head"), + ), + torso_upper: ( + offset: (-8.0, -8.0, -8.0), + central: ("npc.husk_brute.male.torso_upper"), + ), + torso_lower: ( + offset: (-7.0, -6.5, -9.0), + central: ("npc.husk_brute.male.torso_lower"), + ), + jaw: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + tail: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + second: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ) + ), }) diff --git a/assets/voxygen/voxel/biped_large_lateral_manifest.ron b/assets/voxygen/voxel/biped_large_lateral_manifest.ron index 8c8f0c046b..c5f8f2f087 100644 --- a/assets/voxygen/voxel/biped_large_lateral_manifest.ron +++ b/assets/voxygen/voxel/biped_large_lateral_manifest.ron @@ -1223,4 +1223,208 @@ lateral: ("npc.oni_red.male.foot_r"), ) ), + (Cultistwarlord, Male): ( + shoulder_l: ( + offset: (-6.0, -5.5, -6.0), + lateral: ("npc.cultist_warlord.male.shoulder_l"), + ), + shoulder_r: ( + offset: (-6.0, -5.5, -6.0), + lateral: ("npc.cultist_warlord.male.shoulder_r"), + ), + hand_l: ( + offset: (-3.5, -3.5, -10.0), + lateral: ("npc.cultist_warlord.male.hand_l"), + ), + hand_r: ( + offset: (-3.5, -3.5, -10.0), + lateral: ("npc.cultist_warlord.male.hand_r"), + ), + leg_l: ( + offset: (-1.5, -2.0, -2.5), + lateral: ("npc.cultist_warlord.male.leg_l"), + ), + leg_r: ( + offset: (-1.5, -2.0, -2.5), + lateral: ("npc.cultist_warlord.male.leg_r"), + ), + foot_l: ( + offset: (-2.5, -4.0, -4.0), + lateral: ("npc.cultist_warlord.male.foot_l"), + ), + foot_r: ( + offset: (-2.5, -4.0, -4.0), + lateral: ("npc.cultist_warlord.male.foot_r"), + ) + ), + (Cultistwarlord, Female): ( + shoulder_l: ( + offset: (-6.0, -5.5, -6.0), + lateral: ("npc.cultist_warlord.male.shoulder_l"), + ), + shoulder_r: ( + offset: (-6.0, -5.5, -6.0), + lateral: ("npc.cultist_warlord.male.shoulder_r"), + ), + hand_l: ( + offset: (-3.5, -3.5, -10.0), + lateral: ("npc.cultist_warlord.male.hand_l"), + ), + hand_r: ( + offset: (-3.5, -3.5, -10.0), + lateral: ("npc.cultist_warlord.male.hand_r"), + ), + leg_l: ( + offset: (-1.5, -2.0, -2.5), + lateral: ("npc.cultist_warlord.male.leg_l"), + ), + leg_r: ( + offset: (-1.5, -2.0, -2.5), + lateral: ("npc.cultist_warlord.male.leg_r"), + ), + foot_l: ( + offset: (-2.5, -4.0, -4.0), + lateral: ("npc.cultist_warlord.male.foot_l"), + ), + foot_r: ( + offset: (-2.5, -4.0, -4.0), + lateral: ("npc.cultist_warlord.male.foot_r"), + ) + ), + (Cultistwarlock, Male): ( + shoulder_l: ( + offset: (-3.5, -3.5, -3.0), + lateral: ("npc.cultist_warlock.male.shoulder_l"), + ), + shoulder_r: ( + offset: (-3.5, -3.5, -3.0), + lateral: ("npc.cultist_warlock.male.shoulder_r"), + ), + hand_l: ( + offset: (-3.5, -3.5, -10.0), + lateral: ("npc.cultist_warlock.male.hand_l"), + ), + hand_r: ( + offset: (-3.5, -3.5, -10.0), + lateral: ("npc.cultist_warlock.male.hand_r"), + ), + leg_l: ( + offset: (-1.5, -2.0, -2.5), + lateral: ("npc.cultist_warlock.male.leg_l"), + ), + leg_r: ( + offset: (-1.5, -2.0, -2.5), + lateral: ("npc.cultist_warlock.male.leg_r"), + ), + foot_l: ( + offset: (-2.5, -4.0, -4.0), + lateral: ("npc.cultist_warlock.male.foot_l"), + ), + foot_r: ( + offset: (-2.5, -4.0, -4.0), + lateral: ("npc.cultist_warlock.male.foot_r"), + ) + ), + (Cultistwarlock, Female): ( + shoulder_l: ( + offset: (-3.5, -3.5, -3.0), + lateral: ("npc.cultist_warlock.male.shoulder_l"), + ), + shoulder_r: ( + offset: (-3.5, -3.5, -3.0), + lateral: ("npc.cultist_warlock.male.shoulder_r"), + ), + hand_l: ( + offset: (-3.5, -3.5, -10.0), + lateral: ("npc.cultist_warlock.male.hand_l"), + ), + hand_r: ( + offset: (-3.5, -3.5, -10.0), + lateral: ("npc.cultist_warlock.male.hand_r"), + ), + leg_l: ( + offset: (-1.5, -2.0, -2.5), + lateral: ("npc.cultist_warlock.male.leg_l"), + ), + leg_r: ( + offset: (-1.5, -2.0, -2.5), + lateral: ("npc.cultist_warlock.male.leg_r"), + ), + foot_l: ( + offset: (-2.5, -4.0, -4.0), + lateral: ("npc.cultist_warlock.male.foot_l"), + ), + foot_r: ( + offset: (-2.5, -4.0, -4.0), + lateral: ("npc.cultist_warlock.male.foot_r"), + ) + ), + (Huskbrute, Male): ( + shoulder_l: ( + offset: (-4.0, -4.5, -4.0), + lateral: ("npc.husk_brute.male.shoulder_l"), + ), + shoulder_r: ( + offset: (-4.0, -4.5, -4.0), + lateral: ("npc.husk_brute.male.shoulder_r"), + ), + hand_l: ( + offset: (-4.0, -3.5, -17.0), + lateral: ("npc.husk_brute.male.hand_l"), + ), + hand_r: ( + offset: (-4.0, -3.5, -17.0), + lateral: ("npc.husk_brute.male.hand_r"), + ), + leg_l: ( + offset: (-2.0, -2.5, -3.5), + lateral: ("npc.husk_brute.male.leg_l"), + ), + leg_r: ( + offset: (-2.0, -2.5, -3.5), + lateral: ("npc.husk_brute.male.leg_r"), + ), + foot_l: ( + offset: (-2.5, -3.5, -3.5), + lateral: ("npc.husk_brute.male.foot_l"), + ), + foot_r: ( + offset: (-2.5, -3.5, -3.5), + lateral: ("npc.husk_brute.male.foot_r"), + ) + ), + (Huskbrute, Female): ( + shoulder_l: ( + offset: (-4.0, -4.5, -4.0), + lateral: ("npc.husk_brute.male.shoulder_l"), + ), + shoulder_r: ( + offset: (-4.0, -4.5, -4.0), + lateral: ("npc.husk_brute.male.shoulder_r"), + ), + hand_l: ( + offset: (-4.0, -3.5, -17.0), + lateral: ("npc.husk_brute.male.hand_l"), + ), + hand_r: ( + offset: (-4.0, -3.5, -17.0), + lateral: ("npc.husk_brute.male.hand_r"), + ), + leg_l: ( + offset: (-2.0, -2.5, -3.5), + lateral: ("npc.husk_brute.male.leg_l"), + ), + leg_r: ( + offset: (-2.0, -2.5, -3.5), + lateral: ("npc.husk_brute.male.leg_r"), + ), + foot_l: ( + offset: (-2.5, -3.5, -3.5), + lateral: ("npc.husk_brute.male.foot_l"), + ), + foot_r: ( + offset: (-2.5, -3.5, -3.5), + lateral: ("npc.husk_brute.male.foot_r"), + ) + ), }) \ No newline at end of file diff --git a/assets/voxygen/voxel/biped_weapon_manifest.ron b/assets/voxygen/voxel/biped_weapon_manifest.ron index 4cf216a2b6..04d8e11aea 100644 --- a/assets/voxygen/voxel/biped_weapon_manifest.ron +++ b/assets/voxygen/voxel/biped_weapon_manifest.ron @@ -1050,6 +1050,10 @@ vox_spec: ("armor.empty", (0.0, 0.0, 0.0)), color: None ), + "common.items.npc_weapons.unique.husk_brute": ( + vox_spec: ("armor.empty", (0.0, 0.0, 0.0)), + color: None + ), "common.items.npc_weapons.axe.minotaur_axe": ( vox_spec: ("weapon.axe.2haxe_minotaur", (-2.5, -9.0, -8.0)), color: None @@ -1070,6 +1074,22 @@ vox_spec: ("weapon.hammer.2hhammer_oni_red", (-3.0, -4.5, -12.0)), color: None ), + "common.items.npc_weapons.sword.bipedlarge-cultist": ( + vox_spec: ("weapon.sword.cultist", (-1.5, -4.0, -6.0)), + color: None + ), + "common.items.npc_weapons.hammer.bipedlarge-cultist": ( + vox_spec: ("weapon.hammer.cult_purp-0", (-3.5, -4.5, -5.0)), + color: None + ), + "common.items.npc_weapons.bow.bipedlarge-velorite": ( + vox_spec: ("weapon.bow.velorite", (-1.5, -4.0, -15.0)), + color: None + ), + "common.items.npc_weapons.staff.bipedlarge-cultist": ( + vox_spec: ("weapon.staff.firestaff_cultist", (-2.5, -2.5, -4.0)), + color: None + ), //BIPEDSMALL "common.items.npc_weapons.biped_small.adlet.adlet_bow": ( vox_spec: ("weapon.biped_small.bow.adlet", (-1.5, -3.0, -5.0)), diff --git a/assets/voxygen/voxel/bird_medium_central_manifest.ron b/assets/voxygen/voxel/bird_medium_central_manifest.ron index d24a0be621..de8da461ad 100644 --- a/assets/voxygen/voxel/bird_medium_central_manifest.ron +++ b/assets/voxygen/voxel/bird_medium_central_manifest.ron @@ -1,30 +1,30 @@ ({ (Duck, Male): ( head: ( - offset: (-1.5, -2.0, -1.5), + offset: (-2.0, -1.5, -2.5), central: ("npc.duck.male.head"), ), torso: ( - offset: (-2.5, -3.0, -2.0), + offset: (-3.0, -4.5, -3.0), central: ("npc.duck.male.torso"), ), tail: ( - offset: (-1.5, -0.5, -2.5), + offset: (-2.0, -1.5, -3.0), central: ("npc.duck.male.tail"), ) ), (Duck, Female): ( head: ( - offset: (-1.5, -2.0, -1.5), - central: ("npc.duck.female.head"), + offset: (-2.0, -1.5, -2.5), + central: ("npc.duck.male.head"), ), torso: ( - offset: (-2.5, -3.0, -2.0), - central: ("npc.duck.female.torso"), + offset: (-3.0, -4.5, -3.0), + central: ("npc.duck.male.torso"), ), tail: ( - offset: (-1.5, -0.5, -2.5), - central: ("npc.duck.female.tail"), + offset: (-2.0, -1.5, -3.0), + central: ("npc.duck.male.tail"), ) ), (Chicken, Male): ( diff --git a/assets/voxygen/voxel/bird_medium_lateral_manifest.ron b/assets/voxygen/voxel/bird_medium_lateral_manifest.ron index 95c4027cc7..14a20071d7 100644 --- a/assets/voxygen/voxel/bird_medium_lateral_manifest.ron +++ b/assets/voxygen/voxel/bird_medium_lateral_manifest.ron @@ -1,37 +1,37 @@ ({ (Duck, Male): ( wing_l: ( - offset: (-0.5, -2.5, -3.0), + offset: (-0.5, -4.0, -4.0), lateral: ("npc.duck.male.wing"), ), wing_r: ( - offset: (-0.5, -2.5, -3.0), + offset: (-0.5, -4.0, -4.0), lateral: ("npc.duck.male.wing"), ), foot_l: ( - offset: (-1.0, 0.0, -4.0), + offset: (-1.5, -1.5, -4.0), lateral: ("npc.duck.male.leg_r"), ), foot_r: ( - offset: (-1.0, 0.0, -4.0), + offset: (-1.5, -1.5, -4.0), lateral: ("npc.duck.male.leg_r"), ) ), (Duck, Female): ( wing_l: ( - offset: (-0.5, -2.5, -3.0), + offset: (-0.5, -4.0, -4.0), lateral: ("npc.duck.female.wing"), ), wing_r: ( - offset: (-0.5, -2.5, -3.0), + offset: (-0.5, -4.0, -4.0), lateral: ("npc.duck.female.wing"), ), foot_l: ( - offset: (-1.0, 0.0, -4.0), + offset: (-1.5, -1.5, -4.0), lateral: ("npc.duck.female.leg_r"), ), foot_r: ( - offset: (-1.0, 0.0, -4.0), + offset: (-1.5, -1.5, -4.0), lateral: ("npc.duck.female.leg_r"), ) ), diff --git a/assets/voxygen/voxel/humanoid_armor_back_manifest.ron b/assets/voxygen/voxel/humanoid_armor_back_manifest.ron index 61f2a8225d..1459d036eb 100644 --- a/assets/voxygen/voxel/humanoid_armor_back_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_back_manifest.ron @@ -40,14 +40,6 @@ vox_spec: ("armor.leather_blue.back", (-5.0, -1.0, -11.0)), color: None ), - "Warlord": ( - vox_spec: ("armor.warlord.back", (-5.0, -1.0, -14.0)), - color: None - ), - "Warlock": ( - vox_spec: ("armor.warlock.back", (-5.0, -1.5, -15.5)), - color: None - ), "Rawhide": ( vox_spec: ("armor.hide.rawhide.back", (-4.0, -1.0, -6.0)), color: None diff --git a/assets/voxygen/voxel/humanoid_armor_belt_manifest.ron b/assets/voxygen/voxel/humanoid_armor_belt_manifest.ron index 3678edd514..e6b95396a8 100644 --- a/assets/voxygen/voxel/humanoid_armor_belt_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_belt_manifest.ron @@ -72,14 +72,6 @@ vox_spec: ("armor.velorite_battlemage.belt", (-5.0, -3.5, 2.0)), color: None ), - "Warlord":( - vox_spec: ("armor.warlord.belt", (-4.0, -3.5, 1.0)), - color: None - ), - "Warlock":( - vox_spec: ("armor.warlock.belt", (-4.0, -3.0, 2.0)), - color: None - ), "Rawhide": ( vox_spec: ("armor.hide.rawhide.belt", (-4.0, -3.5, 2.0)), color: None diff --git a/assets/voxygen/voxel/humanoid_armor_chest_manifest.ron b/assets/voxygen/voxel/humanoid_armor_chest_manifest.ron index cbe2304567..db7a6b80ec 100644 --- a/assets/voxygen/voxel/humanoid_armor_chest_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_chest_manifest.ron @@ -142,14 +142,6 @@ vox_spec: ("armor.velorite_battlemage.chest", (-7.0, -3.5, 0.5)), color: None ), - "Warlord": ( - vox_spec: ("armor.warlord.chest", (-7.0, -3.5, -0.5)), - color: None - ), - "Warlock": ( - vox_spec: ("armor.warlock.chest", (-7.0, -3.5, 0.5)), - color: None - ), "Rawhide": ( vox_spec: ("armor.hide.rawhide.chest", (-7.0, -3.5, 2.0)), color: None diff --git a/assets/voxygen/voxel/humanoid_armor_foot_manifest.ron b/assets/voxygen/voxel/humanoid_armor_foot_manifest.ron index 5895fd0204..617d459fb3 100644 --- a/assets/voxygen/voxel/humanoid_armor_foot_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_foot_manifest.ron @@ -72,14 +72,6 @@ vox_spec: ("armor.velorite_battlemage.foot", (-2.5, -3.5, -2.0)), color: None ), - "Warlord": ( - vox_spec: ("armor.warlord.foot", (-2.5, -3.5, -2.0)), - color: None - ), - "Warlock": ( - vox_spec: ("armor.warlock.foot", (-2.5, -3.5, -2.0)), - color: None - ), "Rawhide": ( vox_spec: ("armor.hide.rawhide.foot", (-2.5, -3.5, -2.0)), color: None diff --git a/assets/voxygen/voxel/humanoid_armor_hand_manifest.ron b/assets/voxygen/voxel/humanoid_armor_hand_manifest.ron index de569659e1..7d3bff8625 100644 --- a/assets/voxygen/voxel/humanoid_armor_hand_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_hand_manifest.ron @@ -150,26 +150,6 @@ color: None ) ), - "Warlord": ( - left: ( - vox_spec: ("armor.warlord.hand", (-3.0, -2.0, -5.0)), - color: None - ), - right: ( - vox_spec: ("armor.warlord.hand", (-2.0, -2.0, -5.0)), - color: None - ) - ), - "Warlock": ( - left: ( - vox_spec: ("armor.warlock.hand", (-4.5, -3.5, -5.0)), - color: None - ), - right: ( - vox_spec: ("armor.warlock.hand", (-2.5, -3.5, -5.0)), - color: None - ) - ), "Rawhide": ( left: ( vox_spec: ("armor.hide.rawhide.hand", (-1.5, -1.5, -2.5)), diff --git a/assets/voxygen/voxel/humanoid_armor_pants_manifest.ron b/assets/voxygen/voxel/humanoid_armor_pants_manifest.ron index c92c63f592..9aa5dde696 100644 --- a/assets/voxygen/voxel/humanoid_armor_pants_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_pants_manifest.ron @@ -100,14 +100,6 @@ vox_spec: ("armor.leather_blue.pants", (-5.0, -3.5, 1.0)), color: None ), - "Warlord": ( - vox_spec: ("armor.warlord.pants", (-6.0, -4.5, -2.0)), - color: None - ), - "Warlock": ( - vox_spec: ("armor.warlock.pants", (-5.0, -4.0, -2.0)), - color: None - ), "Rawhide": ( vox_spec: ("armor.hide.rawhide.pants", (-5.0, -3.5, 1.0)), color: None diff --git a/assets/voxygen/voxel/humanoid_armor_shoulder_manifest.ron b/assets/voxygen/voxel/humanoid_armor_shoulder_manifest.ron index 5203c3c5d8..0b027a70a6 100644 --- a/assets/voxygen/voxel/humanoid_armor_shoulder_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_shoulder_manifest.ron @@ -231,26 +231,6 @@ color: None ) ), - "Warlord": ( - left: ( - vox_spec: ("armor.warlord.shoulder", (-8.0, -3.5 , -2.5)), - color: None - ), - right: ( - vox_spec: ("armor.warlord.shoulder", (-1.0, -3.5 , -2.5)), - color: None - ) - ), - "Warlock": ( - left: ( - vox_spec: ("armor.warlock.shoulder", (-6.0, -4.0 , -2.0)), - color: None - ), - right: ( - vox_spec: ("armor.warlock.shoulder", (0.0, -4.0, -2.0)), - color: None - ) - ), "Rawhide": ( left: ( vox_spec: ("armor.hide.rawhide.shoulder", (-4.0, -3.2, -0.5)), diff --git a/assets/voxygen/voxel/npc/alpaca/male/ears.vox b/assets/voxygen/voxel/npc/alpaca/male/ears.vox new file mode 100644 index 0000000000..49f210963f --- /dev/null +++ b/assets/voxygen/voxel/npc/alpaca/male/ears.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdad078882b54abf446d5edfa8d78a887167ccc1930ac6ce670eb37f3508e055 +size 1160 diff --git a/assets/voxygen/voxel/npc/alpaca/male/foot_br.vox b/assets/voxygen/voxel/npc/alpaca/male/foot_br.vox new file mode 100644 index 0000000000..f2eb6ef3c8 --- /dev/null +++ b/assets/voxygen/voxel/npc/alpaca/male/foot_br.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6080c3cd99c4c589ff55c4b9ee57ef9680a0b6df33deb51506ca7cd41e7b0950 +size 1308 diff --git a/assets/voxygen/voxel/npc/alpaca/male/foot_fr.vox b/assets/voxygen/voxel/npc/alpaca/male/foot_fr.vox new file mode 100644 index 0000000000..945049145d --- /dev/null +++ b/assets/voxygen/voxel/npc/alpaca/male/foot_fr.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fa63a6c47240fec203c05fcb318488e47b9aa52546617bb0f008ae7e2792f04 +size 1280 diff --git a/assets/voxygen/voxel/npc/alpaca/male/head.vox b/assets/voxygen/voxel/npc/alpaca/male/head.vox new file mode 100644 index 0000000000..c461d33700 --- /dev/null +++ b/assets/voxygen/voxel/npc/alpaca/male/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c00b97957b55be36b0997f469fddf94bee64a27585ea11cd2397e3dfee4233d7 +size 2440 diff --git a/assets/voxygen/voxel/npc/alpaca/male/jaw.vox b/assets/voxygen/voxel/npc/alpaca/male/jaw.vox new file mode 100644 index 0000000000..b2a82b30da --- /dev/null +++ b/assets/voxygen/voxel/npc/alpaca/male/jaw.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4dc44735ca5304a10f42d3293c2dcd9f990460f3699ca903454cb07d37b17b0 +size 1120 diff --git a/assets/voxygen/voxel/npc/alpaca/male/leg_br.vox b/assets/voxygen/voxel/npc/alpaca/male/leg_br.vox new file mode 100644 index 0000000000..c56f91a222 --- /dev/null +++ b/assets/voxygen/voxel/npc/alpaca/male/leg_br.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d98172a595b57ad9753a57f15bac269dd3d76db7d74d9856fdfdcb9d6ef5295a +size 1680 diff --git a/assets/voxygen/voxel/npc/alpaca/male/leg_fr.vox b/assets/voxygen/voxel/npc/alpaca/male/leg_fr.vox new file mode 100644 index 0000000000..887ba16285 --- /dev/null +++ b/assets/voxygen/voxel/npc/alpaca/male/leg_fr.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:269e2de8b4218c5a2c5aa20f0dacbadbc654ea0a26ec3d41c0cf65958ae438b9 +size 1480 diff --git a/assets/voxygen/voxel/npc/alpaca/male/neck.vox b/assets/voxygen/voxel/npc/alpaca/male/neck.vox new file mode 100644 index 0000000000..b04ba96fb8 --- /dev/null +++ b/assets/voxygen/voxel/npc/alpaca/male/neck.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60427aa00f289c9db4344a00363f3e1b593fe769029b6ea67bfa189aebe9901c +size 2544 diff --git a/assets/voxygen/voxel/npc/alpaca/male/tail.vox b/assets/voxygen/voxel/npc/alpaca/male/tail.vox new file mode 100644 index 0000000000..bc0ab0cce8 --- /dev/null +++ b/assets/voxygen/voxel/npc/alpaca/male/tail.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d971b2f9ea4aafc9418be9b9a3ec6d357939889ff154ff595e4410b72ed72586 +size 1464 diff --git a/assets/voxygen/voxel/npc/alpaca/male/torso_back.vox b/assets/voxygen/voxel/npc/alpaca/male/torso_back.vox new file mode 100644 index 0000000000..5a1ba82be9 --- /dev/null +++ b/assets/voxygen/voxel/npc/alpaca/male/torso_back.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55fc286c9669344f7a54b87dd2afa1926a4922e573bff51a5ab758d56706a21f +size 3464 diff --git a/assets/voxygen/voxel/npc/alpaca/male/torso_front.vox b/assets/voxygen/voxel/npc/alpaca/male/torso_front.vox new file mode 100644 index 0000000000..38c9f15361 --- /dev/null +++ b/assets/voxygen/voxel/npc/alpaca/male/torso_front.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83fc57bea7a36092d9c2b57d3d01653da6d28f9d0f4f027a0ad69b02034a4f25 +size 2904 diff --git a/assets/voxygen/voxel/npc/cultist_warlock/male/foot_l.vox b/assets/voxygen/voxel/npc/cultist_warlock/male/foot_l.vox new file mode 100644 index 0000000000..117dc3cdc1 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlock/male/foot_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9be2da809e07b808d54d1c94ac72de7fd6d9bafc439d9794f55fff80294171c3 +size 1544 diff --git a/assets/voxygen/voxel/npc/cultist_warlock/male/foot_r.vox b/assets/voxygen/voxel/npc/cultist_warlock/male/foot_r.vox new file mode 100644 index 0000000000..117dc3cdc1 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlock/male/foot_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9be2da809e07b808d54d1c94ac72de7fd6d9bafc439d9794f55fff80294171c3 +size 1544 diff --git a/assets/voxygen/voxel/npc/cultist_warlock/male/hand_l.vox b/assets/voxygen/voxel/npc/cultist_warlock/male/hand_l.vox new file mode 100644 index 0000000000..f8179318b4 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlock/male/hand_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e15d76fe8fe2c7e9180bd4bd48de2b7ab014f0c0a7eb403b140d9d8d3d1e02b +size 2028 diff --git a/assets/voxygen/voxel/npc/cultist_warlock/male/hand_r.vox b/assets/voxygen/voxel/npc/cultist_warlock/male/hand_r.vox new file mode 100644 index 0000000000..51c1180379 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlock/male/hand_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77ebf94f05529c2a7e2f1cd1f5fe5c21ce24f06c50c88d90d78ac66b66728df9 +size 2028 diff --git a/assets/voxygen/voxel/npc/cultist_warlock/male/head.vox b/assets/voxygen/voxel/npc/cultist_warlock/male/head.vox new file mode 100644 index 0000000000..01d7de9669 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlock/male/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2e46f89a7a07825b91f1b6443669ec298bb2155bc1ff6d3f4459f5e82f5aec5 +size 4840 diff --git a/assets/voxygen/voxel/npc/cultist_warlock/male/leg_l.vox b/assets/voxygen/voxel/npc/cultist_warlock/male/leg_l.vox new file mode 100644 index 0000000000..3f78f19314 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlock/male/leg_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75f01e69263aa2d6e1a3595e5aa9cdd93194b57e13e7d404983cd894ae911b0e +size 1304 diff --git a/assets/voxygen/voxel/npc/cultist_warlock/male/leg_r.vox b/assets/voxygen/voxel/npc/cultist_warlock/male/leg_r.vox new file mode 100644 index 0000000000..3f78f19314 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlock/male/leg_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75f01e69263aa2d6e1a3595e5aa9cdd93194b57e13e7d404983cd894ae911b0e +size 1304 diff --git a/assets/voxygen/voxel/npc/cultist_warlock/male/shoulder_l.vox b/assets/voxygen/voxel/npc/cultist_warlock/male/shoulder_l.vox new file mode 100644 index 0000000000..c93fa97b9e --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlock/male/shoulder_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8085ef273ef650b35ed115871f6fd97b6b83c67319f2923aa18d805d2ae6f18b +size 1724 diff --git a/assets/voxygen/voxel/npc/cultist_warlock/male/shoulder_r.vox b/assets/voxygen/voxel/npc/cultist_warlock/male/shoulder_r.vox new file mode 100644 index 0000000000..d2a6c72a30 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlock/male/shoulder_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c88e14776ec6ee85c70845032d05001a20249fe0e878c69ad6ad6c0d2d052cba +size 1724 diff --git a/assets/voxygen/voxel/npc/cultist_warlock/male/torso_lower.vox b/assets/voxygen/voxel/npc/cultist_warlock/male/torso_lower.vox new file mode 100644 index 0000000000..200dcbfca3 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlock/male/torso_lower.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8ea34977c2dce4d84e7c7fc687be8a9ac0204fe5fff00186a52bdc1020ab93f +size 2800 diff --git a/assets/voxygen/voxel/npc/cultist_warlock/male/torso_upper.vox b/assets/voxygen/voxel/npc/cultist_warlock/male/torso_upper.vox new file mode 100644 index 0000000000..b3716b50bf --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlock/male/torso_upper.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc111ef29d545cf5182a19f55178eaccf6f7a8a6455bc01df89f1637293a540f +size 4004 diff --git a/assets/voxygen/voxel/npc/cultist_warlord/male/foot_l.vox b/assets/voxygen/voxel/npc/cultist_warlord/male/foot_l.vox new file mode 100644 index 0000000000..e9c9cfb02e --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlord/male/foot_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75369587a0b1d86769209181f7af5668001092d24e318b7f39a3219821c163cb +size 1748 diff --git a/assets/voxygen/voxel/npc/cultist_warlord/male/foot_r.vox b/assets/voxygen/voxel/npc/cultist_warlord/male/foot_r.vox new file mode 100644 index 0000000000..e9c9cfb02e --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlord/male/foot_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75369587a0b1d86769209181f7af5668001092d24e318b7f39a3219821c163cb +size 1748 diff --git a/assets/voxygen/voxel/npc/cultist_warlord/male/hand_l.vox b/assets/voxygen/voxel/npc/cultist_warlord/male/hand_l.vox new file mode 100644 index 0000000000..f26a404b30 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlord/male/hand_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cef08ce9ae8b24d616369a9bf0688c3db2eed06ac570b4279ca941b05cebb9b +size 2008 diff --git a/assets/voxygen/voxel/npc/cultist_warlord/male/hand_r.vox b/assets/voxygen/voxel/npc/cultist_warlord/male/hand_r.vox new file mode 100644 index 0000000000..87ad00599e --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlord/male/hand_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98c055f9737bc153d9859069651ce3f04f53f9f14fef852216bfa69e14f85b1e +size 2008 diff --git a/assets/voxygen/voxel/npc/cultist_warlord/male/head.vox b/assets/voxygen/voxel/npc/cultist_warlord/male/head.vox new file mode 100644 index 0000000000..c1f7ac8e5b --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlord/male/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0837160f64bd433fd8ea27b99845e958e213fca1cc5350e58d82fe84f45e7dce +size 5352 diff --git a/assets/voxygen/voxel/npc/cultist_warlord/male/leg_l.vox b/assets/voxygen/voxel/npc/cultist_warlord/male/leg_l.vox new file mode 100644 index 0000000000..3e750c7909 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlord/male/leg_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:607ba31c5d549002b91277c4f103da92bbc3fbbb56d24bd88e47991b63e3feda +size 1304 diff --git a/assets/voxygen/voxel/npc/cultist_warlord/male/leg_r.vox b/assets/voxygen/voxel/npc/cultist_warlord/male/leg_r.vox new file mode 100644 index 0000000000..3e750c7909 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlord/male/leg_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:607ba31c5d549002b91277c4f103da92bbc3fbbb56d24bd88e47991b63e3feda +size 1304 diff --git a/assets/voxygen/voxel/npc/cultist_warlord/male/shoulder_l.vox b/assets/voxygen/voxel/npc/cultist_warlord/male/shoulder_l.vox new file mode 100644 index 0000000000..0136e7ba9d --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlord/male/shoulder_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:171568a256c6786d12c3dec399844bd89df9edfca737331f305f64604e184bdb +size 2304 diff --git a/assets/voxygen/voxel/npc/cultist_warlord/male/shoulder_r.vox b/assets/voxygen/voxel/npc/cultist_warlord/male/shoulder_r.vox new file mode 100644 index 0000000000..8c7fb02e0a --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlord/male/shoulder_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68e0affa713344ca7fff1a73eea51e5d6e15807de92f8500533bcb8f89f1e000 +size 2304 diff --git a/assets/voxygen/voxel/npc/cultist_warlord/male/torso_lower.vox b/assets/voxygen/voxel/npc/cultist_warlord/male/torso_lower.vox new file mode 100644 index 0000000000..98275c1648 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlord/male/torso_lower.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82febe57d17d665f7f4b5b6fb85a1d2969229503d89d8287d0c0e07c08536797 +size 2848 diff --git a/assets/voxygen/voxel/npc/cultist_warlord/male/torso_upper.vox b/assets/voxygen/voxel/npc/cultist_warlord/male/torso_upper.vox new file mode 100644 index 0000000000..ffb9d8a9b9 --- /dev/null +++ b/assets/voxygen/voxel/npc/cultist_warlord/male/torso_upper.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:205b5329da47997a653c43b8ff9ae26e52d3915ef5c7b8df084b770fd2af33a4 +size 4736 diff --git a/assets/voxygen/voxel/npc/duck/female/head.vox b/assets/voxygen/voxel/npc/duck/female/head.vox index 3b26df99d5..ad0ff800a8 100644 --- a/assets/voxygen/voxel/npc/duck/female/head.vox +++ b/assets/voxygen/voxel/npc/duck/female/head.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:81e5bc6d27fc6f8946331487853c0c8c1cee1b8bf08efb4393340ede5e1ec490 -size 1216 +oid sha256:768c794779e181c73376955cd87401790b00789620cfb66e6b3da8795049f197 +size 1408 diff --git a/assets/voxygen/voxel/npc/duck/female/leg_r.vox b/assets/voxygen/voxel/npc/duck/female/leg_r.vox index 3be613af5c..acb6a89c83 100644 --- a/assets/voxygen/voxel/npc/duck/female/leg_r.vox +++ b/assets/voxygen/voxel/npc/duck/female/leg_r.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:483b2b9d8617f0f902f98578a96844242442831762dd4afa09e1198798924079 -size 1128 +oid sha256:6d3b38afae202d17812b45118b605bc72dae7b0e8ddaffec79612a074eaecf48 +size 1184 diff --git a/assets/voxygen/voxel/npc/duck/female/tail.vox b/assets/voxygen/voxel/npc/duck/female/tail.vox index 0c0e2707eb..291e649074 100644 --- a/assets/voxygen/voxel/npc/duck/female/tail.vox +++ b/assets/voxygen/voxel/npc/duck/female/tail.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:618e0daa8cd2901c75e3fe17658a79a335835e2b7bbb00c5bfb7138314168ec1 -size 1156 +oid sha256:d660e8a544a9c1dabdb37f22c9ec356edc3865fca26df6fd63fb7987286bcdb5 +size 1216 diff --git a/assets/voxygen/voxel/npc/duck/female/torso.vox b/assets/voxygen/voxel/npc/duck/female/torso.vox index 7125dfee9d..6846ff27c4 100644 --- a/assets/voxygen/voxel/npc/duck/female/torso.vox +++ b/assets/voxygen/voxel/npc/duck/female/torso.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1f2d93cf83277b348fcb0775554e77a78315ec9890570486701da787175cb37b -size 1576 +oid sha256:fd2a3167681fc1de1ad34749462bdfa6f872dea66cb65da73cdad15bbc103c7c +size 1944 diff --git a/assets/voxygen/voxel/npc/duck/female/wing.vox b/assets/voxygen/voxel/npc/duck/female/wing.vox index 9849a28317..c428e03774 100644 --- a/assets/voxygen/voxel/npc/duck/female/wing.vox +++ b/assets/voxygen/voxel/npc/duck/female/wing.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a6ca0fc4e689a37163e7c5b64db9cae5e2a79791489326bd67a393ab6cc3b9e9 -size 1144 +oid sha256:3a80090d025a00b03083643bc2b749eafea5034ec992c882a0fb41a0b06db4d3 +size 1184 diff --git a/assets/voxygen/voxel/npc/duck/male/head.vox b/assets/voxygen/voxel/npc/duck/male/head.vox index 684343bdfe..9a429784a5 100644 --- a/assets/voxygen/voxel/npc/duck/male/head.vox +++ b/assets/voxygen/voxel/npc/duck/male/head.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ee6a99b5e62b4bf623ae2df82a31b59fcbca98239e9bbece43bc53e0782bbcec -size 1216 +oid sha256:627dce91d0b1710e4dcbf654170282f8262409f0731b2183e0dc10904715fb96 +size 1408 diff --git a/assets/voxygen/voxel/npc/duck/male/leg_r.vox b/assets/voxygen/voxel/npc/duck/male/leg_r.vox index 3be613af5c..4ba416c1c0 100644 --- a/assets/voxygen/voxel/npc/duck/male/leg_r.vox +++ b/assets/voxygen/voxel/npc/duck/male/leg_r.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:483b2b9d8617f0f902f98578a96844242442831762dd4afa09e1198798924079 -size 1128 +oid sha256:148f9d4c74f57435de6375dd79279782797bc275bab0a24455a928e4ab213a9a +size 1184 diff --git a/assets/voxygen/voxel/npc/duck/male/tail.vox b/assets/voxygen/voxel/npc/duck/male/tail.vox index fc79b8de2a..4298179b35 100644 --- a/assets/voxygen/voxel/npc/duck/male/tail.vox +++ b/assets/voxygen/voxel/npc/duck/male/tail.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a3503b0c9cdb6d847a3c5eaf8e256be3a9e1042108074450c3d7738394f5a966 -size 1156 +oid sha256:c1117e32ff560cfe68a57d7b15cdcf05616322479c26e7de3ca365dad6089967 +size 1216 diff --git a/assets/voxygen/voxel/npc/duck/male/torso.vox b/assets/voxygen/voxel/npc/duck/male/torso.vox index 8f2b02aa1b..fe15a206d9 100644 --- a/assets/voxygen/voxel/npc/duck/male/torso.vox +++ b/assets/voxygen/voxel/npc/duck/male/torso.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f44ec1e38436dcb5236696922956349593a725cfd95cdae5279bd0d2e7f39ded -size 1576 +oid sha256:5455748a19d29c00f6e4fbc7079e45a5c44e65d6e4bbb6d1de06b2a4cb075193 +size 1944 diff --git a/assets/voxygen/voxel/npc/duck/male/wing.vox b/assets/voxygen/voxel/npc/duck/male/wing.vox index 5e83039067..80245520d7 100644 --- a/assets/voxygen/voxel/npc/duck/male/wing.vox +++ b/assets/voxygen/voxel/npc/duck/male/wing.vox @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cd07b1d470989d85762b47d14afbf0dd0438c4557144d4216c0cdd4921e42d75 -size 1144 +oid sha256:a86bc4b4ffe7981cccba366339b66e1b74eafa4c0172ea9f5230dd6bec369328 +size 1184 diff --git a/assets/voxygen/voxel/npc/husk_brute/male/foot_l.vox b/assets/voxygen/voxel/npc/husk_brute/male/foot_l.vox new file mode 100644 index 0000000000..781e93ba16 --- /dev/null +++ b/assets/voxygen/voxel/npc/husk_brute/male/foot_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:def1166360040579420940df95e73f33e21425d0f3bb493be53f7a98bb98f32e +size 1660 diff --git a/assets/voxygen/voxel/npc/husk_brute/male/foot_r.vox b/assets/voxygen/voxel/npc/husk_brute/male/foot_r.vox new file mode 100644 index 0000000000..73112faae9 --- /dev/null +++ b/assets/voxygen/voxel/npc/husk_brute/male/foot_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a85347ae6106c2dc616ef80280b81d5c713a314d3b6effb1960ebfad8473ed7 +size 1660 diff --git a/assets/voxygen/voxel/npc/husk_brute/male/hand_l.vox b/assets/voxygen/voxel/npc/husk_brute/male/hand_l.vox new file mode 100644 index 0000000000..92b89b98ff --- /dev/null +++ b/assets/voxygen/voxel/npc/husk_brute/male/hand_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:814635331cd931787e9f00177f013574d60643a4db756a58c25d4c733bbb4877 +size 3236 diff --git a/assets/voxygen/voxel/npc/husk_brute/male/hand_r.vox b/assets/voxygen/voxel/npc/husk_brute/male/hand_r.vox new file mode 100644 index 0000000000..d703d02be1 --- /dev/null +++ b/assets/voxygen/voxel/npc/husk_brute/male/hand_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dbbc132be878fe286e69a6aee1d63522086d7f7f6ec9aca4ed0198befe56394 +size 3236 diff --git a/assets/voxygen/voxel/npc/husk_brute/male/head.vox b/assets/voxygen/voxel/npc/husk_brute/male/head.vox new file mode 100644 index 0000000000..c967bdbf2a --- /dev/null +++ b/assets/voxygen/voxel/npc/husk_brute/male/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a156a2f61b141b285dc10da3ec453c96b10f9845a088c6f256a773153b85c978 +size 4792 diff --git a/assets/voxygen/voxel/npc/husk_brute/male/leg_l.vox b/assets/voxygen/voxel/npc/husk_brute/male/leg_l.vox new file mode 100644 index 0000000000..30b089643c --- /dev/null +++ b/assets/voxygen/voxel/npc/husk_brute/male/leg_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f4e335af3e38b0f2700c9e79e84839d91ed03d2ce9cd70d1f27add95d329a6c +size 1504 diff --git a/assets/voxygen/voxel/npc/husk_brute/male/leg_r.vox b/assets/voxygen/voxel/npc/husk_brute/male/leg_r.vox new file mode 100644 index 0000000000..30b089643c --- /dev/null +++ b/assets/voxygen/voxel/npc/husk_brute/male/leg_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f4e335af3e38b0f2700c9e79e84839d91ed03d2ce9cd70d1f27add95d329a6c +size 1504 diff --git a/assets/voxygen/voxel/npc/husk_brute/male/shoulder_l.vox b/assets/voxygen/voxel/npc/husk_brute/male/shoulder_l.vox new file mode 100644 index 0000000000..cca05a1690 --- /dev/null +++ b/assets/voxygen/voxel/npc/husk_brute/male/shoulder_l.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:659f615c80a701244ab916514ed6dc69fc081de586f51fb0d3260b6a125d94c2 +size 2864 diff --git a/assets/voxygen/voxel/npc/husk_brute/male/shoulder_r.vox b/assets/voxygen/voxel/npc/husk_brute/male/shoulder_r.vox new file mode 100644 index 0000000000..20a04fc8a8 --- /dev/null +++ b/assets/voxygen/voxel/npc/husk_brute/male/shoulder_r.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91119f24cd15de41f28f6325b375218c545edd06d0e7208c4478f86062720d83 +size 2864 diff --git a/assets/voxygen/voxel/npc/husk_brute/male/torso_lower.vox b/assets/voxygen/voxel/npc/husk_brute/male/torso_lower.vox new file mode 100644 index 0000000000..ad4b4f146b --- /dev/null +++ b/assets/voxygen/voxel/npc/husk_brute/male/torso_lower.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81c0ed7bbfcef1802c30e7a2e0d4140d42c979824c65420fdf6ccfc32bc70714 +size 3628 diff --git a/assets/voxygen/voxel/npc/husk_brute/male/torso_upper.vox b/assets/voxygen/voxel/npc/husk_brute/male/torso_upper.vox new file mode 100644 index 0000000000..c479d5ccba --- /dev/null +++ b/assets/voxygen/voxel/npc/husk_brute/male/torso_upper.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b9f45f40abf6ff014283caba855857fd1d0ec2ed11c25228a396aa275e8939f +size 10652 diff --git a/assets/voxygen/voxel/npc/llama/male/ears.vox b/assets/voxygen/voxel/npc/llama/male/ears.vox new file mode 100644 index 0000000000..9d4f67958c --- /dev/null +++ b/assets/voxygen/voxel/npc/llama/male/ears.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e30eab986f71e9a8480d4f818c1a793db7ccd96411a56f9f5bd5586fd169b0f +size 1200 diff --git a/assets/voxygen/voxel/npc/llama/male/foot_br.vox b/assets/voxygen/voxel/npc/llama/male/foot_br.vox new file mode 100644 index 0000000000..e6c780fac0 --- /dev/null +++ b/assets/voxygen/voxel/npc/llama/male/foot_br.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c2927d862e271a814e073dd8c10565c3fb0467a2089b175138a70e3a16f5356 +size 1356 diff --git a/assets/voxygen/voxel/npc/llama/male/foot_fr.vox b/assets/voxygen/voxel/npc/llama/male/foot_fr.vox new file mode 100644 index 0000000000..44bbd8341d --- /dev/null +++ b/assets/voxygen/voxel/npc/llama/male/foot_fr.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0671223cb64a2b59d006d726ca69b7053a96fd37971a29829be97dd96e5923b4 +size 1368 diff --git a/assets/voxygen/voxel/npc/llama/male/head.vox b/assets/voxygen/voxel/npc/llama/male/head.vox new file mode 100644 index 0000000000..19c4326a7a --- /dev/null +++ b/assets/voxygen/voxel/npc/llama/male/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:788e36255e3137423b1993616f224b71e2f285efae8a036bd2f81be9df8beea6 +size 2360 diff --git a/assets/voxygen/voxel/npc/llama/male/jaw.vox b/assets/voxygen/voxel/npc/llama/male/jaw.vox new file mode 100644 index 0000000000..1c2872c516 --- /dev/null +++ b/assets/voxygen/voxel/npc/llama/male/jaw.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1882295dc5e2fdc166c91325ec49cd05ab168605587d15cee89e8f0e50ed7f6f +size 1208 diff --git a/assets/voxygen/voxel/npc/llama/male/leg_br.vox b/assets/voxygen/voxel/npc/llama/male/leg_br.vox new file mode 100644 index 0000000000..567bab2e4b --- /dev/null +++ b/assets/voxygen/voxel/npc/llama/male/leg_br.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b51f1ce14a4daacacfd3bdfa85c17f19cbd70b158265ac5b1cc5ccde95b53b41 +size 1684 diff --git a/assets/voxygen/voxel/npc/llama/male/leg_fr.vox b/assets/voxygen/voxel/npc/llama/male/leg_fr.vox new file mode 100644 index 0000000000..bfb864c7ca --- /dev/null +++ b/assets/voxygen/voxel/npc/llama/male/leg_fr.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50d293d04e5271d8c1992a8fc0e59ec7376a2d4908e23d3e52dc986df4c29b1c +size 1604 diff --git a/assets/voxygen/voxel/npc/llama/male/neck.vox b/assets/voxygen/voxel/npc/llama/male/neck.vox new file mode 100644 index 0000000000..396f54b223 --- /dev/null +++ b/assets/voxygen/voxel/npc/llama/male/neck.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6784e3f6a9f5574baaabadd06961624ce5cf9c90d7ce44e83b44b866326a18a +size 3744 diff --git a/assets/voxygen/voxel/npc/llama/male/tail.vox b/assets/voxygen/voxel/npc/llama/male/tail.vox new file mode 100644 index 0000000000..53d61a3a56 --- /dev/null +++ b/assets/voxygen/voxel/npc/llama/male/tail.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73000c9ce82db82c6d784a1cb2963ab49c9a32730eb7f0e5d4dc7bf41448154a +size 1344 diff --git a/assets/voxygen/voxel/npc/llama/male/torso_back.vox b/assets/voxygen/voxel/npc/llama/male/torso_back.vox new file mode 100644 index 0000000000..39ae1405c7 --- /dev/null +++ b/assets/voxygen/voxel/npc/llama/male/torso_back.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbd269e4736b47909d50871dfcb9994c16da4539b78f3d1cb35478e2f323a0a7 +size 4232 diff --git a/assets/voxygen/voxel/npc/llama/male/torso_front.vox b/assets/voxygen/voxel/npc/llama/male/torso_front.vox new file mode 100644 index 0000000000..944fbc586b --- /dev/null +++ b/assets/voxygen/voxel/npc/llama/male/torso_front.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1512a046c72120af9c2a048a356dbf6d86e23c0ed3770393a9f0a1d9b30b8edb +size 4424 diff --git a/assets/voxygen/voxel/npc/mammoth/male/foot_br.vox b/assets/voxygen/voxel/npc/mammoth/male/foot_br.vox new file mode 100644 index 0000000000..4c1ffc5762 --- /dev/null +++ b/assets/voxygen/voxel/npc/mammoth/male/foot_br.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72ca78fc160a200233ecdeed8028c39aa9e716b878ea860fa8f9e90d77bfdaad +size 2540 diff --git a/assets/voxygen/voxel/npc/mammoth/male/foot_fr.vox b/assets/voxygen/voxel/npc/mammoth/male/foot_fr.vox new file mode 100644 index 0000000000..54adfbf8c4 --- /dev/null +++ b/assets/voxygen/voxel/npc/mammoth/male/foot_fr.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7525e53849ae288bc7da334fe6bc8e58595c77324db19af4b29e7e280e8b349b +size 3016 diff --git a/assets/voxygen/voxel/npc/mammoth/male/head.vox b/assets/voxygen/voxel/npc/mammoth/male/head.vox new file mode 100644 index 0000000000..a3002dc57c --- /dev/null +++ b/assets/voxygen/voxel/npc/mammoth/male/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fccfbe78cf12875199bd3b768745634a3a6858347923fe4981fd30cdfae7e57 +size 7472 diff --git a/assets/voxygen/voxel/npc/mammoth/male/jaw.vox b/assets/voxygen/voxel/npc/mammoth/male/jaw.vox new file mode 100644 index 0000000000..46484ad33e --- /dev/null +++ b/assets/voxygen/voxel/npc/mammoth/male/jaw.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c301cc09e81ecee8f3d2fbc5860f5072a051788a29a7ab886ef94d8675d0173a +size 2008 diff --git a/assets/voxygen/voxel/npc/mammoth/male/leg_br.vox b/assets/voxygen/voxel/npc/mammoth/male/leg_br.vox new file mode 100644 index 0000000000..652202accb --- /dev/null +++ b/assets/voxygen/voxel/npc/mammoth/male/leg_br.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc8872a768b8edea8f6bdca0658c1c959ceaee04b12a5bcc135dd1e89b8ee80c +size 3544 diff --git a/assets/voxygen/voxel/npc/mammoth/male/leg_fr.vox b/assets/voxygen/voxel/npc/mammoth/male/leg_fr.vox new file mode 100644 index 0000000000..ce870688f4 --- /dev/null +++ b/assets/voxygen/voxel/npc/mammoth/male/leg_fr.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aa8ba06cf034a63080bafbadd1a4833a06592af5c48d55bf92d54b5bb6969ca +size 3528 diff --git a/assets/voxygen/voxel/npc/mammoth/male/neck.vox b/assets/voxygen/voxel/npc/mammoth/male/neck.vox new file mode 100644 index 0000000000..d975fd3015 --- /dev/null +++ b/assets/voxygen/voxel/npc/mammoth/male/neck.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c959cdab2dcf2ff153e116808c28a973f8b29b4d8d43d34e19ea37951545b99a +size 5816 diff --git a/assets/voxygen/voxel/npc/mammoth/male/tail.vox b/assets/voxygen/voxel/npc/mammoth/male/tail.vox new file mode 100644 index 0000000000..3f6faea1a2 --- /dev/null +++ b/assets/voxygen/voxel/npc/mammoth/male/tail.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9c5dc4d9307d8c94d0527082d3328e18290bf5f08f3cabb3591f5162bc92b51 +size 1504 diff --git a/assets/voxygen/voxel/npc/mammoth/male/torso_back.vox b/assets/voxygen/voxel/npc/mammoth/male/torso_back.vox new file mode 100644 index 0000000000..b7d51ad7df --- /dev/null +++ b/assets/voxygen/voxel/npc/mammoth/male/torso_back.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d291c1dc28a8dd6eb8c86f3a36a04341699313fbbb15928b55910c0d592693d0 +size 15328 diff --git a/assets/voxygen/voxel/npc/mammoth/male/torso_front.vox b/assets/voxygen/voxel/npc/mammoth/male/torso_front.vox new file mode 100644 index 0000000000..f13f4d590e --- /dev/null +++ b/assets/voxygen/voxel/npc/mammoth/male/torso_front.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4d57f44b7cd6758c937a9c14f254539df9b0073cc6e8faafb33052e71d0b21b +size 21228 diff --git a/assets/voxygen/voxel/npc/ngoubou/male/foot_br.vox b/assets/voxygen/voxel/npc/ngoubou/male/foot_br.vox new file mode 100644 index 0000000000..ced741ac58 --- /dev/null +++ b/assets/voxygen/voxel/npc/ngoubou/male/foot_br.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42248a01f1294622eae3c5861ba8d35e45b432428d3ea6caf064deccc69e5cd8 +size 1696 diff --git a/assets/voxygen/voxel/npc/ngoubou/male/foot_fr.vox b/assets/voxygen/voxel/npc/ngoubou/male/foot_fr.vox new file mode 100644 index 0000000000..75dd001f17 --- /dev/null +++ b/assets/voxygen/voxel/npc/ngoubou/male/foot_fr.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc232484d1090b2f6d717a4a5bb5ce405f82b2ff87de792236d95a8605e7991f +size 1672 diff --git a/assets/voxygen/voxel/npc/ngoubou/male/head.vox b/assets/voxygen/voxel/npc/ngoubou/male/head.vox new file mode 100644 index 0000000000..2923035a1d --- /dev/null +++ b/assets/voxygen/voxel/npc/ngoubou/male/head.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21b51a9da4e8d18b66f81fab1266b58134d08ec7a8b39363a12984fe65c9f9bd +size 5372 diff --git a/assets/voxygen/voxel/npc/ngoubou/male/jaw.vox b/assets/voxygen/voxel/npc/ngoubou/male/jaw.vox new file mode 100644 index 0000000000..35420f25e9 --- /dev/null +++ b/assets/voxygen/voxel/npc/ngoubou/male/jaw.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c76bfe12da54ebe26596ebe27d589d58d6f0d0dc39d44c5b532b79987a4820b +size 1300 diff --git a/assets/voxygen/voxel/npc/ngoubou/male/leg_br.vox b/assets/voxygen/voxel/npc/ngoubou/male/leg_br.vox new file mode 100644 index 0000000000..675e6fac73 --- /dev/null +++ b/assets/voxygen/voxel/npc/ngoubou/male/leg_br.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0709c1bad08dfc0ed4126d0fece7be080ac9f09aadfc6cb12e02ef16325c02cb +size 2912 diff --git a/assets/voxygen/voxel/npc/ngoubou/male/leg_fr.vox b/assets/voxygen/voxel/npc/ngoubou/male/leg_fr.vox new file mode 100644 index 0000000000..464ed57872 --- /dev/null +++ b/assets/voxygen/voxel/npc/ngoubou/male/leg_fr.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65edc12de44621ee147b964c51716685ddd22ed3f45d0ee6a20e17b6fddaae29 +size 2440 diff --git a/assets/voxygen/voxel/npc/ngoubou/male/neck.vox b/assets/voxygen/voxel/npc/ngoubou/male/neck.vox new file mode 100644 index 0000000000..daff29a255 --- /dev/null +++ b/assets/voxygen/voxel/npc/ngoubou/male/neck.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e52a2e6ee9ccbac40e1525f8e6c2de6a2c6835b7356bf932c80e105f91b6aeec +size 3204 diff --git a/assets/voxygen/voxel/npc/ngoubou/male/tail.vox b/assets/voxygen/voxel/npc/ngoubou/male/tail.vox new file mode 100644 index 0000000000..99878c3355 --- /dev/null +++ b/assets/voxygen/voxel/npc/ngoubou/male/tail.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67089b1afbf7381dbec7214101d574ccac4b863c44dd89d7df1c5f26c8c2e4c6 +size 1396 diff --git a/assets/voxygen/voxel/npc/ngoubou/male/torso_back.vox b/assets/voxygen/voxel/npc/ngoubou/male/torso_back.vox new file mode 100644 index 0000000000..e612f567c2 --- /dev/null +++ b/assets/voxygen/voxel/npc/ngoubou/male/torso_back.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffc5d23315c7e532b43836ac282b13bf0f3bc3d4361d38a8af4e0a599148cd1e +size 7264 diff --git a/assets/voxygen/voxel/npc/ngoubou/male/torso_front.vox b/assets/voxygen/voxel/npc/ngoubou/male/torso_front.vox new file mode 100644 index 0000000000..5b594e579f --- /dev/null +++ b/assets/voxygen/voxel/npc/ngoubou/male/torso_front.vox @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7dbd8af2890598f01cb74da774ef9ec48ff07aea12260114b50e5dc7ce7a5034 +size 6332 diff --git a/assets/voxygen/voxel/quadruped_medium_central_manifest.ron b/assets/voxygen/voxel/quadruped_medium_central_manifest.ron index 72e6b57a67..69901c6685 100644 --- a/assets/voxygen/voxel/quadruped_medium_central_manifest.ron +++ b/assets/voxygen/voxel/quadruped_medium_central_manifest.ron @@ -1799,4 +1799,244 @@ central: ("npc.snowleopard.male.tail"), ), ), + (Mammoth, Male): ( + head: ( + offset: (-13.0, 0.0, -11.0), + central: ("npc.mammoth.male.head"), + ), + neck: ( + offset: (-6.0, -3.5, -11.5), + central: ("npc.mammoth.male.neck"), + ), + jaw: ( + offset: (-3.0, -5.0, -13.0), + central: ("npc.mammoth.male.jaw"), + ), + torso_front: ( + offset: (-9.0, -14.0, -15.0), + central: ("npc.mammoth.male.torso_front"), + ), + torso_back: ( + offset: (-8.0, -14.0, -12.5), + central: ("npc.mammoth.male.torso_back"), + ), + ears: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + tail: ( + offset: (-2.0, -6.0, -15.0), + central: ("npc.mammoth.male.tail"), + ), + ), + (Mammoth, Female): ( + head: ( + offset: (-13.0, 0.0, -11.0), + central: ("npc.mammoth.male.head"), + ), + neck: ( + offset: (-6.0, -3.5, -11.5), + central: ("npc.mammoth.male.neck"), + ), + jaw: ( + offset: (-3.0, -5.0, -13.0), + central: ("npc.mammoth.male.jaw"), + ), + torso_front: ( + offset: (-9.0, -14.0, -15.0), + central: ("npc.mammoth.male.torso_front"), + ), + torso_back: ( + offset: (-8.0, -14.0, -12.5), + central: ("npc.mammoth.male.torso_back"), + ), + ears: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + tail: ( + offset: (-2.0, -6.0, -15.0), + central: ("npc.mammoth.male.tail"), + ), + ), + (Ngoubou, Male): ( + head: ( + offset: (-9.5, 0.0, -9.0), + central: ("npc.ngoubou.male.head"), + ), + neck: ( + offset: (-4.5, -3.0, -7.5), + central: ("npc.ngoubou.male.neck"), + ), + jaw: ( + offset: (-2.5, -7.0, -3.0), + central: ("npc.ngoubou.male.jaw"), + ), + torso_front: ( + offset: (-5.5, -9.0, -9.5), + central: ("npc.ngoubou.male.torso_front"), + ), + torso_back: ( + offset: (-5.5, -13.0, -7.5), + central: ("npc.ngoubou.male.torso_back"), + ), + ears: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + tail: ( + offset: (-1.5, -8.0, -14.0), + central: ("npc.ngoubou.male.tail"), + ), + ), + (Ngoubou, Female): ( + head: ( + offset: (-9.5, 0.0, -9.0), + central: ("npc.ngoubou.male.head"), + ), + neck: ( + offset: (-4.5, -3.0, -7.5), + central: ("npc.ngoubou.male.neck"), + ), + jaw: ( + offset: (-2.5, 0.0, -3.0), + central: ("npc.ngoubou.male.jaw"), + ), + torso_front: ( + offset: (-5.5, -9.0, -9.5), + central: ("npc.ngoubou.male.torso_front"), + ), + torso_back: ( + offset: (-5.5, -13.0, -7.5), + central: ("npc.ngoubou.male.torso_back"), + ), + ears: ( + offset: (0.0, 0.0, 0.0), + central: ("armor.empty"), + ), + tail: ( + offset: (-1.5, -8.0, -14.0), + central: ("npc.ngoubou.male.tail"), + ), + ), + (Llama, Male): ( + head: ( + offset: (-3.0, -2.0, -3.5), + central: ("npc.llama.male.head"), + ), + neck: ( + offset: (-3.0, -4.5, -9.5), + central: ("npc.llama.male.neck"), + ), + jaw: ( + offset: (-2.0, 0.0, -2.0), + central: ("npc.llama.male.jaw"), + ), + torso_front: ( + offset: (-6.0, -9.0, -6.0), + central: ("npc.llama.male.torso_front"), + ), + torso_back: ( + offset: (-5.0, -12.0, -5.0), + central: ("npc.llama.male.torso_back"), + ), + ears: ( + offset: (-4.0, -1.0, 0.0), + central: ("npc.llama.male.ears"), + ), + tail: ( + offset: (-2.0, -5.0, -7.0), + central: ("npc.llama.male.tail"), + ), + ), + (Llama, Female): ( + head: ( + offset: (-3.0, -2.0, -3.5), + central: ("npc.llama.male.head"), + ), + neck: ( + offset: (-3.0, -4.5, -9.5), + central: ("npc.llama.male.neck"), + ), + jaw: ( + offset: (-2.0, 0.0, -2.0), + central: ("npc.llama.male.jaw"), + ), + torso_front: ( + offset: (-6.0, -9.0, -6.0), + central: ("npc.llama.male.torso_front"), + ), + torso_back: ( + offset: (-5.0, -12.0, -5.0), + central: ("npc.llama.male.torso_back"), + ), + ears: ( + offset: (-4.0, -1.0, 0.0), + central: ("npc.llama.male.ears"), + ), + tail: ( + offset: (-2.0, -5.0, -7.0), + central: ("npc.llama.male.tail"), + ), + ), + (Alpaca, Male): ( + head: ( + offset: (-4.0, -3.0, -4.0), + central: ("npc.alpaca.male.head"), + ), + neck: ( + offset: (-3.0, -3.5, -6.5), + central: ("npc.alpaca.male.neck"), + ), + jaw: ( + offset: (-1.0, 0.0, -0.5), + central: ("npc.alpaca.male.jaw"), + ), + torso_front: ( + offset: (-5.0, -8.0, -4.5), + central: ("npc.alpaca.male.torso_front"), + ), + torso_back: ( + offset: (-5.0, -10.0, -4.5), + central: ("npc.alpaca.male.torso_back"), + ), + ears: ( + offset: (-4.0, -1.0, 0.0), + central: ("npc.alpaca.male.ears"), + ), + tail: ( + offset: (-3.0, -5.0, -8.0), + central: ("npc.alpaca.male.tail"), + ), + ), + (Alpaca, Female): ( + head: ( + offset: (-4.0, -3.0, -4.0), + central: ("npc.alpaca.male.head"), + ), + neck: ( + offset: (-3.0, -3.5, -6.5), + central: ("npc.alpaca.male.neck"), + ), + jaw: ( + offset: (-1.0, 0.0, -0.5), + central: ("npc.alpaca.male.jaw"), + ), + torso_front: ( + offset: (-5.0, -8.0, -4.5), + central: ("npc.alpaca.male.torso_front"), + ), + torso_back: ( + offset: (-5.0, -10.0, -4.5), + central: ("npc.alpaca.male.torso_back"), + ), + ears: ( + offset: (-4.0, -1.0, 0.0), + central: ("npc.alpaca.male.ears"), + ), + tail: ( + offset: (-3.0, -5.0, -8.0), + central: ("npc.alpaca.male.tail"), + ), + ), }) diff --git a/assets/voxygen/voxel/quadruped_medium_lateral_manifest.ron b/assets/voxygen/voxel/quadruped_medium_lateral_manifest.ron index 31d36969bb..8e0ff588b2 100644 --- a/assets/voxygen/voxel/quadruped_medium_lateral_manifest.ron +++ b/assets/voxygen/voxel/quadruped_medium_lateral_manifest.ron @@ -2039,4 +2039,276 @@ lateral: ("npc.snowleopard.male.foot_br"), ), ), + (Mammoth, Male): ( + leg_fl: ( + offset: (-4.0, -5.0, -6.0), + lateral: ("npc.mammoth.male.leg_fr"), + ), + leg_fr: ( + offset: (-4.0, -5.0, -6.0), + lateral: ("npc.mammoth.male.leg_fr"), + ), + leg_bl: ( + offset: (-3.5, -5.0, -5.5), + lateral: ("npc.mammoth.male.leg_br"), + ), + leg_br: ( + offset: (-3.5, -5.0, -5.5), + lateral: ("npc.mammoth.male.leg_br"), + ), + foot_fl: ( + offset: (-3.5, -4.5, -10.0), + lateral: ("npc.mammoth.male.foot_fr"), + ), + foot_fr: ( + offset: (-3.5, -4.5, -10.0), + lateral: ("npc.mammoth.male.foot_fr"), + ), + foot_bl: ( + offset: (-3.0, -4.5, -9.0), + lateral: ("npc.mammoth.male.foot_br"), + ), + foot_br: ( + offset: (-3.0, -4.5, -9.0), + lateral: ("npc.mammoth.male.foot_br"), + ), + ), + (Mammoth, Female): ( + leg_fl: ( + offset: (-4.0, -5.0, -6.0), + lateral: ("npc.mammoth.male.leg_fr"), + ), + leg_fr: ( + offset: (-4.0, -5.0, -6.0), + lateral: ("npc.mammoth.male.leg_fr"), + ), + leg_bl: ( + offset: (-3.5, -5.0, -5.5), + lateral: ("npc.mammoth.male.leg_br"), + ), + leg_br: ( + offset: (-3.5, -5.0, -5.5), + lateral: ("npc.mammoth.male.leg_br"), + ), + foot_fl: ( + offset: (-3.5, -4.5, -10.0), + lateral: ("npc.mammoth.male.foot_fr"), + ), + foot_fr: ( + offset: (-3.5, -4.5, -10.0), + lateral: ("npc.mammoth.male.foot_fr"), + ), + foot_bl: ( + offset: (-3.0, -4.5, -9.0), + lateral: ("npc.mammoth.male.foot_br"), + ), + foot_br: ( + offset: (-3.0, -4.5, -9.0), + lateral: ("npc.mammoth.male.foot_br"), + ), + ), + (Ngoubou, Male): ( + leg_fl: ( + offset: (-2.5, -4.0, -7.0), + lateral: ("npc.ngoubou.male.leg_fr"), + ), + leg_fr: ( + offset: (-2.5, -4.0, -7.0), + lateral: ("npc.ngoubou.male.leg_fr"), + ), + leg_bl: ( + offset: (-3.0, -4.5, -5.5), + lateral: ("npc.ngoubou.male.leg_br"), + ), + leg_br: ( + offset: (-3.0, -4.5, -5.5), + lateral: ("npc.ngoubou.male.leg_br"), + ), + foot_fl: ( + offset: (-2.5, -3.5, -9.0), + lateral: ("npc.ngoubou.male.foot_fr"), + ), + foot_fr: ( + offset: (-2.5, -3.5, -9.0), + lateral: ("npc.ngoubou.male.foot_fr"), + ), + foot_bl: ( + offset: (-2.5, -3.5, -9.0), + lateral: ("npc.ngoubou.male.foot_br"), + ), + foot_br: ( + offset: (-2.5, -3.5, -9.0), + lateral: ("npc.ngoubou.male.foot_br"), + ), + ), + (Ngoubou, Female): ( + leg_fl: ( + offset: (-2.5, -4.0, -7.0), + lateral: ("npc.ngoubou.male.leg_fr"), + ), + leg_fr: ( + offset: (-2.5, -4.0, -7.0), + lateral: ("npc.ngoubou.male.leg_fr"), + ), + leg_bl: ( + offset: (-3.0, -4.5, -5.5), + lateral: ("npc.ngoubou.male.leg_br"), + ), + leg_br: ( + offset: (-3.0, -4.5, -5.5), + lateral: ("npc.ngoubou.male.leg_br"), + ), + foot_fl: ( + offset: (-2.5, -3.5, -9.0), + lateral: ("npc.ngoubou.male.foot_fr"), + ), + foot_fr: ( + offset: (-2.5, -3.5, -9.0), + lateral: ("npc.ngoubou.male.foot_fr"), + ), + foot_bl: ( + offset: (-2.5, -3.5, -9.0), + lateral: ("npc.ngoubou.male.foot_br"), + ), + foot_br: ( + offset: (-2.5, -3.5, -9.0), + lateral: ("npc.ngoubou.male.foot_br"), + ), + ), + (Llama, Male): ( + leg_fl: ( + offset: (-2.0, -2.5, -6.0), + lateral: ("npc.llama.male.leg_fr"), + ), + leg_fr: ( + offset: (-2.0, -2.5, -6.0), + lateral: ("npc.llama.male.leg_fr"), + ), + leg_bl: ( + offset: (-2.0, -3.0, -5.0), + lateral: ("npc.llama.male.leg_br"), + ), + leg_br: ( + offset: (-2.0, -3.0, -5.0), + lateral: ("npc.llama.male.leg_br"), + ), + foot_fl: ( + offset: (-1.5, -2.0, -8.0), + lateral: ("npc.llama.male.foot_fr"), + ), + foot_fr: ( + offset: (-1.5, -2.0, -8.0), + lateral: ("npc.llama.male.foot_fr"), + ), + foot_bl: ( + offset: (-1.5, -2.5, -9.0), + lateral: ("npc.llama.male.foot_br"), + ), + foot_br: ( + offset: (-1.5, -2.5, -9.0), + lateral: ("npc.llama.male.foot_br"), + ), + ), + (Llama, Female): ( + leg_fl: ( + offset: (-2.0, -2.5, -6.0), + lateral: ("npc.llama.male.leg_fr"), + ), + leg_fr: ( + offset: (-2.0, -2.5, -6.0), + lateral: ("npc.llama.male.leg_fr"), + ), + leg_bl: ( + offset: (-2.0, -3.0, -5.0), + lateral: ("npc.llama.male.leg_br"), + ), + leg_br: ( + offset: (-2.0, -3.0, -5.0), + lateral: ("npc.llama.male.leg_br"), + ), + foot_fl: ( + offset: (-1.5, -2.0, -8.0), + lateral: ("npc.llama.male.foot_fr"), + ), + foot_fr: ( + offset: (-1.5, -2.0, -8.0), + lateral: ("npc.llama.male.foot_fr"), + ), + foot_bl: ( + offset: (-1.5, -2.5, -9.0), + lateral: ("npc.llama.male.foot_br"), + ), + foot_br: ( + offset: (-1.5, -2.5, -9.0), + lateral: ("npc.llama.male.foot_br"), + ), + ), + (Alpaca, Male): ( + leg_fl: ( + offset: (-1.5, -2.5, -4.0), + lateral: ("npc.alpaca.male.leg_fr"), + ), + leg_fr: ( + offset: (-1.5, -2.5, -4.0), + lateral: ("npc.alpaca.male.leg_fr"), + ), + leg_bl: ( + offset: (-2.5, -2.5, -4.5), + lateral: ("npc.alpaca.male.leg_br"), + ), + leg_br: ( + offset: (-2.5, -2.5, -4.5), + lateral: ("npc.alpaca.male.leg_br"), + ), + foot_fl: ( + offset: (-1.5, -2.0, -6.0), + lateral: ("npc.alpaca.male.foot_fr"), + ), + foot_fr: ( + offset: (-1.5, -2.0, -6.0), + lateral: ("npc.alpaca.male.foot_fr"), + ), + foot_bl: ( + offset: (-2.0, -2.0, -6.0), + lateral: ("npc.alpaca.male.foot_br"), + ), + foot_br: ( + offset: (-2.0, -2.0, -6.0), + lateral: ("npc.alpaca.male.foot_br"), + ), + ), + (Alpaca, Female): ( + leg_fl: ( + offset: (-1.5, -2.5, -4.0), + lateral: ("npc.alpaca.male.leg_fr"), + ), + leg_fr: ( + offset: (-1.5, -2.5, -4.0), + lateral: ("npc.alpaca.male.leg_fr"), + ), + leg_bl: ( + offset: (-2.5, -2.5, -4.5), + lateral: ("npc.alpaca.male.leg_br"), + ), + leg_br: ( + offset: (-2.5, -2.5, -4.5), + lateral: ("npc.alpaca.male.leg_br"), + ), + foot_fl: ( + offset: (-1.5, -2.0, -6.0), + lateral: ("npc.alpaca.male.foot_fr"), + ), + foot_fr: ( + offset: (-1.5, -2.0, -6.0), + lateral: ("npc.alpaca.male.foot_fr"), + ), + foot_bl: ( + offset: (-2.0, -2.0, -6.0), + lateral: ("npc.alpaca.male.foot_br"), + ), + foot_br: ( + offset: (-2.0, -2.0, -6.0), + lateral: ("npc.alpaca.male.foot_br"), + ), + ), }) diff --git a/common/src/comp/agent.rs b/common/src/comp/agent.rs index 6b8059cedc..f7262502a7 100644 --- a/common/src/comp/agent.rs +++ b/common/src/comp/agent.rs @@ -218,6 +218,8 @@ impl<'a> From<&'a Body> for Psyche { quadruped_medium::Species::Darkhound => 0.9, quadruped_medium::Species::Dreadhorn => 0.8, quadruped_medium::Species::Snowleopard => 0.7, + quadruped_medium::Species::Llama => 0.6, + quadruped_medium::Species::Alpaca => 0.6, _ => 0.5, }, Body::QuadrupedLow(quadruped_low) => match quadruped_low.species { diff --git a/common/src/comp/body.rs b/common/src/comp/body.rs index 623f164283..2ae9bc6905 100644 --- a/common/src/comp/body.rs +++ b/common/src/comp/body.rs @@ -180,6 +180,9 @@ impl Body { biped_large::Species::Mightysaurok => 400.0, biped_large::Species::Mindflayer => 420.0, biped_large::Species::Minotaur => 500.0, + biped_large::Species::Cavetroll => 600.0, + biped_large::Species::Mountaintroll => 600.0, + biped_large::Species::Swamptroll => 600.0, _ => 400.0, }, Body::BipedSmall(_) => 50.0, @@ -306,7 +309,9 @@ impl Body { biped_large::Species::Slysaurok => Vec3::new(4.0, 3.0, 3.4), biped_large::Species::Werewolf => Vec3::new(4.0, 3.0, 3.5), biped_large::Species::Harvester => Vec3::new(4.6, 3.0, 5.4), - + biped_large::Species::Cultistwarlord => Vec3::new(3.0, 3.0, 4.5), + biped_large::Species::Cultistwarlock => Vec3::new(3.0, 3.0, 3.5), + biped_large::Species::Huskbrute => Vec3::new(4.6, 3.0, 5.0), _ => Vec3::new(4.6, 3.0, 6.0), }, Body::BipedSmall(body) => match body.species { @@ -358,6 +363,10 @@ impl Body { quadruped_medium::Species::Saber => Vec3::new(2.0, 3.0, 2.0), quadruped_medium::Species::Tarasque => Vec3::new(2.0, 4.0, 2.6), quadruped_medium::Species::Yak => Vec3::new(2.0, 3.6, 3.0), + quadruped_medium::Species::Mammoth => Vec3::new(2.0, 7.0, 8.0), + quadruped_medium::Species::Ngoubou => Vec3::new(2.0, 3.2, 2.4), + quadruped_medium::Species::Llama => Vec3::new(2.0, 2.5, 2.6), + quadruped_medium::Species::Alpaca => Vec3::new(2.0, 2.0, 2.0), _ => Vec3::new(2.0, 3.0, 2.0), }, Body::QuadrupedSmall(body) => match body.species { @@ -459,7 +468,9 @@ impl Body { quadruped_medium::Species::Panda => 900, quadruped_medium::Species::Bear => 900, quadruped_medium::Species::Moose => 800, - quadruped_medium::Species::Dreadhorn => 1100, + quadruped_medium::Species::Dreadhorn => 1300, + quadruped_medium::Species::Mammoth => 2500, + quadruped_medium::Species::Ngoubou => 1800, _ => 700, }, Body::BirdMedium(bird_medium) => match bird_medium.species { @@ -493,6 +504,7 @@ impl Body { biped_large::Species::Harvester => 5000, biped_large::Species::Blueoni => 2400, biped_large::Species::Redoni => 2400, + biped_large::Species::Huskbrute => 8000, _ => 1200, }, Body::BipedSmall(biped_small) => match biped_small.species { @@ -530,7 +542,7 @@ impl Body { quadruped_low::Species::Rocksnapper => 1400, quadruped_low::Species::Pangolin => 400, quadruped_low::Species::Maneater => 1300, - quadruped_low::Species::Sandshark => 900, + quadruped_low::Species::Sandshark => 1100, quadruped_low::Species::Hakulaq => 500, quadruped_low::Species::Lavadrake => 1600, quadruped_low::Species::Basilisk => 2000, @@ -583,6 +595,8 @@ impl Body { quadruped_medium::Species::Bear => 40, quadruped_medium::Species::Moose => 30, quadruped_medium::Species::Dreadhorn => 50, + quadruped_medium::Species::Mammoth => 80, + quadruped_medium::Species::Ngoubou => 60, _ => 20, }, Body::BirdMedium(bird_medium) => match bird_medium.species { @@ -609,6 +623,7 @@ impl Body { biped_large::Species::Mountaintroll => 60, biped_large::Species::Swamptroll => 60, biped_large::Species::Dullahan => 120, + biped_large::Species::Huskbrute => 100, // Boss enemies have their health set, not adjusted by level. biped_large::Species::Mindflayer => 0, biped_large::Species::Minotaur => 0, @@ -631,7 +646,7 @@ impl Body { quadruped_low::Species::Rocksnapper => 50, quadruped_low::Species::Pangolin => 10, quadruped_low::Species::Maneater => 30, - quadruped_low::Species::Sandshark => 40, + quadruped_low::Species::Sandshark => 45, quadruped_low::Species::Hakulaq => 10, quadruped_low::Species::Deadwood => 30, _ => 20, @@ -657,6 +672,11 @@ impl Body { Body::Golem(g) => matches!(g.species, golem::Species::ClayGolem), Body::BipedSmall(b) => matches!(b.species, biped_small::Species::Haniwa), Body::Object(object::Body::HaniwaSentry) => true, + Body::QuadrupedLow(q) => matches!(q.species, quadruped_low::Species::Lavadrake), + Body::BirdLarge(b) => matches!( + b.species, + bird_large::Species::Phoenix | bird_large::Species::Cockatrice + ), _ => false, }, BuffKind::Ensnared => { diff --git a/common/src/comp/body/biped_large.rs b/common/src/comp/body/biped_large.rs index d152693658..44285fa21e 100644 --- a/common/src/comp/body/biped_large.rs +++ b/common/src/comp/body/biped_large.rs @@ -52,6 +52,9 @@ make_case_elim!( Harvester = 15, Blueoni = 16, Redoni = 17, + Cultistwarlord = 18, + Cultistwarlock = 19, + Huskbrute = 20, } ); @@ -78,6 +81,9 @@ pub struct AllSpecies { pub harvester: SpeciesMeta, pub oni_blue: SpeciesMeta, pub oni_red: SpeciesMeta, + pub cultist_warlord: SpeciesMeta, + pub cultist_warlock: SpeciesMeta, + pub husk_brute: SpeciesMeta, } impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies { @@ -104,11 +110,14 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies Species::Harvester => &self.harvester, Species::Blueoni => &self.oni_blue, Species::Redoni => &self.oni_red, + Species::Cultistwarlord => &self.cultist_warlord, + Species::Cultistwarlock => &self.cultist_warlock, + Species::Huskbrute => &self.husk_brute, } } } -pub const ALL_SPECIES: [Species; 18] = [ +pub const ALL_SPECIES: [Species; 21] = [ Species::Ogre, Species::Cyclops, Species::Wendigo, @@ -127,6 +136,9 @@ pub const ALL_SPECIES: [Species; 18] = [ Species::Harvester, Species::Blueoni, Species::Redoni, + Species::Cultistwarlord, + Species::Cultistwarlock, + Species::Huskbrute, ]; impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies { diff --git a/common/src/comp/body/quadruped_medium.rs b/common/src/comp/body/quadruped_medium.rs index 192e7559b5..04efc68c25 100644 --- a/common/src/comp/body/quadruped_medium.rs +++ b/common/src/comp/body/quadruped_medium.rs @@ -62,6 +62,10 @@ pub enum Species { Dreadhorn = 29, Moose = 30, Snowleopard = 31, + Mammoth = 32, + Ngoubou = 33, + Llama = 34, + Alpaca = 35, } /// Data representing per-species generic data. @@ -99,6 +103,10 @@ pub struct AllSpecies { pub dreadhorn: SpeciesMeta, pub moose: SpeciesMeta, pub snowleopard: SpeciesMeta, + pub mammoth: SpeciesMeta, + pub ngoubou: SpeciesMeta, + pub llama: SpeciesMeta, + pub alpaca: SpeciesMeta, } impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies { @@ -137,11 +145,15 @@ impl<'a, SpeciesMeta> core::ops::Index<&'a Species> for AllSpecies Species::Dreadhorn => &self.dreadhorn, Species::Moose => &self.moose, Species::Snowleopard => &self.snowleopard, + Species::Mammoth => &self.mammoth, + Species::Ngoubou => &self.ngoubou, + Species::Llama => &self.llama, + Species::Alpaca => &self.alpaca, } } } -pub const ALL_SPECIES: [Species; 30] = [ +pub const ALL_SPECIES: [Species; 34] = [ Species::Grolgar, Species::Saber, Species::Tiger, @@ -172,6 +184,10 @@ pub const ALL_SPECIES: [Species; 30] = [ Species::Dreadhorn, Species::Moose, Species::Snowleopard, + Species::Mammoth, + Species::Ngoubou, + Species::Llama, + Species::Alpaca, ]; impl<'a, SpeciesMeta: 'a> IntoIterator for &'a AllSpecies { diff --git a/common/src/comp/inventory/loadout_builder.rs b/common/src/comp/inventory/loadout_builder.rs index d4396b2749..2eb0a990d7 100644 --- a/common/src/comp/inventory/loadout_builder.rs +++ b/common/src/comp/inventory/loadout_builder.rs @@ -175,7 +175,9 @@ fn default_main_tool(body: &Body) -> Item { | quadruped_medium::Species::Kelpie | quadruped_medium::Species::Hirdrasil | quadruped_medium::Species::Deer - | quadruped_medium::Species::Antelope => Some(Item::new_from_asset_expect( + | quadruped_medium::Species::Antelope + | quadruped_medium::Species::Llama + | quadruped_medium::Species::Alpaca => Some(Item::new_from_asset_expect( "common.items.npc_weapons.unique.quadmedhoof", )), quadruped_medium::Species::Saber => Some(Item::new_from_asset_expect( @@ -184,7 +186,9 @@ fn default_main_tool(body: &Body) -> Item { quadruped_medium::Species::Tuskram | quadruped_medium::Species::Roshwalr | quadruped_medium::Species::Moose - | quadruped_medium::Species::Dreadhorn => Some(Item::new_from_asset_expect( + | quadruped_medium::Species::Dreadhorn + | quadruped_medium::Species::Mammoth + | quadruped_medium::Species::Ngoubou => Some(Item::new_from_asset_expect( "common.items.npc_weapons.unique.quadmedcharge", )), quadruped_medium::Species::Highland @@ -297,6 +301,15 @@ fn default_main_tool(body: &Body) -> Item { (biped_large::Species::Redoni, _) => Some(Item::new_from_asset_expect( "common.items.npc_weapons.hammer.oni_red_hammer", )), + (biped_large::Species::Cultistwarlord, _) => Some(Item::new_from_asset_expect( + "common.items.npc_weapons.sword.bipedlarge-cultist", + )), + (biped_large::Species::Cultistwarlock, _) => Some(Item::new_from_asset_expect( + "common.items.npc_weapons.staff.bipedlarge-cultist", + )), + (biped_large::Species::Huskbrute, _) => Some(Item::new_from_asset_expect( + "common.items.npc_weapons.unique.husk_brute", + )), }, Body::Object(body) => match body { object::Body::Crossbow => Some(Item::new_from_asset_expect( diff --git a/common/src/states/utils.rs b/common/src/states/utils.rs index 4027e4eda4..d18830cf56 100644 --- a/common/src/states/utils.rs +++ b/common/src/states/utils.rs @@ -68,6 +68,10 @@ impl Body { quadruped_medium::Species::Dreadhorn => 140.0, quadruped_medium::Species::Moose => 130.0, quadruped_medium::Species::Snowleopard => 160.0, + quadruped_medium::Species::Mammoth => 180.0, + quadruped_medium::Species::Ngoubou => 170.0, + quadruped_medium::Species::Llama => 120.0, + quadruped_medium::Species::Alpaca => 110.0, }, Body::BipedLarge(body) => match body.species { biped_large::Species::Slysaurok => 100.0, @@ -75,6 +79,9 @@ impl Body { biped_large::Species::Mightysaurok => 100.0, biped_large::Species::Mindflayer => 90.0, biped_large::Species::Minotaur => 60.0, + biped_large::Species::Huskbrute => 130.0, + biped_large::Species::Cultistwarlord => 110.0, + biped_large::Species::Cultistwarlock => 90.0, _ => 80.0, }, Body::BirdMedium(_) => 80.0, @@ -134,7 +141,10 @@ impl Body { match self { Body::Humanoid(_) => 3.5, Body::QuadrupedSmall(_) => 3.0, - Body::QuadrupedMedium(_) => 2.8, + Body::QuadrupedMedium(quadruped_medium) => match quadruped_medium.species { + quadruped_medium::Species::Mammoth => 2.2, + _ => 2.8, + }, Body::BirdMedium(_) => 6.0, Body::FishMedium(_) => 6.0, Body::Dragon(_) => 1.0, diff --git a/server/src/events/entity_manipulation.rs b/server/src/events/entity_manipulation.rs index 1dfba60f4e..b01f17e13a 100644 --- a/server/src/events/entity_manipulation.rs +++ b/server/src/events/entity_manipulation.rs @@ -368,8 +368,8 @@ pub fn handle_destroy(server: &mut Server, entity: EcsEntity, cause: HealthSourc quadruped_small::Species::Truffler | quadruped_small::Species::Fungome => { "common.loot_tables.creature.quad_small.mushroom" }, - quadruped_small::Species::Sheep => { - "common.loot_tables.creature.quad_small.sheep" + quadruped_small::Species::Sheep | quadruped_small::Species::Goat => { + "common.loot_tables.creature.quad_small.wool" }, quadruped_small::Species::Skunk | quadruped_small::Species::Quokka @@ -407,8 +407,7 @@ pub fn handle_destroy(server: &mut Server, entity: EcsEntity, cause: HealthSourc quadruped_medium::Species::Dreadhorn => { "common.loot_tables.creature.quad_medium.dreadhorn" }, - quadruped_medium::Species::Mouflon - | quadruped_medium::Species::Camel + quadruped_medium::Species::Camel | quadruped_medium::Species::Deer | quadruped_medium::Species::Hirdrasil | quadruped_medium::Species::Horse @@ -421,6 +420,17 @@ pub fn handle_destroy(server: &mut Server, entity: EcsEntity, cause: HealthSourc | quadruped_medium::Species::Yak => { "common.loot_tables.creature.quad_medium.gentle" }, + quadruped_medium::Species::Mouflon + | quadruped_medium::Species::Llama + | quadruped_medium::Species::Alpaca => { + "common.loot_tables.creature.quad_medium.wool" + }, + quadruped_medium::Species::Ngoubou => { + "common.loot_tables.creature.quad_medium.horned" + }, + quadruped_medium::Species::Mammoth => { + "common.loot_tables.creature.quad_medium.mammoth" + }, _ => "common.loot_tables.creature.quad_medium.fanged", }, Some(common::comp::Body::BirdMedium(_)) => { @@ -485,6 +495,9 @@ pub fn handle_destroy(server: &mut Server, entity: EcsEntity, cause: HealthSourc quadruped_low::Species::Basilisk => { "common.loot_tables.creature.quad_low.basilisk" }, + quadruped_low::Species::Salamander => { + "common.loot_tables.creature.quad_low.salamander" + }, _ => "common.loot_tables.creature.quad_low.generic", } }, diff --git a/server/src/migrations/V41_remove_warlock_warlord.sql b/server/src/migrations/V41_remove_warlock_warlord.sql new file mode 100644 index 0000000000..500a505c56 --- /dev/null +++ b/server/src/migrations/V41_remove_warlock_warlord.sql @@ -0,0 +1,31 @@ +-- Replace all warlord and warlock sets into cultist set +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.shoulder' WHERE item_definition_id = 'common.items.armor.warlock.shoulder'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.chest' WHERE item_definition_id = 'common.items.armor.warlock.chest'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.belt' WHERE item_definition_id = 'common.items.armor.warlock.belt'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.hand' WHERE item_definition_id = 'common.items.armor.warlock.hand'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.pants' WHERE item_definition_id = 'common.items.armor.warlock.pants'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.foot' WHERE item_definition_id = 'common.items.armor.warlock.foot'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.back.dungeon_purple' WHERE item_definition_id = 'common.items.armor.warlock.back'; +DELETE FROM item WHERE item_definition_id = 'common.items.armor.warlock.head'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.shoulder' WHERE item_definition_id = 'common.items.armor.warlord.shoulder'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.chest' WHERE item_definition_id = 'common.items.armor.warlord.chest'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.belt' WHERE item_definition_id = 'common.items.armor.warlord.belt'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.hand' WHERE item_definition_id = 'common.items.armor.warlord.hand'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.pants' WHERE item_definition_id = 'common.items.armor.warlord.pants'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.foot' WHERE item_definition_id = 'common.items.armor.warlord.foot'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.back.dungeon_purple' WHERE item_definition_id = 'common.items.armor.warlord.back'; +DELETE FROM item WHERE item_definition_id = 'common.items.armor.warlord.head'; \ No newline at end of file diff --git a/server/src/sys/agent.rs b/server/src/sys/agent.rs index 54d9fa04c2..2810a7cd40 100644 --- a/server/src/sys/agent.rs +++ b/server/src/sys/agent.rs @@ -1637,7 +1637,7 @@ impl<'a> AgentData<'a> { }, "Quad Med Jump" => Tactic::QuadMedJump, "Quad Med Charge" => Tactic::CircleCharge { - radius: 12, + radius: 6, circle_time: 1, }, "Quad Med Basic" => Tactic::QuadMedBasic, @@ -1645,7 +1645,7 @@ impl<'a> AgentData<'a> { "Quad Low Breathe" | "Quad Low Beam" | "Basilisk" => { Tactic::QuadLowBeam }, - "Quad Low Tail" => Tactic::TailSlap, + "Quad Low Tail" | "Husk Brute" => Tactic::TailSlap, "Quad Low Quick" => Tactic::QuadLowQuick, "Quad Low Basic" => Tactic::QuadLowBasic, "Theropod Basic" | "Theropod Bird" => Tactic::Theropod, diff --git a/voxygen/anim/src/biped_large/alpha.rs b/voxygen/anim/src/biped_large/alpha.rs index 0d3e7c61aa..7f2ac702ed 100644 --- a/voxygen/anim/src/biped_large/alpha.rs +++ b/voxygen/anim/src/biped_large/alpha.rs @@ -384,6 +384,48 @@ impl Animation for AlphaAnimation { * Quaternion::rotation_y(-2.8 + move1 * 3.0 + move2 * -3.0) * Quaternion::rotation_z(move1 * -1.5); }, + "Husk Brute" => { + next.shoulder_l.position = + Vec3::new(-s_a.shoulder.0, s_a.shoulder.1, s_a.shoulder.2); + next.shoulder_r.position = + Vec3::new(s_a.shoulder.0, s_a.shoulder.1, s_a.shoulder.2); + next.hand_l.position = Vec3::new(-s_a.hand.0, s_a.hand.1, s_a.hand.2); + next.hand_r.position = Vec3::new(s_a.hand.0, s_a.hand.1, s_a.hand.2); + + if mirror > 0.0 { + next.shoulder_l.orientation = Quaternion::rotation_x(move1 * 1.0) + * Quaternion::rotation_y(move1 * 1.0 + move2 * -2.0); + + next.shoulder_r.orientation = Quaternion::rotation_x(move1 * -0.6); + + next.upper_torso.orientation = + Quaternion::rotation_z(move1 * 0.4 + move2 * -1.1); + next.lower_torso.orientation = + Quaternion::rotation_z(move1 * -0.2 + move2 * 0.6); + + next.hand_l.orientation = Quaternion::rotation_x(move1 * 1.2) + * Quaternion::rotation_y(move1 * 1.0 + move2 * -2.0); + + next.hand_r.orientation = Quaternion::rotation_z(move1 * 1.0) + * Quaternion::rotation_y(move1 * 0.8 + move2 * -1.2); + } else { + next.shoulder_r.orientation = Quaternion::rotation_x(move1 * 1.0) + * Quaternion::rotation_y(move1 * -1.0 + move2 * 2.0); + + next.shoulder_l.orientation = Quaternion::rotation_x(move1 * 0.6); + + next.upper_torso.orientation = + Quaternion::rotation_z(move1 * -0.4 + move2 * 1.1); + next.lower_torso.orientation = + Quaternion::rotation_z(move1 * 0.2 + move2 * -0.6); + + next.hand_r.orientation = Quaternion::rotation_x(move1 * 1.2) + * Quaternion::rotation_y(move1 * -1.0 + move2 * 2.0); + + next.hand_l.orientation = Quaternion::rotation_z(move1 * 1.0) + * Quaternion::rotation_y(move1 * -0.8 + move2 * 1.2); + } + }, _ => {}, } } diff --git a/voxygen/anim/src/biped_large/chargemelee.rs b/voxygen/anim/src/biped_large/chargemelee.rs index 16e25c148b..74162d0691 100644 --- a/voxygen/anim/src/biped_large/chargemelee.rs +++ b/voxygen/anim/src/biped_large/chargemelee.rs @@ -148,6 +148,66 @@ impl Animation for ChargeMeleeAnimation { next.shoulder_r.orientation = Quaternion::rotation_x(-0.3 + move1 * 1.0); }, + "Husk Brute" => { + next.second.scale = Vec3::one() * 0.0; + + next.head.orientation = + Quaternion::rotation_x(move1 * 0.3 + move2 * -0.6); + next.jaw.position = Vec3::new(0.0, s_a.jaw.0, s_a.jaw.1); + next.jaw.orientation = Quaternion::rotation_x(move2 * -0.3); + next.control_l.position = Vec3::new(-0.5, 4.0, 1.0); + next.control_r.position = Vec3::new(-0.5, 4.0, 1.0); + next.control_l.orientation = Quaternion::rotation_x(1.57); + next.control_r.orientation = Quaternion::rotation_x(1.57); + next.weapon_l.position = + Vec3::new(-12.0 + (move1 * 10.0).min(6.0), -1.0, -15.0); + next.weapon_r.position = + Vec3::new(12.0 + (move1 * -10.0).max(-6.0), -1.0, -15.0); + + next.weapon_l.orientation = Quaternion::rotation_x(-1.57 - 0.1) + * Quaternion::rotation_z(move1 * -0.8); + next.weapon_r.orientation = Quaternion::rotation_x(-1.57 - 0.1) + * Quaternion::rotation_z(move1 * 0.8); + + next.shoulder_l.orientation = + Quaternion::rotation_x(-0.3 + move1 * 2.8 + move2 * -2.8); + + next.shoulder_r.orientation = + Quaternion::rotation_x(-0.3 + move1 * 2.8 + move2 * -2.8); + + next.control.orientation = + Quaternion::rotation_x(move1 * 2.5 + move2 * -2.0); + + next.upper_torso.position = + Vec3::new(0.0, s_a.upper_torso.0, s_a.upper_torso.1); + next.upper_torso.orientation = + Quaternion::rotation_x(move1 * 0.2 + move2 * -0.6); + next.lower_torso.orientation = + Quaternion::rotation_x(move1 * -0.2 + move2 * 0.6); + + if speed < 0.1 { + next.foot_l.position = Vec3::new( + -s_a.foot.0, + s_a.foot.1 + move1 * -7.0 + move2 * 7.0, + s_a.foot.2, + ); + next.foot_l.orientation = + Quaternion::rotation_x(move1 * -0.8 + move2 * 0.8) + * Quaternion::rotation_z(move1 * 0.3 + move2 * -0.3); + + next.foot_r.position = Vec3::new( + s_a.foot.0, + s_a.foot.1 + move1 * 5.0 + move2 * -5.0, + s_a.foot.2, + ); + next.foot_r.orientation = + Quaternion::rotation_y(move1 * -0.3 + move2 * 0.3) + * Quaternion::rotation_z(move1 * 0.4 + move2 * -0.4); + } + next.main.orientation = + Quaternion::rotation_y(move1 * 0.4 + move2 * -0.6) + * Quaternion::rotation_x(move2 * -0.4); + }, _ => {}, } } diff --git a/voxygen/anim/src/biped_large/idle.rs b/voxygen/anim/src/biped_large/idle.rs index 96a2448fce..366a4c33bd 100644 --- a/voxygen/anim/src/biped_large/idle.rs +++ b/voxygen/anim/src/biped_large/idle.rs @@ -90,7 +90,7 @@ impl Animation for IdleAnimation { match active_tool_kind { Some(ToolKind::Bow) => { - next.main.position = Vec3::new(-2.0, -5.0, -6.0); + next.main.position = Vec3::new(0.0, -6.0, 0.0); next.main.orientation = Quaternion::rotation_y(2.5) * Quaternion::rotation_z(1.57); }, Some(ToolKind::Staff) | Some(ToolKind::Sceptre) => { diff --git a/voxygen/anim/src/biped_large/mod.rs b/voxygen/anim/src/biped_large/mod.rs index 9597f8f2e7..3af791809f 100644 --- a/voxygen/anim/src/biped_large/mod.rs +++ b/voxygen/anim/src/biped_large/mod.rs @@ -157,6 +157,7 @@ pub struct SkeletonAttr { bc: (f32, f32, f32, f32, f32, f32), beast: bool, float: bool, + height: f32, } impl<'a> std::convert::TryFrom<&'a comp::Body> for SkeletonAttr { @@ -199,6 +200,7 @@ impl Default for SkeletonAttr { bc: (0.0, 0.0, 0.0, 0.0, 0.0, 0.0), beast: false, float: false, + height: 0.0, } } } @@ -227,6 +229,9 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Harvester, _) => (6.0, 11.0), (Blueoni, _) => (10.5, -3.0), (Redoni, _) => (10.5, -3.0), + (Cultistwarlord, _) => (0.5, 14.5), + (Cultistwarlock, _) => (0.5, 11.0), + (Huskbrute, _) => (8.5, 4.0), }, jaw: match (body.species, body.body_type) { (Ogre, _) => (0.0, 0.0), @@ -247,6 +252,9 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Harvester, _) => (-2.0, -7.0), (Blueoni, _) => (0.0, 3.5), (Redoni, _) => (0.0, 3.5), + (Cultistwarlord, _) => (0.0, 3.5), + (Cultistwarlock, _) => (0.0, 3.5), + (Huskbrute, _) => (-5.0, -5.0), }, upper_torso: match (body.species, body.body_type) { (Ogre, Male) => (0.0, 27.5), @@ -268,6 +276,9 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Harvester, _) => (-1.0, 18.0), (Blueoni, _) => (-1.0, 26.5), (Redoni, _) => (-1.0, 26.5), + (Cultistwarlord, _) => (-1.0, 18.5), + (Cultistwarlock, _) => (-1.0, 17.5), + (Huskbrute, _) => (-1.0, 23.5), }, lower_torso: match (body.species, body.body_type) { (Ogre, Male) => (1.0, -7.0), @@ -289,6 +300,9 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Harvester, _) => (-1.0, -4.5), (Blueoni, _) => (0.0, -8.5), (Redoni, _) => (0.0, -8.5), + (Cultistwarlord, _) => (0.0, -1.5), + (Cultistwarlock, _) => (1.0, -2.5), + (Huskbrute, _) => (-0.5, -7.0), }, tail: match (body.species, body.body_type) { (Werewolf, _) => (-5.5, -2.0), @@ -318,6 +332,9 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Harvester, _) => (8.0, 1.0, -1.5), (Blueoni, _) => (11.0, 2.0, -5.5), (Redoni, _) => (11.0, 2.0, -5.5), + (Cultistwarlord, _) => (11.5, -1.0, 4.5), + (Cultistwarlock, _) => (8.0, 0.0, 3.5), + (Huskbrute, _) => (10.5, 0.0, -1.5), }, hand: match (body.species, body.body_type) { (Ogre, Male) => (14.5, 0.0, -4.0), @@ -339,6 +356,9 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Harvester, _) => (11.5, 1.5, -5.5), (Blueoni, _) => (13.5, 0.5, -8.0), (Redoni, _) => (13.5, 0.5, -8.0), + (Cultistwarlord, _) => (11.5, -1.0, -1.0), + (Cultistwarlock, _) => (9.5, -1.0, 1.0), + (Huskbrute, _) => (13.0, 0.5, -4.0), }, leg: match (body.species, body.body_type) { (Ogre, Male) => (0.0, 0.0, -4.0), @@ -360,6 +380,9 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Harvester, _) => (3.5, 1.0, -4.0), (Blueoni, _) => (4.5, 2.0, -5.5), (Redoni, _) => (4.5, 2.0, -5.5), + (Cultistwarlord, _) => (3.5, -1.0, -8.5), + (Cultistwarlock, _) => (3.5, -1.0, -8.5), + (Huskbrute, _) => (4.0, 0.0, -7.5), }, foot: match (body.species, body.body_type) { (Ogre, Male) => (4.0, 1.0, -12.0), @@ -381,6 +404,9 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Harvester, _) => (4.5, 0.5, -9.5), (Blueoni, _) => (5.0, 5.0, -12.5), (Redoni, _) => (5.0, 5.0, -12.5), + (Cultistwarlord, _) => (3.5, 0.0, -12.5), + (Cultistwarlock, _) => (3.5, 0.0, -10.5), + (Huskbrute, _) => (4.5, 0.5, -12.5), }, scaler: match (body.species, body.body_type) { (Ogre, Male) => 1.12, @@ -395,13 +421,16 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Occultsaurok, _) => 1.0, (Mightysaurok, _) => 1.0, (Slysaurok, _) => 1.0, - (Mindflayer, _) => 1.5, + (Mindflayer, _) => 1.6, (Minotaur, _) => 1.7, (Tidalwarrior, _) => 1.7, (Yeti, _) => 1.2, (Harvester, _) => 1.2, (Blueoni, _) => 1.2, (Redoni, _) => 1.2, + (Cultistwarlord, _) => 1.0, + (Cultistwarlock, _) => 1.0, + (Huskbrute, _) => 1.2, }, tempo: match (body.species, body.body_type) { (Ogre, Male) => 0.9, @@ -434,6 +463,9 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Harvester, _) => (7.5, 0.0), (Blueoni, _) => (12.5, 0.0), (Redoni, _) => (12.5, 0.0), + (Cultistwarlord, _) => (8.0, 0.0), + (Cultistwarlock, _) => (8.0, 0.0), + (Huskbrute, _) => (12.5, 0.0), }, shl: match (body.species, body.body_type) { (Dullahan, _) => (-4.75, -11.0, 8.5, 1.47, -0.2, 0.0), @@ -494,6 +526,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { }, beast: matches!((body.species, body.body_type), (Werewolf, _)), float: matches!((body.species, body.body_type), (Mindflayer, _)), + height: comp::Body::BipedLarge(*body).dimensions().z, } } } diff --git a/voxygen/anim/src/biped_large/run.rs b/voxygen/anim/src/biped_large/run.rs index e4c074d2f5..51c5829d0d 100644 --- a/voxygen/anim/src/biped_large/run.rs +++ b/voxygen/anim/src/biped_large/run.rs @@ -295,7 +295,7 @@ impl Animation for RunAnimation { match active_tool_kind { Some(ToolKind::Bow) => { - next.main.position = Vec3::new(-2.0, -5.0, -6.0); + next.main.position = Vec3::new(0.0, -6.0, 0.0); next.main.orientation = Quaternion::rotation_y(2.5) * Quaternion::rotation_z(1.57); }, diff --git a/voxygen/anim/src/biped_large/shockwave.rs b/voxygen/anim/src/biped_large/shockwave.rs index 81d373014a..07614db1d6 100644 --- a/voxygen/anim/src/biped_large/shockwave.rs +++ b/voxygen/anim/src/biped_large/shockwave.rs @@ -62,7 +62,7 @@ impl Animation for ShockwaveAnimation { next.hand_r.orientation = Quaternion::rotation_x(0.0); match active_tool_kind { - Some(ToolKind::Sceptre) => { + Some(ToolKind::Sceptre | ToolKind::Staff) => { next.head.position = Vec3::new(0.0, s_a.head.0, s_a.head.1); next.hand_l.position = Vec3::new(s_a.sthl.0, s_a.sthl.1, s_a.sthl.2); diff --git a/voxygen/anim/src/biped_large/shoot.rs b/voxygen/anim/src/biped_large/shoot.rs index c5fba1b268..2b9428d06f 100644 --- a/voxygen/anim/src/biped_large/shoot.rs +++ b/voxygen/anim/src/biped_large/shoot.rs @@ -156,18 +156,19 @@ impl Animation for ShootAnimation { next.control.position = Vec3::new( -1.0 + move1 * 2.0, 6.0 + s_a.grip.0 / 1.2 + move1 * 7.0, - -5.0 + -s_a.grip.0 / 2.0 + move1 * 8.0, + -5.0 + -s_a.grip.0 / 2.0 + move1 * s_a.height * 3.4, ); next.control_l.orientation = - Quaternion::rotation_x(PI / 2.0 + move2 * 0.4) * Quaternion::rotation_y(-0.2); + Quaternion::rotation_x(move1 * 0.2 + PI / 2.0 + move2 * 0.4) + * Quaternion::rotation_y(-0.2); next.control_r.orientation = Quaternion::rotation_x(PI / 2.2 + move1 * 0.4) - * Quaternion::rotation_y(0.2) + * Quaternion::rotation_y(0.4) * Quaternion::rotation_z(0.0); next.control.orientation = Quaternion::rotation_x(-0.2) * Quaternion::rotation_y(1.0 + move1 * -0.4) - * Quaternion::rotation_z(-0.3); + * Quaternion::rotation_z(-0.1); next.head.orientation = Quaternion::rotation_z(move1 * 0.25); next.shoulder_l.position = Vec3::new( -s_a.shoulder.0, @@ -175,7 +176,7 @@ impl Animation for ShootAnimation { s_a.shoulder.2 - foothorir * 1.0, ); next.shoulder_l.orientation = - Quaternion::rotation_x(move1 * 0.8 + 1.2 * speednorm + (footrotr * -0.2)); + Quaternion::rotation_x(move1 * 1.2 + 1.2 * speednorm + (footrotr * -0.2)); next.shoulder_r.position = Vec3::new( s_a.shoulder.0, diff --git a/voxygen/anim/src/biped_large/wield.rs b/voxygen/anim/src/biped_large/wield.rs index c3d985fd71..ef94cd66e8 100644 --- a/voxygen/anim/src/biped_large/wield.rs +++ b/voxygen/anim/src/biped_large/wield.rs @@ -498,6 +498,63 @@ impl Animation for WieldAnimation { next.shoulder_r.orientation = Quaternion::rotation_y(0.4) * Quaternion::rotation_x(0.4); }, + "Husk Brute" => { + if speed > 0.1 { + next.hand_l.position = + Vec3::new(-s_a.hand.0, s_a.hand.1, s_a.hand.2); + next.hand_l.orientation = + Quaternion::rotation_x(1.4 + slow * 0.1) + * Quaternion::rotation_z(-PI / 2.0); + + next.hand_r.position = + Vec3::new(s_a.hand.0, s_a.hand.1, s_a.hand.2); + next.hand_r.orientation = + Quaternion::rotation_x(1.4 - slow * 0.1) + * Quaternion::rotation_z(PI / 2.0); + + next.shoulder_l.position = + Vec3::new(-s_a.shoulder.0, s_a.shoulder.1, s_a.shoulder.2); + next.shoulder_l.orientation = + Quaternion::rotation_x(1.1 + slow * 0.1); + + next.shoulder_r.position = + Vec3::new(s_a.shoulder.0, s_a.shoulder.1, s_a.shoulder.2); + next.shoulder_r.orientation = + Quaternion::rotation_x(1.1 - slow * 0.1); + } else { + next.shoulder_l.position = + Vec3::new(-s_a.shoulder.0, s_a.shoulder.1, s_a.shoulder.2); + next.shoulder_l.orientation = Quaternion::rotation_x(breathe); + + next.shoulder_r.position = + Vec3::new(s_a.shoulder.0, s_a.shoulder.1, s_a.shoulder.2); + next.shoulder_r.orientation = Quaternion::rotation_x(breathe); + + next.hand_l.position = Vec3::new( + -s_a.hand.0, + s_a.hand.1, + s_a.hand.2 + torso * -0.1, + ); + + next.hand_r.position = Vec3::new( + s_a.hand.0, + s_a.hand.1, + s_a.hand.2 + torso * -0.1, + ); + + next.leg_l.position = + Vec3::new(-s_a.leg.0, s_a.leg.1, s_a.leg.2 + torso * -0.2); + + next.leg_r.position = + Vec3::new(s_a.leg.0, s_a.leg.1, s_a.leg.2 + torso * -0.2); + + next.foot_l.position = + Vec3::new(-s_a.foot.0, s_a.foot.1, s_a.foot.2); + + next.foot_r.position = + Vec3::new(s_a.foot.0, s_a.foot.1, s_a.foot.2); + } + }, _ => {}, } } diff --git a/voxygen/anim/src/bird_medium/mod.rs b/voxygen/anim/src/bird_medium/mod.rs index ab72ea8173..5caa8f17ae 100644 --- a/voxygen/anim/src/bird_medium/mod.rs +++ b/voxygen/anim/src/bird_medium/mod.rs @@ -90,7 +90,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { use comp::bird_medium::{BodyType::*, Species::*}; Self { head: match (body.species, body.body_type) { - (Duck, _) => (4.0, 3.0), + (Duck, _) => (2.0, 5.5), (Chicken, Male) => (3.0, 4.5), (Chicken, Female) => (3.0, 6.0), (Goose, _) => (5.0, 2.5), @@ -101,7 +101,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Parrot, _) => (0.5, 4.5), }, chest: match (body.species, body.body_type) { - (Duck, _) => (0.0, 5.0), + (Duck, _) => (0.0, 6.0), (Chicken, Male) => (0.0, 6.5), (Chicken, Female) => (0.0, 6.5), (Goose, _) => (0.0, 8.0), @@ -112,7 +112,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Parrot, _) => (0.0, 5.0), }, tail: match (body.species, body.body_type) { - (Duck, _) => (-3.0, 1.5), + (Duck, _) => (-5.0, 1.0), (Chicken, Male) => (-7.5, 3.5), (Chicken, Female) => (-4.5, 3.0), (Goose, _) => (-5.0, 3.0), @@ -123,7 +123,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Parrot, _) => (-8.0, -2.0), }, wing: match (body.species, body.body_type) { - (Duck, _) => (2.75, 0.0, 1.0), + (Duck, _) => (3.5, -0.5, 2.0), (Chicken, Male) => (3.0, -1.0, 2.5), (Chicken, Female) => (3.0, -1.5, 2.5), (Goose, _) => (3.75, -1.0, 2.0), @@ -134,7 +134,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Parrot, _) => (2.0, -4.5, 3.0), }, foot: match (body.species, body.body_type) { - (Duck, _) => (2.0, -1.5, 4.0), + (Duck, _) => (2.5, -2.0, 4.0), (Chicken, Male) => (2.0, 0.0, 6.0), (Chicken, Female) => (2.0, 0.0, 6.0), (Goose, _) => (2.0, -1.5, 7.0), diff --git a/voxygen/anim/src/quadruped_medium/mod.rs b/voxygen/anim/src/quadruped_medium/mod.rs index c4ae82537f..96cdd6a2ac 100644 --- a/voxygen/anim/src/quadruped_medium/mod.rs +++ b/voxygen/anim/src/quadruped_medium/mod.rs @@ -175,6 +175,10 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Moose, Male) => (-0.5, 5.0), (Moose, Female) => (3.5, 0.5), (Snowleopard, _) => (1.5, 0.5), + (Mammoth, _) => (0.5, -1.5), + (Ngoubou, _) => (0.5, -2.5), + (Llama, _) => (0.5, 10.0), + (Alpaca, _) => (0.5, 7.5), }, neck: match (body.species, body.body_type) { (Grolgar, _) => (1.0, -1.0), @@ -208,6 +212,10 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Dreadhorn, _) => (0.5, 0.0), (Moose, _) => (-0.5, 0.5), (Snowleopard, _) => (0.0, 1.5), + (Mammoth, _) => (0.5, -0.5), + (Ngoubou, _) => (2.0, 1.0), + (Llama, _) => (2.5, 4.5), + (Alpaca, _) => (-1.5, 3.0), }, jaw: match (body.species, body.body_type) { (Grolgar, _) => (7.0, 2.0), @@ -242,6 +250,10 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Moose, Male) => (10.0, -7.0), (Moose, Female) => (6.0, -2.5), (Snowleopard, _) => (3.0, -3.0), + (Mammoth, _) => (9.5, -3.0), + (Ngoubou, _) => (8.5, -4.0), + (Llama, _) => (4.0, -1.0), + (Alpaca, _) => (3.0, -2.5), }, tail: match (body.species, body.body_type) { (Grolgar, _) => (-11.5, -0.5), @@ -275,6 +287,10 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Dreadhorn, _) => (-5.5, 1.5), (Moose, _) => (-12.5, 3.5), (Snowleopard, _) => (-10.5, 3.0), + (Mammoth, _) => (-13.0, -1.5), + (Ngoubou, _) => (-12.0, 5.5), + (Llama, _) => (-9.0, 6.0), + (Alpaca, _) => (-8.5, 3.5), }, torso_front: match (body.species, body.body_type) { (Grolgar, _) => (10.0, 13.0), @@ -308,6 +324,10 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Dreadhorn, _) => (1.5, 15.5), (Moose, _) => (1.5, 19.5), (Snowleopard, _) => (1.5, 13.0), + (Mammoth, _) => (11.5, 20.5), + (Ngoubou, _) => (9.5, 16.5), + (Llama, _) => (7.0, 15.0), + (Alpaca, _) => (7.0, 11.5), }, torso_back: match (body.species, body.body_type) { (Grolgar, _) => (-10.0, 1.5), @@ -341,6 +361,10 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Dreadhorn, _) => (-20.0, -1.0), (Moose, _) => (-10.0, -1.0), (Snowleopard, _) => (-11.0, 0.0), + (Mammoth, _) => (-13.0, -2.5), + (Ngoubou, _) => (-8.0, -2.0), + (Llama, _) => (-8.0, 0.0), + (Alpaca, _) => (-6.0, 0.0), }, ears: match (body.species, body.body_type) { (Grolgar, _) => (5.0, 8.0), @@ -375,6 +399,10 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Moose, Male) => (6.0, 1.0), (Moose, Female) => (2.0, 4.5), (Snowleopard, _) => (1.5, 3.0), + (Mammoth, _) => (12.0, -3.0), + (Ngoubou, _) => (12.0, -3.0), + (Llama, _) => (1.0, 3.5), + (Alpaca, _) => (1.0, 2.0), }, leg_f: match (body.species, body.body_type) { (Grolgar, _) => (7.5, -5.5, -1.0), @@ -408,6 +436,10 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Dreadhorn, _) => (8.5, -7.0, -0.5), (Moose, _) => (5.5, -4.0, 1.0), (Snowleopard, _) => (6.5, -4.0, -2.5), + (Mammoth, _) => (10.0, -5.0, -5.0), + (Ngoubou, _) => (7.5, -4.0, -1.5), + (Llama, _) => (5.0, -1.5, -1.0), + (Alpaca, _) => (3.5, -2.5, -0.5), }, leg_b: match (body.species, body.body_type) { (Grolgar, _) => (6.0, -6.5, -4.0), @@ -441,6 +473,10 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Dreadhorn, _) => (6.0, 0.0, -3.0), (Moose, _) => (4.5, -10.0, -2.0), (Snowleopard, _) => (5.5, -5.0, -1.5), + (Mammoth, _) => (7.5, -7.0, -5.0), + (Ngoubou, _) => (4.5, -9.5, 0.0), + (Llama, _) => (5.0, -7.0, -2.0), + (Alpaca, _) => (3.5, -7.0, 0.0), }, feet_f: match (body.species, body.body_type) { (Grolgar, _) => (0.0, 0.0, -4.0), @@ -474,6 +510,10 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Dreadhorn, _) => (-0.5, 0.5, -5.0), (Moose, _) => (-1.0, 1.5, -9.5), (Snowleopard, _) => (0.5, 0.5, -4.5), + (Mammoth, _) => (-0.5, -0.5, -6.0), + (Ngoubou, _) => (-1.0, 0.5, -6.0), + (Llama, _) => (-0.5, 0.5, -6.0), + (Alpaca, _) => (0.0, -0.5, -5.0), }, feet_b: match (body.species, body.body_type) { (Grolgar, _) => (0.5, -1.5, -3.0), @@ -507,6 +547,10 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Dreadhorn, _) => (-0.5, 0.5, -3.5), (Moose, _) => (-1.0, 0.0, -6.5), (Snowleopard, _) => (0.5, 0.5, -5.5), + (Mammoth, _) => (0.5, -0.5, -4.5), + (Ngoubou, _) => (0.5, 1.0, -5.5), + (Llama, _) => (0.5, -1.5, -3.5), + (Alpaca, _) => (-0.5, -0.5, -5.5), }, scaler: match (body.species, body.body_type) { (Grolgar, _) => (1.05), @@ -531,6 +575,8 @@ impl<'a> From<&'a Body> for SkeletonAttr { (Dreadhorn, _) => (1.6), (Moose, _) => (0.95), (Snowleopard, _) => (0.95), + (Mammoth, _) => (3.0), + (Ngoubou, _) => (1.0), _ => (0.9), }, startangle: match (body.species, body.body_type) { @@ -594,6 +640,7 @@ impl<'a> From<&'a Body> for SkeletonAttr { _ => (1.0), }, feed: match (body.species, body.body_type) { + // TODO: Rework some species to allow for feed anim (Tuskram, _) => (true, 0.5), (Mouflon, _) => (true, 0.7), (Deer, _) => (true, 1.0), diff --git a/world/src/layer/wildlife.rs b/world/src/layer/wildlife.rs index 362fcf2fed..df7c579196 100644 --- a/world/src/layer/wildlife.rs +++ b/world/src/layer/wildlife.rs @@ -119,9 +119,14 @@ pub fn apply_wildlife_supplement<'a, R: Rng>( Entry { make_entity: |pos, rng| { EntityInfo::at(pos) - .with_body(match rng.gen_range(0..2) { + .with_body(match rng.gen_range(0..3) { 0 => biped_large::Body::random_with(rng, &biped_large::Species::Wendigo) .into(), + 1 => quadruped_medium::Body::random_with( + rng, + &quadruped_medium::Species::Mammoth, + ) + .into(), _ => biped_large::Body::random_with( rng, &biped_large::Species::Mountaintroll, @@ -133,7 +138,7 @@ pub fn apply_wildlife_supplement<'a, R: Rng>( group_size: 1..2, is_underwater: false, day_period: vec![Night, Morning, Noon, Evening], - get_density: |c, _col| close(c.temp, CONFIG.snow_temp, 0.15) * BASE_DENSITY * 0.1, + get_density: |c, _col| close(c.temp, CONFIG.snow_temp, 0.15) * BASE_DENSITY * 0.15, }, // Tundra rock solitary ennemies Entry { @@ -195,7 +200,7 @@ pub fn apply_wildlife_supplement<'a, R: Rng>( Entry { make_entity: |pos, rng| { EntityInfo::at(pos) - .with_body(match rng.gen_range(0..3) { + .with_body(match rng.gen_range(0..5) { 0 => quadruped_medium::Body::random_with( rng, &quadruped_medium::Species::Mouflon, @@ -206,6 +211,16 @@ pub fn apply_wildlife_supplement<'a, R: Rng>( &quadruped_medium::Species::Yak, ) .into(), + 2 => quadruped_medium::Body::random_with( + rng, + &quadruped_medium::Species::Llama, + ) + .into(), + 3 => quadruped_medium::Body::random_with( + rng, + &quadruped_medium::Species::Alpaca, + ) + .into(), _ => quadruped_medium::Body::random_with( rng, &quadruped_medium::Species::Highland, @@ -302,7 +317,7 @@ pub fn apply_wildlife_supplement<'a, R: Rng>( Entry { make_entity: |pos, rng| { EntityInfo::at(pos) - .with_body(match rng.gen_range(0..12) { + .with_body(match rng.gen_range(0..14) { 0 => quadruped_medium::Body::random_with( rng, &quadruped_medium::Species::Deer, @@ -354,6 +369,16 @@ pub fn apply_wildlife_supplement<'a, R: Rng>( quadruped_small::Body::random_with(rng, &quadruped_small::Species::Goat) .into() }, + 11 => quadruped_medium::Body::random_with( + rng, + &quadruped_medium::Species::Llama, + ) + .into(), + 12 => quadruped_medium::Body::random_with( + rng, + &quadruped_medium::Species::Alpaca, + ) + .into(), _ => bird_medium::Body::random_with(rng, &bird_medium::Species::Chicken) .into(), }) @@ -822,7 +847,7 @@ pub fn apply_wildlife_supplement<'a, R: Rng>( Entry { make_entity: |pos, rng| { EntityInfo::at(pos) - .with_body(match rng.gen_range(0..3) { + .with_body(match rng.gen_range(0..4) { 0 => quadruped_medium::Body::random_with( rng, &quadruped_medium::Species::Bonerattler, @@ -831,6 +856,11 @@ pub fn apply_wildlife_supplement<'a, R: Rng>( 1 => { theropod::Body::random_with(rng, &theropod::Species::Sandraptor).into() }, + 2 => quadruped_medium::Body::random_with( + rng, + &quadruped_medium::Species::Ngoubou, + ) + .into(), _ => quadruped_low::Body::random_with( rng, &quadruped_low::Species::Sandshark, @@ -916,7 +946,7 @@ pub fn apply_wildlife_supplement<'a, R: Rng>( close(c.temp, CONFIG.desert_temp + 0.2, 0.3) * close(c.humidity, CONFIG.desert_hum, 0.5) * BASE_DENSITY - * 0.01 + * 0.005 }, }, // Desert solitary wild diff --git a/world/src/site/dungeon/mod.rs b/world/src/site/dungeon/mod.rs index bfbfe39a9d..750119baaa 100644 --- a/world/src/site/dungeon/mod.rs +++ b/world/src/site/dungeon/mod.rs @@ -990,7 +990,8 @@ fn enemy_5(dynamic_rng: &mut impl Rng, entity: EntityInfo) -> EntityInfo { .with_body(comp::Body::Object(comp::object::Body::Crossbow)) .with_asset_expect("common.entity.dungeon.tier-5.turret"), 1 => entity.with_asset_expect("common.entity.dungeon.tier-5.warlock"), - _ => entity.with_asset_expect("common.entity.dungeon.tier-5.warlord"), + 2 => entity.with_asset_expect("common.entity.dungeon.tier-5.warlord"), + _ => entity.with_asset_expect("common.entity.dungeon.tier-5.cultist"), } } @@ -1092,7 +1093,7 @@ fn mini_boss_4(tile_wcenter: Vec3) -> Vec { fn mini_boss_5(dynamic_rng: &mut impl Rng, tile_wcenter: Vec3) -> Vec { let mut entities = Vec::new(); - match dynamic_rng.gen_range(0..2) { + match dynamic_rng.gen_range(0..3) { 0 => { entities.push( EntityInfo::at(tile_wcenter.map(|e| e as f32)) @@ -1103,6 +1104,12 @@ fn mini_boss_5(dynamic_rng: &mut impl Rng, tile_wcenter: Vec3) -> Vec { + entities.resize_with(2, || { + EntityInfo::at(tile_wcenter.map(|e| e as f32)) + .with_asset_expect("common.entity.dungeon.tier-5.husk_brute") + }); + }, _ => { entities.resize_with(10, || { EntityInfo::at(tile_wcenter.map(|e| e as f32))