mirror of
https://github.com/IntQuant/noita_entangled_worlds.git
synced 2025-10-19 15:13:16 +00:00
Make unimportant errors less eye-catching
This commit is contained in:
parent
08ec493141
commit
aa7fb65164
2 changed files with 81 additions and 20 deletions
|
@ -1,5 +1,5 @@
|
||||||
use std::{
|
use std::{
|
||||||
fs,
|
fs, io,
|
||||||
path::PathBuf,
|
path::PathBuf,
|
||||||
sync::{
|
sync::{
|
||||||
atomic::{self, AtomicBool},
|
atomic::{self, AtomicBool},
|
||||||
|
@ -61,7 +61,13 @@ impl SaveState {
|
||||||
pub(crate) fn load<D: SaveStateEntry>(&self) -> Option<D> {
|
pub(crate) fn load<D: SaveStateEntry>(&self) -> Option<D> {
|
||||||
let path = self.path_for_filename(D::FILENAME);
|
let path = self.path_for_filename(D::FILENAME);
|
||||||
let data = fs::read(&path)
|
let data = fs::read(&path)
|
||||||
.inspect_err(|err| warn!("Could not read {:?}: {err}", D::FILENAME))
|
.inspect_err(|err| {
|
||||||
|
if err.kind() == io::ErrorKind::NotFound {
|
||||||
|
info!("No save for {}, no need to load anything", D::FILENAME)
|
||||||
|
} else {
|
||||||
|
warn!("Could not read {:?}: {err}", D::FILENAME)
|
||||||
|
}
|
||||||
|
})
|
||||||
.ok()?;
|
.ok()?;
|
||||||
let data = lz4_flex::decompress_size_prepended(&data)
|
let data = lz4_flex::decompress_size_prepended(&data)
|
||||||
.inspect_err(|err| warn!("Could not decompress {:?}: {err}", D::FILENAME))
|
.inspect_err(|err| warn!("Could not decompress {:?}: {err}", D::FILENAME))
|
||||||
|
|
|
@ -26,7 +26,11 @@ use tungstenite::{accept, WebSocket};
|
||||||
|
|
||||||
use crate::mod_manager::ModmanagerSettings;
|
use crate::mod_manager::ModmanagerSettings;
|
||||||
use crate::player_cosmetics::{create_player_png, PlayerPngDesc};
|
use crate::player_cosmetics::{create_player_png, PlayerPngDesc};
|
||||||
use crate::{bookkeeping::save_state::{SaveState, SaveStateEntry}, recorder::Recorder, DefaultSettings, GameSettings, PlayerColor};
|
use crate::{
|
||||||
|
bookkeeping::save_state::{SaveState, SaveStateEntry},
|
||||||
|
recorder::Recorder,
|
||||||
|
DefaultSettings, GameSettings, PlayerColor,
|
||||||
|
};
|
||||||
pub mod messages;
|
pub mod messages;
|
||||||
mod proxy_opt;
|
mod proxy_opt;
|
||||||
pub mod steam_networking;
|
pub mod steam_networking;
|
||||||
|
@ -425,8 +429,7 @@ impl NetManager {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
Err(err) => {
|
Err(err) => {
|
||||||
error!("Error occured while reading from websocket: {}", err);
|
warn!("Game closed (Lost connection to noita instance: {})", err);
|
||||||
error!("Likely that just means that the game has closed.");
|
|
||||||
state.ws = None;
|
state.ws = None;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -498,23 +501,75 @@ impl NetManager {
|
||||||
self.friendly_fire.store(ff, atomic::Ordering::Relaxed);
|
self.friendly_fire.store(ff, atomic::Ordering::Relaxed);
|
||||||
state.try_ws_write_option("friendly_fire", ff);
|
state.try_ws_write_option("friendly_fire", ff);
|
||||||
state.try_ws_write_option("debug", settings.debug_mode.unwrap_or(def.debug_mode));
|
state.try_ws_write_option("debug", settings.debug_mode.unwrap_or(def.debug_mode));
|
||||||
state.try_ws_write_option("world_sync_version", settings.world_sync_version.unwrap_or(def.world_sync_version));
|
state.try_ws_write_option(
|
||||||
state.try_ws_write_option("player_tether", settings.player_tether.unwrap_or(def.player_tether));
|
"world_sync_version",
|
||||||
state.try_ws_write_option("tether_length", settings.tether_length.unwrap_or(def.tether_length));
|
settings
|
||||||
|
.world_sync_version
|
||||||
|
.unwrap_or(def.world_sync_version),
|
||||||
|
);
|
||||||
|
state.try_ws_write_option(
|
||||||
|
"player_tether",
|
||||||
|
settings.player_tether.unwrap_or(def.player_tether),
|
||||||
|
);
|
||||||
|
state.try_ws_write_option(
|
||||||
|
"tether_length",
|
||||||
|
settings.tether_length.unwrap_or(def.tether_length),
|
||||||
|
);
|
||||||
state.try_ws_write_option("item_dedup", settings.item_dedup.unwrap_or(def.item_dedup));
|
state.try_ws_write_option("item_dedup", settings.item_dedup.unwrap_or(def.item_dedup));
|
||||||
state.try_ws_write_option("randomize_perks", settings.randomize_perks.unwrap_or(def.randomize_perks));
|
state.try_ws_write_option(
|
||||||
state.try_ws_write_option("enemy_hp_scale", settings.enemy_hp_mult.unwrap_or(def.enemy_hp_mult));
|
"randomize_perks",
|
||||||
state.try_ws_write_option("world_sync_interval", settings.world_sync_interval.unwrap_or(def.world_sync_interval));
|
settings.randomize_perks.unwrap_or(def.randomize_perks),
|
||||||
|
);
|
||||||
|
state.try_ws_write_option(
|
||||||
|
"enemy_hp_scale",
|
||||||
|
settings.enemy_hp_mult.unwrap_or(def.enemy_hp_mult),
|
||||||
|
);
|
||||||
|
state.try_ws_write_option(
|
||||||
|
"world_sync_interval",
|
||||||
|
settings
|
||||||
|
.world_sync_interval
|
||||||
|
.unwrap_or(def.world_sync_interval),
|
||||||
|
);
|
||||||
state.try_ws_write_option("game_mode", settings.game_mode.unwrap_or(def.game_mode));
|
state.try_ws_write_option("game_mode", settings.game_mode.unwrap_or(def.game_mode));
|
||||||
state.try_ws_write_option("chunk_target", settings.chunk_target.unwrap_or(def.chunk_target));
|
state.try_ws_write_option(
|
||||||
state.try_ws_write_option("health_per_player", settings.health_per_player.unwrap_or(def.health_per_player));
|
"chunk_target",
|
||||||
state.try_ws_write_option("enemy_sync_interval", settings.enemy_sync_interval.unwrap_or(def.enemy_sync_interval));
|
settings.chunk_target.unwrap_or(def.chunk_target),
|
||||||
state.try_ws_write_option("global_hp_loss", settings.global_hp_loss.unwrap_or(def.global_hp_loss));
|
);
|
||||||
state.try_ws_write_option("perma_death", settings.perma_death.unwrap_or(def.perma_death));
|
state.try_ws_write_option(
|
||||||
|
"health_per_player",
|
||||||
|
settings.health_per_player.unwrap_or(def.health_per_player),
|
||||||
|
);
|
||||||
|
state.try_ws_write_option(
|
||||||
|
"enemy_sync_interval",
|
||||||
|
settings
|
||||||
|
.enemy_sync_interval
|
||||||
|
.unwrap_or(def.enemy_sync_interval),
|
||||||
|
);
|
||||||
|
state.try_ws_write_option(
|
||||||
|
"global_hp_loss",
|
||||||
|
settings.global_hp_loss.unwrap_or(def.global_hp_loss),
|
||||||
|
);
|
||||||
|
state.try_ws_write_option(
|
||||||
|
"perma_death",
|
||||||
|
settings.perma_death.unwrap_or(def.perma_death),
|
||||||
|
);
|
||||||
let lst = settings.clone();
|
let lst = settings.clone();
|
||||||
state.try_ws_write_option("perk_ban_list", lst.perk_ban_list.unwrap_or(def.perk_ban_list).as_str());
|
state.try_ws_write_option(
|
||||||
state.try_ws_write_option("no_material_damage", settings.no_material_damage.unwrap_or(def.no_material_damage));
|
"perk_ban_list",
|
||||||
state.try_ws_write_option("health_lost_on_revive", settings.health_lost_on_revive.unwrap_or(def.health_lost_on_revive));
|
lst.perk_ban_list.unwrap_or(def.perk_ban_list).as_str(),
|
||||||
|
);
|
||||||
|
state.try_ws_write_option(
|
||||||
|
"no_material_damage",
|
||||||
|
settings
|
||||||
|
.no_material_damage
|
||||||
|
.unwrap_or(def.no_material_damage),
|
||||||
|
);
|
||||||
|
state.try_ws_write_option(
|
||||||
|
"health_lost_on_revive",
|
||||||
|
settings
|
||||||
|
.health_lost_on_revive
|
||||||
|
.unwrap_or(def.health_lost_on_revive),
|
||||||
|
);
|
||||||
let rgb = self.init_settings.player_color.player_main;
|
let rgb = self.init_settings.player_color.player_main;
|
||||||
state.try_ws_write_option(
|
state.try_ws_write_option(
|
||||||
"mina_color",
|
"mina_color",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue