Zombie Master 2 started out as an unofficial OB patch, there weren't any plans for adding features and content. Porting ZM took a month to do, manually porting at least 100 files to OB. By the time the port was completed, the idea of turning the patch into a mod was floating around and I finally did it. So here are a few of ZM2's newest features:
point_viewcontrol
The modifications I did to point_viewcontrol were quite simple. When a point_viewcontrol is enabled, all players will have view entities set to it, acting as a cutscene. Each player can exit the cut scene whenever they want without interrupting the other players from watching. I may add an option so it would disable skipping the cutscene.
func_win
Winning/losing has an output now, allowing the mappers to do something special after the game.
Here's the new FGD entry:
@PointClass base(Targetname, Parentname, Origin, Angles) = func_win
Target for the Humans to win or lose the game
[
input Win(void) Human Win
input Lose(void) Zombie Master Win!
output Won(void) : Humans Won
output Lost(void) : Zombie Master Won!
]
func_win_trigger
With the way func_win_trigger is progressing, it could very well replace func_win. Here is a list of its current features:
- A completely modifiable timer
- Disallows NPCs in the trigger before winning
- Only players within the trigger will win
I plan on adding a hud element that displays the func_win_trigger's timer.
Here's the FGD Entry below:
@SolidClass base(Trigger, Targetname) = func_win_trigger :
"A trigger volume that only lets survivors within it win."
[
// Inputs
input Toggle(void) : "Toggles intial active state"
input Enable(void) : "Hides"
input Disable(void) : "Unhides"
input ChangeTimeLimit(float) : "Changes and resets the time limit"
input ModifyTime(float) : "Add or subtract time to the time limit"
input ResetTime(void) : "Resets the Timer"
input ToggleTimer(void) : "Toggles Timer"
input EnableTimer(void) : "Enables Timer"
input DisableTimer(void) : "Disables Timer"
input Win(void) : "Human Win"// Outputs
output Won(void) : "Humans Won"Active(integer) : "Active" : 1 : "Is this active on game load? 0 = false"
TimerOn(integer) : "Timer" : 0 : "Is the timer active? 0 = false"
Enemies(integer) : "Enemies" : 0 : "Disallow NPCs in area? 0 = false"
Timelimit(float) : "Time Limit" : 5 : "Time limit for survivors to get to destination ( In Minutes )"
]
func_giveresources
Instead of making an input that would set the ZM's resources to zero, I thought it would be better if I made an input that sets the ZM's resources to whatever you want.
Here's the new FGD entry:
@PointClass base(Targetname, Parentname, Origin, Angles) = func_giveresources :
"Give or take resources from the ZM's stash"
[
input GiveResources(integer) : "Give/Take x resources"
input SetResources(integer) : "Set the ZM's resources"
]
Updated Stubborn Pathing
For those who don't know, stubborn pathing is a ZM feature that tries to fix disturbed paths by finding a new path to use. To improve the chance of finding a new path, I've made it so the new rerouting process repeats an adjusted number of times until it finds a new path to use. If the current path is blocked, the AI navigation will only try harder to find a new path.
Here are five shamblers walking from the train spawn site to selected point. Normally, they would stop a quarter way there.
Here I have ordered 35 shamblers to move from the spawn nearest to the concrete stairway over to the communications tower. A little bit after commanding, the shamblers found themselves stuck between the cargo container and the stairway itself. Rest assured, the stubborn pathing was able to command a portion of the shamblers around the container and up the stairs.
Final notes
We'll reveal more in the next update!
Until then,
Tanner Bondy
ZM2 Team Leader and Lead Programmer
Man I'm so glad you guys fixed the point_viewcontrol entity. Hope someone comes up with some cool cut scenes for their map!
Great work!
But shouldn't func_win be logic_win as it is "@PointClass" and same for func_giveresources ?
Also func_win_trigger shouldn't be trigger_win or func_win ?
This is only my opinion and how I'd name them for better understanding.
finnally the stubborn pathing has been fixed...
func_win_trigger
[...]
* Only players within the trigger will win
What does this mean? What happens to the players that aren't in the trigger?
Cool changes though.
It means that any survivors outside trigger will lose the round.
Can't wait for more.
wait a minute; isn't it the stuff that have been posted in the dev blog in the forums a long time ago? Ow..... nvm, it's a summary to everyone on ModDB that maybe follow the blog xD
It's coming really well! Good to see the "func_win_trigger" too. Now, people will actually play as a team, and not have 1 group of people doing the objectives, and 1 group of people camping at the back -_-
It came to our attention that a good number of moddb members didn't read the dev log.
NICE!!!!! Can't wait until this is done :D I want this more then Black Mesa :)
I want a chrome shotgun in this mod. Anyone agree?