[minimod][1.2] SoM's Utility Menu (March 31, 2024)

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.
Post Reply
User avatar
stainedofmind
Posts: 218
Joined: Sun Sep 01, 2019 10:59 am

[minimod][1.2] SoM's Utility Menu (March 31, 2024)

Post by stainedofmind »

SoM's Utility Menu Version 1.2
Download: https://drive.google.com/file/d/12nA9AG ... sp=sharing

Adds a menu and hotkeys for a handful of useful, generic gameplay utilities.
Should be universal and work with anything. Code is free to use for whatever
you want! See each of the following sections for details.

Changelog
---------
Version 1.2:
-Added the "Secret Sector Fix"
-Added "Player Damage Dealt" and "Player Damage Received" options.
-Added "Give AllMap" Toggle
-Added Nightvision Toggle hotkey

Version 1.1:
-Added a menu option to toggle "sv_singleplayerrespawn"
-Added a CVar option to toggle skipping intermission text with map
changes/resets
-To support the above modification, recoded map switching/resetting
-Added a "Cheat Toggle" hotkey section, with NoClip, NoTarget, and Godmode

Wall Phaser
-----------
Travel passed walls into the Great Void, Places Unknown, or passed that stubborn
barrier that failed to trigger because the map pack you're playing doesn't mesh
well with the gameplay mod you are running!

Attempts to teleport the player in the direction you are facing equal to a
distance equal to configurable number of map units. It automatically adjusts
for different heights between your current and target location. It will fail
if the target is directly inside of a wall or another entity, otherwise will
teleport you to the target. This allows you to bypass doors, get up on ledges
higher then you can jump, or even travel into the void areas outside the normal
playable map! While this could definitely be considered a "cheat", I created
this primarily to bypass issues with some maps that can cause you to get locked
in or out of an area due to things like the map expecting certain specific
monsters to be slain, and you're playing a gameplay/monster mod that messes with
it (Eg: Dead Simple). Its also good for maps that aren't designed for back
tracking via respawning or teleporting to the start of the map. I also
use this to bypass areas I find particularly annoying or tedious, like the
multiple switches you need to trigger at the end of Doom 2 The Factory to open
the exit.

Teleportation
-------------
A set of commands to teleport you around the current map you are playing. You
have the following options:

Map Start: Returns you to the player spawn of the map.

Set Marker: Place a "marker" at your current location, which you can then later
return to using the next option.

Recall: Teleport to the "marker" you previously placed using the last command.
At map start, the "marker" is considered to be the same location as the player
spawn.

Respawn at Marker: Toggles the ability to respawn at your marker when you die.
Note, this option requires a method to respawn in game without reloading a save
or using the "resurrect" console command. Internally, anything that will
trigger the "PlayerRespawned" ZScript Event will cause this to work. New in
version 1.1: Having just discovered the built-in CVar "sv_singleplayerrespawn",
this will work to trigger this feature! I have added an option to toggle this
in the menu. See "Usage and Configuration" for further details.

Map Control
-----------
A set of commands to exit or restart the current map. Note that all Map Control
commands retain the player's current status (weapon, ammo, inventory, etc...)
Options are as follows:

Restart Current Map: As advertised, will restart the map you are currently
playing.

Exit to Next Map: Ends the current map and sends you to the next map in the
gameplay sequence.

Exit to Secret Map: Same as above, except it will send you to the defined
"Secret" exit map, if applicable.

Automap Cheat
-------------
A trio of hotkeys that simply sets the "am_cheat" console value to the
associated value. This is a shortcut for using the "IDDT" cheat repeatedly.
Hotkeys are as follows (Note: There are no default bindings for these!):

Map Cheat Level 0: Turn the cheat "Off", or to normal gameplay settings.

Map Cheat Level 1: Shows all map lines, or as it says on the wiki: "full automap
(including hidden linedefs normally not shown)."

Map Cheat Level 2: Shows all lines and actors, as per the wiki: "full automap
with all actors shown as vectorial triangles. ZDoom allows you to give different
colors to the various thing types."

Nightvision Toggle
------------------
A hotkey toggle to trigger nightvision on and off. Simple, dirty, effective.

Cheat Toggles
-------------
A set of hotkeys that act as shortcuts for common cheats, as follows:

Toggle No Clip: Has three modes, Off, NoClip, and NoClip2. As per the wiki:
CF_NOCLIP — The player can noclip, ignoring all collision.
CF_NOCLIP2 — The player can noclip and fly as well. Similar to how noclip works
in Quake.

Toggle No Target: As per the wiki:
CF_NOTARGET — Monsters don't target the player, unless the player hurts them.

Toggle Godmode: As per the wiki:
CF_GODMODE2 — Absolutely nothing can hurt the player, including things that
bypass the normal god mode.

Miscellaneous
-------------
Random stuff, yo.

Secret Sector Fix: Fixes secret sector detection. By default, when you enter a
sector that is flagged as a "secret", it isn't triggered unless you are on the
ground. This can cause issues with secret detection, most notably in MAP15 of
Doom II Industrial Zone, where the teleporter secret cannot be obtained. See
the "Bugs" section here for more details:
https://doomwiki.org/wiki/MAP15:_Indust ... _(Doom_II)
This will give the player an item that watches for entering secret zones, and
will immediately trigger the detection as soon as they cross into it.

Player Damage Dealt/Received: Options to modify the PlayerPawn values
"DamageMultiply" and "DamageFactor". A quick and dirty way to balance things
on the fly. Due note, it's possible there are certain mods that this option
won't work for. For example, I'm almost certain it didn't work with "Doom
Infinite". When toggled off, values are returned to the "default" value of
1.0. I'm not going to write a bloated bunch of code to account for other mods
also modifying these values, so if there are conflicts, just keep this off.

Enable All Map - Weh nenabled, gives you the "AllMap" item. Pretty simple!

Usage and Configuration
-----------------------
Make sure to bind whatever hot keys you want in the controls menu! The only
option that has a default control is the "Open Menu" command, which is set to
the "U" key (for "Utility"!). Configurable options:

Wall Phaser - Distance: The distance, in map units, to attempt to teleport the
player.

Teleportation - Respawn at Marker: Toggles respawning at your Teleportation
Marker or not.

Teleportation - Enable Single-Player Respawn: Toggles the built-in CVar
"sv_singleplayerrespawn", which allows for multiplayer like respawning in single
player games. Please note, due to how built-in Cvars work, you will have to
manually toggle this option back on when starting a new game, however it appears
to remain on between game saves.

Map Control - Skip Intermission Screen: If enabled, the intermission screen
normally shown between levels will be skipped when changing or restarting maps
using any of the Map Control options.

Miscellaneous - Fix Secret Sectors: Toggles the fix, as detailed in the relative
section above.

Miscellaneous - Enable Player Damage Modifiers: Toggles using the player damage
dealt/received modifiers. As mentioned above, when disabled, it will reset the
values to a "default" of 1.0, but will only do so when toggled off from a
previously on state.

Miscellaneous - Player Damage Dealt Multiplier: Modifies the PlayerPawn value
"DamageMultiply" to adjust how much damage the player does.

Miscellaneous - Player Damage Received Multiplier: Modifies the PlayerPawn value
"DamageFactor" to adjust how much damage the player receives.

Miscellaneous - Enable All Map: Toggles giving the player the "AllMap" item.

Todo
----
-Probably going to remove the Wall Phaser, since I originally made it because I
couldn't get a No Clip toggle working in Zandronum
-Eventually I will want to have an indicator that spawns on the map for the
teleport marker, but I'm not in a rush to get that done

Compatibility
-------------
-Haven't tested this with multiplayer, and I don't know if it will work
-Should be universally compatible

License
-------
You are free to use the code for whatever you like, for any reason.
Credit is appreciated, but not needed.

Screenshots
Spoiler:
Last edited by stainedofmind on Thu Mar 06, 2025 10:38 am, edited 6 times in total.
User avatar
Gorec
Posts: 324
Joined: Tue Feb 09, 2016 9:41 pm
Operating System Version (Optional): Windows 11
Location: )()()()()()()()()()()()(

Re: [minimod] SoM's Utility Menu

Post by Gorec »

oooooo finally i dont have to type iddt and idclev anymore! this will greatly help me screenshot wads for my reviews
also i think you should mention that exit to next map saves all of your ammunition(and cheats too?) and maybe you can add an option to skip the intermission screen and still keep all weapons
User avatar
mamaluigisbagel
Posts: 526
Joined: Wed Jul 09, 2014 7:25 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 11
Graphics Processor: nVidia with Vulkan support

Re: [minimod] SoM's Utility Menu

Post by mamaluigisbagel »

Funny. I was making a "debug" bind for myself that activated noclip, notarget, and godmode, and wondered "has someone made a mod to help with something like this?" This is pretty close :lol:
User avatar
stainedofmind
Posts: 218
Joined: Sun Sep 01, 2019 10:59 am

Re: [minimod] SoM's Utility Menu

Post by stainedofmind »

Updated the mod to Version 1.1! You can see the changelog in the original post!
Gorec wrote: Fri Mar 29, 2024 6:23 pm oooooo finally i dont have to type iddt and idclev anymore! this will greatly help me screenshot wads for my reviews
also i think you should mention that exit to next map saves all of your ammunition(and cheats too?) and maybe you can add an option to skip the intermission screen and still keep all weapons
I updated the code and added a toggle to skip the intermission screen.
mamaluigisbagel wrote: Sat Mar 30, 2024 12:08 am Funny. I was making a "debug" bind for myself that activated noclip, notarget, and godmode, and wondered "has someone made a mod to help with something like this?" This is pretty close :lol:
Welp, since you brought it up, I've added hotkeys for all three options!
User avatar
mamaluigisbagel
Posts: 526
Joined: Wed Jul 09, 2014 7:25 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 11
Graphics Processor: nVidia with Vulkan support

Re: [minimod] SoM's Utility Menu

Post by mamaluigisbagel »

Well didn't expect that. This would definitely be convenient for testing bugs with mods or maps. Definitely going in my autoload folder! :D
User avatar
stainedofmind
Posts: 218
Joined: Sun Sep 01, 2019 10:59 am

Re: [minimod][1.2] SoM's Utility Menu (March 31, 2024)

Post by stainedofmind »

Updated the mod to Version 1.2! I wasn't planning on doing so, but I had a bunch of tiny mods that did one little thing and decide that this was a good place to shove them! Additions include Night Vision Toggle, Secret Sector Fix, Give allMap Toggle, and Adjust Player Damage Dealt/Received. Details in original post!
mamaluigisbagel wrote: Sun Mar 31, 2024 1:08 am Well didn't expect that. This would definitely be convenient for testing bugs with mods or maps. Definitely going in my autoload folder! :D
Glad to be of service!
Post Reply

Return to “Gameplay Mods”