Wednesday, December 24, 2008
Of Map Editors and Men...
Friday, December 19, 2008
Holy Crap, it's December!
Wednesday, July 16, 2008
Chrono Trigger Meet Bill Murray!
I am also wondering how time travel could be incorporated into a game as an interesting gameplay mechanic. I'm sure a lot of games explore it but how many actually use it to make the game fun and how many have it as a central theme?
This also got me thinking of Groundhog Day (brilliant movie by the way). Obviously this spawned a game idea but I'm not sure how well I could execute it. Essentially the player would relive the same day over and over again like Bill Murray does in Groundhog Day but every time he accomplishes a goal that has a significant impact on the time line it creates a "time scar" (if you will).
This time scar would make it so this event happens (or happened, semantics with time travel are so confusing) through every iteration of the day. The goal of the player would be to place enough time scars throughout the day to break free of the loop and live the rest of his life.
Though the premise of the game is vague enough it is also clearly an idea that would allow the player to explore various aspect of the world without ever being punished. Say he decides to get shot by a police officer; he would only wake up at the beginning of the day again with all his previous achievements still accomplished. It would be a game about exploration and experimentation.
I used a violent example, possibly to compliment Bill Murray's failed suicide attempt in Groundhog Day, but non violent experiments could take center stage like trying to hook up two strangers or helping a cat stuck in a tree. Heck this could be a lot like Quantum Leap, man what a sweet show.
Tuesday, July 8, 2008
Ramblings of a Bored Fool
A friend and I were discussing his data driven architecture he's coding for his game he is programming. He got to the point where he had a working system when he realized that he had no idea as to what to make with it.
The most obvious choice was pong. He kind of grunted at the idea but we started talking about different takes on the game. There are a millions flavours of pong including (but not limited to) plasma pong, pong RPG, all flavours of battle pongs, etc but how were we to make a new pong that is still interesting?
One of the good ideas we had spawned from a joke. I hate kid's TV shows about kids with cards who duel using said cards and take their game very seriously. I'm takling about winning or losing a match is the difference between life or death (it's a freakin' card game!). So hence card game pong was born!
Essentially the game starts as a regular pong match. Every time the ball hits a paddle the player draws a card. The player can hold five cards in his hand. These cards would have effects in the game whenever they are put into play. An example of this would be a ball split card or a temporary paddle extension card.
What's interesting about the ball split card is that it could be used strategically for the owner of the card by using it against himself. Since the player draws a card whenever the ball hits his paddle if he used the split card just before it hits he would have the right to draw three cards (assuming the ball splits into three balls).
I guess the controls would use the arrow keys or wasd to move the paddle and the mouse to choose cards. My only concern is whether the player will have trouble keeping track of the cards he has while the ball is in play. It would be an interesting experiment nonetheless.
So what are other cool ideas?
Wednesday, May 28, 2008
Summer Projects
I'm too worried that an adventure game, ala classic Zelda games, will be too demanding on the content level. Instead we decided to use some of the lessons we learned in the Outpost project and make a new Top Down Shooter like Shadowgrounds or Moonpod's War Angels.
I won't go into detail about the project just yet because lately my projects don't seem to lift off the ground. I figured I'd post something after a month of silence.
Monday, April 28, 2008
Not Flat Lining...
We got an A+ for it. I have to say my partner deserves most of the credit since he's the C++ guru. I did a little bit of modeling (not enough to actually deserve a mention here) and the scripting for the scene. It's pretty neat how it works in the back, I can create objects from a script file defined by us and change the file without having to rebuild the whole project. It really streamlines the whole process.
Tuesday, April 15, 2008
Java and Game Development
Well while I wait for the end of the exam period and for Zedix and I to have time to fully commit ourselves to our new project I decided to explore java game development. I decided to install Eclipse and use java's own java2d stuff. From what I read it's not the best for game programming, especially when there are APIs dedicated to graphics like JOGL or GTGE, but for what time I have to invest in this project I think it will be just fine.
As far as design goes I figured that I didn't want to divert too far from the way XNA works. Now I know I can't develop something as fancy as XNA (ooh-la-la) but I could design a simple architecture that would emulate the coding feel of it.
Seeing how the major architectural feature that I use in XNA is the drawable component I made an abstract GameComponent class with the basic update and drawing functions. From there I implemented the MainComponent which would hold a list of all updatable and drawable components and iterate through them in every iteration of the game loop.
I'm unexperienced in the whole field of game loops but for how simple my project will be I will simply define a default frame per second (60) and make sure that only one frame can be executed per 1/60 seconds. I'd post some code but nothing in my design is concrete just yet.
Here are a few links that I found useful:
Wednesday, April 9, 2008
End of Semester => Deadlines
Narcoleptic Soccer Rush
Well voting ended today and we finished 7th out of 48! Crazy! We were hoping for top ten and our hard work paid off. I think all the games did well and that the voting was fair (though with so many games some games didn't get as much credit as they deserved). Congratulations to all those who entered the competition. Keep an eye out on the TigSource front page for more details.
Avoid the Asteroids
We are presenting the demo and the XNA framework tomorrow morning at 10:00am. After seeing some of the other projects I'm a little nervous seeing how our demo can't possibly last more than thirty seconds (plus the presentation).
Star Trek Voyager Introduction
I haven't really mentioned this project but we are currently putting the finishing touches on it. The presentation is tomorrow morning at 8:00am. I'd list the project's details but instead I'll point you guys to the Assembla wiki where we took the time to add everything. Right here.
Adventure Game
Well not too much to add here but I'll post the sprite I made for it. I'm pretty proud of it considering that most walking animation I end up studying a current sprite extensively, this one was done looking at the walking cycle.
Wednesday, April 2, 2008
Finishing Touches
XNA makes this really easy for us so basically all I had to do was pop in a font I had drawn a while ago for Outpost and added a few functions to my GUI class. Beforehand I was cheating with my user interface by simply overlaying an image (I know, I know, it's dirty) but I didn't feel like adding the font seeing how I only had to display the introduction text and the game over screen. However the addition of the timer forced me to put it in. I think it looks much nicer.
Sunday, March 30, 2008
New Project
With the competition over and the polls opened until the 9th of April we find ourself wanting to work on a new project. Sadly we decided to cancel work on Outpost for various reasons. The main one being that we used all the lessons we had learned while coding Outpost into NSR and going back to a game with code of lesser quality isn't as appealing.
We dabbled with the idea of a space RPG/turn based strategy game but decided against it considering just how much work would be needed it to complete it. Being a pretty young team I think it was a wise decision to avoid a project that could have taken us a year to complete.
We also thought about making a platformer but Zedix isn't as a big of fan of the genre as I and we couldn't come up with a concept that would seperate the game from the rest of the noise. We both agreed on an adventure/action game similar to the early Zelda games. This choice will allow us to explore simple behaviour (for the opponents) and allow us to build editors to simplify content creation. Heck Zedix already has a basic build to show off.
Friday, March 21, 2008
Narcoleptic Soccer Rush has been released!
http://forums.tigsource.com/index.php?topic=1255.0
Thursday, March 20, 2008
Long time no update
- Title screen,
- team selection screen,
- timer,
- out of bound code,
- basic AI
- Streaker/Referee
- End of game sequence
- Various bugs (however all show stoppers have been stomped)
That being said, we're probably going to get work done on Outpost soon enough.
Sunday, March 16, 2008
Narcoleptic Soccer Rush! (Update)
Well there's a small video showing some updated features. We finally added some walls and the billboards I spent a good chunk of time making. You can see some screenshots in the tigsource thread about the game.
Saturday, March 8, 2008
Tuesday, March 4, 2008
Video Game Name Generator Competition
The basis of the competition is to have a video game name generator choose the title of our game and from there we make a game. We were lucky enough to have a hilarious title popup:
Friday, February 29, 2008
Avoid the Asteroid
However my game developing hasn't stopped completely. In my Advanced Design and Reengineering class we have a project where we have to introduce a new technology to the class and develop something with it. Our group has decided to use XNA which is awesome enough because I didn't really get the chance to work with it in Outpost (having focused primarily on graphics).
The game we decided to work on is an Asteroid type game but instead of shooting at the asteroids you just have to avoid them. Your little saucer follows the cursor so it's a very simple game. I have been slaving at it for the past two days and got it to a playable state. Well it's more than just playable; I added sound and introduction/game over screens.
Tuesday, February 12, 2008
Sounds Effects
I started dabbling in sound effects over the weekend. I bought a cheap mic (Sony F-V120) and walked around my place trying to find stuff that makes noise. I'm using Audacity to get rid of some background noise and apply effects to try and distort the source of the sound (and to also make it sound more like the actual emulated noise).
I was considering getting our SFX from a free source but some of the sites I visited requested that I credit every author for every SFX I used instead of the site itself. Well considering that I needed a boat load and that they were all of sub par quality I decided to make my own. My stuff isn't great but it's better than most of the free stuff I found.
Thursday, February 7, 2008
Not a Big Update
However I did manage to make the window for the resource counter and made a new boss enemy: a mech! Here's a gif showing the mech walking. Sadly there's a graphical error in the firing but it's barely noticeable (it's already fixed for the game).
Monday, February 4, 2008
Oh My Gooses!
- Multiple weapons
- GUI for switching weapons
- A freakin' beating heart!
- Our custom font
There was a lot of optimization on the back side since we were already getting weird slow downs. We found out, through various sources, that early optimization is bad so we were extra careful only removing various memory allocations inside our update and drawing loops that weren't necessary. I think we did a pretty good job (by we, I mean my partner who learned to use the CLF profile and Nprof pretty efficiently).
Wednesday, January 30, 2008
Random performance loss...
Since we count on XNA to time our loops perfectly we get smooth movement by increment/decrement the x, y value whenever we want to move. If a draw pass is missed and the game updates twice then the position will jump two pixels, something we thought was very noticeable (considering that we are working on a very small scale). We tried pretty much everything to try and slim down the functions but it never fixed the problem... then we stumbled on Shawn Hargreaves's blog and his explanation on random slowdowns.
Our conclusion, based on his explanation of the GameTime class, is that the random framerate drop (for only a single frame every 100-200 frames) is caused by garbage collection. Gah...
On a good note I managed to make a GUI that I'm pleased with, check 'er out!
Monday, January 28, 2008
Game Design
What's so interesting about the book is that it doesn't tell you how to make a good shmup or how to make the coolest flight simulators, instead it focuses on the psychology behind fun and games. So what makes a game fun? Well I'd be spoiling the book if I told you, wouldn't I?
Though I'm going to swear by Raph Koster's book as if it was the Bible and he was Jesus (because Jesus wrote the Bible*) I have to mention I found other great resources on good game design. Some of these are more axed on specific aspects of it (like level design) and some focus on the higher level details.
- The 400 Project
- Game Studies
- Lost Garden
- Much better blog than this one
- Most importantly, this post
- Valve wiki on level design
*Don't quote me on that...
Sunday, January 27, 2008
Pixel Art
And so you can imagine having those explosions tile and igniting in a cascade motion all over a tank sprite... just wicked...
[edit]I'm using Photoshop Elements 4.0 for my pixel art but that can be a little pricy (I was lucky and got a copy with my Wacom Tablet). In case you want to use free software and think MS Paint is a little dated here's a good tutorial on how to setup the GIMP for pixel art.[/edit]Saturday, January 26, 2008
Project Outpost, wow...
Knowing this I knew that I had to scale back and start with something small. My first idea was to make a breakout clone that had a small story tacked on to the gameplay. The reason behind this choice was to be able to stay motivated and finish the game with a degree of polish. I never started on the coding of the project because I had told myself that I would start as soon as I knew I'd have the time to invest in it but most of the sprites had been drawn.
Two weeks ago my buddy who had worked on Popo contacted me telling me that he had started coding a shmup with base building elements. He showed me a screenshot and I knew right there and then that I had to get involved.
All his artwork was placeholder art taken from various online sources. I figured that since the project had a simple enough scope we'd be able to finish it.
So we got together, discussed some of the games feature and came to a consensus. So far my involvement in the project has been pixel art for all the sprites and tiles but I hope to move onto coding once the graphics have all been assembled.
The project uses XNA 2.0 and C# for development. All graphics were made in Photoshop Elements 4.0 in a 32x32 pixel grid to achieve the SNES-era look. We have already invested a large amount of time into it and reached an important milestone at the beginning of the week:
- Tile engine that picks random tiles from a specific set to avoid the "grid" look.
- Placeable walls that link up together when placed one next to the other.
- Placeable turrets that look in a specific direction and will only fire once an enemy enters its perimeter.
- Monster generation with layered sprites which allows us to make breakable parts.
Thursday, January 24, 2008
All Formalities Aside...
<A little bit of history> So as a teenager I was convinced that I wanted to make video games. I ran a Message Board Based Role Playing Game called Oblivianatus for about four years and thought I had the greatest ideas for RPG story lines. Like any snot-nosed teenager who has no clue about such things I would sit on the couch playing games thinking "oh they should have added this or that feature" and that my ideas would make me millions. So far they haven't.
After my first year of university I wanted to make a video game so I started work on a project I simply called The Adventures of Popo. It was supposed to be a Zelda-esk game where a monk traveled through a magical/oriental land exploring various temples trying to unlock the mystery of his past.
A friend and I started work on it (my friend did all the programming, though I helped a little with some of the algorithms)... I'm pretty surprised at how far we got into the game. At the end though our inexperience would kill the project; it was way too ambitious for a first project and all the different hand made pixel art I had to do was wearing me out. (Though working with DirectX7 and C didn't help much either!)
I attempted to work with directX9, mdx, opengl, sdl, allegro, and whatever else but I never really got the hang of any of them. My first completed game was a console application tic tac toe and connect 4 clone that I, so cleverly, called QuadConnect. Screenshots, preview, and source code can all be found on a thread I wrote on the gamedev forums.
Fortunately time and patience has rewarded me and my partner in crime and we now started work on a new project (expect many posts related to it later on).
On a completely unrelated note I would like to point you in the direction of Ravuya. He was the major character in inspiring me (indirectly) to join the indie gaming community.
Introductions and such...
I have always loved video games and anything related to computers so it seemed like a logical choice to pursue it as a career (though I don't really know what I'd like to specialize in).
I don't really like to spread private information for the world to see and I'm sure if anyone ends up reading this that you don't want to know that my girlfriend and I had a fight or that my cat* vomited on the carpet.
I'll try and keep posts oriented around video games, software engineering, and game design. If this changes with time: I sincerely apologize. Oh and before I publish this, I would like to let you all know that I am not an expert, I do not pretend to be an expert, and if I ever post code on this blog it will probably be riddled with bugs, inconsistencies, and follow bad practice. Feel free to correct me and criticize everything and anything I do.
*I don't have a cat.