Well, as of Sunday just gone (29-November), the PGD Annual 2009 - Arcadia competition finished.
I uploaded my final competition version of the game to the site and now it's just a waiting game to see how I fair...
I don't expect to win any prizes, but if I do, hey that would be great! ;)
Good luck to all the compeditors :)
Now I just have to improve (and bug-fix) my game till it is 'perfect'! LOL
Till next time all!
Friday, 4 December 2009
Friday, 27 November 2009
Hi all, well for better (or for worse), I have uploaded my entry to the competition page as I am not sure if I will get time to work on it more before the due date (29-November)...
I have also updated this version (in .7z format) to my website:
http://paulsbitsandbytes.webatu.com/dod
I have updated the .pdf instructions file so it has all the new and changed features in it (satellites, game continues, etc).
I am fairly happy with the results - I managed to squeeze in all the competition required features:
You can play the complete game (short of quitting) using only the mouse if you wish
Joystick is also supported, but the judges will be looking for complying with (1), so I should be safe there
I have done all of the above
I have even managed to get (3) working, and theoretically, even (2) - not tested though
The game could have more features and more variety, but for the first time, I have "completed" a game, and a competition!! Woo! Hoo! So I am very pleased with myself
I have also updated this version (in .7z format) to my website:
http://paulsbitsandbytes.webatu.com/dod
I have updated the .pdf instructions file so it has all the new and changed features in it (satellites, game continues, etc).
I am fairly happy with the results - I managed to squeeze in all the competition required features:
Your game should use one of the two control methodologies specified below:-
1. The player will use the mouse and only the left and right mouse buttons, no other controls allowed
2. The player will use no more than 10 button style inputs (e.g. Up, Down, Left, Right, Fire, Punch, Kick, Duck) for normal controls.
You can play the complete game (short of quitting) using only the mouse if you wish
Joystick is also supported, but the judges will be looking for complying with (1), so I should be safe there
TA - Rules applying to (a) A computer game
1. Your game should be organised into levels.
2. Your game should get progressively more difficult as the game progresses.
3. Your game should provide the player with a limited number of 'continues'.
4. Every new game should start in the same place and the overall flow of the game should follow the same path for each successive game.
I have done all of the above
BP - Bonus Points (each one is worth 10pts. NOTE:- These are OPTIONAL elements only and the scoring may be subject to change depending on the number of judges)
1. Make you game multiplayer (e.g. allow multiple players on muliple PC's, or multiple players on a single PC by way of a splitscreen mechanism - Note:- These are just two examples of multiplayer mechanisms)
2. Make your game arcade cabinet ready (i.e. Provide full configuration options such that it could be loaded on a PC in an arcade cabinet and then be stuffed with quarters).
3. Provide an on-line high score table for your game.
I have even managed to get (3) working, and theoretically, even (2) - not tested though
The game could have more features and more variety, but for the first time, I have "completed" a game, and a competition!! Woo! Hoo! So I am very pleased with myself
Thursday, 12 November 2009
I'm getting closer to finishing my entry now (I know, I know...only 17 days left)
I have changed the game-play a bit - now you start with six (6) defence satellites each level orbiting the Earth, and when you fire at an asteroid the nearest satellite to the target point is the one that fires.
Each satellite gives you 1/6 of your total maximum firing energy allowance.
NOTE you cannot fire through the Earth (need line-of-sight) so if you have missing satellites, and your target is on the other side of the planet, near gaps in the satellite 'grid', then you can't fire if you would hit the planet...
The closest satellite to the current cross-hairs position has a green circle around it, unless you have no line-of-sight, in which case there would be no green circle around any satellite, and you can't fire at the current target location.
If asteroids hit a satellite, then the satellite is destroyed, and the asteroid splits or is destroyed.
Each time a satellite is destroyed, your maximum available energy is reduced by 1/6, down to 0 energy (or no shots allowed any more).
The game is much easier IMHO now too.
I have changed the game-play a bit - now you start with six (6) defence satellites each level orbiting the Earth, and when you fire at an asteroid the nearest satellite to the target point is the one that fires.
Each satellite gives you 1/6 of your total maximum firing energy allowance.
NOTE you cannot fire through the Earth (need line-of-sight) so if you have missing satellites, and your target is on the other side of the planet, near gaps in the satellite 'grid', then you can't fire if you would hit the planet...
The closest satellite to the current cross-hairs position has a green circle around it, unless you have no line-of-sight, in which case there would be no green circle around any satellite, and you can't fire at the current target location.
If asteroids hit a satellite, then the satellite is destroyed, and the asteroid splits or is destroyed.
Each time a satellite is destroyed, your maximum available energy is reduced by 1/6, down to 0 energy (or no shots allowed any more).
The game is much easier IMHO now too.
I have uploaded the latest version (6MB) which includes the new game-play (satellite defence grid), and now nicer asteroid png explosions!
I also fixed a joystick issue where it wasn't working for me at home...
http://www.paulsbitsandbytes.webatu.com/dod/dod_download.php
I haven't updated the .pdf that comes with the game yet to reference the new satellite stuff, but just read the instructions above...
Any feed back would be great!!
cheers,
Paul
Friday, 30 October 2009
I've been following tutorials and posts about IMGUI (Immediate Mode GUI) systems, and have been adding a simple GUI to Day Of Destruction!
IMGUI Links:
http://www.johno.se/book/imgui.html
http://sol.gfxile.net/imgui/index.html
http://www.mollyrocket.com/forums/viewforum.php?f=10
This is so I can hopefully add in control-configuration within the game itself...
Here's a screenshot of the test GUI I have whipped up using IMGUI techniques
Here is an on-line video of the GUI in action (including hot-items as flashing blue)
http://paulsbitsandbytes.webatu.com/dod/downloads/gui_test/gui_test.html
Till next time :)
IMGUI Links:
http://www.johno.se/book/imgui.html
http://sol.gfxile.net/imgui/index.html
http://www.mollyrocket.com/forums/viewforum.php?f=10
This is so I can hopefully add in control-configuration within the game itself...
Here's a screenshot of the test GUI I have whipped up using IMGUI techniques
Here is an on-line video of the GUI in action (including hot-items as flashing blue)
http://paulsbitsandbytes.webatu.com/dod/downloads/gui_test/gui_test.html
Till next time :)
Tuesday, 27 October 2009
Well, I have managed to improve the joystick handling when playing the game so now it should be playable (ignoring difficulty issues) by using a joystick or game-pad.
Even an analog joystick should work nicely (touch wood), as it should allow the cross-hairs to move at pretty much any speed up to the maximum speed :)
Instead of relying on SDL joystick events, I am now checking the joystick axii in the render routine like so:
Begin
FCrossHairs.x := FCrossHairs.x + cMoveSpeed * GetJoyAxisValue(TGame(FOwner).JoyStick,cJoyAxis_X,cThreshold) * ATimeSlice;
FCrossHairs.y := FCrossHairs.y - cMoveSpeed * GetJoyAxisValue(TGame(FOwner).JoyStick,cJoyAxis_Y,cThreshold) * ATimeSlice;
End
Get it here while it's still hot ;-)
http://www.paulsbitsandbytes.webatu.com/dod/dod_download.php
cheers,
Paul
Even an analog joystick should work nicely (touch wood), as it should allow the cross-hairs to move at pretty much any speed up to the maximum speed :)
Instead of relying on SDL joystick events, I am now checking the joystick axii in the render routine like so:
Function GetJoyAxisValue(Const AJoystick : PSDL_Joystick;If FHasJoystick Then
Const AAxis,AThreshold : Integer) : Single;
Begin
Result := SDL_JoystickGetAxis(AJoystick,AAxis);
If Result < AThreshold Then
Result := 0
Else
Result := Result / 32768;
End;
{..}
Begin
FCrossHairs.x := FCrossHairs.x + cMoveSpeed * GetJoyAxisValue(TGame(FOwner).JoyStick,cJoyAxis_X,cThreshold) * ATimeSlice;
FCrossHairs.y := FCrossHairs.y - cMoveSpeed * GetJoyAxisValue(TGame(FOwner).JoyStick,cJoyAxis_Y,cThreshold) * ATimeSlice;
End
Get it here while it's still hot ;-)
http://www.paulsbitsandbytes.webatu.com/dod/dod_download.php
cheers,
Paul
Monday, 19 October 2009
I have uploaded a new version of Day Of Destruction!
http://fpc4gp2x.eonclash.com/downloads/DOD.7z
I have reconfigured the control inputs via ini file stuff, and have updated the documentation help file (now is a pdf file).
Most actions in the game can be controlled via multiple input types (keyboard, joystick, mouse - configurable via the ini file)
You can now control the complete game (except for exiting) via joystick or mouse only
You can now use the joystick/mouse to add credits, start a game, play the game, and enter high scores!
The joystick movement might need some work still though - I might need to change to using a thread to poll SDL joystick movement
Enjoy, and feedback would be most welcome
cheers,
Paul
http://fpc4gp2x.eonclash.com/downloads/DOD.7z
I have reconfigured the control inputs via ini file stuff, and have updated the documentation help file (now is a pdf file).
Most actions in the game can be controlled via multiple input types (keyboard, joystick, mouse - configurable via the ini file)
You can now control the complete game (except for exiting) via joystick or mouse only
You can now use the joystick/mouse to add credits, start a game, play the game, and enter high scores!
The joystick movement might need some work still though - I might need to change to using a thread to poll SDL joystick movement
Enjoy, and feedback would be most welcome
cheers,
Paul
Wednesday, 14 October 2009
Hi all,
I have now managed to create my own packfile format (with zlib compression). I have stored all my fonts, textures, sounds, and music in it with easy access (via TMemoryStreams) from my program!
This has two bonuses:
There is a new version of the game for download (around 4.7 MB). This version includes a .rtf (rich text format) file with instructions (and feature todo list), and background music...yeah! :)
http://fpc4gp2x.eonclash.com/downloads/DOD.7z
Please DO try it out and let me know what you think!
ANY feedback is welcome so I can improve on the game :)
NOTE: If I ever manage to add password protection to my packfile reader/writer classes, then I will release the source code so other people can use it :)
Email: paulfnicholls AT gmail DOT com
cheers,
Paul
I have now managed to create my own packfile format (with zlib compression). I have stored all my fonts, textures, sounds, and music in it with easy access (via TMemoryStreams) from my program!
This has two bonuses:
- All resource files are in one neat package.
- As it is my own format, it protects (to a reasonable degree) the music files I have been allowed to use in my game (thanks Imphenzia! [http://soundtrack.imphenzia.com/]).
There is a new version of the game for download (around 4.7 MB). This version includes a .rtf (rich text format) file with instructions (and feature todo list), and background music...yeah! :)
http://fpc4gp2x.eonclash.com/downloads/DOD.7z
Please DO try it out and let me know what you think!
ANY feedback is welcome so I can improve on the game :)
NOTE: If I ever manage to add password protection to my packfile reader/writer classes, then I will release the source code so other people can use it :)
Email: paulfnicholls AT gmail DOT com
cheers,
Paul
Friday, 9 October 2009
WooHoo!! I have gotten permission to use two .OGG music files from the site below for free (as long as I keep my game free):
http://www.imphenzia.com/soundtrack/
So now my game uses SDL_Mixer to do the sounds, AND it now has the two .OGG tracks as background music...pretty sweet I think, in my opinion :)
Hopefully I will have a new download for you all very soon to show off the background music!
http://www.imphenzia.com/soundtrack/
So now my game uses SDL_Mixer to do the sounds, AND it now has the two .OGG tracks as background music...pretty sweet I think, in my opinion :)
Hopefully I will have a new download for you all very soon to show off the background music!
Wednesday, 7 October 2009
Well, another day, another update LOL
One thing I am really pleased about is the fact that I now have an ONLINE high-score table working!!!
As well as keeping a local high-score table in the same folder as the game, it attempts to access the online version and update and/or read that too.
If it can update or read the online version, that will overwrite the local one and you can see what scores anyone else has gotten...yay!
The new version has been uploaded to here:
Day Of Destruction! download.
You can go here to check the best top-10 high scores!
online high-score table
Hopefully I will finish a read me file with all instructions :)
One thing I am really pleased about is the fact that I now have an ONLINE high-score table working!!!
As well as keeping a local high-score table in the same folder as the game, it attempts to access the online version and update and/or read that too.
If it can update or read the online version, that will overwrite the local one and you can see what scores anyone else has gotten...yay!
The new version has been uploaded to here:
Day Of Destruction! download.
You can go here to check the best top-10 high scores!
online high-score table
Hopefully I will finish a read me file with all instructions :)
Saturday, 26 September 2009
Hi all, I have now gotten Day Of Destruction! to a basic complete working level now...
You can put in credits, start and play a game (only the singularity weapon works currently though).
If you destroy all the asteroids before the earth damage gets too large (10 asteroid hits currently), you complete the level and you then can go to the next level.
If 10 asteroids hits the earth then the game is over (need to add some continues here where applicable).
If you got a high score (has up to 20 best scores; might change that to 10 best scores), you get to enter your name so it is placed on the high score table!
Otherwise you just go to the main screen ready to enter more credits and play more games :)
I will try and upload this version somewhere with the necessary files so people can try it out...it does need lots more tweaking (asteroid speeds, amounts of asteroids coming at the earth at one time, etc.), and the main primary weapon needs to be added, but at least the basic game is working...yay!
Till next time dudes ;)
You can put in credits, start and play a game (only the singularity weapon works currently though).
If you destroy all the asteroids before the earth damage gets too large (10 asteroid hits currently), you complete the level and you then can go to the next level.
If 10 asteroids hits the earth then the game is over (need to add some continues here where applicable).
If you got a high score (has up to 20 best scores; might change that to 10 best scores), you get to enter your name so it is placed on the high score table!
Otherwise you just go to the main screen ready to enter more credits and play more games :)
I will try and upload this version somewhere with the necessary files so people can try it out...it does need lots more tweaking (asteroid speeds, amounts of asteroids coming at the earth at one time, etc.), and the main primary weapon needs to be added, but at least the basic game is working...yay!
Till next time dudes ;)
Monday, 21 September 2009
Hi all, back again :)
I now have added more information to my game screen display, like how much energy you have left to fire with (each weapon has an associated energy cost which is removed from the energy bar).
The energy bar does recharge over time, but at a slower rate than when firing weapons.
There is also an Earth damage bar, but that isn't implemented as of yet due to asteroids not being able to collide with the planet yet.
Oh yeah, and there are now stars...LOL
I now have added more information to my game screen display, like how much energy you have left to fire with (each weapon has an associated energy cost which is removed from the energy bar).
The energy bar does recharge over time, but at a slower rate than when firing weapons.
There is also an Earth damage bar, but that isn't implemented as of yet due to asteroids not being able to collide with the planet yet.
Oh yeah, and there are now stars...LOL
Saturday, 19 September 2009
I have now have two weapons in the game - a singularity blast as well as the repulsor blast.
The singularity blast creates a swirling mass of particles that will suck any asteroids that are too close into itself and destroy them! It is a bit hard to see in the picture below, but those particles are swirling around their center and are sucking that asteroid into itself :)
The repulsor blast doesn't do anything yet, but it will ;)
I have now also added in an end of level screen which displays the level number just completed, the score and lets you press fire to continue to the next level.
Till next time dudes :)
The singularity blast creates a swirling mass of particles that will suck any asteroids that are too close into itself and destroy them! It is a bit hard to see in the picture below, but those particles are swirling around their center and are sucking that asteroid into itself :)
The repulsor blast doesn't do anything yet, but it will ;)
I have now also added in an end of level screen which displays the level number just completed, the score and lets you press fire to continue to the next level.
Till next time dudes :)
Monday, 14 September 2009
I have now integrated the particle systems into the main game now...see the screenshots below :)
I haven't added in particle trails yet for the repulsor blasts.
There is also no collision detection yet, but the particles from the explosions (including shock-waves) will check for collisions between asteroids and then do the appropriate actions (theoretically) LOL ;)
Repulsor blasts + beginnings of explosions:
cheers,
Paul
I haven't added in particle trails yet for the repulsor blasts.
There is also no collision detection yet, but the particles from the explosions (including shock-waves) will check for collisions between asteroids and then do the appropriate actions (theoretically) LOL ;)
Repulsor blasts + beginnings of explosions:
Explosions expanded:
cheers,
Paul
Thursday, 10 September 2009
Whoa! An update...yay!
I have been working on a simple particle system that I can use to create various effects in my game by tweaking various parameters, and overriding the ResetParticle() and Update() methods :)
See the screenshot and video link below for some explosions including shock-waves! I needed to work on this part as shock-waves are integral to the game where they can repulse or destroy asteroids...
particles test video (swf)
Till next time :)
Paul
I have been working on a simple particle system that I can use to create various effects in my game by tweaking various parameters, and overriding the ResetParticle() and Update() methods :)
See the screenshot and video link below for some explosions including shock-waves! I needed to work on this part as shock-waves are integral to the game where they can repulse or destroy asteroids...
particles test video (swf)
Till next time :)
Paul
Wednesday, 2 September 2009
Tuesday, 21 July 2009
Hi all,
I have now got a basic main title screen, high score table screen (only 2 test scores), and a credits screen.
These rotate between each other with a 10 second delay.
You can press 'C' to add credits (includes add credit noise) at any of the above screens.
You can press 'H' to have a sneak-peak of the high score entry screen (left-right cursor keys moves the cursor...you can't enter names yet).
If you have added credits, you can press '1' at any of the screens (except high score entry) to show a possible play game screen (doesn't do anything yet except look pretty).
On all screens, you can press 'Escape' to exit the program.
You can download the test version here (requires freeware 7-zip (www.7-zip.org) archive program ):
http://fpc4gp2x.eonclash.com/downloads/Day Of Destruction!.7z
Please tell me what you think so far :)
I have now got a basic main title screen, high score table screen (only 2 test scores), and a credits screen.
These rotate between each other with a 10 second delay.
You can press 'C' to add credits (includes add credit noise) at any of the above screens.
You can press 'H' to have a sneak-peak of the high score entry screen (left-right cursor keys moves the cursor...you can't enter names yet).
If you have added credits, you can press '1' at any of the screens (except high score entry) to show a possible play game screen (doesn't do anything yet except look pretty).
On all screens, you can press 'Escape' to exit the program.
You can download the test version here (requires freeware 7-zip (www.7-zip.org) archive program ):
http://fpc4gp2x.eonclash.com/downloads/Day Of Destruction!.7z
Please tell me what you think so far :)
Saturday, 18 July 2009
Friday, 17 July 2009
There is no screen shot today, but I have now got a very crude main screen that shows the title, and the number of credits available.
You can increase the number of credits, or just exit the program currently.
I have also re-factored the code so I now have separate state classes that can read/write the main game class.
Each state class now handles the rendering + key, mouse, joystick events completely on it's own so it is nice and compartmentalized :)
You can increase the number of credits, or just exit the program currently.
I have also re-factored the code so I now have separate state classes that can read/write the main game class.
Each state class now handles the rendering + key, mouse, joystick events completely on it's own so it is nice and compartmentalized :)
Wednesday, 15 July 2009
Here is another screen shot now with fonts!
The fonts in the screen shot (Robotron) can be found on this page:
http://www.empire-of-the-claw.com/Fonts/Fontpages/claws_game_zone.htm
This is thanks to the Font Studio 4.12 created by our very own Nitrogen on www.pascalgamedevelopment.com :)
You can find his project here:
http://www.nitrogen.za.org/projectinfo.asp?id=12
Tuesday, 14 July 2009
Neato! Another screen shot. This one includes some 2d explosions using OpenGL triangle strips with alpha-blending. To be honest, I would like to make them look more like 2d shock waves as seen here:
http://www.espressosoft.com/images/blog/gamepic9.png
Monday, 13 July 2009
I have now uploaded the basic working project code and data to the free version of an Unfuddle (http://www.unfuddle.com/) SVN repository that I created a while back, so at least my precious project is safer than it was...yay! :)
Here is a very basic screen shot where I am trying out some graphics. This includes an Earth graphic + some score/difficulty 'rings' around the planet, and some 3d asteroids rotating around their own axis.
Here is a very basic screen shot where I am trying out some graphics. This includes an Earth graphic + some score/difficulty 'rings' around the planet, and some 3d asteroids rotating around their own axis.
Well, here we are...I've started my very first blog :)
This blog will be all about the arcade game I am programming for the PGD Annual 2009 - Arcadia competition (http://www.pgdannual.com/index.php?m=competition&id=6).
I am writing it using Delphi (Object Pascal), but it should be compatible with Lazarus (www.lazarus.freepascal.org) as well. This means I have the option to make a cross-platform version later on if I wish.
I have already uploaded my design document to the competition website as per stage 1 requirements, and am now doing coding, etc. for stage 2 - develop your game.
I will keep you posted as often as I can :)
Till next time,
Paul
This blog will be all about the arcade game I am programming for the PGD Annual 2009 - Arcadia competition (http://www.pgdannual.com/index.php?m=competition&id=6).
I am writing it using Delphi (Object Pascal), but it should be compatible with Lazarus (www.lazarus.freepascal.org) as well. This means I have the option to make a cross-platform version later on if I wish.
I have already uploaded my design document to the competition website as per stage 1 requirements, and am now doing coding, etc. for stage 2 - develop your game.
I will keep you posted as often as I can :)
Till next time,
Paul
Subscribe to:
Posts (Atom)