Hubs - level design question

Mon Nov 22, 2021 10:59 am

Hi, I've been reading about how to make a hub and have a couple of questions about the level design of when to allow returning to the hub etc.
Is it normal, or desirable to allow the player to return back to the hub without finishing the level? Like having a teleport where the player enters that also takes the player back to the hub using teleport to map if the player wants?
Additionally there would be an exit at the end of the level - but what I'm struggling with is that in a lot of examples "NoIntermission" is used so that the imtermission page does not come up when returning to the hub (natch). What I think I want is for the intermission page with the stats to come up when you finish the level, but not if you just want to return to the hub - does that make sense? But I'm not sure how to achieve that, using teleport to map and end level both either trigger the intermission page or depending on if it's enabled.
So - am I approaching this all wrong, or just not implementing the correct actions?
Thanks.

Re: Hubs - level design question

Fri Dec 31, 2021 8:17 am

stevet1 wrote:Is it normal, or desirable to allow the player to return back to the hub without finishing the level? Like having a teleport where the player enters that also takes the player back to the hub using teleport to map if the player wants?

"Normal" or "desirable" would depend on what the objectives in the individual maps and the hub are. Some games (e.g., HeXen) are designed to require a player to return multiple times to a given map in a hub. Therefore, if by "finishing a level" you mean completing all the objectives, then you ought to take care about allowing the player to return to the hub without completing the map. Especially if the player doesn't realize that some objectives remain. The middle ground here would be to allow the player to return to the hub at will, but signal to her/him (e.g., via a HUD message) that not all objectives have been completed.

Additionally there would be an exit at the end of the level - but what I'm struggling with is that in a lot of examples "NoIntermission" is used so that the imtermission page does not come up when returning to the hub (natch). What I think I want is for the intermission page with the stats to come up when you finish the level, but not if you just want to return to the hub - does that make sense? But I'm not sure how to achieve that, using teleport to map and end level both either trigger the intermission page or depending on if it's enabled. Thanks.

You will need to clarify what you mean by "finish the level". Again, are you referring to the completion of all objectives? If so, one way to achieve what you want is as follows:

    1. Set up conditions in ACS that will check if all objectives have been completed
    2. When the player triggers the teleport-to-map special, have a script check if the objectives have been met
    3. If the objectives have not been met, the player will return to the hub without the intermission page being displayed
    4. If the objectives have been met, the player will return to the hub and the intermission page will be displayed

Re: Hubs - level design question

Tue Feb 01, 2022 12:07 pm

Yeah, it really depends on the flow you want.

If you want the player to get trapped in the level until they finish some part, like in Hexen, then you should do that. This lets you do a lot more in the way of incorporating complex narative or setpieces, and can help with tension, because the player quickly realizes the can't just go back whenever they want. It also helps you control your player to keep them from getting lost if you need them to complete a section. Seven Portals tried to use this to help with the complexity of that switch puzzle. (the problem is, they tested it so many times, they stopped realizing how over-complicated it got when they weren't doing that)

If you want the player to quickly go back and forth between connected areas, like in Strife, then you should do that... however, I'd point out, if you're going to have areas connected like that, why use a separate map at all? GZDoom will let you get away with some pretty big maps, if you know how to manage the BSP. (of course, if you want the player to return to the hub afterwards, with an intermission, you can't do that)

If you're putting intermissions at the end of individual missions, I think you're going for a Hexen-style approach, where maybe the first map should only have the portal at the very end to demonstrate this, while later maps can actually play with the concept of going back to that hub for something. I recommend having one early on which actually counts on the player being able to backtrack to the hub to do something like heal or restock or whatever is appropriate, just to show this off.

Just remember to find a way to make it clear that going through the portal has no bearing on the objective.

Also, remember that you need a way to keep track of this stuff without relying on ACS variables, as hubs get reset to their starting state every time you go through an intermission. I would suggest using the inventory system to do this.