Monday, January 2, 2012

Day 17: Explosions and Hit Detection

I'm back from vacation and have made progress! I've finally got around to implement hit detection on the shots from the user ship so that the enemy ships with be removed once shot. I've also coupled this with a explosion sprite to give it a space battle feel. I'm also planning on uploading around 10 different explosion sprites and have it randomly choose which one to display to mix it up. The menu has also been tweaked to look better with better button placement and an updated background.

The first stage is also in development. I've set it up so adding new ships will be easier than before and are all timed based upon when the level starts. To initiate the first level, I've changed it from being automatic (which seemed very abrupt) to having a "Tap to Start" mechanism. I'll try to make the 1-1 stage around 60 seconds for adequate game play. Score will be added shortly after that to make sure the player's performance has some indicator. After that, I'll be working on the enemy attacks to keep the game more interesting and fun.

Fun fact: Currently at 800 lines of code

That's all the updates for today. I'll be showing pictures of the Menu screen in the future along with the first stage when it's completed and ready.

Happy 2012 Everyone!

Friday, December 23, 2011

Day 7: Enemy ships and movement patterns

Even though I'm on my Christmas vacation I managed to scrap together a prototype of my first stage. I've created some bitmap art for my enemy ships and have them coming into the screen in a "V" pattern, collecting in the center in a group, and then moving in uniform left and right. This pattern is very similar to Galaga ships flying into the screen then grouping together in the center. Writing the movement's by hand was a pain so I'm hoping to figure out a more effective way to do this for the rest of the stages and levels. If any game programmers reading this have ideas, please let me know in the comments!

There still is much more for do. I still need to implement the enemies attacks, the hit detection, the rest of the first stage, score, and more. Hopefully I can get more done on my vacation but I'm quite satisfied with my progress today.

I've also been able to test this on a real android phone instead of a virtual android device that comes with the SDK. The real phone runs the game much faster and looks a lot nicer. This project has also convinced to me to upgrade to an android smartphone whenever I secure the funds.

Hope everyone's holidays is going well!

Best Regards,

Wednesday, December 21, 2011

Day 5: Shooting and HP

If you noticed,there was no day 4 post. This project is extensive but I still have real life matters to attend to so there may not be a blog post every day. The posts will still be numbered based up how long since the project began to keep it resembling a journal.

Progress today has been good and noticeable visually. I've fixed the problem with my shots not displaying (mixed up my X and Y coordinates) and implemented an HP bar for the ship based on a percentage. I've also drawn a background to make it look more appealing and not so plain.

Today also is the day that I show my first screenshot of my progress! Now before anything I must post the disclaimer.

DISCLAIMER: This and every other progress photo do not represent the final product. Everything in these photo's are subject to change without notice and only are meant to show progress in development. This and other related photo's are from various stages of development but will remain posted for the sake of visually understanding the progress made. Actual screenshot of the final build will be posted on the android market webpage once the game is released.

Now, without further ado, here is the first public screenshot of my game currently in very early in development! Again, I want to emphasize that ALL GRAPHICS in the picture are simply placeholders to test how it would look and make sure size/hit detection is correct. These graphics will ALL be replaced before release with much more modern and good looking alternatives. Still looking for artists to contribute anything if you are reading :)

I also want to let everyone know that I'll be in palm desert for the next 5 days for the holidays. Hope everyone has a great holiday season and my blog will most likely go without updates during this time.

Best Regards and Happy Holidays

Monday, December 19, 2011

Day 3: Building the UI

Today I've managed to implement animated sprites. This means that my little ship on the bottom of the screen now has a moving fire and doesn't look so blocky. I've also started to build my shooting system where when you tap the bottom of the screen it will fire a shot upward. This is also accompanied by some basic controls where the bottom left moves the ship left and the bottom right moves the ship right. I've been having trouble getting the shot to display its associated image but I can't figure out why at all. Hopefully that will be resolved tomorrow.

I've also been able to re implement the main menu after it was disabled during the transition from openGL to canvas. The rest of my work has been mostly technical, under the hood, stuff like implement an FPS counter and making sure it stays constant with the game engine. Once the shooting it enabled i'll work on adding enemy ships and hit detection which is sure to be a chore.

Sadly, there will be no pictures uploaded today but it honestly looks ugly but once I've made more progress, added a background, and colors i'll have it uploaded here.

Also, if anyone is a good artist and wants to donate some sprites/images/animations i'll be sure to find a use for them. Anything space related such as ships, missiles, aliens, enemies, backgrounds or whatever you could think of would work. until then, I'm making rough placeholders in Photoshop and using those until I have something better.

Again, hope everyone's Holidays are going well!

Sunday, December 18, 2011

Day 2: Progress Being Made

After some tinkering and tutorial work with openGL ES it has become quite obvious that the functionality it offers is too advanced for what I need it for and the complexity makes it very difficult to use. I've decided to instead load bitmaps and draw through the android canvas which has proven to be much easier. From here, I've achieved drawing pictures on the screen and implemented drag/drop movements, automatic movements (great for AI enemies), and an exit button (button of the screen currently) all quite simply. Handling touch events is pretty easy in android compared to what I was expecting.

From here, I can start loading in all the UI materials I need for the game. These include a bottom bar for score, lives, time, level and other relevant information. I can also start creating my user's ship and designing it's movement and attacks similar to a galaga shooter. Once that basic framework is in place, I can start designing enemy ships, enemy attacks, movement patterns for them and really begin creating stages and levels.

I'm happy with my progress for being very early in the development phase. Once I've made decently visible progress I'll begin uploading pictures of my work.

Happy Holidays!

Saturday, December 17, 2011

Day 1: First Steps

This is my first official blog post on my new blog Journey Through Android. This blog will be dedicated to chronically my journey through developing an android application that will (hopefully!) be released in the android market upon completion. My name is Mehdi, I am a CS major at Cal Poly Pomona and 19. I have not  attempted anything in android before but I do know JAVA and have a willingness to research and learn everything I need to push through this project.

The project I'm going to attempt to create in a currently unnamed space shooter similar in style to Galaga. It will encompass many different aspects of android and java programming along with openGL for graphics and will be no simple task.

So far I've created the basic template for my main menu GUI including New Game, About, High Score, Help, and Options. These buttons were made using the android provided XML style menu's. I've also included a basic title at the top. I've began exploring how to make the actual game through OpenGL and bound that test openGL activity to my New Game button. The main problem facing me at this point is figuring out how to physically move my objects drawn in openGL in response to touch screen inputs.

The more I research about Android and openGL, the more I realized how much I need to learn. This project is going to be a huge undertaking and I'm excited to meet the challenge.

See you on the other side,