[L4D2] Making alternate routes?

I was wondering how I can make my own alternate routes in a campaign. I’ve looked at the Dead Line .vmf and that didn’t seem to help, neither did the Valve developer site. Could anyone give me a good and understandable tutorial on how to make alternate routes?

Do you want it to depend if the Survivor’s are doing good/bad?

I didn’t know that was a contributing factor…how about both (for future reference (or if you don’t feel like typing both, one would be fine))

Alright, I haven’t tested these… So tell me if they work… For the one that’s random, do a logic_case and name two (or however many paths you want) cases. I’m pretty sure you can name them whatever. Then when whatever happens, like let’s say you push a button and you want either 2 gates to open. You put in the Outputs of the button, OnPressed > (name of logic_case) > PickRandom. Then in the Outputs of the logic_case, put OnCase01 > (Name of First Door) > Open. OnCase02 > (Name of 2nd Door) > Open. That shooould work, tell me if it doesn’t. I’ll write the second in a sec, still looking into it.

Ok, but does it have to be with a button? For example, in the first level of the Parish, there are 3 routes, instead of a button should I place a trigger?

Yeah. If you want it to appear on the map start, use a logic_auto to trigger the logic_case. In the outputs of the logic_auto put, OnMapSpawn > (Name of Logic_Case) > PickRandom

You could do that with a logic_auto entity, which will fire as soon as the map loads.



Gotcha, bitch.


It’s okay, great minds think alike.

Alright, thanks. Working on a huge-ish alternate route now.


Cool idea OP.

Making L4D/2 even more replayable!

Do you want to know the Director one?

What do you mean?

How depending on how well the Survivors doing it blocks paths?

Sure. Explain (for future reference)

Also, when making alternate routes, if it’s not a door, should I just name the block and place the block name in the Output? (if so, what property should I make it? func_wall_toggle maybe?)

Well, make it a func_brush, and I believe you should start all the func_brushes enabled, and on the Case make it so instead of opening the brush, it Disables it.

Ok. One more thing, when setting the outputs to logic_case for the first case, I have it at:

OneCase01 > alt_wall_01 > ???

Do I change it to “disable” or “kill” ?

I’d do Disable. Killing it could fuck it up somehow.

Alright thanks, i’ll post back later if I have any trouble.