Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 Duck Hunt
Index -> Programming, Turing -> Turing Submissions
View previous topic Printable versionDownload TopicRate TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message

PostPosted: Sat Jun 19, 2004 6:38 pm   Post subject: Duck Hunt

Finally finished after two long months of work, but it all payed of. The true duck hunt resurection has occured. Honestly guys this game is amazing check it out. Our teacher's jaw droped when he saw the final thing, especially considereing (excusing the stupid matrix thing I made) it was our first project between me and my partner. Hope u all enjoy the spoils of our labour and thanks to all those who gave us wicked ideas.


 Filename:  Duck
 Filesize:  1.09 MB
 Downloaded:  1290 Time(s)


PostPosted: Sun Jun 20, 2004 10:27 am   Post subject: (No subject)

[thumbs up]

Not bad for two months of work. I was a bit dissappointed that it wasn't (contrary to the ads above) a ressurection of the original duck hunt. I would've loved to have seen the ducks flying around, and the dog with his irritating laugh...ah well, not a bad job.

I looked through some of your code (which you could have compiled...made it look a bit more professional), and you've got some parts that leave a lot to be desired.
- process()es. Now, as much as they seem to be the order of the day w/ games, they're not. I will admit that you did a pretty darn good job of keeping them in sync so as not to send your game crashing and burning, but process()es will just give you stress. A much better alternative would be to procedurize everything (which I notice you've done zero of Naughty ), then put it all into one main loop that will check everything needed...i.e. character input, mouse movement, pic updating..
- picID, picID1, picID2...
Just use an array for that. Don't know what those are? This will help.
- you have a bunch of extraneous stuff lying around (locate (1,1) after a mousewhere)...

I don't suppose you know about FPS limits? I havn't tried this yet, but I'm sure someone else has, and if not, I'm almost positive that FPS limits are the way to go for standarized animation in Turing. As you may or may not know, just using delay()s is not good enough. (delay()s! Argh! At least use Time.Delay()s). On the computer that I was using to look at the game (900 MHz), the speeds for level 1 were way too fast. You could always ask the user to input the speed of their computer, and alter your delay() factors accordingly, but that wouldn't not be too...User Friendly.

You have no error traps whatsoever. Input of character name died on Ctrl+Z! Come on!

I noticed during the transition btwn levels, the first duck to be drawn would flicker somewhat (it would be at one height, then teleport over to another spot, from which it would continue its flight).
I'm guessing this has something to do with your updating and/or randint()ing. Quickfix: start the ducks' flights from off the screen instead of on it, that way you won't be able to see the error if it occurs.

Now, about that graphics...whenever I hit a duck, it would drop...but I would get leftover bits of the last pic drawn each time. In other words, I could see every frame of the fall drawn - they would not clear...perhaps I should get a screenshot of this to make it more clear...
Hmm...lemme try explain this another way (I'm just making sure I'm clear hehehehe).
Ok, imagine that you are drawing the word 'duck' over and over, to simulate it moving from one side of the screen to the other. So, you draw it once, then change its x value, and draw it again, and so get something like this:
As you can see, each successive 'duck' has been drawn over the previous, but in fact for correct animation the previous should have been cleared!
That's what happens in the falling animation.
Perhaps it's not so on your computers.
Perhaps that's the effect you wanted.
It's really annoying.

I can click, and hold down the mouse button, and then just move the mouse over the duck and bam! it dies. Look up some Mouse.() stuff to fix that.
You could add an ammo counter!

In the final boss level, a counter would be very useful so that one knows
a) how much time is left
b) how much damage has been done.

Other than that (and perhaps more that I forget), it's a pretty well put together piece of programming.

+ bits.

PostPosted: Sun Jun 20, 2004 5:51 pm   Post subject: (No subject)

Nice job. Here is my own list of thoughts.

1. I like that you chose to make duckhunt, because it rules

2. One problem with your selection is that to someone such as myself it feels odd to be playing duckhunt with their hand on a mouse rather than their trusty Zapper.

3. The motion of the ducks seemed 'wrong' to me, because in the real game they bounce around the screen rather than just making a single pass at the same altiude. Also the lack of animation looked a bit odd, considering the ducks were moving without flapping their wings.

4. I would have liked to have seen a counter with blank ducks that are filled in as you kill them like there is in the real game so you know how many there are left, and what your hit/miss ratio was.

5. The final boss... I was dissapointed with the square around him, but there is nothing for that due to limitations of turing. Also, his motion seemed rather jerky and unnatural. I too would have liked to see some sort of health bar for him.

6. Your code is what some might call 'spaghetti code.' Don't take it the wrong way, but for example your process for the gun sound:


process explode % explosion sound

    for i : 1 .. 1 %plays it once

        Music.PlayFile ("explosion.wav")

    end for


end explode

I think you could trim that down to


process explode % explosion sound
        Music.PlayFile ("explosion.wav")
end explode

7. You've got to get the duckhunt music and effects. I have the sound that plays at the start of each round on my computer actually, pm me if you're interested. For a classic, it is almost essential that you include such things as the origonal music.

8. The issue with holding down the mouse. You've got to fix that.

I am sorry if I seem overly critical, but as you can probably tell I used to play NES all the time, and duckhunt was (and still is) one of my alltime favourite games, and my opinion on remaking classics is that they have to be exactly like the origional.

PostPosted: Wed Jun 30, 2004 5:23 pm   Post subject: (No subject)

Thanks for the comments, they are greatly appreciated.

Just so ya know there was a lot more music (including some original duck hujnt and some groovy new stuff that fit very well) but it was all removed in order to fit the file on this website. I had to keep choping it up until the zip file fit on the forum.

One of these days I may get bored at home and make another game but only time will tell.
Display posts from previous:   
   Index -> Programming, Turing -> Turing Submissions
View previous topic Tell A FriendPrintable versionDownload TopicRate TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 1  [ 4 Posts ]
Jump to: