Fowl Invaders remake

Hi all,

Ok, so last week was exceptionally productive. For those that missed the quick post in the WIP small works game thread, I’m re-releasing my 2009 mobile game, after much rework, as a free game on Android (to start). This game will release in advance of my next game, that I’m going to announce soon :smile: My hope is some players will enjoy this game, and check out the next game, which is a “traditional” paid mobile game (I’m still not a fan of micro payments). With the addition of a phenomenal artist (I’ll let him introduce himself), the graphics have taken a giant leap this time!

For background, Fowl Invaders is a simple, straight forward arcade shooter, with a humorous “hicks verses space chickens” premise :smile:

Right now, the game is largely physics based, but it seems to be performing reasonably well. I may need to tweak that during final optimization.

The current update includes:

  • completely new/updated graphics
  • completely refactored c# code base
  • new effects
  • new weapons (you’ll see one of them in this new video)

Please let me know what you think.

Cheers,

Galen

You filmed this on your computer or android device?
The thing is that I saw the game lagging some times and I’m not surprised since it is physics heavy.
And think that these were the lower levels (lesser action on screen)

It looks fun and the farm themed music is entertaining. I’m really curious if you will manage to optimize it to run smooth on android :slight_smile:
Good luck!

Hey Primus88,

The video was captured on my laptop. The lagging you see is a combination of things, including the video capture software, however, in the editor I mostly eliminated pauses. While the physics is an impact, on a game like this with so few actually moving pieces, i’ve found instantiating GameObjects and constantly running unnecessary code (like in Update() ) has a bigger impact.

I was seeing frame rate drop from 35-55 to at least half, often as low as 9 whenever the level initialization code ran. Fixing it was not too hard actually, I created a Tick class, that basically executes a local Tick method on an interval, moved the Update code to the overridden Tick method, then call the Ticker method in the class from Update. I set the ticking at 1 sec by default, and that alone seems to drastically lower the impact of the level manager (unlike input processing, most classes don’t need real time updating). Later I’ll play with the delay to see what I can get away with.

Then I moved all the level initialization code to a separate method, and run it in advance of the level being complete, preloading some arrays and fields. Then when I’m ready to start the level, I just copy the information to the actual runtime classes. For example, the ships are instantiated when the current level is 60% complete, then moved into a shufflebag for deployment just before level start (when the level text is displayed).

The net of just adjusting those two things is a constant frame rate of 44-64 on desktop.

As for mobile, well, I’m testing using a Galaxy tab 2 7", thus far I’ve seen little performance difference between desktop and tablet. I’ll need to try some lower end devices before go live. So long as I keep RAM usage and graphics fill rate to reasonable usage, then the gap between desktop and tablets (at least) is really minimal. My daughters Galaxy Note 8", with it’s quad core and 2 Gb of ram, will usually run these games faster than my 2 yr old stock Dell with dual core and 4 Gb of RAM.

Of course, if physics does get in the way, I can shift the ships from physics driven to transform based with a single prefab setting :slight_smile: (also auto converts the rigidbody to Kinematic, only the projectiles need be physics driven at that point. But… the ships don’t physically respond to damage the way they do now when I do that (mostly… actually they’ll auto drop into physics after their health reaches 0, so they drift/sink, but it’s still not as nice as the random tossing and rolling they do now )

Thanks for your feedback!

Cheers,

Galen

Hi everyone, I am the artist Galen recruited to help him update Fowl Invaders. I recently graduated from game art program and am having a blast (after four years of schooling) working on a real game! And Galen is great to work with too, so life is good right now. :slight_smile:

During school I did not learn to use unity at all, we mainly focused on Unreal so hoping over was an adventure. There are allot of things I love about Unity; but man, do I miss material editor!

What you see now in the video is merely bare bones and planning, I still have almost a weeks time to work on it and plan to polish it up allot. Meanwhile ill take any thoughts and tips you have.

Thanks!

-Vai

Hi all,

Here’s a new video of our progress.

All feedback welcome! (unless it’s profoundly negative, then I’d like to direct you to the WIP thread just below this one, who’ll be more than happy to assist you :smile: )

Cheers,

Galen

As part of indie “right of passage” our little game gets it’s release title and a little space on Indiedb.com.

Fowl Invaders: Reheated is up on indiedb, check it out

It really is the small things that feel important :smile:

Cheers,

Galen

Looks nice!