Hogwarts Elite Quidditch
About the game:
Quick Concept
Take to the sky with your trusty broom and join the sports action of Quidditch! It’s a new exciting game which will mix the exciting experience of the EA game (Quidditch World Cup) with new physics technology and expanded multiplayer possibilities.
More Details
- What is Quidditch ?
Quidditch is a fictional sport invented by JK Rowling, author of the world renowned Harry Potter Series. The game is played by wizards/witches on flying brooms. There are 3 types of balls and several nuisances that are specific to Quidditch but the core of the game play is much like standard soccer.
- How will the game play?
Using a “Side Line” view of the field, you will control a team member of your choice, using the keyboard and mouse or a gamepad. You can choose to play as Keeper, Seeker, Beater or Chaser, each one has their own strengths and special abilities. You can move your player in x and z space and a limited y space. You aim using the mouse/gamepad, allowing you to shoot anywhere you want. Play with up to 14 other players for the full team experience or play solo against the computer. You can score by catching the Quaffle (ball) and throwing it through the opposing teams goal hoops at the end of the pitch. Each score gives your team 10 points. The game continues in this manner, until the golden snitch is spotted. If it’s spotted and the Seekers press their special buttons in time, then they will chase the snitch until one of the teams catches it. Catching the snitch gives the team 150 points and ends the game. The total score is counted then and the team with the highest score wins the match.
- Who are the direct competitors of this game?
- Proffesional Game by EA, "Quidditch World Cup", GBA, Consoles and PC
- Fan Game by Dissendium, "Quidditch 3D", PC
- Fan Game by Paul J. Rajlich, "Broomsticks", PC
- What makes this game stand apart from these competitors?
# Feature Why? What approach I am taking? 1 "Real" Physics None of the competitors have complete open ended physics Using a full fledged Physics world using Physx Library 2 Broad multiplayer support None of the competitors have internet multiplayer support Using direct connect winsock ip and allowing up to 14 players to play 3 Ability to play as any of the 4 quidditch positions Quidditch 3D does allows this 4 different positions each with different abilities 4 Simple Controls Quidditch World Cup comes close to simple controls, but thier simplified controls limit gameplay in strange manners. For example, no aiming, automatic shooting and passing. A mix between Quidditch World Cup and the total freedom of Quidditch 3D 5 3D Graphics Well this one only applies to Broomsticks... EA graphics are superb and will be hard to "beat", Quidditch 3D graphics are ok, could be better. Hopefully will look better than Quidditch 3D 6 Open Source EA version is not open, Broomsticks is not open, Quidditch 3d is open but forced to use the Crystal Space engine. Hopefully simple and Open, might have to get permission from some libaries.
- Implementation Notices
Altough, I describe here a "complete" game, this however is a work in progress and as I have been pointed out many parts of the project are too complex for the amount of time given to implement it completly. However, I will try to do my best to make a playable game thats at least enjoyable if not feature filled.
- What could go wrong ?
The major problems that have been pointed out about this game concept are multiplayer/networking and the Physics animation. The last thing to be implemented will be the networking if time allows so its not a major focus at the moment. The Physics animation and interaction is actually a big focus of the project and this is where most of the work will probably go to, yet I am willing to compromise on certain situations and go back to non-Physical based animation at certain areas.
Technology:
Libraries:
OpenGL Graphics : Using OpenGL , GLUT, GLUI , SDL
Aegia Physx : Collision Detection, Forces
Networking: Winsock IP/TCP
FMOD : 3D Positional Sounds
Programming Specific:
Skeletal Torque Force Animations : Using Forces to animate instead of "canned" vertex or joint animation
Neural Network Balancing: Using Neural Networks to balance brooms and maintain skeletal poses
Ray Casting Aiming: Using fast raytracing for aiming
Tools:
Microsoft Visual Studio .Net 2003
Autodesk Maya 7.0
Adobe Photoshop CS2
Sony Sound Forge 8.0
Ageia Physx SDK
Concept Screenshots:
Using the same character model with different add-on pieces for different positions.
Keeper | Seeker | Beater | Chaser |
CG Screenshots:
Character Model (maya) | World (game) | World (debug) |
Planning :
PDF Click here to look at my Microsoft Project Gantt Chart (planning timeline)
PDF Click here to look at my Visio UML Diagram (Code Structure)
PDF Click here to look at my control scheme (Game Design)
Research:
Books
AI Game Development: Synthetic Creatures with Learning and Reactive Behaviors, Alex J. Champandard (link)
Modern C++ Design: Generic Programming and Design Patterns Applied, Andrei Alexandrescu (link)
3D Math Primer for Graphics and Game Development, Fletcher Dunn (link)
Fundamentals of Computer Graphics, Peter Shirley (link)
Articles
Proactive Persistent Agents: Using Situational Intelligence to Create Support Character-Centric Computer Games, Brian Mac Namee, University of Dublin 2004 (link)
Object Manipulation in a Dynamically Simulated Virtual Environment, Matthias Baas, Alfred Schmitt, University of Karlsruhe
Institut für Betriebs- und Dialogsysteme, Am Fasanengarten 5, 76128 Karlsruhe, Germany 2005 (link)Learning Force Fields for Limb Control in Character Animation, MIT 2000 (link)
When can I play the game?
Hopefully by December 2006 you can download it here !
Updates:
Game State:
You can currently navigate 1 broom all over the gameworld with the gamepad. You can collide with everything that has a collision box. You can press a button to get a speed boost, you can "score" by putting the quaffle through a hoop, you can catch and drop the quaffle. You can switch camera from follow to mouse & keyboard control. You can interact with pieces using forces. The broom, bludger and quaffle all float and maintain a certain flight level.
Latest Screenshot 9/18/2006 : Broom floating(gravity), Collision meshes, controlled by joypad, autocamera on, HUD score, triggers. Its slowly turning into a game !
Look I caught the ball ...magically.
Finally a joint chain inside Physx ... can be loaded from file or created/deleted dynamicaly ( The rectangle is not deforming yet, Im working on it!)
Tools Built:
Collision Boxes from Maya to Physx (MEL script) (tested and works)
Skindata exporter (MEL script) (built but not tested)
Tools still to Build & test:
Keys to Torque Exporter (MEL script) (not built or tested)
Features finished (or at least at 80%):
Object Gravity
Balance Broom
Broom Movement
Gamepad Support
Simple Sound Support
Follow Camera
Triggers
Features working on (currently):
Ball Catching (%30)
Aiming / Ball-Shooting (%10)
Smooth Skinned Mesh Deformation (%50)
Controls (%60)
HUD (%10)
Future work:
AI
Aiming Reticule
Animation Forces
More and prettier art (Models, Animation, Textures)
More sounds
Loading Screens, Menus
Particle Effects
Better Lighting & Shadows
Improving Speed / Code Cleanup
(Probably a bunch of things will come up)