mirror of
https://github.com/Such-Software/wownerogue.git
synced 2026-10-19 23:28:32 +02:00
fix: fog-of-war entities, multi-level descend feedback, camera centering, fewer levels
- FOG: sceneFromGameState only emits exit/entrance/treasure/items once their cell is EXPLORED, and the monster only while IN VIEW — no more exit stairs leaking through the fog. - DESCEND FEEDBACK: reaching a non-final exit descends (multi-level) and used to silently dump the player at a new entrance (read as a bug). Server now sends depth/maxDepth on game_event; the client shows "Stairs down! Level N of M — keep going". Also lowered level counts (WOW 4->2, BTC 8->3, XMR 2->1) — clearing 4-8 levels in one block was unwinnable; kept modest until proper multi-level calibration + UX. - CAMERA: the host filled the very-tall #game-display so centering put the player low; it's now a bounded viewport (min(100%,78vh)) centered in #game-display, so the player stays on-screen-centered. Suite 62/435 green.
This commit is contained in:
@@ -157,12 +157,15 @@ function getDifficultyPreset(cryptoType = 'WOW', overridePreset = null) {
|
||||
// NOTE: the exact per-network level counts are sim starting points (calibration re-run is pending
|
||||
// the sim's multi-level support). Operator env overrides (DUNGEON_LEVELS, DUNGEON_*, MONSTER_*) win.
|
||||
// Kill: NETWORK_TUNING_DISABLED=true.
|
||||
// Level counts trimmed from the first sim estimate — 4-8 levels in a single block deadline is too
|
||||
// punishing (you rarely clear them all before the block). Kept modest until a real multi-level
|
||||
// calibration run + the descent UX are in. Reach-exit-to-win stays intuitive with fewer levels.
|
||||
const NETWORK_TUNING = {
|
||||
GRIN: { levels: 1 }, // ~1 min blocks
|
||||
XMR: { levels: 2 }, // ~2 min
|
||||
XMR: { levels: 1 }, // ~2 min
|
||||
LTC: { levels: 2 }, // ~2.5 min
|
||||
WOW: { levels: 4 }, // ~5 min (measured)
|
||||
BTC: { levels: 8 } // ~10 min
|
||||
WOW: { levels: 2 }, // ~5 min (measured)
|
||||
BTC: { levels: 3 } // ~10 min
|
||||
};
|
||||
|
||||
// Fold the per-network level count onto the resolved preset (size + monster stay at the preset).
|
||||
|
||||
@@ -65,9 +65,12 @@ class MovementManager {
|
||||
this.spectatorManager.broadcastToSpectators(game.id, state);
|
||||
}
|
||||
|
||||
// Handle special events from moveResult (escape / treasure)
|
||||
// Handle special events from moveResult (escape / treasure / descend). Include depth for the
|
||||
// multi-level descend so the client can tell the player they took the stairs down (not a bug).
|
||||
if (moveResult && moveResult.event) {
|
||||
this.io.to(socketId).emit('game_event', { event: moveResult.event });
|
||||
this.io.to(socketId).emit('game_event', {
|
||||
event: moveResult.event, depth: moveResult.depth, maxDepth: moveResult.maxDepth
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user