Merge branch 'zesterer/balancing' into 'master'

Fixed various balance/UX complaints

See merge request veloren/veloren!3928
This commit is contained in:
Joshua Barretto 2023-05-12 16:35:38 +00:00
commit d110cf55f9
8 changed files with 46 additions and 35 deletions

View File

@ -6,7 +6,7 @@ ItemDef(
hands: Two, hands: Two,
stats: ( stats: (
equip_time_secs: 0.01, equip_time_secs: 0.01,
power: 1.0, power: 0.5,
effect_power: 1.0, effect_power: 1.0,
speed: 1.0, speed: 1.0,
crit_chance: 0.1, crit_chance: 0.1,

View File

@ -7,15 +7,15 @@
// Please keep it sorted by rarity so it's easier to reason about things // Please keep it sorted by rarity so it's easier to reason about things
[ [
// Meats // Meats
(0.125, Item("common.items.food.meat.bird_large_raw")), (0.1, Item("common.items.food.meat.bird_large_raw")),
(0.5, Item("common.items.food.meat.beast_large_raw")), (0.35, Item("common.items.food.meat.beast_large_raw")),
(2.0, Item("common.items.food.meat.bird_raw")), (0.65, Item("common.items.food.meat.bird_raw")),
(2.0, Item("common.items.food.meat.fish_raw")), (0.65, Item("common.items.food.meat.fish_raw")),
(2.0, Item("common.items.food.meat.tough_raw")), (0.65, Item("common.items.food.meat.tough_raw")),
(4.0, Item("common.items.food.meat.beast_small_raw")), (1.5, Item("common.items.food.meat.beast_small_raw")),
// Gatherables // Gatherables
(0.25, Item("common.items.food.coconut")), (0.25, Item("common.items.food.coconut")),
(0.5, Item("common.items.food.cheese")), (0.75, Item("common.items.food.cheese")),
(1.0, Item("common.items.food.apple")), (1.0, Item("common.items.food.apple")),
(2.0, Item("common.items.food.carrot")), (2.0, Item("common.items.food.carrot")),
(2.0, Item("common.items.food.lettuce")), (2.0, Item("common.items.food.lettuce")),

View File

@ -2,13 +2,13 @@
loot_tables: [ loot_tables: [
// balance the loot tables against each other (higher= more common= smaller price) // balance the loot tables against each other (higher= more common= smaller price)
// Non-craftable weapons // Non-craftable weapons
(192.0, true, "common.loot_tables.weapons.starter"), (80.0, true, "common.loot_tables.weapons.starter"),
(0.075, false, "common.loot_tables.weapons.cultist"), (0.075, false, "common.loot_tables.weapons.cultist"),
(0.075, false, "common.loot_tables.weapons.cave"), (0.075, false, "common.loot_tables.weapons.cave"),
(0.04, false, "common.loot_tables.weapons.legendary"), (0.04, false, "common.loot_tables.weapons.legendary"),
// Non-craftable Armor // Non-craftable Armor
(640, true, "common.loot_tables.armor.cloth"), (15.0, true, "common.loot_tables.armor.cloth"),
(6.0, true, "common.loot_tables.armor.twigs"), (6.0, true, "common.loot_tables.armor.twigs"),
(6.0, true, "common.loot_tables.armor.twigsflowers"), (6.0, true, "common.loot_tables.armor.twigsflowers"),
(6.0, true, "common.loot_tables.armor.twigsleaves"), (6.0, true, "common.loot_tables.armor.twigsleaves"),

View File

@ -18,10 +18,10 @@
(4.0, Item("common.items.crafting_ing.stones")), (4.0, Item("common.items.crafting_ing.stones")),
// Ores // Ores
(0.5, Item("common.items.mineral.ore.velorite")), (0.3, Item("common.items.mineral.ore.velorite")),
(0.6, Item("common.items.mineral.ore.veloritefrag")), (0.4, Item("common.items.mineral.ore.veloritefrag")),
(2.5, Item("common.items.mineral.ore.copper")), (1.5, Item("common.items.mineral.ore.copper")),
(2.5, Item("common.items.mineral.ore.tin")), (1.5, Item("common.items.mineral.ore.tin")),
// Logs // Logs
(5.0, Item("common.items.log.wood")), (5.0, Item("common.items.log.wood")),
@ -50,13 +50,13 @@
// Gatherables // Gatherables
(0.1, Item("common.items.crafting_ing.seashells")), (0.1, Item("common.items.crafting_ing.seashells")),
(9.0, Item("common.items.crafting_ing.honey")), (4.0, Item("common.items.crafting_ing.honey")),
(5.0, Item("common.items.flowers.moonbell")), (4.0, Item("common.items.flowers.moonbell")),
(1.0, Item("common.items.crafting_ing.cotton_boll")), (3.0, Item("common.items.crafting_ing.cotton_boll")),
(1.0, Item("common.items.flowers.pyrebloom")), (1.0, Item("common.items.flowers.pyrebloom")),
(3.0, Item("common.items.crafting_ing.twigs")), (3.5, Item("common.items.crafting_ing.twigs")),
(4.0, Item("common.items.crafting_ing.cactus")), (3.0, Item("common.items.crafting_ing.cactus")),
(4.0, Item("common.items.flowers.red")), (2.0, Item("common.items.flowers.red")),
(4.0, Item("common.items.flowers.wild_flax")), (4.0, Item("common.items.flowers.wild_flax")),
(9.0, Item("common.items.flowers.sunflower")), (8.0, Item("common.items.flowers.sunflower")),
] ]

View File

@ -198,13 +198,16 @@ float lights_at(vec3 wpos, vec3 wnorm, vec3 /*cam_to_frag*/view_dir, vec3 mu, ve
/* is_direct = true; */ /* is_direct = true; */
float computed_shadow = ShadowCalculationPoint(i, -difference, wnorm, wpos/*, light_distance*/); float computed_shadow = ShadowCalculationPoint(i, -difference, wnorm, wpos/*, light_distance*/);
// directed_light += is_direct ? max(computed_shadow, /*LIGHT_AMBIANCE*/0.0) * direct_light : vec3(0.0); // directed_light += is_direct ? max(computed_shadow, /*LIGHT_AMBIANCE*/0.0) * direct_light : vec3(0.0);
float ambiance = 0.0;
#ifndef EXPERIMENTAL_PHOTOREALISTIC
// Non-physically emulate ambient light nearby // Non-physically emulate ambient light nearby
float ambiance = mix(0.05, 0.5, (dot(wnorm, direct_light_dir) + 1.0) * 0.5) * strength; ambiance = mix(0.05, 0.5, (dot(wnorm, direct_light_dir) + 1.0) * 0.5) * strength;
#ifdef FIGURE_SHADER #ifdef FIGURE_SHADER
// Non-physical hack. Subtle, but allows lanterns to glow nicely // Non-physical hack. Subtle, but allows lanterns to glow nicely
// TODO: Make lanterns use glowing cells instead // TODO: Make lanterns use glowing cells instead
ambiance += 0.1 / distance_2; ambiance += 0.1 / distance_2;
#endif #endif
#endif
directed_light += (is_direct ? mix(LIGHT_AMBIANCE, 1.0, computed_shadow) * direct_light : vec3(0.0)) + ambiance * color; directed_light += (is_direct ? mix(LIGHT_AMBIANCE, 1.0, computed_shadow) * direct_light : vec3(0.0)) + ambiance * color;
// directed_light += (is_direct ? 1.0 : LIGHT_AMBIANCE) * max(computed_shadow, /*LIGHT_AMBIANCE*/0.0) * direct_light;// : vec3(0.0); // directed_light += (is_direct ? 1.0 : LIGHT_AMBIANCE) * max(computed_shadow, /*LIGHT_AMBIANCE*/0.0) * direct_light;// : vec3(0.0);
// directed_light += mix(LIGHT_AMBIANCE, 1.0, computed_shadow) * direct_light; // directed_light += mix(LIGHT_AMBIANCE, 1.0, computed_shadow) * direct_light;

View File

@ -46,7 +46,7 @@ const vec3 NIGHT_LIGHT = vec3(5.0, 0.75, 0.2);
// Linear RGB, scattering coefficients for atmosphere at roughly R, G, B wavelengths. // Linear RGB, scattering coefficients for atmosphere at roughly R, G, B wavelengths.
// //
// See https://en.wikipedia.org/wiki/Diffuse_sky_radiation // See https://en.wikipedia.org/wiki/Diffuse_sky_radiation
const vec3 MU_SCATTER = vec3(0.05, 0.10, 0.23) * 1.5; const vec3 MU_SCATTER = vec3(0.05, 0.10, 0.23);
const float SUN_COLOR_FACTOR = 5.0;//6.0;// * 1.5;//1.8; const float SUN_COLOR_FACTOR = 5.0;//6.0;// * 1.5;//1.8;
const float MOON_COLOR_FACTOR = 5.0;//6.0;// * 1.5;//1.8; const float MOON_COLOR_FACTOR = 5.0;//6.0;// * 1.5;//1.8;
@ -316,9 +316,14 @@ vec3 lightning_at(vec3 wpos) {
// cam_attenuation is the total light attenuation due to the substance for beams between the point and the camera. // cam_attenuation is the total light attenuation due to the substance for beams between the point and the camera.
// surface_alt is the altitude of the attenuating surface. // surface_alt is the altitude of the attenuating surface.
float get_sun_diffuse2(DirectionalLight sun_info, DirectionalLight moon_info, vec3 norm, vec3 dir, vec3 wpos, vec3 mu, vec3 cam_attenuation, float surface_alt, vec3 k_a, vec3 k_d, vec3 k_s, float alpha, vec3 voxel_norm, float voxel_lighting, out vec3 emitted_light, out vec3 reflected_light) { float get_sun_diffuse2(DirectionalLight sun_info, DirectionalLight moon_info, vec3 norm, vec3 dir, vec3 wpos, vec3 mu, vec3 cam_attenuation, float surface_alt, vec3 k_a, vec3 k_d, vec3 k_s, float alpha, vec3 voxel_norm, float voxel_lighting, out vec3 emitted_light, out vec3 reflected_light) {
const float MIN_SHADOW = 0.15;
const vec3 SUN_AMBIANCE = MU_SCATTER;//0.23;/* / 1.8*/;// 0.1 / 3.0; const vec3 SUN_AMBIANCE = MU_SCATTER;//0.23;/* / 1.8*/;// 0.1 / 3.0;
const vec3 MOON_AMBIANCE = MU_SCATTER;//0.23;//0.1; #ifdef EXPERIMENTAL_PHOTOREALISTIC
const vec3 MOON_AMBIANCE = MU_SCATTER;
#else
// Boost moon ambiance, because we don't properly compensate for pupil dilation (which should occur *before* HDR,
// not in the end user's eye). Also, real nights are too dark to be fun.
const vec3 MOON_AMBIANCE = vec3(0.15, 0.25, 0.23) * 5;
#endif
/* vec3 sun_dir = sun_info.dir; /* vec3 sun_dir = sun_info.dir;
vec3 moon_dir = moon_info.dir; */ vec3 moon_dir = moon_info.dir; */

View File

@ -522,4 +522,7 @@ pub enum ExperimentalShader {
/// Make the UI uses nearest neighbor filtering for scaling images instead /// Make the UI uses nearest neighbor filtering for scaling images instead
/// of trying to filter based on the coverage of the sampled pixels. /// of trying to filter based on the coverage of the sampled pixels.
UiNearestScaling, UiNearestScaling,
/// Prefer using physically-based values for various rendering parameters,
/// where possible.
Photorealistic,
} }

View File

@ -117,7 +117,7 @@ impl GraphicsSettings {
shadow: ShadowMode::Cheap, shadow: ShadowMode::Cheap,
rain_occlusion: ShadowMapMode { resolution: 0.25 }, rain_occlusion: ShadowMapMode { resolution: 0.25 },
bloom: BloomMode::Off, bloom: BloomMode::Off,
point_glow: 0.35, point_glow: 0.2,
upscale_mode: UpscaleMode { factor: 0.65 }, upscale_mode: UpscaleMode { factor: 0.65 },
..self.render_mode ..self.render_mode
}, },
@ -146,7 +146,7 @@ impl GraphicsSettings {
factor: BloomFactor::Medium, factor: BloomFactor::Medium,
uniform_blur: false, uniform_blur: false,
}), }),
point_glow: 0.35, point_glow: 0.2,
upscale_mode: UpscaleMode { factor: 0.85 }, upscale_mode: UpscaleMode { factor: 0.85 },
..self.render_mode ..self.render_mode
}, },
@ -175,7 +175,7 @@ impl GraphicsSettings {
factor: BloomFactor::Medium, factor: BloomFactor::Medium,
uniform_blur: true, uniform_blur: true,
}), }),
point_glow: 0.35, point_glow: 0.2,
upscale_mode: UpscaleMode { factor: 1.0 }, upscale_mode: UpscaleMode { factor: 1.0 },
..self.render_mode ..self.render_mode
}, },
@ -204,7 +204,7 @@ impl GraphicsSettings {
factor: BloomFactor::Medium, factor: BloomFactor::Medium,
uniform_blur: true, uniform_blur: true,
}), }),
point_glow: 0.35, point_glow: 0.2,
upscale_mode: UpscaleMode { factor: 1.25 }, upscale_mode: UpscaleMode { factor: 1.25 },
..self.render_mode ..self.render_mode
}, },