Page 2 of 5
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Sun May 28, 2017 2:42 pm
by Cryomundus
Can I ask why? Having all the keys just seems to to really break the flow of a level, and I don't know why you would do that. Wouldn't it be better to have it as an option?
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Sun May 28, 2017 3:09 pm
by JPL
Cryomundus wrote:Can I ask why? Having all the keys just seems to to really break the flow of a level, and I don't know why you would do that. Wouldn't it be better to have it as an option?
The whole point of the mod is that your flow through the level is different than if you were playing it vanilla, and that the existing color key system is irrelevant. On some maps you can walk right up to the exit very early in, but it doesn't do you any good until you find the keymaster.
I could add a "never auto-give keys" option, but then I'd need to add a check to the Arrow spawning so that it never replaces a key, which in turn would change the list order it uses for level-persistent random picks - ie the arrow would be in different places depending on if you had that option on.
I'll add it to my "possible TODO" list. Screw it, I'll add it. It's a totally reasonable option. Build has been updated.
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Mon May 29, 2017 9:52 am
by Someone64
With the latest version I'm just getting VM execution failed tried to read from address zero from hud.txt.
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Mon May 29, 2017 11:40 am
by JPL
Someone64 wrote:With the latest version I'm just getting VM execution failed tried to read from address zero from hud.txt.
Hmm, I can't reproduce that... which map / WADs are you loading?
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Mon May 29, 2017 1:11 pm
by Someone64
Ah, found out that it's Tilt++ that was doing it. It wasn't happening before you added the settings for giving keys.
New bug report: Damage bonuses don't work in Project Brutality 3.0 test. Have not tried it on the old Project Brutality or just Brutal Doom yet.
EDIT: Another one. Due to PB's unique spawning system the barrels will consistently be picked to be the keymaster instead of monsters. Other mods with special spawning systems probably also have this issue.
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Mon May 29, 2017 2:10 pm
by JPL
Someone64 wrote:Ah, found out that it's Tilt++ that was doing it. It wasn't happening before you added the settings for giving keys.
Okay, so I've fixed the crash and updated the build, but now something weird happens. Keymaster stops working entirely based on which order you load Tilt++ vs KM with. If I run
then both mod function correctly. Whereas if I run with
KM doesn't run at all... no HUD, no keymaster, and you can exit levels normally.
Any ZScript lords understand why that is?
New bug report: Damage bonuses don't work in Project Brutality 3.0 test. Have not tried it on the old Project Brutality or just Brutal Doom yet.
EDIT: Another one. Due to PB's unique spawning system the barrels will consistently be picked to be the keymaster instead of monsters. Other mods with special spawning systems probably also have this issue.
KM compiles a list of "monsters in the level" on start based on the bIsMonster actor flag. If PB is giving barrels the bIsMonster flag for some strange reason, then yeah they might get chosen as the keymaster. Same with the "damage bonus", which is setting the DamageFactor property on all monsters under the hood... if PB is setting that on its own (seems likely?) without respecting the existing values, it'll stomp whatever KM did. Not sure how to fix that.
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Mon May 29, 2017 2:13 pm
by JPL
Ah, just compared Tilt++'s MAPINFO with KM's:
Code: Select all
GameInfo
{
EventHandlers = "TiltPlusPlusHandler"
}
Code: Select all
GameInfo
{
AddEventHandlers = "KeyMasterHandler"
StatusBarClass = "KeymasterStatusBar"
}
Tilt++ is undoing the handler that KM adds, so that's a fix for Tilt++ actually. Ah, I see in that thread Nash has chimed in with the same fix.
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Mon May 29, 2017 3:13 pm
by Nash
Sorry about that. :( There have been a backlog of fixes already committed for my various ZScript mods (DukeShadow and Tilt++) but I just don't have time yet to upload a polished release. In the mean time, users should just edit the MAPINFO and change EventHandlers = to AddEventHandlers = in Tilt++! Sorry again!
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Mon May 29, 2017 8:38 pm
by JPL
Nash wrote:Sorry about that.
No worries! You got the fix out.
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Mon May 29, 2017 8:41 pm
by JPL
Updated the build with Heretic support, thanks to @m0rb from twitter.
All the changes were very simple and coexist nicely with the Doom support, except for the HUD, which I had to separate into filter/game-doomchex/ and filter/game-heretic/ folders because the former derives from DoomStatusbar and the latter from HereticStatusBar. They're identical in every other respect though, so the code duplication there is a real bummer. Can anyone figure out a clever way around that?
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Mon May 29, 2017 9:30 pm
by saegiru
JPL wrote:Updated the build with Heretic support, thanks to @m0rb from twitter.
All the changes were very simple and coexist nicely with the Doom support, except for the HUD, which I had to separate into filter/game-doomchex/ and filter/game-heretic/ folders because the former derives from DoomStatusbar and the latter from HereticStatusBar. They're identical in every other respect though, so the code duplication there is a real bummer. Can anyone figure out a clever way around that?
Speaking of status bars - from what I see of the ZScript for the HUD, it looks to override SBARINFO completely and they can't coexist, correct? My knowledge on ZScript is extremely limited currently. You aren't aware of a way to integrate your arrow radar into a current HUD made in SBARINFO is there? I have aspirations of changing Ultimate DoomVisor to ZScript eventually (at which point I think it might be possible), but right now it's in old school SBARINFO and if I load Keymaster up with it, it either overrides it or vice versa.
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Mon May 29, 2017 9:43 pm
by JPL
saegiru wrote:JPL wrote:Updated the build with Heretic support, thanks to @m0rb from twitter.
All the changes were very simple and coexist nicely with the Doom support, except for the HUD, which I had to separate into filter/game-doomchex/ and filter/game-heretic/ folders because the former derives from DoomStatusbar and the latter from HereticStatusBar. They're identical in every other respect though, so the code duplication there is a real bummer. Can anyone figure out a clever way around that?
Speaking of status bars - from what I see of the ZScript for the HUD, it looks to override SBARINFO completely and they can't coexist, correct? My knowledge on ZScript is extremely limited currently. You aren't aware of a way to integrate your arrow radar into a current HUD made in SBARINFO is there? I have aspirations of changing Ultimate DoomVisor to ZScript eventually (at which point I think it might be possible), but right now it's in old school SBARINFO and if I load Keymaster up with it, it either overrides it or vice versa.
Correct, I'm not aware of any way to "add on to" the existing HUD. Which is a bummer in Keymaster's case because it doesn't add its own SBARINFO data, all it really does is draw that one visual element of the icon fading in and out; it could coexist with a huge variety of other HUDs.
It seems like there's been
some discussion of deeper ZScript UI stuff already, but I haven't followed it closely.
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Tue May 30, 2017 1:03 am
by Someone64
Found an incompatibility with Colorful Hell. It simply gives the error not enough monsters and pickups consistently.
EDIT: Actually it doesn't seem to work with most monster randomizer mods in general.
Also, suggestion: Can you add compatibility with Legendoom that it works in such a way that instead of using Keymaster's monster buff it gives the keymaster the legendoom legendary effect instead?
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Tue May 30, 2017 2:08 am
by Nash
JPL: You might be able to utilize the RenderOverlay EventHandler to draw 2D stuff without overwriting status bar classes. I remember messing around with it in a test WAD once and it worked.
Re: [WIP] KEYMASTER - a tiny gameplay mod
Posted: Tue May 30, 2017 2:49 am
by JPL
Nash wrote:JPL: You might be able to utilize the RenderOverlay EventHandler to draw 2D stuff without overwriting status bar classes. I remember messing around with it in a test WAD once and it worked.
This totally works, thanks so much! Very very easy to move the old status bar code over to a handler. This also removes the need for the separate Doom vs Heretic HUDs.