Voices and Sounds

Sound is an excellent way of reinforcing visual clues that something is going on in the game.  Left4Dead does this amazingly with the four characters each having their own way of dealing with the events around them, indirectly providing the player with clues to what is happening, like

“Pills here”
“There’s a Boomer around here”

Left4DoD needs the same thing to reduce the WTF moments.  The experienced players know about the Emo and the Grey Dude but they need audio cues as well.  The Emo surprise bombs people so much that he is probably the most hated Zombie!  So to counter that, I’m looking for voice actors (from the venerated ranks of TheVille of course) who will provide the necessary dialog…such as “Watch out! I see an Emo coming” or “Emoooooooooo”!!
The Witch and the Infected One provide small audio clues when they teleport behind someone but maybe nearby players will be able to add commentary…

This Mod has become much bigger than I originally thought.
It started purely as a concept to see if I could make bots work in DoDS.

Now it has evolved into something else.

“He puzzled and puzzled till his puzzler was sore…”

Merry Christmas, everyone!

So while Santa was visiting, last night, I was puzzling over code changes I had made that seemed to cause server lock ups and player time outs.  The thing is, I didn’t change very much so I’m very puzzled why it happens at all.
Today, for example, not a single lock up.  So weird.
So I’m guessing it was  NORAD and their Santa radar causing issues in Chicago and California…

I introduced a new difficulty weighting system.
The problem is this: on some maps like Anzio, the Allies kick Zombie butt, often reaching round scores of 8-0.
On others like Donner, Flash and Avalanche, it is very even.
On Argentan, the Zombies are very tricky to control.

So I devised a cunning system that allows me to weight certain maps to better control the balance.  I can set, via a map cfg, the difficulty for each individual map.  So Anzio now gets a slightly heavier weighting than the others, making it more of a challenge for Allies to win.  Coupled with the !votelevel system, players can vote the difficulty up or down so that if it gets boring you can push the level up or if it gets tedious just trying to survive, you can vote the level down.

The system also reports back to me the level of difficulty and the number of wins per team, so I can decide whether to push up or down, the default level of difficulty.

It is a hell of a lot easier than tweaking Zombie health or weapon strength.

“I Hate Him So Much”

Ah, what better way to start a blog post than to refer to some of the comments about the Emo.
Universally hated by his surprise detonations, catching experienced players just as much as the new ones.  Will he stay in the game?  Yes for several reasons.  I need the unpredictability and I also like Stevo’s Elmo jokes!  Where else would you get “Watch out, the Elmo is coming!” or “Tickle me Emo”.

But more specifically, players need to become more aware in the game.  Unlike TF2, where players are accustomed to watching out for spies or sneaky Demo attacks, DoDS is predictable as bread with butter.  When you clear a flag, you don’t expect anything to come behind you, or kill you as you go around a corner.

So I enjoy reading all the “God I hate that guy” or “No..the f***in’ Emo” comments!

Now the Witch…she’s in the same boat of hatred but for different reasons….she’s overpowered or she’s too fast or she’s too random.  I don’t know, but she isn’t THAT hard to kill.  When she targets you, she is pretty hard to kill, but I find the knife is excellent, or better yet, back up against a wall or sandbags and crouch.

Playing the game overnight is an experience on its own!
The variety of countries playing means that chat becomes a mish-mash of languages and if they want to communicate with others on the server, English is used.  We at the Ville, mostly cater to players from the US and Canada, so having players from abroad is fun!  Also means huge pings… :)

Starting to come together…finally

I’m happier with the mod than at any other point!
Bots are well balanced healthwise and if players spend too long shooting them, then they reap the benefits.. ;)

Weapons do the correct amount of damage.  No weapon is too difficult, although, by increasing the modifiers of other weapons, the pressure is off the MG.  I didn’t like that some players regarded the MG like an AWP and fought to get it.  Now the only weapon that I need to look at is the BAR/MP44.

The teleporting bots.  Probably one of the biggest issues with players.  The funny thing is, if you are new to the game, it’s an issue, but having played it for a while, they don’t pose a problem.  You just have to watch your back more often.  With the witch being the only bot that can get behind you, then the pressure is reduced.  Players have been used to DoDS for too long…everything is predictable in DoDS…unlike Left4DoD!

In fact, L4D is very unpredictable.
Players don’t realize it but bots spawn close by them, behind bushes as they move along.  Next time you play, go in spec mode and watch the zombies….fascinating stuff.  The AI director keeps the zombies near the players.  But then, you say, after you’ve cleared an area, there are no Zombies behind you.
True.
But then you don’t respawn as often in L4D than you do in Left4DoD…

This isn’t Realism.
Realism, to me, is a really bad idea for a computer game.  The only realism is the pecking order and players who enjoy being ordered around by others.  In WW2, they didn’t have crosshairs, respawning, uber-fast mouse reflexes, bodies that remain in one piece upon death…. Realism means you can’t sneak around the map, you have to be wherever your commander tells you and so on…. It’s not what I call ‘Fun’.

Too many of my friends are heading down the Realism road and it’s making me unhappy.

So Left4DoD is a stab at bringing fun back to DoDS :)

**EDIT**
I had one player tonight, a certain ^9C0^6Chick^5e, argue with me that the bots didn’t get stronger each time you killed them and that they only got stronger every time we won.  I wonder how many people he has been telling this :)
Didn’t have the heart to tell him I wrote the stupid code so I should know…

Two servers…

TV14 has been sitting quietly doing nothing for the longest time.
Frustrating trying to run any TF2 on it because the server really never takes off.
So I asked Silver if he’d let me run a Left4DoD server on it….I wanted to see if there were issues in Windows because, historically, Windows servers IMHO are much less stable and more likely to crash when any plugins are run on them.  Many might disagree but I’ve been running servers for a while!

The server is located in Chicago so it might have a better ping for East coast Americans and Europeans.

So far things are looking good.  I had one crash, but that was because I updated the plugin while the game was running, and I was waiting for a lull in play to restart the server.  Server crashed on map change as it tried to load the new version of the plugin.  Linux won’t do this.

I have also been dumping handles to make sure there is no leaking.  As far as I can tell, the i’s are dotted and the t’s crossed and there is no leaking.

Game changes.
Noodgevader wrote a long review and had a lot of good points, so I made a few changes.

  • Increased the power of bazookas – they should now be more useful against the Zombies
  • Increased the power of grenades
  • Changed team hurting to that it didn’t slow players down if they were shot by their own team
  • Began coding for ‘rewards’ for domination – although Noodge mentioned extra nades and stuff, I’m thinking a little extra health or a little extra speed would also be good.

Anyway, things are working well, and the servers are staying reasonably filled without my advertising them…

Still balancing

Well, a week later and I’m no nearer to finding the right balance.
The issue lies in the fact that the bots get stronger each time they die or each time the Allies win a round.
It wouldn’t be a problem, but players always find new and interesting ways of buggering the game up.

Case in point.
I thought I’d reduce the amount of time the bots’ health increases, but then I’d arrive on maps with people telling each other not to cap the last flag so they could sit outside the Axis spawn and gun the emerging bots.  No challenge but for many of them, fun nonetheless.  But this is not what the mod was about.  I want it to be fun yet hard.  The only way to do this is to make the bots harder to kill each time.  Having a goal is way more important that running up to the Axis spawn and gunning down every bloody bot that comes out.  Sure, you knock off your achievements…but then what?
The server stayed full during that weekend… *sigh*

So I changed the method of calculation again, and this time, the bots were very strong.  But then, another problem arises. Players hate wasting clip after clip on the Zombies, so getting the balance has been tricky.  I have it so they start off weak and gradually get stronger.  I have also slowed down the bots when they get injured making them easier to kill.  This might be a bad idea, but it’s worth testing the theory.

Some maps like Donner are hard to win while others like Anzio are completely easy.
I think the issue is in the waypointing.  I may have to include a fourth or fifth option from which the bots can choose a route.  Maybe it’s just the type of map.
Maybe the maps need to be changed so that flags have to be double capped….although that would annoy many.
Another idea might be to reduce numbers…in fact, I’m moving towards this.  Max out at 8 or 10.  It would save the server some cycles and it might make the game less difficult.

So I’ve asked at TheVille for one of our superlative mappers to look at creating a l4dod_ map.
The map would be a survival one where there are many Zombies trying to get into the house (in which there is a capture area)
The humans have to simply survive long enough to avoid being killed.
With enough fog, trees, shrubs and other cover for the Zombies, and their spawns surrounding the whole map, this would be a fun concept.  Zombie after Zombie trying to get in…

Nearing the end of Beta

Well, after a month or so of testing, the plugin is coming to the end of Beta stage.  Balancing is much better. I don’t need to add any more weapons, although I might change the rifle nade into a cluster nade at some stage in the future.

A couple of things need to be cleared up.

  • On a couple of maps like Donner and Avalanche, the bots are mysteriously teleporting into the air and dropping down to the ground.  It’s obviously part of their AI so that needs to be fixed.
  • When a player goes prone and a bot is on top, the players dies too quickly.
  • Winning differences need to play a more important part of the balancing – I redid the formula again….We had a full server last night, and the bots were unbeatable.

I have cleared up other bugs and the server is very stable mostly down to Linux and Stevo’s set up, which is as excellent as ever.

So what’s next?
Well, Silver has agreed to allow me to use one of his Chicago servers to install the plugin and have it tested on Windows.  I know it works because my own setup is Windows but test servers and production servers are entirely different.  It will also widen exposure to the plugin.  I know it will do well.  People seem to enjoy it.
In comparison with Cube Soccer, new people would join, play soccer for ten minutes then leave and often many never came back.
This mod is different.  Most people join and play for hours and hours and come back.  They come from all over the world despite the crazy pings.  And most have positive things to say about it.  We do get one or two intolerant people (like one Belgian guy on the server who cannot tolerate the Taiwanese or Chinese) and intolerant people will no longer be welcome, based on the respect rules we have at TheVille.

I have also noted that many clans and organizations are wanting to install this on their servers “for when they’re bored”.  That makes all the months of work so worth it *sarcasm*… :)

As I have said before, I’m very leery of releasing this.
Too much work has gone into it for others to fuck it up completely….*sigh*

Balancing

It’s hard to balance this mod.

I tweak the health of the zombies and the game becomes too easy.  The Allies roll the zombies because, honestly, the Zombies aren’t that smart…so I need to make them tough to kill.  So I modified my previous formula to count the number of round wins, so that if the Allies do win, it will be harder, next time round.  One alternative could be to make every flag for the Allies a double cap.  This would certainly make the game tougher and make the team work as a team.

I’ve been looking at ways of adding new weapons to keep the game interesting.  The smoke-grenades with fire was a good move.  In L4D they can carry and blow up gas canisters and fuel tanks.  DoDS has these as well, but only on certain maps.  I wrote a nice little routine to find map props, turn them into explosives and set it so that if you roll it or push it, nothing happens, but if you shoot it, it explodes.  I’m still tweaking this, trying to make it burst into a ball of flame.

I added, then removed the K98 with explosive shells.  Nice gun but it made the server unstable.  Disappointed Giz, though!  This essentially took where the player was looking, worked out the coords at that point and placed a small explosive.  However, this was unsatisfactory, due to the mechanics of the game engine.  You could fire a bullet, which would kill the zombie, yet the explosion would happen away in the distance, if the zombie was close by.

I removed weapons from the Zombies completely.  It created a lot of WTF moments when the Zombies pick up guns and begin shooting.  I have a routine that hooks weapon drops and removes the weapon once a player dies. Sometimes, it impossible to remove the weapon if the Zombie is right on top of the player.  I may have to include a routine to continually check to see if bots have a primary weapon and then remove it.

Last but not least…teleporting Zombies.
The fact is that in order to move around the map, I need to teleport the bots.  Removing the teleport function is not possible.  Zombies get stuck and I need to move them elsewhere.  This is SourceMod, not C++, so I can’t write little routines to move around stuff.  But I have compromised.  With the exception of the Special Infected, the Zombies will no longer teleport behind a player.  Players really didn’t like so I’m trying to keep it to a minimum.

Ah the fun and games.