Testers for new menu code needed
- Graf Zahl
- Lead GZDoom+Raze Developer

- Posts: 49252
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
Testers for new menu code needed
I just want to announce that the first test build of the new menu code is available. You can find it here. I'll need some people who can test it and report some inconsistencies.
Known issues with this build:
- The options menu is not implemented yet. The 'Options' item goes to the player setup menu instead.
- The animated player sprite display does not yet work for "Random" player class.
- The skill, episode and player class menus will not display well with a larger number of selections.
These things are not done yet and will be finished after the options menu. I'll still need some feedback right now though, especially concerning sound use.
Known issues with this build:
- The options menu is not implemented yet. The 'Options' item goes to the player setup menu instead.
- The animated player sprite display does not yet work for "Random" player class.
- The skill, episode and player class menus will not display well with a larger number of selections.
These things are not done yet and will be finished after the options menu. I'll still need some feedback right now though, especially concerning sound use.
Re: Testers for new menu code needed
After installing this to a fresh folder and giving it a quick go, it's looking good so far. 
Issues I've stumbled across:
Issues I've stumbled across:
- I can't escape from the load game menu if there are no savegames (the only way out is ALT+F4).
- The Quit Game option doesn't always display. It didn't at first, then, once a config was created, it did.
- The reverse of this happened to all the skill level options - they didn't display once a config was created (and from then on I am only able to select one invisible option, presumably HMP). However, I can still select the skill levels by hitting their respective keys, and they do affect the gameplay the way they should.
- Deleting my config hid the Quit Game option and revealed all the skill levels again.
- You are probably aware of this one, seeing as the Player Setup menu isn't yet fully working, but hitting enter on it crashes ZDoom (with no report).
- There's no sound while scrolling through the Yes/No options on the quit message menu.
- I got a bizarre bug which made only ITYTD appear on the skill level menu, after I had visited the quit message menu. However, I'm not too sure how to reproduce it. I'll keep investigating.
Re: Testers for new menu code needed
Indeed. In my tests I ran with many odd problems of menus not being complete. The elements are in their proper place, but some are missing, replaced by unselectable emptiness.Graf Zahl wrote:- The skill, episode and player class menus will not display well with a larger number of selections.
Heretic SotSR does not display any episode at all, just a cursor in front of emptiness. Hitting the arrow key makes it make the selection change sound, but it doesn't move, and hitting enter start only City of the Damned.
Ultimate Doom shows only the first episode. The "Quit" option is missing entirely from the main menu. (Though F10 still works fortunately.)
Doom II, on the other hand, only shows the "Quit" option.
Plutonia Experiment has an invisible main menu, with only "New game" as an option (though it's not displayed). The skill selection screen shows only "Hey, not too rough" and "ultra violence".
Evilution showed me the full main menu and seemed to work correctly (well, except of course for what's not implemented yet). Though I found out that there's no way to back out of the Load menu if you don't have any save game. I had to alt-F4 out of here.
Hexen worked correctly.
Strife worked mostly correctly, thought the location of the entries in the skill menu seemed odd, maybe because "New game" and "Choose skill level" weren't displayed. Also, it displayed only four of the five skill levels: in my tests, either Training or Bloodbath were missing. And again, can't back out of an empty Load menu.
Freedoom worked correctly -- like Evilution.
Ultimate Freedoom displayed only "New game" and "Options" in the main menu.
Blasphemer showed to display the full menu, but less than a second after it appears, it crashes with a Very Fatal access violation error.
Chex Quest 1 worked without problems in the main menu.
Chex Quest 3, on the other hand, has an invisible main menu with only the "New game" option. Its episode selection screen offers only the first episode, and the skill selection menu, only the last three.
Urban Brawl's menu was invisible, but otherwise seemed to work nicely, until I got a crash when activating the "new game" entry.
Harmony's main menu works, but its skill selection screen is empty and only lets you select the (invisible) default skill.
- Kinsie
- Posts: 7402
- Joined: Fri Oct 22, 2004 9:22 am
- Graphics Processor: nVidia with Vulkan support
- Location: MAP33
- Contact:
Re: Testers for new menu code needed
I've been having some very bizarre behavior that changes frequently, mostly involving options not appearing.
In this gif, you can see the difficulty settings in Doom appearing and disappearing every time I enter the menu. In Doom 2, difficulty settings usually never appear.

In addition, there were no choices at the base ESC menu, defaulting to New Game.
In this gif, you can see the difficulty settings in Doom appearing and disappearing every time I enter the menu. In Doom 2, difficulty settings usually never appear.

In addition, there were no choices at the base ESC menu, defaulting to New Game.
- Graf Zahl
- Lead GZDoom+Raze Developer

- Posts: 49252
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
Re: Testers for new menu code needed
That's odd. The episode and skill menus have been working fine the last time I checked them. I'll have a look later this afternoon.
- Graf Zahl
- Lead GZDoom+Raze Developer

- Posts: 49252
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
Re: Testers for new menu code needed
Ok, this version was definitely useless. Nearly everything being listed here could be attributed to only one uninitialized variable that only showed its ugly face when running a release build outside the debugger.
I hope the next build is more stable. No need to do any more tests with this one.
I hope the next build is more stable. No need to do any more tests with this one.
Re: Testers for new menu code needed
It is a lot more stable, but it still crashes on Blasphemer and AD2UB.
Re: Testers for new menu code needed
Pardon my ignorance, but what is goal of the menu rewrite?
- Graf Zahl
- Lead GZDoom+Raze Developer

- Posts: 49252
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
Re: Testers for new menu code needed
The big problem with the menu code is that it's close to unmaintainable. That includes adding new features as text input boxes on the option screens. There's just too many things that can't be done with the old code because it's so badly structured.
There were also some other problems, like for example the message screens (like when you select Quit in the main menu) not being proper menus so when you activated one the menu could not be restored properly afterward.
Or take the custom episode and skill screens. If you got too many entries, bad luck. The way the code was structured it wasn't possible to implement a fallback using the options code which could have done it. That won't be a problem anymore.
With the new code such things should be a lot easier because it's no longer necessary to alter 10 pieces of code for one small change
There were also some other problems, like for example the message screens (like when you select Quit in the main menu) not being proper menus so when you activated one the menu could not be restored properly afterward.
Or take the custom episode and skill screens. If you got too many entries, bad luck. The way the code was structured it wasn't possible to implement a fallback using the options code which could have done it. That won't be a problem anymore.
With the new code such things should be a lot easier because it's no longer necessary to alter 10 pieces of code for one small change
Re: Testers for new menu code needed
In other words, end users (players) may seem some benefits in the long haul as far new menu features being easier to put in, but the biggest immediate benefit is to the sanity of the programmers, and to their ability to maintain and modify the menu code.
- Graf Zahl
- Lead GZDoom+Raze Developer

- Posts: 49252
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
Re: Testers for new menu code needed
There will be some use for end users because I'm externalizing the definition tables for the menus so they can be redefined - even if it's only reshuffling the existing functions.
Re: Testers for new menu code needed
Ahh very nice. 
Thanks for clearing that up.
Thanks for clearing that up.
Re: Testers for new menu code needed
I know some people have wanted to have, say, more than eight player classes, episodes, or skill levels at a time. Or to get rid of the "random" class choice. Or maybe have a "random" choice for the skill and/or episode menus as well.
Re: Testers for new menu code needed
For those who care, there's a new build available in the Experimental folder: http://svn.drdteam.org/experimental/
One thing I notice is that the cursor's behavior is subtly different in the option menu. (The little arrow cursor, not the big skull cursor.) Before, it blinked between invisible and red, now it blinks between grey and red.
Strife convos seem to work correctly, though I wish they weren't menus anymore. One of the reasons for that being that in windowed mode, the mouse cursor reappears and is allowed to roam freely outside of the ZDoom window. It's slightly disruptive that this happens with conversations. But well, this is not a change.
One thing I notice is that the cursor's behavior is subtly different in the option menu. (The little arrow cursor, not the big skull cursor.) Before, it blinked between invisible and red, now it blinks between grey and red.
Strife convos seem to work correctly, though I wish they weren't menus anymore. One of the reasons for that being that in windowed mode, the mouse cursor reappears and is allowed to roam freely outside of the ZDoom window. It's slightly disruptive that this happens with conversations. But well, this is not a change.
Re: Testers for new menu code needed
It's looking really good so far. Though I did get a crash (no report again) when I selected the name option in player setup.