mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Fixes
Fix Cave NPCs only spawning very deep inside caves Increase twig density Adjust armour values and ingredients for starter sword fix healing rod using the wrong model Hung up the lianas again
This commit is contained in:
parent
25098e94ae
commit
c9438c0947
@ -1,11 +1,10 @@
|
|||||||
[
|
[
|
||||||
(20, Velorite),
|
(10, Velorite),
|
||||||
(30, VeloriteFrag),
|
(15, VeloriteFrag),
|
||||||
(60, Stones),
|
(110, Stones),
|
||||||
(15, PurpleFlower),
|
(150, ShortGrass),
|
||||||
(130, ShortGrass),
|
(60, Mushroom),
|
||||||
(120, Mushroom),
|
(2, ShinyGem),
|
||||||
(8, ShinyGem),
|
(2, Chest),
|
||||||
(15, Chest),
|
(15, Crate),
|
||||||
(2, Crate),
|
|
||||||
]
|
]
|
||||||
|
@ -5,7 +5,7 @@ Item(
|
|||||||
(
|
(
|
||||||
kind: Chest("Leather2"),
|
kind: Chest("Leather2"),
|
||||||
stats: (
|
stats: (
|
||||||
protection: Normal(6.0),
|
protection: Normal(8.0),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
@ -5,7 +5,7 @@ Item(
|
|||||||
(
|
(
|
||||||
kind: Pants("Leather2"),
|
kind: Pants("Leather2"),
|
||||||
stats: (
|
stats: (
|
||||||
protection: Normal(8.0),
|
protection: Normal(6.0),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
@ -5,7 +5,7 @@ Item(
|
|||||||
(
|
(
|
||||||
kind: Shoulder("Leather2"),
|
kind: Shoulder("Leather2"),
|
||||||
stats: (
|
stats: (
|
||||||
protection: Normal(6.0),
|
protection: Normal(8.0),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
Item(
|
Item(
|
||||||
name: "Wooden Sword",
|
name: "Forest Spirit",
|
||||||
description: "It's not sharp.",
|
description: "The resin glows.",
|
||||||
kind: Tool(
|
kind: Tool(
|
||||||
(
|
(
|
||||||
kind: Sword("WoodTraining"),
|
kind: Sword("WoodTraining"),
|
||||||
|
@ -22,8 +22,8 @@
|
|||||||
// Weapons
|
// Weapons
|
||||||
"velorite_sceptre": (("common.items.weapons.staff.sceptre_velorite_0", 1),[("common.items.crafting_ing.twigs", 20), ("common.items.ore.veloritefrag", 10), ("common.items.crafting_ing.shiny_gem", 4), ("common.items.crafting_tools.craftsman_hammer", 0)]),
|
"velorite_sceptre": (("common.items.weapons.staff.sceptre_velorite_0", 1),[("common.items.crafting_ing.twigs", 20), ("common.items.ore.veloritefrag", 10), ("common.items.crafting_ing.shiny_gem", 4), ("common.items.crafting_tools.craftsman_hammer", 0)]),
|
||||||
// Enhanced starting weapons
|
// Enhanced starting weapons
|
||||||
"better bow": (("common.items.weapons.bow.wood_shortbow-0", 1), [("common.items.crafting_ing.leather_scraps", 8),("common.items.crafting_ing.twigs", 4), ("common.items.crafting_ing.stones", 0)]),
|
"better bow": (("common.items.weapons.bow.wood_shortbow-0", 1), [("common.items.crafting_ing.leather_scraps", 8),("common.items.crafting_ing.twigs", 6), ("common.items.crafting_ing.stones", 0)]),
|
||||||
"better sword": (("common.items.weapons.sword.wood_sword", 1), [("common.items.crafting_ing.leather_scraps", 4),("common.items.crafting_ing.twigs", 8), ("common.items.crafting_ing.stones", 0)]),
|
"better sword": (("common.items.weapons.sword.wood_sword", 1), [("common.items.crafting_ing.leather_scraps", 4),("common.items.crafting_ing.twigs", 10), ("common.items.ore.veloritefrag", 1), ("common.items.crafting_ing.stones", 0)]),
|
||||||
// Adventurer/Beginner Leather Set
|
// Adventurer/Beginner Leather Set
|
||||||
"adventure back": (("common.items.armor.back.leather_adventurer", 1),[("common.items.crafting_ing.leather_scraps", 4)]),
|
"adventure back": (("common.items.armor.back.leather_adventurer", 1),[("common.items.crafting_ing.leather_scraps", 4)]),
|
||||||
"adventure belt": (("common.items.armor.belt.leather_adventurer", 1),[("common.items.crafting_ing.leather_scraps", 2)]),
|
"adventure belt": (("common.items.armor.belt.leather_adventurer", 1),[("common.items.crafting_ing.leather_scraps", 2)]),
|
||||||
|
@ -67,7 +67,7 @@
|
|||||||
(0.0, 0.0, 0.0), (-135.0, 90.0, 0.0), 1.2,
|
(0.0, 0.0, 0.0), (-135.0, 90.0, 0.0), 1.2,
|
||||||
),
|
),
|
||||||
Tool(Sword("WoodTraining")): VoxTrans(
|
Tool(Sword("WoodTraining")): VoxTrans(
|
||||||
"voxel.weapon.sword.wood_2h",
|
"voxel.weapon.sword.wood_ore_2h",
|
||||||
(0.0, 0.0, 0.0), (-135.0, 90.0, 0.0), 1.3,
|
(0.0, 0.0, 0.0), (-135.0, 90.0, 0.0), 1.3,
|
||||||
),
|
),
|
||||||
Tool(Sword("LongFine3")): VoxTrans(
|
Tool(Sword("LongFine3")): VoxTrans(
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
color: None
|
color: None
|
||||||
),
|
),
|
||||||
Sword("WoodTraining"): (
|
Sword("WoodTraining"): (
|
||||||
vox_spec: ("weapon.sword.wood_2h", (-1.5, -6.5, -4.0)),
|
vox_spec: ("weapon.sword.wood_ore_2h", (-1.5, -6.5, -4.0)),
|
||||||
color: None
|
color: None
|
||||||
),
|
),
|
||||||
Sword("Zweihander0"): (
|
Sword("Zweihander0"): (
|
||||||
|
BIN
assets/voxygen/voxel/weapon/staff/wood-nature.vox
(Stored with Git LFS)
BIN
assets/voxygen/voxel/weapon/staff/wood-nature.vox
(Stored with Git LFS)
Binary file not shown.
BIN
assets/voxygen/voxel/weapon/sword/wood_ore_2h.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/weapon/sword/wood_ore_2h.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -173,20 +173,25 @@ impl Item {
|
|||||||
BlockKind::ShortGrass => Some(assets::load_expect_cloned("common.items.grasses.short")),
|
BlockKind::ShortGrass => Some(assets::load_expect_cloned("common.items.grasses.short")),
|
||||||
BlockKind::Coconut => Some(assets::load_expect_cloned("common.items.food.coconut")),
|
BlockKind::Coconut => Some(assets::load_expect_cloned("common.items.food.coconut")),
|
||||||
BlockKind::Chest => {
|
BlockKind::Chest => {
|
||||||
let chosen = match rng.gen_range(0, 5) {
|
let chosen = match rng.gen_range(0, 7) {
|
||||||
0 => {
|
0 => assets::load_expect::<Lottery<String>>(
|
||||||
assets::load_expect::<Lottery<String>>("common.loot_tables.loot_table_food")
|
|
||||||
},
|
|
||||||
1 => assets::load_expect::<Lottery<String>>(
|
|
||||||
"common.loot_tables.loot_table_crafting",
|
|
||||||
),
|
|
||||||
2 => assets::load_expect::<Lottery<String>>(
|
|
||||||
"common.loot_tables.loot_table_weapon_uncommon",
|
"common.loot_tables.loot_table_weapon_uncommon",
|
||||||
),
|
),
|
||||||
|
1 => assets::load_expect::<Lottery<String>>(
|
||||||
|
"common.loot_tables.loot_weapon_common",
|
||||||
|
),
|
||||||
|
2 => assets::load_expect::<Lottery<String>>(
|
||||||
|
"common.loot_tables.loot_table_armor_light",
|
||||||
|
),
|
||||||
3 => assets::load_expect::<Lottery<String>>(
|
3 => assets::load_expect::<Lottery<String>>(
|
||||||
|
"common.loot_tables.loot_table_armor_cloth",
|
||||||
|
),
|
||||||
|
4 => assets::load_expect::<Lottery<String>>(
|
||||||
|
"common.loot_tables.loot_table_armor_heavy",
|
||||||
|
),
|
||||||
|
_ => assets::load_expect::<Lottery<String>>(
|
||||||
"common.loot_tables.loot_table_armor_misc",
|
"common.loot_tables.loot_table_armor_misc",
|
||||||
),
|
),
|
||||||
_ => assets::load_expect::<Lottery<String>>("common.loot_tables.loot_table"),
|
|
||||||
};
|
};
|
||||||
let chosen = chosen.choose();
|
let chosen = chosen.choose();
|
||||||
Some(assets::load_expect_cloned(chosen))
|
Some(assets::load_expect_cloned(chosen))
|
||||||
|
@ -525,7 +525,9 @@ impl<'a> System<'a> for Sys {
|
|||||||
|
|
||||||
// Attack owner's attacker
|
// Attack owner's attacker
|
||||||
let owner_stats = stats.get(owner)?;
|
let owner_stats = stats.get(owner)?;
|
||||||
if owner_stats.health.last_change.0 < 5.0 {
|
if owner_stats.health.last_change.0 < 5.0
|
||||||
|
&& owner_stats.health.last_change.1.amount < 0
|
||||||
|
{
|
||||||
if let comp::HealthSource::Attack { by } =
|
if let comp::HealthSource::Attack { by } =
|
||||||
owner_stats.health.last_change.1.cause
|
owner_stats.health.last_change.1.cause
|
||||||
{
|
{
|
||||||
|
@ -571,6 +571,7 @@ pub fn block_from_structure(
|
|||||||
)),
|
)),
|
||||||
// None of these BlockKinds has an orientation, so we just use zero for the other color
|
// None of these BlockKinds has an orientation, so we just use zero for the other color
|
||||||
// bits.
|
// bits.
|
||||||
|
StructureBlock::Liana => Some(Block::new(BlockKind::Liana, Rgb::zero())),
|
||||||
StructureBlock::Fruit => Some(if field.get(pos + structure_pos) % 3 > 0 {
|
StructureBlock::Fruit => Some(if field.get(pos + structure_pos) % 3 > 0 {
|
||||||
Block::empty()
|
Block::empty()
|
||||||
} else {
|
} else {
|
||||||
@ -592,7 +593,6 @@ pub fn block_from_structure(
|
|||||||
| StructureBlock::PalmLeavesInner
|
| StructureBlock::PalmLeavesInner
|
||||||
| StructureBlock::PalmLeavesOuter
|
| StructureBlock::PalmLeavesOuter
|
||||||
| StructureBlock::Acacia
|
| StructureBlock::Acacia
|
||||||
| StructureBlock::Liana
|
|
||||||
| StructureBlock::Mangrove => sblock
|
| StructureBlock::Mangrove => sblock
|
||||||
.elim_case_pure(&index.colors.block.structure_blocks)
|
.elim_case_pure(&index.colors.block.structure_blocks)
|
||||||
.as_ref()
|
.as_ref()
|
||||||
|
@ -130,10 +130,10 @@ pub fn apply_scatter_to<'a>(
|
|||||||
// Collecable Objects
|
// Collecable Objects
|
||||||
// Only spawn twigs in temperate forests
|
// Only spawn twigs in temperate forests
|
||||||
(Twigs, false, |c| {
|
(Twigs, false, |c| {
|
||||||
((c.tree_density - 0.5).max(0.0) * MUSH_FACT * 0.5, None)
|
((c.tree_density - 0.5).max(0.0) * 0.001, None)
|
||||||
}),
|
}),
|
||||||
(Stones, false, |c| {
|
(Stones, false, |c| {
|
||||||
((c.rockiness - 0.5).max(0.0) * MUSH_FACT * 0.5, None)
|
((c.rockiness - 0.5).max(0.0) * 0.05, None)
|
||||||
}),
|
}),
|
||||||
// Don't spawn Mushrooms in snowy regions
|
// Don't spawn Mushrooms in snowy regions
|
||||||
(Mushroom, false, |c| {
|
(Mushroom, false, |c| {
|
||||||
@ -494,7 +494,7 @@ pub fn apply_caves_to<'a>(
|
|||||||
let difficulty = cave_depth / 100.0;
|
let difficulty = cave_depth / 100.0;
|
||||||
|
|
||||||
// Scatter things in caves
|
// Scatter things in caves
|
||||||
if RandomField::new(index.seed).chance(wpos2d.into(), 0.002 * difficulty.powf(1.5))
|
if RandomField::new(index.seed).chance(wpos2d.into(), 0.001 * difficulty.powf(1.5))
|
||||||
&& cave_base < surface_z as i32 - 25
|
&& cave_base < surface_z as i32 - 25
|
||||||
{
|
{
|
||||||
let kind = *assets::load_expect::<Lottery<BlockKind>>("common.cave_scatter")
|
let kind = *assets::load_expect::<Lottery<BlockKind>>("common.cave_scatter")
|
||||||
@ -547,7 +547,7 @@ pub fn apply_caves_supplement<'a>(
|
|||||||
let difficulty = cave_depth / 200.0;
|
let difficulty = cave_depth / 200.0;
|
||||||
|
|
||||||
// Scatter things in caves
|
// Scatter things in caves
|
||||||
if RandomField::new(index.seed).chance(wpos2d.into(), 0.000005 * difficulty)
|
if RandomField::new(index.seed).chance(wpos2d.into(), 0.001 * difficulty)
|
||||||
&& cave_base < surface_z as i32 - 40
|
&& cave_base < surface_z as i32 - 40
|
||||||
{
|
{
|
||||||
let is_hostile: bool;
|
let is_hostile: bool;
|
||||||
|
Loading…
Reference in New Issue
Block a user