Suggest a simple game for a programmer's portfolio

Started by
8 comments, last by Yvanhoe 14 years, 8 months ago
Hi everybody : ) I'm about to sign up for a job interview for a junior games programmer ( C++/Lua Developper) and I need to make a cool looking small game for my portfolio. I'm posting here, cause I think you people might help me with ideas for a game of some kind. If you're interested here's some things you should have in mind about the game: - 2d, for sure; - I still cannot rotate images - this is an important limitation to consider (imagine a tank that goes all directions - that would be cool but i cannot draw the tank facing all of them - 4 max : ) - I'm not an artist - although i like drawing and animation a haven't got the time to draw sprites and stuff... - Only single player - I think of completeing it in like 2-5 days, so it may be bigger than Tetris or Pacman but, no Worms Armageddon for sure.. What I was thinking was a 2d shooter deadmatch with bots, where you move up,down,left and right using WASD and can shoot in any direction with the mouse. Players would be plain circles (sux, i know... : ) I was also wondering of I can make a really cool game using only circles with cool special effects and stuff (a can make objects like the World Of Goo curosor, which i find really dope!), but a cannot think of anything other that cool. Any ideas for the 2D shooter, or the circle-only game, or a completely different game would be appreciated. note: the company develops city-building games and strategies, but that's not that important.. thanks in advance : )
Advertisement
Quote:I'm about to sign up for a job interview for a junior games programmer ( C++/Lua Developper)

Good luck.

Quote:I need to make a cool looking small game for my portfolio.
...snip...
- I think of completeing it in like 2-5 days, so it may be bigger than Tetris or Pacman but, no Worms Armageddon for sure..

2 to 5 days is very short if you are wanting to design and code a game in that time. If you want a good portfolio it would be better to spend a bit more time making the game more polished.

Because of this you are needing a game completely designed for you (as you will not ahve the time to do both). Very few people will have the time (or the legal flexibility if they are working in the industry) to do this for you.

However, I am in a position to do so (and I see it as a challenge).

but first:

Quote:- I still cannot rotate images - this is an important limitation to consider (imagine a tank that goes all directions - that would be cool but i cannot draw the tank facing all of them - 4 max : )

This is no problem. In many graphics programs they have tools to do this for you so just draw your tank and then use a graphics program to do so. These will allow you to rotate your image arbitrarily.

I am sure that GIPMP, a free (and quite good graphics program at that) will do this, so it will only cost you the download.

There are also a few free graphics out there on the web, but that might take more time than you ahve to search them all and check that their licensing allows you to use it for your intended purpose. But if you are that graphically challenged, then it might be the only option.

I am not artist either (as are most programmer I know) but programmer art is fine if you are not going for an artistic position, just try to make it look tidy and not scrappy (and vaguely like what it is supposed to represent).

Quote:- Only single player

You can ahve a turn based game where players use the same computer (called Hot Seat). This will allow you to have multiple players rather than just one.

So now onto the game design:

Isolation

(this is entirely my own game design and I am making it public domain - I just ask for recognition as the original designer - ie: putting my name in the credits: Paul Wilson)

This is a turn based strategy game played via hot seat (that is one player take their turn, then the next player, and so on).

The main aim of the game is to eliminate your opponents pieces. You do this by swapping orthogonally adjacent pieces in an attempt isolate the piece from any of your opponents pieces (so it is left by itself), either surrounded by you own pieces or by eliminated pieces of either player.

The board of the game is divide up into a 8 by 8 matrix of squares (like a chess board but you don't need alternating colours for each square).

Players start with 32 pieces each, which are randomly placed on the board at the game start (although you can place them in a pattern if you like and you can have this as a "structured" play option).

The game rules
- If a piece is ever placed so that it has no pieces of the same side in any direction (up or down, left or right or diagonally) for what ever reason then it is immediately removed from he board and "eliminated".

- Pieces can only be swapped between orthogonally adjacent (that is directly up or down, left or right, but not diagonally) pieces.

- Players are free to swap any two orthogonally adjacent pieces, even if they are of the same side or even if they are the opponent's pieces.

- If an orthogonally adjacent space does not have a piece in it (the piece there was eliminated earlier), then that piece can be swapped in that direction.

- The only restriction to swapping pieces that are orthogonally adjacent is that if the same two pieces were swapped by the last player on their last turn, then they can not swapped back into their original places (essentially you can not undo the last move by your opponent.

The game ends when:
- All of one player's pieces are eliminated from the board.

- There are no more valid moves by the current player (remember they can still move their opponents pieces).

- One player forfeits.

- Both players declare a stalemate.

The winner of the game is the one with the most pieces on the board (and wasn't the one that forfeited) when the game ends. If both players have the same number, then it is a tie.

That is pretty much it. No fancy graphics are needed (you can use coloured circles for the pieces), but there is scope for you to make them more interesting if you wanted.

The gameplay is actually more deep than it might first seem and there is quite a bit of strategy that you can use.

As for the coding, it should be pretty straight forward (I did the original in a couple of days - including learning enough of the programming language to implement it). The rules are straight forward and fairly simple to understand (but feel free to ask questions).

I hope this helps and good luck.
To Edtharan- what tools would you use if you have to make the above game you mentioned.i have learned c++ please tell me what else do I have to learn So that I will be able to make the game you told above.....

Thanks man
Space Invaders is a pretty simple game. Should be pretty fast to program too. It was the first game I made.

With the circles, you could make some kind of Katamari like game.
Side Scrolling Katamari, roll your ball and when it hits stuff it gets bigger, then you can use it as stairs, pull it in half and play balancing games with weighted platforms and whatnot.

Call it Marsh mellow Madness xD
Breakout is a simple game that gives you lots of room to add personal touches. Get the basic gameplay done in a day, then spend the rest of your time on polish items like sound effects, particle explosions when bricks are destroyed, etc.

A really simple, yet super polished game will give a better impression than a feature-full, buggy "tech demo".

(Another excellent way to make sure a simple game feel polished is to make sure you have some UI. Title screen, results screen, etc. )
If you're going with the shooter game I have an idea. You coudl try using enviurment that can be destored. If it's to much work makign everything destructable, just do it to the less htick walls. Then, you should let the player alter the enviourment. Like, right-click and draw a line to creat a baricade.(Which the enemy could destory)
Quote:Original post by neerajshastry
To Edtharan- what tools would you use if you have to make the above game you mentioned.i have learned c++ please tell me what else do I have to learn So that I will be able to make the game you told above.....

Thanks man

Well I used Pascal (this was before Delphi) and made the graphics with the built in vector routines.

Now days, I would use C++ (or any other language) with a basic 2D graphics engine (direct draw, OpenGL or such) and then use G.I.M.P. to create the graphics (bmp files are easiest to work with as far as I know as they are direct data and you don't need to decode them much).

Here this should get you started (took me less than 2 minute to do): IsolationPiece.png.

Remember, you are doing this for you programming skills, not your artistic skills. All you need from your art is to make it easy for the player to understand what is going on.

These other games (Katamari, break out, destructible walls, etc), will require level design and such, which takes time. And, as you have stated that you don't have much time, then these would be overly complex.

The other game I would go with is Space Invaders as it does not require level design, but I would still prefer to go with a unique game design as it would show you can do from a rough description of the game to a finished game (and that is what they want), where as doing an already existing game, you are not showing that you can take a design you have never seen before and turn that into a game.

From the sounds of it, you have never programmed a game at all, and it also sounds like you have not had much experience at programming in general.

There is a saying: "Rome was not built in a day.". So too is your game programming career. You will not make or break it on one game, nor will you make or break it on one job, nor will you make or break it on one job interview.

When building a house, would you put the roof in place before the walls. Would you put the walls in place before you laid the foundation.

This also applies to your career, or even just programming games.

Many of us that have been doing this for as long as we have, we tend to forget at how hard this can be for a complete beginner, or even if they are experienced in other aspects of programming but are only now new to games programming.

Start small, start simple. Don't go for something too complicated or you will find it too difficult.

With human psychology (which I only ahve an interest in rather any qualifications) we are not immune to the Pavlovian response. This is a trained response to a given stimuli. If we attempt something and repeated fail at it, then we will learn that we can not do it.

If we start by making a too complex game and because it is too complex, we can't complete it, we get discouraged. If we repeatedly keep trying to make too complex a game and keep failing we learn that we can not do it.

But if we instead start simple, and then from that foundation build up to the more complex stuff, then we can end up doing what would be far too complex for us to undertake when we first start.

This is why we go to school. We aren't born knowing calculus (although it would be much easier to pass maths tests if we were :D ) we have to learn it. But before we learn calculus we need to learn algebra, but we need to know multiplication before that, and before that we need to know addition.

Start with something simple. Something so simple that you think it really would not take you much effort to do (you will be surprised how hard it will really be). Then when you have done that and learned from it, you can try for something more complex.
2D side scrolling shooters are normally pretty easy to implement, and you can add a lot of graphical flair to them. Dig Dug might be another good one that would show a complete game, but shouldn't be too intensive to write.
Bomberman clones are also popular ...

This topic is closed to new replies.

Advertisement