more loot tables, overworld ores, more items

This commit is contained in:
jshipsey 2021-05-25 03:27:34 -04:00 committed by Marcel Märtens
parent 05de96c94b
commit 8acd3832e3
56 changed files with 371 additions and 39 deletions

View File

@ -1,7 +1,7 @@
[
(10, Velorite),
(15, VeloriteFrag),
(100, ShortGrass),
(30, Velorite),
(40, VeloriteFrag),
(70, ShortGrass),
(10, CaveMushroom),
(10, AmethystSmall),
(10, TopazSmall),

View File

@ -1,15 +1,12 @@
[
(10, Velorite),
(15, VeloriteFrag),
(110, Stones),
(150, ShortGrass),
(120, CaveMushroom),
(30, AmethystSmall),
(15, TopazSmall),
(20, Tin),
(16, Copper),
(5, Coal),
(8, Iron),
(15, Tin),
(12, Copper),
(15, Iron),
(5, Chest),
(15, Crate),
]

View File

@ -19,7 +19,6 @@ loot_tables: [
(1.0, true, "common.loot_tables.armor.twigs"),
(1.0, true, "common.loot_tables.armor.twigsflowers"),
(1.0, true, "common.loot_tables.armor.twigsleaves"),
(0.25, false, "common.loot_tables.armor.steel"),
(0.075, false, "common.loot_tables.armor.cultist"),
// Materials
(7.5, true, "common.loot_tables.materials.common"),

View File

@ -0,0 +1,9 @@
ItemDef(
name: "Phoenix Feather",
description: "Said to have magical properties.",
kind: Ingredient(
kind: "PhoenixFeather",
),
quality: Common,
tags: [],
)

View File

@ -0,0 +1,22 @@
ItemDef(
name: "Cooked Bird Meat",
description: "Best enjoyed with one in each hand.",
kind: Consumable(
kind: "BirdCooked",
effect: [
Buff((
kind: Saturation,
data: (
strength: 25.0,
duration: Some((
secs: 10,
nanos: 0,
)),
),
cat_ids: [Natural],
)),
]
),
quality: Common,
tags: [Food],
)

View File

@ -0,0 +1,22 @@
ItemDef(
name: "Huge Cooked Drumstick",
description: "Makes for a legendary meal.",
kind: Consumable(
kind: "BirdLargeCooked",
effect: [
Buff((
kind: Saturation,
data: (
strength: 80.0,
duration: Some((
secs: 10,
nanos: 0,
)),
),
cat_ids: [Natural],
)),
]
),
quality: Common,
tags: [Food],
)

View File

@ -0,0 +1,22 @@
ItemDef(
name: "Huge Raw Drumstick",
description: "It's magificent.",
kind: Consumable(
kind: "BirdLargeRaw",
effect: [
Buff((
kind: Saturation,
data: (
strength: 30.0,
duration: Some((
secs: 3,
nanos: 0,
)),
),
cat_ids: [Natural],
)),
]
),
quality: Common,
tags: [Food],
)

View File

@ -0,0 +1,22 @@
ItemDef(
name: "Raw Bird Meat",
description: "A hefty drumstick.",
kind: Consumable(
kind: "BirdRaw",
effect: [
Buff((
kind: Saturation,
data: (
strength: 15.0,
duration: Some((
secs: 3,
nanos: 0,
)),
),
cat_ids: [Natural],
)),
]
),
quality: Common,
tags: [Food],
)

View File

@ -6,6 +6,10 @@ ItemDef(
stats: (
protection: Normal(0.0),
poise_resilience: Normal(0.0),
energy_max: 0,
energy_recovery: 0.0,
crit_power: 0.0,
stealth: 0.0,
),
)),
quality: Legendary,

View File

@ -6,6 +6,10 @@ ItemDef(
stats: (
protection: Normal(0.0),
poise_resilience: Normal(0.0),
energy_max: 0,
energy_recovery: 0.0,
crit_power: 0.0,
stealth: 0.0,
),
)),
quality: Legendary,

View File

@ -6,6 +6,10 @@ ItemDef(
stats: (
protection: Normal(20.0),
poise_resilience: Normal(0.0),
energy_max: 0,
energy_recovery: 0.0,
crit_power: 0.0,
stealth: 0.0,
),
)),
quality: Legendary,

View File

@ -6,6 +6,10 @@ ItemDef(
stats: (
protection: Normal(0.0),
poise_resilience: Normal(0.0),
energy_max: 0,
energy_recovery: 0.0,
crit_power: 0.0,
stealth: 0.0,
),
)),
quality: Legendary,

View File

@ -0,0 +1,18 @@
ItemDef(
name: "Burnt Drumstick",
description: "Might need more practice...",
kind: Tool((
kind: Hammer,
hands: Two,
stats: Direct((
equip_time_secs: 0.5,
power: 0.5,
poise_strength: 1.0,
speed: 1.0,
crit_chance: 0.09375,
crit_mult: 2.2190475,
)),
)),
quality: Low,
tags: [],
)

View File

@ -1,8 +0,0 @@
[
(1.0, Item("common.items.armor.mail.steel.belt")),
(1.0, Item("common.items.armor.mail.steel.chest")),
(1.0, Item("common.items.armor.mail.steel.foot")),
(1.0, Item("common.items.armor.mail.steel.hand")),
(1.0, Item("common.items.armor.mail.steel.pants")),
(1.0, Item("common.items.armor.mail.steel.shoulder")),
]

View File

@ -0,0 +1,4 @@
[
(1.0, Item("common.items.food.meat.bird_raw")),
(1.0, Item("common.items.crafting_ing.hide.scales")),
]

View File

@ -0,0 +1,5 @@
[
(0.1, Item("common.items.food.meat.bird_large_raw")),
(1.0, Item("common.items.crafting_ing.animal_misc.phoenix_feather")),
]

View File

@ -1,3 +1,3 @@
[
(1.0, Item("common.items.crafting_ing.hide.animal_hide")),
(1.0, Item("common.items.food.meat.bird_raw")),
]

View File

@ -1,6 +1,5 @@
[
(1.0, LootTable("common.loot_tables.food.prepared")),
(1.0, LootTable("common.loot_tables.armor.steel")),
(1.0, LootTable("common.loot_tables.weapons.tier-1")),
(1.0, LootTable("common.loot_tables.weapons.tier-2")),
(1.0, LootTable("common.loot_tables.weapons.tier-3")),

View File

@ -0,0 +1,4 @@
[
(1.0, Item("common.items.crafting_ing.animal_misc.lively_vine")),
(1.0, Item("common.items.crafting_ing.animal_misc.grim_eyeball")),
]

View File

@ -1,6 +1,6 @@
[
(1.0, Item("common.items.food.meat.tough_raw")),
(2.0, Item("common.items.crafting_ing.hide.scales")),
(2.0, Item("common.items.crafting_ing.animal_misc.fang")),
(2.0, Item("common.items.crafting_ing.animal_misc.sharp_fang")),
]

View File

@ -1,5 +1,6 @@
[
(1.0, Item("common.items.food.meat.tough_raw")),
(1.0, Item("common.items.crafting_ing.animal_misc.sharp_fang")),
(2.0, Item("common.items.crafting_ing.animal_misc.venom_sac")),
(2.0, Item("common.items.crafting_ing.hide.scales")),
]

View File

@ -0,0 +1,6 @@
[
(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.sharp_fang")),
(3.0, Item("common.items.crafting_ing.hide.carapace")),
]

View File

@ -0,0 +1,5 @@
[
(1.5, Item("common.items.crafting_ing.animal_misc.grim_eyeball")),
(0.5, Item("common.items.food.meat.beast_large_raw")),
(3.0, Item("common.items.crafting_ing.hide.tough_hide")),
]

View File

@ -1,5 +1,6 @@
[
(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.claw")),
(3.0, Item("common.items.crafting_ing.hide.tough_hide")),
]

View File

@ -0,0 +1,6 @@
[
(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")),
]

View File

@ -0,0 +1,5 @@
[
(0.5, Item("common.items.food.meat.beast_large_raw")),
(2.0, Item("common.items.crafting_ing.animal_misc.sharp_fang")),
(3.0, Item("common.items.crafting_ing.hide.tough_hide")),
]

View File

@ -0,0 +1,5 @@
[
(1.5, Item("common.items.food.meat.beast_small_raw")),
(0.5, Item("common.items.food.meat.beast_large_raw")),
(3.0, Item("common.items.crafting_ing.hide.animal_hide")),
]

View File

@ -0,0 +1,5 @@
[
(1.0, ItemQuantity("common.items.crafting_ing.animal_misc.fur", 1, 3)),
(1.0, Item("common.items.crafting_ing.hide.animal_hide")),
]

View File

@ -0,0 +1,3 @@
[
(1.0, Item("common.items.food.mushroom")),
]

View File

@ -0,0 +1,3 @@
[
(1.0, Item("common.items.crafting_ing.hide.viscous_ooze")),
]

View File

@ -0,0 +1,3 @@
[
(1.0, Item("common.items.crafting_ing.cloth.wool", 2, 5)),
]

View File

@ -0,0 +1,4 @@
[
(1.0, Item("common.items.crafting_ing.hide.plate")),
(1.0, Item("common.items.crafting_ing.animal_misc.large_horn")),
]

View File

@ -1,4 +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.animal_misc.raptor_feather")),
]

View File

@ -1,5 +1,4 @@
[
(1.0, LootTable("common.loot_tables.humanoids")),
(1.0, LootTable("common.loot_tables.armor.steel")),
(1.0, LootTable("common.loot_tables.weapons.tier-3")),
]

View File

@ -1,5 +1,4 @@
[
(1.0, LootTable("common.loot_tables.humanoids")),
(1.0, LootTable("common.loot_tables.armor.steel")),
(1.0, LootTable("common.loot_tables.weapons.tier-4")),
]

View File

@ -1,6 +1,4 @@
[
// armor
(6.0, LootTable("common.loot_tables.armor.steel")),
// weapons
(3.0, LootTable("common.loot_tables.weapons.tier-4")),
// lantern

View File

@ -6,7 +6,6 @@
(5.0, Item("common.items.food.cheese")),
// Gear
(3.0, LootTable("common.loot_tables.weapons.tier-5")),
(2.0, LootTable("common.loot_tables.armor.steel")),
(0.25, Item("common.items.armor.misc.neck.plain_1")),
(0.5, Item("common.items.armor.misc.ring.gold")),
(0.25, Item("common.items.armor.misc.ring.skull")),

View File

@ -149,6 +149,20 @@
],
craft_sprite: Some(CookingPot),
),
"bird_cooked": (
output: ("common.items.food.meat.bird_cooked", 1),
inputs: [
(Item("common.items.food.meat.bird_raw"), 1),
],
craft_sprite: Some(CookingPot),
),
"bird_large_cooked": (
output: ("common.items.food.meat.bird_large_cooked", 1),
inputs: [
(Item("common.items.food.meat.bird_large_raw"), 1),
],
craft_sprite: Some(CookingPot),
),
"beast_small_cooked": (
output: ("common.items.food.meat.beast_small_cooked", 1),
inputs: [
@ -443,6 +457,13 @@
],
craft_sprite: Some(Anvil),
),
"Burnt Drumstick": (
output: ("common.items.weapons.hammer.burnt_drumstick", 1),
inputs: [
(Item("common.items.food.meat.bird_large_cooked"), 1),
],
craft_sprite: Some(CookingPot),
),
//ARMOR/HIDE/RAWHIDE
"rawhide back": (
output: ("common.items.armor.hide.rawhide.back", 1),

View File

@ -792,6 +792,10 @@
"voxel.weapon.hammer.cult_purp-0",
(2.0, -1.0, 0.0), (-135.0, 90.0, 0.0), 1.1,
),
Tool("common.items.weapons.hammer.burnt_drumstick"): VoxTrans(
"voxel.weapon.hammer.burnt_drumstick",
(2.0, -1.0, 0.0), (-135.0, 90.0, 0.0), 1.1,
),
// 1h Hammers
Tool("common.items.weapons.hammer_1h.bloodsteel-0"): VoxTrans(
"voxel.weapon.hammer_1h.bloodsteel-0",
@ -2327,6 +2331,22 @@
"voxel.sprite.food.meat.fish_cooked",
(0.0, 0.0, 0.0), (-20.0, 10.0, 20.0), 0.9,
),
Consumable("BirdRaw"): VoxTrans(
"voxel.sprite.food.meat.bird_raw",
(0.0, 0.0, 0.0), (-20.0, 10.0, 20.0), 0.9,
),
Consumable("BirdCooked"): VoxTrans(
"voxel.sprite.food.meat.bird_cooked",
(0.0, 0.0, 0.0), (-20.0, 10.0, 20.0), 0.9,
),
Consumable("BirdLargeRaw"): VoxTrans(
"voxel.sprite.food.meat.bird_large_raw",
(0.0, 0.0, 0.0), (-20.0, 10.0, 20.0), 0.9,
),
Consumable("BirdLargeCooked"): VoxTrans(
"voxel.sprite.food.meat.bird_large_cooked",
(0.0, 0.0, 0.0), (-20.0, 10.0, 20.0), 0.9,
),
Consumable("BeastSmallRaw"): VoxTrans(
"voxel.sprite.food.meat.beast_small_raw",
(0.0, 0.0, 0.0), (-50.0, 10.0, 0.0), 1.0,
@ -2474,7 +2494,7 @@
(0.0, 0.0, 0.0), (-20.0, 10.0, 20.0), 0.9,
),
Ingredient("Claw"): VoxTrans(
"voxel.sprite.crafting_ing.claw",
"voxel.sprite.crafting_ing.animal_misc.claw",
(0.0, 0.0, 0.0), (-20.0, 10.0, 20.0), 0.9,
),
Ingredient("VenomSac"): VoxTrans(
@ -2487,7 +2507,11 @@
),
Ingredient("SharpFang"): VoxTrans(
"voxel.sprite.crafting_ing.animal_misc.sharp_fang",
(0.0, 0.0, 0.0), (-20.0, 10.0, 20.0), 0.9,
(0.0, 0.0, 0.0), (-20.0, 10.0, 20.0), 1.0,
),
Ingredient("Fur"): VoxTrans(
"voxel.sprite.crafting_ing.animal_misc.fur",
(0.0, 0.0, 0.0), (-40.0, -10.0, 10.0), 1.0,
),
Ingredient("LargeHorn"): VoxTrans(
"voxel.sprite.crafting_ing.animal_misc.large_horn",
@ -2645,7 +2669,11 @@
(0.0, 0.0, 0.0), (-50.0, 30.0, 20.0), 0.8,
),
Ingredient("ViscousOoze"): VoxTrans(
"voxel.sprite.crafting_ing.ooze",
"voxel.sprite.crafting_ing.animal_misc.ooze",
(0.0, 0.0, 0.0), (-50.0, 30.0, 20.0), 0.8,
),
Ingredient("PhoenixFeather"): VoxTrans(
"voxel.sprite.crafting_ing.animal_misc.phoenix_feather",
(0.0, 0.0, 0.0), (-50.0, 30.0, 20.0), 0.8,
),
// Gliders

View File

@ -571,6 +571,10 @@
vox_spec: ("weapon.hammer.cult_purp-0", (-3.5, -4.5, -5.0)),
color: None
),
"common.items.weapons.hammer.burnt_drumstick": (
vox_spec: ("weapon.hammer.burnt_drumstick", (-3.0, -6.0, -5.0)),
color: None
),
/*"Craftsman": ( //TODO This should be a 1h hammer!
vox_spec: ("weapon.hammer.craftsman", (-2.0, -5.0, -5.5)),
color: None

BIN
assets/voxygen/voxel/object/tanning_rack.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/sprite/crafting_ing/animal_misc/fur.vox (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
assets/voxygen/voxel/sprite/food/meat/bird_large_cooked.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/sprite/food/meat/bird_large_raw.vox (Stored with Git LFS) Normal file

Binary file not shown.

BIN
assets/voxygen/voxel/weapon/hammer/burnt_drumstick.vox (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -59,7 +59,7 @@
deep_stone_color: (125, 120, 130),
layer: (
bridge: (80, 80, 100),
stalagtite: (140, 150, 200),
stalagtite: (77, 91, 161),
),
site: (
castle: (),

View File

@ -2,7 +2,7 @@ use crate::{
client::Client,
comp::{
agent::{Sound, SoundKind},
biped_large, quadruped_low, quadruped_medium, quadruped_small,
biped_large, bird_large, quadruped_low, quadruped_medium, quadruped_small,
skills::SkillGroupKind,
theropod, PhysicsState,
},
@ -358,6 +358,25 @@ pub fn handle_destroy(server: &mut Server, entity: EcsEntity, cause: HealthSourc
quadruped_small::Species::Dodarock => {
"common.loot_tables.creature.quad_small.dodarock"
},
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::Skunk
| quadruped_small::Species::Quokka
| quadruped_small::Species::Beaver
| quadruped_small::Species::Jackalope
| quadruped_small::Species::Hare => {
"common.loot_tables.creature.quad_small.fur"
},
quadruped_small::Species::Frog
| quadruped_small::Species::Axolotl
| quadruped_small::Species::Gecko
| quadruped_small::Species::Turtle => {
"common.loot_tables.creature.quad_small.ooze"
},
_ => "common.loot_tables.creature.quad_small.default",
}
},
@ -365,12 +384,47 @@ pub fn handle_destroy(server: &mut Server, entity: EcsEntity, cause: HealthSourc
quadruped_medium::Species::Frostfang | quadruped_medium::Species::Roshwalr => {
"common.loot_tables.creature.quad_medium.ice"
},
_ => "common.loot_tables.creature.quad_medium.default",
quadruped_medium::Species::Catoblepas => {
"common.loot_tables.creature.quad_medium.catoblepas"
},
quadruped_medium::Species::Bear
| quadruped_medium::Species::Snowleopard
| quadruped_medium::Species::Tiger
| quadruped_medium::Species::Lion => {
"common.loot_tables.creature.quad_medium.clawed"
},
quadruped_medium::Species::Tarasque
| quadruped_medium::Species::Bonerattler => {
"common.loot_tables.creature.quad_medium.carapace"
},
quadruped_medium::Species::Dreadhorn => {
"common.loot_tables.creature.quad_medium.dreadhorn"
},
quadruped_medium::Species::Mouflon
| quadruped_medium::Species::Camel
| quadruped_medium::Species::Deer
| quadruped_medium::Species::Hirdrasil
| quadruped_medium::Species::Horse
| quadruped_medium::Species::Highland
| quadruped_medium::Species::Zebra
| quadruped_medium::Species::Donkey
| quadruped_medium::Species::Antelope
| quadruped_medium::Species::Kelpie
| quadruped_medium::Species::Cattle
| quadruped_medium::Species::Yak => {
"common.loot_tables.creature.quad_medium.gentle"
},
_ => "common.loot_tables.creature.quad_medium.fanged",
},
Some(common::comp::Body::BirdMedium(_)) => {
"common.loot_tables.creature.bird_medium"
},
Some(common::comp::Body::BirdLarge(_)) => "common.loot_tables.creature.bird_medium",
Some(common::comp::Body::BirdLarge(bird_large)) => match bird_large.species {
bird_large::Species::Cockatrice => {
"common.loot_tables.creature.bird_large.cockatrice"
},
_ => "common.loot_tables.creature.bird_large.phoenix",
},
Some(common::comp::Body::FishMedium(_)) => "common.loot_tables.creature.fish",
Some(common::comp::Body::FishSmall(_)) => "common.loot_tables.creature.fish",
Some(common::comp::Body::BipedLarge(biped_large)) => match biped_large.species {
@ -389,8 +443,10 @@ pub fn handle_destroy(server: &mut Server, entity: EcsEntity, cause: HealthSourc
Some(common::comp::Body::Theropod(theropod)) => match theropod.species {
theropod::Species::Sandraptor
| theropod::Species::Snowraptor
| theropod::Species::Woodraptor => {
"common.loot_tables.creature.theropod.raptor"
| theropod::Species::Woodraptor
| theropod::Species::Sunlizard => "common.loot_tables.creature.theropod.raptor",
theropod::Species::Archaeos | theropod::Species::Ntouka => {
"common.loot_tables.creature.theropod.horned"
},
_ => "common.loot_tables.creature.theropod.default",
},
@ -403,7 +459,7 @@ pub fn handle_destroy(server: &mut Server, entity: EcsEntity, cause: HealthSourc
quadruped_low::Species::Lavadrake => {
"common.loot_tables.creature.quad_low.carapace"
},
quadruped_low::Species::Rocksnapper => {
quadruped_low::Species::Rocksnapper | quadruped_low::Species::Sandshark => {
"common.loot_tables.creature.quad_low.carapace"
},
quadruped_low::Species::Asp => {
@ -412,6 +468,9 @@ pub fn handle_destroy(server: &mut Server, entity: EcsEntity, cause: HealthSourc
quadruped_low::Species::Hakulaq => {
"common.loot_tables.creature.quad_low.fanged"
},
quadruped_low::Species::Deadwood => {
"common.loot_tables.creature.quad_low.deadwood"
},
quadruped_low::Species::Basilisk => {
"common.loot_tables.creature.quad_low.basilisk"
},

View File

@ -150,7 +150,7 @@ pub fn apply_caves_to(canvas: &mut Canvas, rng: &mut impl Rng) {
.index()
.noise
.cave_nz
.get(wpos2d.map(|e| e as f64 * 0.125).into_array())
.get(wpos2d.map(|e| e as f64 * 0.18).into_array())
.sub(0.5)
.max(0.0)
.mul(
@ -191,6 +191,12 @@ pub fn apply_caves_to(canvas: &mut Canvas, rng: &mut impl Rng) {
canvas.map(Vec3::new(wpos2d.x, wpos2d.y, cave_base), |block| {
block.with_sprite(kind)
});
let kind2 = *Lottery::<SpriteKind>::load_expect("common.cave_scatter.shallow")
.read()
.choose();
canvas.map(Vec3::new(wpos2d.x, wpos2d.y, cave_roof - 1), |block| {
block.with_sprite(kind2)
});
}
} else {
if rng.gen::<f32>()
@ -204,6 +210,16 @@ pub fn apply_caves_to(canvas: &mut Canvas, rng: &mut impl Rng) {
block.with_sprite(kind)
});
}
if rng.gen::<f32>() < 0.3 * (difficulty / 3.0).powf(2.5)
&& cave_base < surface_z as i32 - 25
{
let kind = *Lottery::<SpriteKind>::load_expect("common.cave_scatter.deep")
.read()
.choose();
canvas.map(Vec3::new(wpos2d.x, wpos2d.y, cave_roof - 1), |block| {
block.with_sprite(kind)
});
}
};
}
});

View File

@ -153,6 +153,12 @@ pub fn apply_scatter_to(canvas: &mut Canvas, rng: &mut impl Rng) {
(Stones, false, |c, _| {
((c.rockiness - 0.5).max(0.025) * 1.0e-3, None)
}),
(Copper, false, |c, _| {
((c.rockiness - 0.5).max(0.025) * 1.5e-3, None)
}),
(Tin, false, |c, _| {
((c.rockiness - 0.5).max(0.025) * 1.5e-3, None)
}),
// Don't spawn Mushrooms in snowy regions
(Mushroom, false, |c, _| {
(