diff options
| author | metamuffin <metamuffin@disroot.org> | 2025-10-11 22:53:52 +0200 |
|---|---|---|
| committer | metamuffin <metamuffin@disroot.org> | 2025-10-11 22:53:52 +0200 |
| commit | 6c72cc28bcbad679d66fa3eb22b16b9a745d85c6 (patch) | |
| tree | 1fe621563d3eb1a734492941469d75dbc4c9f526 /server | |
| parent | 516546c3d20e1715370073acf2e6b8114351f8e9 (diff) | |
| download | hurrycurry-6c72cc28bcbad679d66fa3eb22b16b9a745d85c6.tar hurrycurry-6c72cc28bcbad679d66fa3eb22b16b9a745d85c6.tar.bz2 hurrycurry-6c72cc28bcbad679d66fa3eb22b16b9a745d85c6.tar.zst | |
even better server logging
Diffstat (limited to 'server')
| -rw-r--r-- | server/protocol/src/helpers.rs | 17 | ||||
| -rw-r--r-- | server/src/interaction.rs | 6 | ||||
| -rw-r--r-- | server/src/lib.rs | 2 | ||||
| -rw-r--r-- | server/src/server.rs | 32 |
4 files changed, 32 insertions, 25 deletions
diff --git a/server/protocol/src/helpers.rs b/server/protocol/src/helpers.rs index 098767b5..31e68d02 100644 --- a/server/protocol/src/helpers.rs +++ b/server/protocol/src/helpers.rs @@ -105,29 +105,34 @@ impl Recipe { impl Display for ItemLocation { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { match self { - ItemLocation::Tile(pos) => write!(f, "tile({pos})"), - ItemLocation::Player(PlayerID(id), hand) => write!(f, "{id}-{hand}"), + ItemLocation::Tile(pos) => write!(f, "tile({}, {})", pos.x, pos.y), + ItemLocation::Player(player, hand) => write!(f, "{player}-{hand}"), } } } impl Display for Hand { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - write!(f, "hand({})", self.0) + write!(f, "hand#{}", self.0) } } impl Display for PlayerID { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - write!(f, "player({})", self.0) + write!(f, "player#{}", self.0) } } impl Display for TileIndex { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - write!(f, "tile({})", self.0) + write!(f, "tile#{}", self.0) } } impl Display for ItemIndex { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - write!(f, "item({})", self.0) + write!(f, "item#{}", self.0) + } +} +impl Display for RecipeIndex { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + write!(f, "recipe#{}", self.0) } } diff --git a/server/src/interaction.rs b/server/src/interaction.rs index 5dd7099b..38c1d7fb 100644 --- a/server/src/interaction.rs +++ b/server/src/interaction.rs @@ -91,7 +91,7 @@ pub fn interact( && item.kind == *input && item.active.is_none() { - info!("start active recipe {ri:?}"); + info!("start active {ri}"); item.active = Some(Involvement { player, recipe: ri, @@ -106,7 +106,7 @@ pub fn interact( && item.active.is_none() { let mut item = other.take().unwrap(); - info!("start active recipe {ri:?}"); + info!("start active {ri}"); item.active = Some(Involvement { player, recipe: ri, @@ -141,7 +141,7 @@ pub fn interact( let ok = inputs[0] == on_tile && inputs[1] == in_hand; let ok_rev = inputs[1] == on_tile && inputs[0] == in_hand; if ok || ok_rev { - info!("instant recipe {ri:?} reversed={ok_rev}"); + info!("instant {ri} reversed={ok_rev}"); let ok_rev = ok_rev as usize; let this_had_item = this.is_some(); let other_had_item = other.is_some(); diff --git a/server/src/lib.rs b/server/src/lib.rs index b29de4f4..260221da 100644 --- a/server/src/lib.rs +++ b/server/src/lib.rs @@ -32,7 +32,7 @@ pub struct ConnectionID(pub i64); impl Display for ConnectionID { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { - write!(f, "conn({})", self.0) + write!(f, "conn#{}", self.0) } } diff --git a/server/src/server.rs b/server/src/server.rs index 2c01b496..99e7eaf8 100644 --- a/server/src/server.rs +++ b/server/src/server.rs @@ -364,6 +364,7 @@ impl Server { (gamedata, serverdata): (Gamedata, Serverdata), timer: Option<Duration>, ) { + info!("Changing map to {:?}", gamedata.current_map); for mut e in self.entities.drain(..) { e.destructor(EntityContext { game: &mut self.game, @@ -448,17 +449,17 @@ impl Server { Some(&mut self.packet_out), ); if let Some(conn) = conn { - info!("{conn} join {player}"); + info!("{player} joined (owned by {conn})"); } else { - info!("server join {player}"); + info!("Server adds {player}"); } replies.push(PacketC::Joined { id: player }) } PacketS::Leave { player } => { if let Some(conn) = conn { - info!("{conn} leave {player}"); + info!("{player} left (owned by {conn})"); } else { - info!("server leave {player}"); + info!("Server removes {player}"); } let p = self .game @@ -650,27 +651,28 @@ impl Server { player, pin, } => { + let Some(player_data) = self.game.players.get_mut(&player) else { + return Ok(()); + }; if let Some(message) = &message { - info!( - "{player} message {}", - message.display_message(&FALLBACK_LOCALE, &self.game.data, &COLORED) - ); - } else { - info!("{player} clear message"); + let body = message.display_message(&FALLBACK_LOCALE, &self.game.data, &COLORED); + if player_data.name != "" { + info!("[{player} {:?}] {body}", player_data.name); + } else { + info!("[{player}] {body}",); + } } let pin = pin.unwrap_or(false); - let timeout = if let Some(timeout) = timeout - && let Some(player) = self.game.players.get_mut(&player) - { + let timeout = if let Some(timeout) = timeout { let mut timeout = MessageTimeout { initial: timeout, remaining: timeout, pinned: pin, }; - if let Some((_, t)) = &player.communicate_persist { + if let Some((_, t)) = &player_data.communicate_persist { timeout.initial = t.initial; }; - player.communicate_persist = message.clone().map(|m| (m, timeout)); + player_data.communicate_persist = message.clone().map(|m| (m, timeout)); Some(timeout) } else { None |