SFML community forums

General => SFML projects => Topic started by: Brendon on January 24, 2011, 05:34:07 pm

Title: Atom Zombie Smasher
Post by: Brendon on January 24, 2011, 05:34:07 pm
Hey all, wanted to share my latest SFML game, Atom Zombie Smasher. http://blendogames.com/atomzombiesmasher

(http://www.blendogames.com/atomzombiesmasher/images/screenshot1t.jpg) (http://www.blendogames.com/atomzombiesmasher/images/screenshot1.jpg) (http://www.blendogames.com/atomzombiesmasher/images/screenshot2t.jpg) (http://www.blendogames.com/atomzombiesmasher/images/screenshot2.jpg) (http://www.blendogames.com/atomzombiesmasher/images/screenshot3t.jpg) (http://www.blendogames.com/atomzombiesmasher/images/screenshot3.jpg)

At the peak of the 1961 zombie outbreak, you are handed control of all combat and rescue operations. With aid from artillery crews, sharpshooters, and other mercenaries, you are tasked with safely evacuating civilians out of infested municipal areas.

Campaigns are waged in procedurally-generated worlds and cities, ensuring each playthrough is a unique experience. Demolition aficionados will be pleased to know cities are modeled to be fully destructible, giving every landmine, dynamite charge, and orbital strike the oomph it deserves.

Users can also create and play mods for Atom Zombie Smasher.  Gameplay parameters are completely open to modification in an easy-to-learn fashion. The Online File Share allows users to then share mods with others.

Game & demo are at: http://blendogames.com/atomzombiesmasher

And another big thanks to Laurent & crew for the wonderful SFML library. Thanks!
Title: Atom Zombie Smasher
Post by: Grimshaw on January 24, 2011, 09:08:33 pm
You make massively cool games man!
Im becoming a fan :D

Can you elaborate on the Technology you use in your games? ;D
Title: Atom Zombie Smasher
Post by: Brendon on January 24, 2011, 10:51:10 pm
My first game Flotilla used XNA. After that I switched to SFML.Net, so I could go cross-platform.  Switching from one to another wasn't that bad - I use my same home-brewed "engine" across all my games, I just needed to plug my low-level drawing/audio calls from one library framework to another.

To get SFML.Net running on Mac & Linux, I use Mono.

Other than that, I don't think I'm using other tech - I'm not very tech-oriented, and even if I wanted to go tech-heavy, I don't think I have the know-how!
Title: Atom Zombie Smasher
Post by: Groogy on January 24, 2011, 11:02:08 pm
Played the demo, looks awesome. Really sweet also that you uses SFML.

Will it be available on Steam? If yes then I'll wait with buying it till then :P
Title: Atom Zombie Smasher
Post by: Grimshaw on January 24, 2011, 11:07:19 pm
And can you explain some more details about your own engine? im particularly interested in your animation subsystem, because you animate everything inside the games ;D
Title: Atom Zombie Smasher
Post by: Brendon on January 25, 2011, 12:13:57 am
@Groogy - I'm working on getting on Steam, with any luck it'll get picked up.

@DevilWithin - Which animations are referring to?  Menus, particles, characters?
Title: Atom Zombie Smasher
Post by: tntexplosivesltd on January 25, 2011, 12:17:44 am
That looks very cool. :D
Title: Atom Zombie Smasher
Post by: Grimshaw on January 25, 2011, 01:15:29 am
Specially the menu animations, but give as much information as possible on how you do it ;D
Title: Atom Zombie Smasher
Post by: CJ_COIMBRA on January 25, 2011, 01:16:54 am
That´s a fine piece of game. Probably the best I´ve seen with SFML so far.
Title: Atom Zombie Smasher
Post by: Brendon on January 25, 2011, 02:00:40 am
@DevilWithin - the menus/screens animate with a very basic system.  

As the menus transition on and off the screen, their "Transition" parameter slides from 0.0 (fully off-screen) to 1.0 (fully on-screen).  This Transition parameter is then used for all the transition animations.

For example, the options menu:
Transition 0.0 = Options menu is positioned at the right edge of the screen.
Transition 1.0 = Options menu is positioned screen-center.

As the Transition parameter goes from 0.0 to 1.0, the menu then "animates" to screen center.

@CJ_COIMBRA - thanks!  SFML's a wonderful library to use.
Title: Atom Zombie Smasher
Post by: TechRogue on March 14, 2011, 02:42:30 am
Played the demo the other day, definitely buying this next time my game-buying cycle rolls around. :D Thanks for supporting Linux.

One glitch I noticed is that you can't backspace in the beginning where you enter your name.
Title: Atom Zombie Smasher
Post by: Brendon on March 14, 2011, 10:25:49 pm
@TechRogue - thanks for the heads-up. I'm not sure why this is happening; the PC version works fine and the input code between the platforms is identical. I'll investigate why there's this discrepancy.

On an unrelated note - Atom Zombie Smasher is now available on Steam! And, is on sale for one week.
http://store.steampowered.com/app/55040
Title: Atom Zombie Smasher
Post by: Terrydil on March 18, 2011, 04:22:21 am
Just bought this on Steam and played through my first game.  Wanted to come here (since this is where I first saw it) and say its great!  The style, gameplay, concept are all cool. I hope you are doing well sales-wise because you have earned it. :)
Title: Atom Zombie Smasher
Post by: Groogy on March 18, 2011, 04:36:35 am
On steam? Yay! I'm buying it and gonna show of at the University :P

**** them and their beloved HGE ^^
Title: Atom Zombie Smasher
Post by: kattle87 on March 18, 2011, 03:10:30 pm
played the demo twice... I wanted at least one more level! I can't get to upgrade my foot troops! :D
It's a really nice piece of software, I'm spamming people to try the demo at least. Too bad there's no online multiplayer, it might have been interesting (I have no friends nor controllers :P)! But I guess it would have been rather difficult to fit since there are so many zeds on the screen.

Congrats again, I just hope to be as popular as you one day!

Just one question: did you used any GUI library or you made it all by yourself?
Title: Atom Zombie Smasher
Post by: Brendon on March 18, 2011, 08:43:10 pm
@kattle87 - thanks!  I did the gui myself.  There's a few button types (slider, checkbox, etc) and is actually fairly bare-bones.
Title: Atom Zombie Smasher
Post by: Groogy on April 01, 2011, 02:57:58 pm
Aight Brendon, gotta say this. I'm a fan of yours now. I loved flottila and I love this game too!

Though it's hard XD
Just got my first upgrade in science :D

Got some questions though. Do you use only SFML's Graphics library or do you also blend in some custom OpenGL? Because I noticed the 3D effects on the buildings. If you did it without OpenGL, I'd like to know how :D
Title: Atom Zombie Smasher
Post by: Brendon on April 03, 2011, 01:01:57 am
@Groogy - Thanks!

I just used SFML's graphics library & Tao openGL library.  The 3D stuff was mostly extrapolated from SFML's openGL "rotating cube" example app.
Title: Atom Zombie Smasher
Post by: Groogy on April 03, 2011, 01:26:47 am
Quote from: "Brendon"
@Groogy - Thanks!

I just used SFML's graphics library & Tao openGL library.  The 3D stuff was mostly extrapolated from SFML's openGL "rotating cube" example app.


Aaah thought so. Would have been overkill doing the 3D Math yourself for some simple visual effect. I've only done it myself with points so was interested if you had done the same thing with quads.

Anyway very good work, looking forward to the next one.

Do you know C++ at all? Just wondering if you had any personal Pro's and Con's for C# over C++ for indie game development? I'm very interested in the field, thinking working for one of the big evil corps first for a few years and then start my own ^^
Title: Atom Zombie Smasher
Post by: Groogy on April 04, 2011, 02:32:27 am
Yay finally completed it! Though found a bug with achievements. I didn't get the achievement for completing a complete campaign. Also a to fix is that I was just about to kill the last Zed in a city but my copter picked up the last civilian before that. Can't you fix that somehow? Bugged me a bit that I lost a city because my copter was too efficient :P

Right, hardcore here we go.

Update: Never mind on the achievement bug, I got it now after I closed down the game.
Title: Atom Zombie Smasher
Post by: Brendon on April 05, 2011, 07:41:33 pm
@Groogy -
For me, it's mostly general preference; I just find C# more user-friendly.  It allows me to spend more time focusing on gameplay code and not having to fiddle with memory or low-level management.

Though from what I understand, C++ is still the most widely-used de facto standard.
Title: Atom Zombie Smasher
Post by: Nexus on April 05, 2011, 11:37:31 pm
Quote from: "Brendon"
It allows me to spend more time focusing on gameplay code and not having to fiddle with memory or low-level management.
Well, the necessity of manual memory management is one of the most spread misbeliefs in C++ ;)

In fact, you don't have to do this if you use techniques like RAII. Just use containers, smart-pointers and other classes that relieve you from low-level stuff. Pointers per se aren't low-level, they also exist in C#, even if they are called references.
Title: Atom Zombie Smasher
Post by: bastien on April 06, 2011, 12:37:25 pm
Reminds me of people who say assembly is as practical as high-level languages because they have such and such macros that make it so easy to create a local variable or call a function.
Title: Atom Zombie Smasher
Post by: Groogy on April 06, 2011, 02:56:05 pm
Quote from: "bastien"
Reminds me of people who say assembly is as practical as high-level languages because they have such and such macros that make it so easy to create a local variable or call a function.


Quite true, sure in C++ you don't HAVE to use this difficult stuff, you get a CHOICE to do it. Then that people in reality are stupid and will do stupid stuff and will use the difficult parts in a stupid way is not a part of the problem.. Oh wait! No it is ^^ (The stupid part is not meant as an insult, it's just how it work, I'm one of those stupid persons myself)

I'm wondering do you do any threading in your games at all? Wondering how much need there is for it. I'd like to develop a game in Ruby with SFML though the problem that I can't use threads holds me back. Somehow I got the idea if I want to push enough juice out for a 3D game I have to use threads -.-
I blame my teachers as every assignment I do have to be multi-threaded...
Title: Atom Zombie Smasher
Post by: Nexus on April 07, 2011, 05:50:23 pm
@ bastien:
If RAII were a very specific feature that would make C++ more complex, one might argument like this. However the exact opposite is the case: Code becomes easier because of missing memory management and try/catch blocks, and at the same time the application gets more robust with respect to memory leaks, dangling pointers, double deallocations and exception-safety. Just take a look at SFML, in its whole API you never have to deal with raw, owning pointers.

RAII is a fundamental C++ idiom, actually you should have a really good reason not to use it. And no, RAII is not slower, just to avoid another myth.
Title: Atom Zombie Smasher
Post by: Richy19 on April 20, 2011, 03:42:09 pm
Would you be interested in making a small tutorial on the city generation?
I want to make a procedural city in my project but i dont know where to start with it
Title: Atom Zombie Smasher
Post by: NinjaFighter on April 22, 2011, 06:26:17 pm
I downloaded and installed the demo, but doesn't work for me :(.
The first error was while load a ogg file, and the second one, was because a SystemDllNotFound Exception (csfml-audio). It was under windows xp.
Title: Atom Zombie Smasher
Post by: Brendon on April 26, 2011, 04:57:59 am
@Nexus - I'm an amateur programmer at best, so I'm likely quite wrong in my assessment!  Thanks for the clarification.

@Groogy - Atom Zombie Smasher does not implement any threading.  Why does your game require it?

@Richy19 - It just so happens I wrote a blog entry about the procedural city generation: http://blendogames.com/news/?p=55

@NinjaFighter - Some users seem to be having problems with the OpenAL library included with the game. Here is a workaround solution:
http://blendogames.com/atomzombiesmasher/help.htm#mscrash
Title: Atom Zombie Smasher
Post by: Groogy on April 26, 2011, 08:37:23 am
Quote from: "Brendon"
@Groogy - Atom Zombie Smasher does not implement any threading.  Why does your game require it?


I don't, but every assignment I do at my school has to be multi-threaded. So it is kind of weird working without it. So that's why I wanted to see if you had several threads in your application :)
Title: Congratulations!
Post by: acrazyplayer on August 05, 2011, 08:03:55 pm
Nice job getting into the huimble indie bundle!
Title: Atom Zombie Smasher
Post by: Brendon on August 05, 2011, 08:26:05 pm
Thanks! It's a great bundle. I'm glad to be a part of it.
Title: Atom Zombie Smasher
Post by: pierreyoda on August 05, 2011, 08:42:01 pm
OMG just got it through the Humble Bundle 3 (got the Humble Bundle 2 too by the way!) :D

Really nice game, I can't believe it uses the SFML (I mean, a free and open source library I'm using too  :P )
Title: Atom Zombie Smasher
Post by: Brendon on August 05, 2011, 08:59:07 pm
That's the beauty of SFML! It's really minimal & flexible, so you can bend it to look & work however you like. Such a phenomenal library.
Title: Atom Zombie Smasher
Post by: OniLinkPlus on August 05, 2011, 09:27:14 pm
Excellent work! As soon as I heard the name "Atom Zombie Smasher" on the video announcing it, I knew that sounded familiar. Again, excellent work!
Title: Atom Zombie Smasher
Post by: renton_django on August 11, 2011, 10:18:05 pm
Picked up the bundle and I love the game!! It's great to see an sfml game getting so much success. Congrats!
Title: Atom Zombie Smasher
Post by: heishe on August 12, 2011, 03:45:57 am
Was this game a complete 1-man project? Where did you get all the graphics,sfx,music etc?
Title: Atom Zombie Smasher
Post by: Brendon on August 12, 2011, 06:20:09 am
Yup, I did all the design, programming, and art. The music was from a band called The Volcanics and the sound effects were from a library.
Title: Atom Zombie Smasher
Post by: heishe on August 12, 2011, 10:02:47 am
Quote from: "Brendon"
Yup, I did all the design, programming, and art. The music was from a band called The Volcanics and the sound effects were from a library.


That's awesome. Was the library one of these sound banks that you can license? Or did you find a good, free one?

That said, awesome game!
Title: Atom Zombie Smasher
Post by: Brendon on August 12, 2011, 07:02:36 pm
It's a great sound library. Not expensive. http://www.soundsnap.com
Title: Atom Zombie Smasher
Post by: easy on September 23, 2011, 01:54:51 pm
Check this out! (http://www.sfml-dev.org/forum/viewtopic.php?t=5932)