[minimod][v0.16] Hellscape Navigator

Projects that alter game functions but do not include new maps belong here.
Forum rules
The Projects forums are only for projects. If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.
User avatar
m8f
 
 
Posts: 1445
Joined: Fri Dec 29, 2017 4:15 am
Preferred Pronouns: He/Him
Operating System Version (Optional): Manjaro Linux
Location: Siberia (UTC+7)
Contact:

[minimod][v0.16] Hellscape Navigator

Post by m8f »

Hellscape Navigator is a collection of tools designed to help navigation in complex maps.
Single player GZDoom.


[Signs]


[Footstep Markers]

More screenshots

Download
Source

Features
  • Automap Markers
    * Footsteps: display visited places
    * Fade with time
    * Configurable looks: footsteps/arrow/point
    * Configurable lifetime and generation period
    * Use markers (via binded key)
  • Signs
    * A Sign can be placed to leave a note on level (use Sign to read the note)
    * Three kinds: wooden/metal/transparent to fit level theme
    * Can be configured to be indestructible or not
    * Present on automap
    * Can be displayed on compass
    * Can be thrown (useful for testing teleports)
  • Compass
    * Shows view direction
    * Can show pointers for switches (only if close)
    * Different styles, sizes, and width
  • Area Names
    * Entrance/Exit/Outdoors/Secrets
    * A Sign can be configured to create custom area with name
  • Helper items
    * Reveal map on level start
    * Reveal map when it is mostly explored
    * Give scanner on map revealing
    * Entryway Translocator (teleport to start)
    * SpaceTunnelingDevice (temporary noclip)
  • UI/Display
    * Colored messages for keys and doors (Doom, Heretic, Hexen)
    * Grid coordinates
    * Exploration status
    * Display locked door status
    * Custom automap arrow
    * Displaying map name on level start
    * Moving speed
    * Breadcrumbs
  • Miscellaneous
    * Auto use (doors, switches)
    * Backtrack key
Thanks
  • all GZDoom developers for GZDoom.
  • Doom community for thousands of maps to play.
  • ramon.dexter for testing and feature suggestions.
  • ShockwaveS08 for bug reports and feature suggestions.
  • Clifford21 for feature suggestions.
  • Cyanide for feature suggestions.
  • Enjay for testing, bug reports, and feature suggestions.
  • mrtaterz for feature suggestions.
  • ImJezze for new features (see below) and code cleanup.
  • Accensus for new sign design and sprites and bug reports.
Credits
  • Entryway Translocator and Space Tunneling Device graphics: Freedoom.
    Copyright © 2001-2017 Contributors to the Freedoom project. All rights reserved.
  • "Doom" style for compass grahpics: id Software.
  • ImJezze: 'Pixel' style for compass, 'Doom' compass pointer style, and wide mode.
  • Accensus for all the frankenspriting.
  • cc4-tex for the textures used as base for signs.
  • Russian Overkill for the hover sign's thrusters. Taken from the shield sprites.

Any kind of feedback is highly appreciated. Feel free to suggest features, options, and new ideas how to make navigation easier.
Spoiler: Note for map makers
Spoiler: You may also like other navigation-related mods made by other authors:
This mod is a part of m8f's toolbox.
Last edited by m8f on Mon Aug 08, 2022 6:33 am, edited 49 times in total.
User avatar
ElectricPulse
Posts: 244
Joined: Tue May 31, 2016 4:58 pm
Graphics Processor: Intel (Modern GZDoom)
Location: São Paulo, Brazil

Re: [WIP] Hellscape Navigator (v0.1)

Post by ElectricPulse »

That's nice buddy! Very useful for the people (including me) that doesn't have pacience or are too lazy to walk the entire map 3 times to find something :lol:
User avatar
ramon.dexter
Posts: 1517
Joined: Tue Oct 20, 2015 12:50 pm
Graphics Processor: nVidia with Vulkan support
Location: Kozolupy, Bohemia

Re: [WIP] Hellscape Navigator (v0.1)

Post by ramon.dexter »

Great work, as always, buddy!

I wanted to ask you if the compass could be scalable. Right now it's OK, but on FullHD (1920x1080) it is too small. So scaling would be great option to add.
And, if possible, add option to completely hide the location marker ("entrance", "outdoors"). Or, make it customisable. I can imagine some script reading contents of language lump and displaying the string with some special formatting - something like "LMRK_M01_xxxx" where "xxxx" could be the specific area text.
Right now, I'm using an simple ACS script to display the area info. And having it in zscript would be great!

edit: One more thing came to my mind - quest markers/pointers. The markers could be in form of invisible actors, and the compass could display them in some manner like "Q1", or something like that. Yeah, that would be cool.
User avatar
m8f
 
 
Posts: 1445
Joined: Fri Dec 29, 2017 4:15 am
Preferred Pronouns: He/Him
Operating System Version (Optional): Manjaro Linux
Location: Siberia (UTC+7)
Contact:

Re: [WIP] Hellscape Navigator (v0.2)

Post by m8f »

Update (v0.2) is out.
Changelog:

Coordinates:
- made area name optional;
- added optional grid coordinates,

Compass:
- added scaling;
- added color for North;
- made it smooth;
- add an option to hide compass on automap;
- made compass optional.

Signs: added sign automap marker scale option

Footsteps:
- added footstep marker size option
- added an option for footstep marks to stay forever
- add initial footstep marks opacity option

Fixes:
- disabled compass and coordinates on titlemap.
ramon.dexter wrote:Great work, as always, buddy!
Thanks!
ramon.dexter wrote:I wanted to ask you if the compass could be scalable.
Done.
ramon.dexter wrote:add option to completely hide the location marker ("entrance", "outdoors"). Or, make it customisable.
Done: area names can be turned off. Also you can customize area names in-game by using Signs - just fill "Area name" field when making a new sign - and this name will appear below Compass.
ramon.dexter wrote:edit: One more thing came to my mind - quest markers/pointers. The markers could be in form of invisible actors, and the compass could display them in some manner
I put custom format for area names to Todo list, quest markers will go there too.
User avatar
ShockwaveS08
Posts: 193
Joined: Thu Jul 07, 2016 7:29 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Android 10
Location: Manhattan, IL
Contact:

Re: [WIP] Hellscape Navigator (v0.2)

Post by ShockwaveS08 »

Any chance that custom theming will be available for the compass, like a Doom 2016 version to go along with Death Foretold and D4D, or a plugin that works with NCHUD?

It also seems like the Horizontal Compass Alignment should actually be labeled as vertical, and that a proper horizontal offset option be implemented.
User avatar
m8f
 
 
Posts: 1445
Joined: Fri Dec 29, 2017 4:15 am
Preferred Pronouns: He/Him
Operating System Version (Optional): Manjaro Linux
Location: Siberia (UTC+7)
Contact:

Re: [WIP] Hellscape Navigator (v0.2.1)

Post by m8f »

That's a good idea. I'll add a couple of compass styles in future versions.

Oh, indeed. Thanks for the heads up! Small update (v0.2.1) is out. It contains proper options for the horizontal and vertical position.
Clifford21
Posts: 28
Joined: Fri Sep 07, 2018 9:55 pm

Re: [WIP] Hellscape Navigator (v0.2.1)

Post by Clifford21 »

As this mod's focus is "map navigation", I want to give some ideas based on my thoughts after reading some map review comments made by players.

Feel free to ignore me if it is not constructive or feasible.

For any large and complex maps, most players usually get frustrated and give up when they fail to find those well-hidden switches and keycards after a long search with frequent back-tracking.

Is it possible to have an "in-game map help" via pressing a key press, s.t. the navigator may show or point out where those switches or keycards are located in the auto-map.

Another feature suggestion is the ability to point out the "secrets" on map. When playing with some maps generated from Oblige, even with automap show secrets option "on", sometimes I still can't find where the remaining secrets are, even I am checking every corner of map again, and referring to auto-map regularly, I still miss some secrets at the end (and the automap don't show up anything as well).

It will be helpful if player can simply "ask the navigator" to show where the remaining secrets are on the map.
User avatar
m8f
 
 
Posts: 1445
Joined: Fri Dec 29, 2017 4:15 am
Preferred Pronouns: He/Him
Operating System Version (Optional): Manjaro Linux
Location: Siberia (UTC+7)
Contact:

Re: [WIP] Hellscape Navigator (v0.3)

Post by m8f »

Clifford21 wrote:Is it possible to have an "in-game map help" via pressing a key press, s.t. the navigator may show or point out where those switches or keycards are located in the auto-map.
Thanks for the suggestion, I may add this in future. At this time, you can try SwitchTracker by Redxone.
Clifford21 wrote:Another feature suggestion is the ability to point out the "secrets" on map.
I don't know now, but maybe I'll come out with some solution based on this topic.

An update! Version 0.3 (still WIP). Changes:
- added a way to mappers to add custom area names;
- added an option to hide automatic area names;
- added the second style for compass: Minimalistic;
- added Compass pointers for Signs;
- added colored messages for keys and doors (Doom, Heretic).
User avatar
Enjay
 
 
Posts: 26508
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland
Contact:

Re: [WIP] Hellscape Navigator (v0.3)

Post by Enjay »

This is a very neat mod. Very neat indeed. Lots of cool features. There are some things in here that I would have loved when playing certain maps in the past and which would have made some of them far more enjoyable.

I did notice that the naming of areas can give the game away a little though. For example, in Doom2 map01, if you go to the health potion room/alcove and walk right up to the back wall, it tells you that you are in the rocket launcher area even though the secret door hasn't opened yet. (Maybe that's not a bad thing.) I assume it's working on proximity to the RL rather than access to it?

As an aside, I wonder if it's possible to modularise the mod a bit? If you were OK with such a thing, of course, it would be nice to be able to easily isolate certain features for individual inclusion in mods. For example, I really like the footprints on the automap feature and it would be really cool to include it as part of a mod, particularly if it was a wide and sprawling map/series of maps (I have nothing planned right now BTW) but I might not want all the other options. Is that something you would consider? I had a look at the code but I couldn't follow it well enough to pick out the individual features and make them work alone.

Either way, it's a really nice mod and I look forward to seeing what you do with it next.
User avatar
m8f
 
 
Posts: 1445
Joined: Fri Dec 29, 2017 4:15 am
Preferred Pronouns: He/Him
Operating System Version (Optional): Manjaro Linux
Location: Siberia (UTC+7)
Contact:

Re: [WIP] Hellscape Navigator (v0.4)

Post by m8f »

Enjay wrote:This is a very neat mod. Very neat indeed. Lots of cool features. There are some things in here that I would have loved when playing certain maps in the past and which would have made some of them far more enjoyable.
Thanks for the kind words!
Enjay wrote:For example, in Doom2 map01, if you go to the health potion room/alcove and walk right up to the back wall, it tells you that you are in the rocket launcher area even though the secret door hasn't opened yet. (Maybe that's not a bad thing.) I assume it's working on proximity to the RL rather than access to it?
Exactly, proximity. Currently I don't know how to detect access reliably. All the ways to do this that I can imagine are either too restrictive or too revealing.
Enjay wrote:I really like the footprints on the automap feature and it would be really cool to include it as part of a mod, particularly if it was a wide and sprawling map/series of maps (I have nothing planned right now BTW) but I might not want all the other options.
Of course, done.

Small update (v0.4). Changes:
- added switches and activator lines to Compass. They are displayed only if they are close. This feature also may help find some secrets;
- added Exploration Status display. It shows how much of the map you have explored on the scale from 0 to 10.
- made Question Pointer detection dynamic. See the Note for map makers in the OP;
- separated automap footsteps code from the rest.
User avatar
Enjay
 
 
Posts: 26508
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland
Contact:

Re: [WIP] Hellscape Navigator (v0.4)

Post by Enjay »

Amazing stuff. I'll need to play around with it later. Interested to see how the exploration completeness works.

Thanks very much for separating out the footsteps code. I really appreciate that. :D
User avatar
Enjay
 
 
Posts: 26508
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland
Contact:

Re: [WIP] Hellscape Navigator (v0.4)

Post by Enjay »

For info, I get the following when loading ver 0.4:

Code: Select all

Texman.Init: Init texture manager.
Resolved self-referencing texture by picking an older entry for hnwsa0
Resolved self-referencing texture by picking an older entry for hntsa0
Resolved self-referencing texture by picking an older entry for hnmsa0
Resolved self-referencing texture by picking an older entry for hn0blu
Resolved self-referencing texture by picking an older entry for hn1red
Resolved self-referencing texture by picking an older entry for hn1res
Resolved self-referencing texture by picking an older entry for hn1grn
Resolved self-referencing texture by picking an older entry for hn1blu
ParseTeamInfo: Load team definitions.
LoadActors: Load actor definitions.
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 201:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 202:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 203:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 343:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 344:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 356:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 358:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 359:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 367:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 395:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 396:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 439:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt" line 440:
Truncation of floating point value
Script warning, "hellscape-navigator-0.4.pk3:zscript/m8f_hn_footsteps.txt" line 163:
Truncation of floating point value
script parsing took 164.26 ms

Code: Select all

R_InstallSpriteLump: Bad frame characters in lump HNMSA0B
However the game worked until I loaded a very simple one room map. I was dropped to the console a second or so after starting the game:

Code: Select all

VM execution aborted: division by zero.
Called from m8f_hn_EventHandler.WorldTick at hellscape-navigator-0.4.pk3:zscript/m8f_hn_eventhandler.txt, line 159
The map is the one that I posted here: viewtopic.php?f=122&t=62053&p=1073081#p1073081

I get all the above in a git build from Sept17 and ver 3.5.1
User avatar
m8f
 
 
Posts: 1445
Joined: Fri Dec 29, 2017 4:15 am
Preferred Pronouns: He/Him
Operating System Version (Optional): Manjaro Linux
Location: Siberia (UTC+7)
Contact:

Re: [WIP] Hellscape Navigator (v0.4.1)

Post by m8f »

Hotfix update 0.4.1 is out.
Fixed:
- Bad frame characters in lump HNMSA0B;
- VM execution aborted: division by zero (this happened when the entire map is explored at the level start).

Probably fixed:
- self-referencing textures;

Not fixed:
- Truncation of floating point value.

The strange thing with "self-referencing textures" and "Truncation of floating point value" is that I don't get these warnings at all:
Spoiler:
I tried GZDoom 3.5.1, both Linux and Windows builds (with wine), and got no such warnings. It seems that I'm missing something very simple. Maybe there are some specific GZDoom options that reveal these warnings?
User avatar
Enjay
 
 
Posts: 26508
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland
Contact:

Re: [WIP] Hellscape Navigator (v0.4.1)

Post by Enjay »

Thanks for the update.

I forgot that I have the developer cvar set to 2. Maybe that's why I'm seeing more errors than you?

https://zdoom.org/wiki/CVARs:Debug#developer
User avatar
m8f
 
 
Posts: 1445
Joined: Fri Dec 29, 2017 4:15 am
Preferred Pronouns: He/Him
Operating System Version (Optional): Manjaro Linux
Location: Siberia (UTC+7)
Contact:

Re: [WIP] Hellscape Navigator (v0.5)

Post by m8f »

Update (v0.5). Changes:

- added new Compass style that mimics NC HUD style.
- added optional map revealing when the level is explored enough (optional, disabled by default).
- added an option to display text above Compass.
- added margin for compass and text below, so they look better near a side of the screen.
- increased automap arrow size (the arrow was obscured by footstep marks with the old size).
- removed activator lines from Compass (only switches are displayed on Compass now). There was too much clutter with lines.
- eliminated code warnings.
Post Reply

Return to “Gameplay Mods”