What the Puck! - Networked air hockey game
Moderator: PC Supremacists
- MrDeathNote
- ES Beta Backer
- Posts: 594
- Joined: Sun Oct 11, 2009 9:57 am
- Current Project: cocos2d-x project
- Favorite Gaming Platforms: SNES, Sega Megadrive, XBox 360
- Programming Language of Choice: C/++
- Location: Belfast, Ireland
- Contact:
What the Puck! - Networked air hockey game
Hey guys, some of you may have seen some of my videos before, a while back I showed part of a university project that was in progress at the time. I said I would make a video showing more of it off when it was finished, but guess what, I completely forgot about it. Well I'm coming bakc to it now. I thought i'd tell you guys a bit about the project. It was developed in C# with XNA, the networking code was written in straight C# i.e. not using XNA Live. We had about a month and a half to develop it and to be brutally honest it would have went a lot quicker if the other three guys on the team contributed more code. Don't get me wrong, they did a lot of art and paper work but I did most of the code. Here's a short list to show the stuff I did:
-Collision detection
-Physics
-Player input
-Scoring
-Peer to peer connection
-Game server
-Game client
-Server login
-Server lobby
Pretty much the basic game and ALL network features. I'd like to hear what you guys think about it.
-Collision detection
-Physics
-Player input
-Scoring
-Peer to peer connection
-Game server
-Game client
-Server login
-Server lobby
Pretty much the basic game and ALL network features. I'd like to hear what you guys think about it.
http://www.youtube.com/user/MrDeathNote1988
"C makes it easy to shoot yourself in the foot. C++ makes it
harder, but when you do, it blows away your whole leg." - Bjarne Stroustrup
"C makes it easy to shoot yourself in the foot. C++ makes it
harder, but when you do, it blows away your whole leg." - Bjarne Stroustrup
- dandymcgee
- ES Beta Backer
- Posts: 4709
- Joined: Tue Apr 29, 2008 3:24 pm
- Current Project: https://github.com/dbechrd/RicoTech
- Favorite Gaming Platforms: NES, Sega Genesis, PS2, PC
- Programming Language of Choice: C
- Location: San Francisco
- Contact:
Re: What the Puck! - Networked air hockey game
This project reminds me a lot of my final project for my Intro to Programming UNI class this spring. We made an arcade with four different games in C#/XNA. The four other members each made a game and I programmed all of the client/server/database stuff.
I think you forgot a download link.MrDeathNote wrote:I'd like to hear what you guys think about it.
Falco Girgis wrote:It is imperative that I can broadcast my narcissistic commit strings to the Twitter! Tweet Tweet, bitches!
- MrDeathNote
- ES Beta Backer
- Posts: 594
- Joined: Sun Oct 11, 2009 9:57 am
- Current Project: cocos2d-x project
- Favorite Gaming Platforms: SNES, Sega Megadrive, XBox 360
- Programming Language of Choice: C/++
- Location: Belfast, Ireland
- Contact:
Re: What the Puck! - Networked air hockey game
Thanks for the comments guys.
I'll see about that :p, i'd prob have to tell the other guys about it first.dandymcgee wrote: I think you forgot a download link.
http://www.youtube.com/user/MrDeathNote1988
"C makes it easy to shoot yourself in the foot. C++ makes it
harder, but when you do, it blows away your whole leg." - Bjarne Stroustrup
"C makes it easy to shoot yourself in the foot. C++ makes it
harder, but when you do, it blows away your whole leg." - Bjarne Stroustrup
- GroundUpEngine
- Chaos Rift Devotee
- Posts: 835
- Joined: Sun Nov 08, 2009 2:01 pm
- Current Project: mixture
- Favorite Gaming Platforms: PC
- Programming Language of Choice: C++
- Location: UK
- davidthefat
- Chaos Rift Maniac
- Posts: 529
- Joined: Mon Nov 10, 2008 3:51 pm
- Current Project: Fully Autonomous Robot
- Favorite Gaming Platforms: PS3
- Programming Language of Choice: C++
- Location: California
- Contact:
-
- Chaos Rift Regular
- Posts: 173
- Joined: Thu Feb 11, 2010 9:46 pm
Re: What the Puck! - Networked air hockey game
Nice dude, I'm always extremely impressed by networked applications.
- MrDeathNote
- ES Beta Backer
- Posts: 594
- Joined: Sun Oct 11, 2009 9:57 am
- Current Project: cocos2d-x project
- Favorite Gaming Platforms: SNES, Sega Megadrive, XBox 360
- Programming Language of Choice: C/++
- Location: Belfast, Ireland
- Contact:
Re: What the Puck! - Networked air hockey game
Cheers guys
Loldavidthefat wrote:
http://www.youtube.com/user/MrDeathNote1988
"C makes it easy to shoot yourself in the foot. C++ makes it
harder, but when you do, it blows away your whole leg." - Bjarne Stroustrup
"C makes it easy to shoot yourself in the foot. C++ makes it
harder, but when you do, it blows away your whole leg." - Bjarne Stroustrup
- trufun202
- Game Developer
- Posts: 1105
- Joined: Sun Sep 21, 2008 12:27 am
- Location: Dallas, TX
- Contact:
Re: What the Puck! - Networked air hockey game
Wow dude, that network layer is SEXY! Be proud, my friend, that is some damn impressive work.
Just curious, are you serializing the entire gamestate and passing it back and forth, or just the game objects themselves?
Just curious, are you serializing the entire gamestate and passing it back and forth, or just the game objects themselves?
- MrDeathNote
- ES Beta Backer
- Posts: 594
- Joined: Sun Oct 11, 2009 9:57 am
- Current Project: cocos2d-x project
- Favorite Gaming Platforms: SNES, Sega Megadrive, XBox 360
- Programming Language of Choice: C/++
- Location: Belfast, Ireland
- Contact:
Re: What the Puck! - Networked air hockey game
Thanks man, that means alot! Actually only certain values within the game objects are serialized so as to keep the amout of data transmitted to an absolute minimum. It would have been really network intensive to send the entire game object and would probably have lagged like a bitch lol.trufun202 wrote:Wow dude, that network layer is SEXY! Be proud, my friend, that is some damn impressive work.
Just curious, are you serializing the entire gamestate and passing it back and forth, or just the game objects themselves?
http://www.youtube.com/user/MrDeathNote1988
"C makes it easy to shoot yourself in the foot. C++ makes it
harder, but when you do, it blows away your whole leg." - Bjarne Stroustrup
"C makes it easy to shoot yourself in the foot. C++ makes it
harder, but when you do, it blows away your whole leg." - Bjarne Stroustrup
- trufun202
- Game Developer
- Posts: 1105
- Joined: Sun Sep 21, 2008 12:27 am
- Location: Dallas, TX
- Contact:
Re: What the Puck! - Networked air hockey game
Sweet, that would be my approach as well. I had a teacher in college that swore by passing the entire gamestate back and forth, which I never understood... Maybe he was trying to keep things simple for the sake of learning. But yes, his demo game lagged like a bitch!MrDeathNote wrote:Actually only certain values within the game objects are serialized so as to keep the amout of data transmitted to an absolute minimum. It would have been really network intensive to send the entire game object and would probably have lagged like a bitch lol.
- MrDeathNote
- ES Beta Backer
- Posts: 594
- Joined: Sun Oct 11, 2009 9:57 am
- Current Project: cocos2d-x project
- Favorite Gaming Platforms: SNES, Sega Megadrive, XBox 360
- Programming Language of Choice: C/++
- Location: Belfast, Ireland
- Contact:
Re: What the Puck! - Networked air hockey game
I'm not surprised, I really doubt the game would have even run if we sent the entire game state lol!trufun202 wrote:Sweet, that would be my approach as well. I had a teacher in college that swore by passing the entire gamestate back and forth, which I never understood... Maybe he was trying to keep things simple for the sake of learning. But yes, his demo game lagged like a bitch!MrDeathNote wrote:Actually only certain values within the game objects are serialized so as to keep the amout of data transmitted to an absolute minimum. It would have been really network intensive to send the entire game object and would probably have lagged like a bitch lol.
http://www.youtube.com/user/MrDeathNote1988
"C makes it easy to shoot yourself in the foot. C++ makes it
harder, but when you do, it blows away your whole leg." - Bjarne Stroustrup
"C makes it easy to shoot yourself in the foot. C++ makes it
harder, but when you do, it blows away your whole leg." - Bjarne Stroustrup