|
Poll Result |
|
|
How good is War Pong? |
|
|
It's super! |
|
9% |
[ 1 ] |
It's a good distraction. |
|
27% |
[ 3 ] |
It's alright, but you know... |
|
18% |
[ 2 ] |
Could be better. |
|
9% |
[ 1 ] |
It's bad, but it could be worse. |
|
9% |
[ 1 ] |
This sucks! Why did you make me waste my time on it? |
|
27% |
[ 3 ] |
|
|
|
Total Votes : 11 |
|
|
|
|
|
|
Author |
|
|
|
SethP
Joined: 24 Apr 2006 Posts: 302 Location: Connecticut, USA
|
Posted: Tue May 08, 2007 2:45 pm Post subject: |
|
|
I've spent some more time with the game this morning, and I'm really impressed with how polished the finished product looks and feels. I do have a couple of nitpicks, though (as always):
- I'd put a call to results() at the bottom of aigame(). As it is, the transition from the game back to the menu feels very abrupt and a little confusing.
- You should put a rest() call at the bottom of every menu selection function. As it is it's possible to go from the help screen to a game simply by holding enter for a few milliseconds too long.
- I'm not quite sure how to do it off the top of my head, but it would be nice if the game "held" the ball before releasing it. The game resting when a point is scored works really well (it allows the player visual processing time to understand what just happened), but then the ball teleports to the middle and immediately starts on its merry way. I found it just a bit disorienting at times.
- If a point is scored against a player whose bat is at the smallest size, that player's bat moves a few pixels down. Not really an issue at all (it was only really noticable when I was trying to lose), but I thought I'd let you know.
Also, I sent you a .tar.gz file that includes the code, images, and a dinky little makefile. The makefile works great -- if the end user already has all the right libraries installed. Otherwise, it gives a mess of unintelligable linker errors. If anyone out there could suggest some tips on packaging up programs for linux, I'd appreciate it.
In any event, the file should make it to your gmail inbox relatively soon.
One more thing (also really a non-issue), you're sort of abusing the cache with the array that holds your bullets. The cache'll give the most performance increase to your program if you access sequential memory locations, but in player1newbullet and player2newbullet you're accessing every other memory location because of how C and C++ store arrays. Again, it's really a non-issue, but if you ever make Massively Multiplayer Warpong with thousands of players and millions of bullets, the game'll prolly take a second or two to draw each frame.
Basically, if the above paragraph made no sense (apologies if it didn't), you should change the organization of your bullets array so that each player has their own row of 5 bullet columns rather than their own column of 5 bullet rows. |
|
|
|
Back to top |
|
|
|
|
Rup
Joined: 19 May 2003 Posts: 363 Location: London, UK
|
Posted: Tue May 08, 2007 2:59 pm Post subject: |
|
|
SethP wrote: | Also, I sent you a .tar.gz file that includes the code, images, and a dinky little makefile. The makefile works great -- if the end user already has all the right libraries installed. Otherwise, it gives a mess of unintelligable linker errors. If anyone out there could suggest some tips on packaging up programs for linux, I'd appreciate it. |
The de-facto way to package linux source is using GNU autotools. These generate a configure script which generates the makefile and a config.h you can include in your C++ source.
They're mostly used for portability (so you can switch in or out different libraries or features depending on what's available, or test for and work around bugs or variations in behaviour on different OSes / OS versions) but you could instead simply test for each of the required libraries and abort if they're missing.
Packaging Linux binaries: I generally see RPM used although there are holy wars about which format is best. You specify library dependencies (e.g. a specific version of allegro) when you build the RPM and then the RPM installer checks for this when you try and install. |
|
|
|
Back to top |
|
|
|
|
Konedima Grammar Police
Joined: 25 Oct 2003 Posts: 1068 Location: Sydney, Land of Censorship
|
Posted: Wed May 09, 2007 4:34 am Post subject: |
|
|
SethP wrote: | I've spent some more time with the game this morning, and I'm really impressed with how polished the finished product looks and feels. I do have a couple of nitpicks, though (as always):
- I'd put a call to results() at the bottom of aigame(). As it is, the transition from the game back to the menu feels very abrupt and a little confusing.
I made the results screen to be used by both gametypes (as well as almost any that may be added later, but I forgot to add the call to it to the end of the single player game. D'oh!
- You should put a rest() call at the bottom of every menu selection function. As it is it's possible to go from the help screen to a game simply by holding enter for a few milliseconds too long.
I really have to redo the menus sometime, but I honestly don't know how. Too many pauses (or big ones) get easily noticed, whereas a few small ones slip the cracks. I've added a couple more, though/
- I'm not quite sure how to do it off the top of my head, but it would be nice if the game "held" the ball before releasing it. The game resting when a point is scored works really well (it allows the player visual processing time to understand what just happened), but then the ball teleports to the middle and immediately starts on its merry way. I found it just a bit disorienting at times.
Will be added (somehow).
- If a point is scored against a player whose bat is at the smallest size, that player's bat moves a few pixels down. Not really an issue at all (it was only really noticable when I was trying to lose), but I thought I'd let you know.
The game moves bats up or down (to center them) depending on whether their size goes up or down when you win a point. It doesn't care if they are as big or as small as they can be when it does this, so I'll fix that.
Also, I sent you a .tar.gz file that includes the code, images, and a dinky little makefile. The makefile works great -- if the end user already has all the right libraries installed. Otherwise, it gives a mess of unintelligable linker errors. If anyone out there could suggest some tips on packaging up programs for linux, I'd appreciate it.
I'll have a look at it later, thanks for that.
In any event, the file should make it to your gmail inbox relatively soon.
One more thing (also really a non-issue), you're sort of abusing the cache with the array that holds your bullets. The cache'll give the most performance increase to your program if you access sequential memory locations, but in player1newbullet and player2newbullet you're accessing every other memory location because of how C and C++ store arrays. Again, it's really a non-issue, but if you ever make Massively Multiplayer Warpong with thousands of players and millions of bullets, the game'll prolly take a second or two to draw each frame.
Probably wouldn't take me too long to change it all, there's not too many things to change.
Basically, if the above paragraph made no sense (apologies if it didn't), you should change the organization of your bullets array so that each player has their own row of 5 bullet columns rather than their own column of 5 bullet rows. | My comments in italics. |
|
|
|
Back to top |
|
|
|
|
Konedima Grammar Police
Joined: 25 Oct 2003 Posts: 1068 Location: Sydney, Land of Censorship
|
Posted: Tue Sep 18, 2007 12:15 pm Post subject: |
|
|
No, I'm not dead, and neither is War Pong. In fact...
War Pong HD 1.1 is out!
You're more than welcome to get it from:
http://downloads.sourceforge.net/warpong/warponghdsetup-11.exe
and if you're that way inclined, get the source from:
http://downloads.sourceforge.net/warpong/warponghd-source-11.zip
So whats different I hear you ask (it was muffled, admit it)... here's the list:
Version 1.1
-----------
Added results screen to the end of single player games.
Improved menu reaction times.
Changed to hold the ball after each point to give time to react.
Fixed bat positioning after points scored in some situations.
Improved bullet system effiency.
Improved graphics speed, especially on less powerful computers.
Added the cool ball bounces of bullets function.
Made bullet hit detection more accurate.
Rewrote graphics system to massively increase performance.
Made making changes to parameters using source code much easier.
Changed drawing order to make certain situations look better.
Using newer version of time library.
Changed variable types on a couple of variables.
Improved bullet function speed using inline functions.
Simplified bullet access using inherited classes and virtual functions.
Made bat collision checking faster.
Really simplified the menu code.
Feel free to nitpick at the code, it's the only way I'll learn.
Fun facts about this version:
It'd be version 2, but I'm too lazy to make a new skin.
It took so long because I've developed a WoW addiction lately (don't worry, its the healthy kind).
There is a feature thats only half finished (but it works, so its good enough for now). |
|
|
|
Back to top |
|
|
|
|
Poo Bear Pod Team
Joined: 14 Oct 2002 Posts: 4121 Location: Sheffield, UK
|
Posted: Tue Sep 18, 2007 12:32 pm Post subject: |
|
|
Sweet.
Is there a dominant strategy here - if I just stay in the middle and fire fairly regularly I seem to hit the other guy a lot more often than if I move around?
I suppose the AI could fire out a small shield that absorbs all bullets until X damage is done, but then you'd need a way for the player to do the same which means more keys.
Or the AI could just spot the player isn't moving or is hanging around a certain area too much and just unload all his shots in quick succession as a small spread across the target area.
Konedima wrote: |
It took so long because I've developed a WoW addiction lately (don't worry, its the healthy kind).
|
Is there a healthy WoW addiction? I suppose it would be ok to swap tv hours for WoW hours. |
|
|
|
Back to top |
|
|
|
|
Konedima Grammar Police
Joined: 25 Oct 2003 Posts: 1068 Location: Sydney, Land of Censorship
|
Posted: Tue Sep 18, 2007 12:47 pm Post subject: |
|
|
Poo Bear wrote: | Konedima wrote: |
It took so long because I've developed a WoW addiction lately (don't worry, its the healthy kind).
|
Is there a healthy WoW addiction? I suppose it would be ok to swap tv hours for WoW hours. | I know what the unhealthy kind is - http://www.joystiq.com/2007/09/17/chinese-online-gamer-dies-after-three-day-stint/.
As for the AI, I prefer to call it AS (artificial stupidity) - all it does is follow the ball, even if its nowhere near him. That makes staying in the middle better because he crosses it a lot.
Those are a couple of good ideas, I could also make it so that it dodges bullets as long as the ball isn't very close.
Poo Bear wrote: | I suppose the AI could fire out a small shield that absorbs all bullets until X damage is done, but then you'd need a way for the player to do the same which means more keys. | The problem with that is getting it to fire at the right place (cause its practically no use if its at the edge of the screen). I also think that its overpowered, even if its on a cooldown.
Poo Bear wrote: | Or the AI could just spot the player isn't moving or is hanging around a certain area too much and just unload all his shots in quick succession as a small spread across the target area. | The problem with this is that if all the shots are in the same place, they're easy to dodge (unless your bat is so big that it can't move far enough out of the way).
I'll admit that the AI is a bit of a pushover, however something I was thinking of was bullets becoming more damaging and/or faster as your bat gets smaller (and vice versa) so I'll have to think about it. Anyone else have any suggestions? |
|
|
|
Back to top |
|
|
|
|
Konedima Grammar Police
Joined: 25 Oct 2003 Posts: 1068 Location: Sydney, Land of Censorship
|
Posted: Wed Sep 19, 2007 12:59 pm Post subject: |
|
|
I'd just like to add that if you noticed the bats sometimes have massive drawing problems (either ghosting when getting smaller or not drawing at all), don't worry, I noticed too (eventually) and its fixed for the next version. Whether that comes sooner or later depends on whether I find anything else to fix.
The real reason I'm posting is that I just added a new post to the blog. Its the first in (hopefully) a series about how some of the innards in War Pong work. If you can't read the source code (or if you can and you'd like to see how I explain things), it contains useful information that you never needed to know.
Anyway, here's a link to the full post in all its glory: http://warpong.sourceforge.net/blog/?p=31 - or you can just read the whole blog at http://warpong.sourceforge.net/blog/. |
|
|
|
Back to top |
|
|
|
|
Poo Bear Pod Team
Joined: 14 Oct 2002 Posts: 4121 Location: Sheffield, UK
|
|
|
|
Back to top |
|
|
|
|
Fost Pod Team
Joined: 14 Oct 2002 Posts: 3734
|
Posted: Wed Mar 12, 2008 12:57 pm Post subject: |
|
|
BUT! Is War Pong as good as Pong 2.0??? |
|
|
|
Back to top |
|
|
|
|
Konedima Grammar Police
Joined: 25 Oct 2003 Posts: 1068 Location: Sydney, Land of Censorship
|
Posted: Tue Jul 01, 2008 1:51 pm Post subject: Beating a dead horse |
|
|
You know how I love reviving this long dead topic (especially since it's mine), but you see I found the fancy gadgets button in dreamweaver so naturally I must take full advantage of it.
http://warpong.sourceforge.net, as I've made clear is the place to be. It's even overtaken facebook in popularity*, so make sure you have javascript enabled (if you don't you should still be able to see everything but it'll be thrown at you in one giant lump, instead of its organised glory) and head over there.
Note: Only tested in Firefox 3 at insanely high resolution, because I'm too tired to do anything else tonight.
*In my dreams. |
|
|
|
Back to top |
|
|
|
|
Konedima Grammar Police
Joined: 25 Oct 2003 Posts: 1068 Location: Sydney, Land of Censorship
|
Posted: Wed Jul 02, 2008 1:29 am Post subject: |
|
|
Features I'd like to see in the next War Pong (please, please leave your comments, suggestions, improvements, whatever... I can create a game for me but can I create a game for the people?).
Not running at a fixed resolution
I can't not have this one now, as I'm well aware that not everyone runs at 1680x1050. I'll either make it run at the desktop resolution (easiest to implement) or I'll allow for customisation (shocking news: I need C++ file operations for dummies to learn how to read/write variables out of/into config files... seriously).
Not a fixed aspect ratio
Like the above, not everybody runs at a 16:10 aspect ratio. The three most common aspect ratios are 16:10 (most widescreen monitors), 4:3 (most non-widescreen monitors), and 5:4 (there's a resolution other than 1280x1024 thats that aspect ratio?!?!?). War Pong was always designed to played at 4:3, so I was thinking that for anything wider I'd put the play field in the middle and shove information to the sides. Does anyone run at a ratio narrower than 4:3 or do I not need to worry about that?
Customisable controls
I won't say every PC game made in the last 10 years has had these, but most do. See above for why I'd have trouble implementing them. Unless of course nobody has any troubles with the defaults.
Different scoring
I'm thinking of ditching the usual 0-21 scale and significantly changing the points. Points will be awarded for hitting people with bullets, ball deflections, and you'll get more points for scoring a goal if your bat is smaller (since it's smaller and theoretically harder). With all these changes, I'm probably going to have to include a classic mode too.
Fast mode
I don't know how many people miss this from the original, but it'll probably be back and attaching itself to the new scoring system, or maybe one of its own.
Sound
Something I've always wanted to include, but how would I create decent sounds on a budget (of $0)?
Please leave your comments, its the only way I'll learn what people want (good luck on that happening though). |
|
|
|
Back to top |
|
|
|
|
Konedima Grammar Police
Joined: 25 Oct 2003 Posts: 1068 Location: Sydney, Land of Censorship
|
Posted: Wed Jul 02, 2008 8:35 am Post subject: |
|
|
I'll just keep posting, in the vain hope somebody replies.
Anyway, presenting today's chapter:
How not to design a game logo
I'll just let it speak for itself.
Now how many people can actually understand it? |
|
|
|
Back to top |
|
|
|
|
Poo Bear Pod Team
Joined: 14 Oct 2002 Posts: 4121 Location: Sheffield, UK
|
Posted: Wed Jul 02, 2008 9:40 am Post subject: |
|
|
The sign of a true master, you've developed your own language for the game!
p.s. Richard Garriott the creator of the Ultima series decided he could best serve Tabula Rasa by spending the whole development schedule creating a unique language for the game and writing lots of books and scattering them about the game world. Class! |
|
|
|
Back to top |
|
|
|
|
icarus Troll
Joined: 01 Mar 2004
Location: Olympia Washington
|
Posted: Wed Jul 02, 2008 3:20 pm Post subject: |
|
|
VVAIT IC0IVG? |
|
|
|
Back to top |
|
|
|
|
Konedima Grammar Police
Joined: 25 Oct 2003 Posts: 1068 Location: Sydney, Land of Censorship
|
Posted: Sat Sep 13, 2008 10:26 am Post subject: |
|
|
Since I refuse to be silenced about War Pong, here are a couple of War Pong related links to forget about in 5 seconds...
New blog post.
Yes, I've updated what still technically counts as a blog with useless information nobody cares about. In this case it's skins that didn't quite make it into the original War Pong.
http://warpong.sourceforge.net/blog/?p=40
Survey
SF just unveiled a few hosted apps that they'll set up for you (MediaWiki, phpBB and LimeSurvey to be exact). There's no way War Pong is popular enough for the first two, but surveys I can do. Please take my survey.
http://apps.sourceforge.net/limesurvey/warpong/
And that's all... for now.
Last edited by Konedima on Sat Sep 13, 2008 10:36 pm; edited 1 time in total |
|
|
|
Back to top |
|
|
|
|
|
|
|
|
|