Jump to content
  • 0

Anyway to use lumps to enforce compatibility settings in advanced ports like ZDoom and Eternity?


Dusty_Rhodes

Question

Is there a lump specifically for telling a port like Eternity or GZDoom (I know they're very different, maybe they have separate lumps like MAPINFO and EMAPINFO, I really don't know) to forbid crouching and jumping, or enforce compatibility settings, or things of the like (ie: lost souls don't count as enemies)? Maybe even renderers, in the case of GZDoom?

 

I'm only experienced with Boom and vanilla mapping, so outside of DEHACKED and SWITCHES and ANIMATED lumps, this kind of stuff is all new to me. I've been really enjoying Eternity and would like to map for it, and I think a way to enforce whatever settings I feel are the best for it would be great. Maybe there's even something like this for PrBoom or DSDA Doom?

Share this post


Link to post

10 answers to this question

Recommended Posts

  • 0
56 minutes ago, Dusty_Rhodes said:

to forbid crouching and jumping

You can use a MAPINFO lump for that, @Doomkid made a tutorial about it with the old hexen format (I think that's the old format), here it is (Check at 5:40) :

Spoiler

For ZDoom based ports, IDK if the same can be done in Eternity

 

56 minutes ago, Dusty_Rhodes said:

or things of the like (ie: lost souls don't count as enemies)?

You can do that with DECORATE:

ACTOR FixLostSoul : LostSoul replaces LostSoul
{
        -COUNTKILL
}

Found it here
https://www.doomworld.com/forum/post/893489

Eternity doesn't count them as kills by default, but I think you can make them count with EDF, I could be wrong though.

Edited by Lol 6

Share this post


Link to post
  • 0
11 minutes ago, Lol 6 said:

You can use a MAPINFO lump for that, @Doomkid made a tutorial about it with the old hexen format (I think that's the old format), here it is (Check at 5:40) :

  Hide contents

For ZDoom based ports, IDK if the same can be done in Eternity

 

You can do that with DECORATE:


ACTOR FixLostSoul : LostSoul replaces LostSoul
{
        -COUNTKILL
}

Found it here
https://www.doomworld.com/forum/post/893489

Eternity doesn't count them as kills by default, but I think you can make them count with EDF, I could be wrong though.

That's very helpful thanks. I want to say there was something called OPTIONS that let you reinforce settings in more advanced ports (I can't remember where I heard of that), but MAPINFO / EMAPINFO will probably do. Thanks for the help :)

Edited by Dusty_Rhodes

Share this post


Link to post
  • 0
Just now, Dusty_Rhodes said:

I want to day there was something called OPTIONS

Sorry, I don't know about those, but I'm sure someone will help you.

1 minute ago, Dusty_Rhodes said:

That's very helpful thanks

No problem :-)

Share this post


Link to post
  • 0
4 minutes ago, Dusty_Rhodes said:

@Lol 6 good news! OPTIONS does exist and is for Eternity. I found a page on it here:

https://eternity.youfailit.net/wiki/OPTIONS

 

I believe it actually originated in MBF.

DSDA-Doom implemented support for an OPTIONS lump too, for MBF21 I think (Mind you, it's different to the Eternity one). Good to seee that Eternity has support for that.

Edited by Lol 6
Added disclamer and corrected a letter

Share this post


Link to post
  • 0
3 hours ago, Dusty_Rhodes said:

Is there a lump specifically for telling a port like Eternity or GZDoom (I know they're very different, maybe they have separate lumps like MAPINFO and EMAPINFO, I really don't know) to forbid crouching and jumping, or enforce compatibility settings, or things of the like (ie: lost souls don't count as enemies)?

In GZDoom's ZMAPINFO definitions you can disable (or enable) jumping or crouching and force on (or off) certain compatibility options in the map's definition.

map MAP01 "My Badass Map"
{
	next = "MAP02"
	sky1 = "SKY1"
	music = "D_RUNNIN"
	nojump
	nocrouch
	compat_invisibility = 1
}

Not all such options are togglable via this route, though - enabling the "ghost monsters" glitch is a notorious one - but there are usually workarounds should you wish to travel such paths.

 

3 hours ago, Dusty_Rhodes said:

Maybe even renderers, in the case of GZDoom?

Renderer options, and indeed many user-side options, are generally considered sacrosanct and cannot be altered by a mod. Your best, and only, option is to simply ask your players nicely to use a specific renderer.

Share this post


Link to post
  • 0

P sure that Kinsie's example will enforce the options for individual maps only. Add a 'defaultmap' section to your ZMAPINFO to control every map in your wad at once:

 

defaultmap
{
    NoJump
    NoCrouch
    compat_corpsegibs = 1
    compat_invisibility = 1
    compat_limitpain = 1
    compat_nopassover = 1
    compat_notossdrops = 1
    compat_crossdropoff = 1
    compat_dehhealth = 1
    compat_light = 1
    compat_missileclip = 1
    compat_nodoorlight = 1
    compat_shorttex = 1
    compat_soundtarget = 1
    compat_spritesort = 1
    compat_stairs = 1
    compat_trace = 1
    compat_useblocking = 1
    compat_floormove = 1
    compat_maskedmidtex = 1
}


That will get you more-or-less vanilla behaviour, with the exception of freelook being available.* The ZDoom wiki has lists of compat options you can turn on to achieve a desired 'complevel'.

 

*not sure why I didn't just use the 'compatmode' option. Been a few months since I wrote that tbh, maybe it's new or doesn't work in ZMAPINFO?

Share this post


Link to post
  • 0

You can force pretty much any setting you want through cvars and then make a custom menu to remove the option for the player to change it (won't stop console commands though)

Share this post


Link to post
  • 0
11 minutes ago, Bridgeburner56 said:

You can force pretty much any setting you want through cvars and then make a custom menu to remove the option for the player to change it (won't stop console commands though)

That's good to know. My goal isn't really to restrict the player. It's more to make sure that maps of a certain compatibility will work on GZDoom. Thanks for the help!

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...