• Please make sure you are familiar with the forum rules. You can find them here: https://forums.tripwireinteractive.com/index.php?threads/forum-rules.2334636/

Level Design OldeTower: Progession stages, TriggeredPlayerStarts and Teleport path noding

PiX

Grizzled Veteran
Mar 20, 2009
306
69
Sweden
WHAT'S BELOW IS WORK IN PROGRESS

I've recieved several questions about these things, and instead of answering them all seperately, I thought I'd explain the features of my map, KF-OldeTower and how they work. A short tutorial if you will. It requires some knowledge of Ued. I won't go through this point to point with anyone...



The way I see it, there are three unique things about Tower, compared to other survival maps. First, there's progressive gameplay, built in stages, second there's the player spawn moving along with the current stage, and finally, there's the placement of teleports which allow specimens to access any part of the tower at any given time (well, in theory).

1. Progressive stages
Requirements:
1 ShopVolume
1 ScriptedTrigger

? Counter

This is done by calling the event of the(only)ShopVolume in the map. Let's use the same name as in OldeTower for the sake of reference, namely 'ShopEvent'. There's no trick to this, no custom coding needed. The ShopVolume simply triggers its event at the beginning and end of each wave(to close the trader door, however, we won't be needing one).
So after setting up your shop accordingly, we need a ScriptedTrigger that looks something like this:
Action_WAITFOREVENT - 'ShopEvent' (end of wave event)
Action_TRIGGEREVENT - 'add_to_counter' (can be anything, but add_to_counter makes sense)
Action_WAITFOREVENT - 'ShopEvent' (start of next wave)
Action_GOTOACTION - '0'

Next, we need a Counter that has the following properties:

  • Counter
    • NumToCount
      • '1' (for the end of wave 1)
  • Events
    • Event
      • 'Wave1done' (opens the door of the current stage)
    • Tag
      • 'add_to_counter'
If we're building this map for 10 waves, we're gonna need 10 counters like these, each with the unique wave number. '1' counts down from 1, '2' from 2 and so on. Just replace the number marked in red. All this could be done without a Counter, just using a ScriptedTrigger, but it makes everything much easier to handle if you would have to go back and change something to the lay out.
That's about it for progressive stages.



2. TriggeredPlayerStarts
Requirements:
1 ScriptedTrigger
? TriggeredPlayerStart

In OldeTower I used about 60(10x6) TriggeredPlayerStarts, but I'm gonna show you an example of how to use them with only 18.

First, we add a group of six TriggeredPlayerStart where we want the players to initially start the map. Set the tag of all these to 'Spawn1'. Next, we set up the next group of spawns. Another 6, now with the tag 'Spawn2'. Also make sure you set the property PlayerStart > bEnabled of these six to 'False'. This bool bEnabled is set to toggle when called, so you can use one group of spawns more than once. Finally the last six with the tag 'Spawn3' and bEnabled to 'False'.
Ok, so now we have three group of spawns (3x6=18), now we need a way to activate them. You can use a Trigger, a Mover or anything with the event 'SpawnPoint2Triggered', just make sure its something that triggers once.




so you need a ScriptedTrigger with these actions:
Action_WAITFOREVENT - 'SpawnPoint2Triggered' (waits for the event to "move" the spawn point)
Action_TRIGGEREVENT - 'Spawn1' (disable group 1)
Action_TRIGGEREVENT - 'Spawn2' (enable group 2)
Action_WAITFOREVENT - 'SpawnPoint3Triggered'
Action_TRIGGEREVENT - 'Spawn2'
Action_TRIGGEREVENT - 'Spawn3'

I would also like to say that I in no way would mind if anyone else would attempt to make a tower-like map. I would be honoured if anything. Hope this thread was of at least some help.
 
Last edited: