Ok i've got two ideas to keep this game fresh and exciting so people stay throughout the whole game without getting bored (I personallly don't mind the longness, but everyone else gets bored and leaves if they are not my friends. Still, it is a bit long since nothing really changes).
First, you could add spells. Perhaps classes, but spells/abilities would add some spice. Not like "meteor from the sky" and "summon lava" mage crap, but more physical abilities. Like "player dashes across and hits 3 enemies on the way" sort of thing.
But there are different approaches you can take to this one. Personally, u will probably know WHICH one i prefer but it will require a lot more work and if u are planning on making a RPG ever i suggest u scratch it =). But anyway, you could add some kind of save system. Every time you play, you can get a code at the end, or maybe by typing -save. Some survival games have this, but i am not talking about just saving your rank. Saving like, abilities you gain (drops, random acquire, or maybe through picking them as you level up or each time you play), extra bonuses or stats or something, and hey, maybe even weapons/armors? Lol. Well i am just giving suggestions I even like it the way it is but things that SHOULD get added in the small run::
-Different/changing zombie waves and/or bonus waves
-Special zombies with abilities that are harder to kill and require teamwork that come in each wave
-Abilities, perhaps? Depending on how the special zombies turn out. Keep them a bit realistic though, please
-How long is each wave? Try to not spread them out so much with zombies coming it one by one. Instead (lets say the wave is 5 minutes), have a decent size rising in like the first 30 seconds, and have a HUGE wave come in at 30 or so seconds, and not many zombies coming in between 30seconds-2minutes. During this time you need to kill the zombies fast or you have no time to recover. In these huge waves, you cannot recover easily. ~1:30-2:30 recover time, then a normal wave starts coming in, followed by another HUGE wave. The times and zombie appearance order is not accurate, should be more random, i am just giving an example of what a wave should be
.
*Yes this sounds hard and abilities for multi killing will be needed
*If not, take out the fillers in the waves, the zombies come out too slow.
With those things in mind you will probably have a Grade A game!