Large map: explored border as a continuous line along the fog edge
The game drew 2x2 px red dots per visited-sector neighbour (0x6c8580), in 64-tile steps and unrelated to the explored mask. Replaced by lines traced from the explored cells (2x2 tiles), simplified to 0.75 px, rebuilt while the map is open when the masks change. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
7d8089c299
commit
32f953fc01
8 files changed
+496
-21
No files matched your search
@@ -42,3 +42,24 @@ default (0x6ce677), 300 where 0x63d280 holds for the hero's area (0x6ce6b5),
|
||||
0x182cdb8 & 2 shows them. The mod scales the three base values by 10 as well
|
||||
(about 120 tiles by day). The view only lists creatures of the sectors around
|
||||
the hero (25 entries at [esp+1ech]).
|
||||
|
||||
## Border line on the large map (2026-10-26)
|
||||
|
||||
"The red outline on the mega map is choppy and feels weird."
|
||||
|
||||
Measured (disassembly): `cUI_Megamap::DrawVisitedBorder` 0x6c8580 drew a
|
||||
2x2 px red dot (0xffff0000) per bit of a 100x100 byte grid (world +0xb73c):
|
||||
unvisited sectors next to visited ones (sector flag 0x20000, set when the
|
||||
hero's sector becomes the centre of the active 3x3, 0x626603), one bit per
|
||||
visited neighbour, the dot 10 / 20 px from the sector origin towards it.
|
||||
Built on load by 0x633230 and per sector change by 0x6332d0 / 0x6334f0. So:
|
||||
dots in 64-tile steps, following the sectors stood in rather than the
|
||||
explored mask the fog shows.
|
||||
|
||||
Mod (`mods/mapborder.cpp`): the draw is replaced. The sides between explored
|
||||
and unexplored cells (2x2 tiles) of the 100x100 map sectors are chained into
|
||||
polylines (clockwise around explored cells; at a corner touch the chain turns
|
||||
right), projected with `WorldToMapPixel` (linear), simplified to 0.75 px
|
||||
(Douglas-Peucker) and drawn as 2 px red lines. Rebuilt while the map is open
|
||||
when the masks change (checked every 250 ms). Cells of missing sectors count
|
||||
as neither explored nor unexplored, so no line runs along the world's edge.
|
||||
Reference in new issue
Block a user