Difference between revisions of "MogsVsDogs"

From Pandora Wiki
Jump to: navigation, search
(Updated implementation section and moved it to the bottom (Concept first, implementation afterwards))
(What's done?: cat)
 
(4 intermediate revisions by 2 users not shown)
Line 81: Line 81:
 
====Physics====
 
====Physics====
  
*The physics will be based on Box2D probably
+
*The physics will be based on Chipmunk Physics
 
*Use ragdolls for the active actors (Mogs / Dogs)
 
*Use ragdolls for the active actors (Mogs / Dogs)
 
*Any actor should have a fixed depth value so they can't flee the 2D playfield
 
*Any actor should have a fixed depth value so they can't flee the 2D playfield
Line 113: Line 113:
 
</gallery>
 
</gallery>
  
===Whats done?===
+
===What's done?===
  
 
*Stream compiler/interpreter (Not complete yet, but works)
 
*Stream compiler/interpreter (Not complete yet, but works)
 
*Renderer subsystem to abstract the game (Based on OGLES2.0)
 
*Renderer subsystem to abstract the game (Based on OGLES2.0)
  
*You can check some of the current work at http://jayfoxrox.bplaced.net/pandora/public/MogsVsDogs/
+
*You can check some of the current work at http://jayfoxrox.bplaced.net/content/pandora/public/MogsVsDogs/
 +
 
 +
[[Category:Games]]
 +
[[Category:Ideas and proposals]]

Latest revision as of 15:01, 19 April 2011

Mogs Versus Dogs is a game concept envisioned by regular haunts in the #OpenPandora channel Gadgetoid and JayFoxRox and echoed in #maemo.

The Concept

The idea of the game is heavily based on the iPhone/N900 commercial title Angry Birds, but the idea is to re-envision this title as a battle between Mogs and Dogs where players challenge each other by building or knocking down wooden forts amongst other things.

The game will draw from Little Big Planet, sharing the 2.5d take on graphics and user-centric content creation.

Gameplay changes

  • Physical properties such as fire, ice, water
  • Powerups that alter the properties of your Mog or Dog, grenades for them to explode on demand/on impact, jet pack to indirectly affect their motion
  • Objects which will kill / split your projectile (Mog / Dog)
  • Addition of Multiplayer play with fort building
  • A stunt mode where you have to kill your actor in the most destructive way possible or flip your actor in the most spectacular way
  • Party modes like shooting a moving target for score or destroying a structure within a certain time limit

Random additions and changes

  • Addition of a scripting system for custom modes
  • The game should have some gore in it to make the scenes more impressive and adding some sort of irony (Contrast: childish look, gore)
  • A replay should be shown after a successful attack, possibly using action cameras, additional effects
  • Optional addition of replay saving

Possible stages

  • Classroom, each kid brought their pet with them, a fight broke out
  • Rooftops, mogs and dogs try to show who the king of the neighbourhood really is
  • Temple, make liberal use of fire from nearby torches to really mess things up
  • Alleyway, battle from trash can to discarded CRT, and watch out for those annoyingly parked cars
  • Downtown, fight on city streets, avoid those hotdog stand grills, and cause havoc with fire hydrants

Versus

In a versus game, each player is challenged to build a fort (or load one from pre built forts) and has available a pre determined amount of resources: Wood, Metal, Concrete and Class with different physical properties. Walls/blocks/ceilings and other elements can be constructed and rotated arbitrarily within certain limitations. For example, you could make a 1x1 concrete square, or a 1x10 wall, rotate it and it becomes a root, angle it and it becomes structural support. The system is simple, but the combinations are endless.

The parts of the fort are unconnected and must be knocked down by the opposing player in order to hit targets, all of which must be destroyed for a win. Their physical properties come into play, with Glass slowing down impacts and absorbing energy, Metal being tough but easy to displace, Concrete being of medium strength but hard to move, and Wood being weak and easy to move but great for bracing stronger materials.

A concrete wall braced with wood, fronted with sheet metal, and shielded with glass, for example, would be very resistant to a front-on attack but easy to destroy by arcing projectiles over the top.

Materials

  • Concrete - Tough, durable, heavy, immovable but vulnerable to explosives and sustained front-on attacks
  • Glass - Shock absorbing, can be used tentatively to brace structures and dampen explosions/impacts
  • Steel - More durable than concrete but light and easy to displace, good vs explosives
  • Wood - Good for structure/bracing but not much else, vulnerable to fire

Single Player

In single player you are simply tasked to load a players fort and attempt to destroy it. Forts could be built around various items which need to be defended, and built on various levels with differing terrain and hazards.

Single Player Modes

  • Destruction - Destroy a fort in the least time/with the least shots/power-ups
  • Challenge - Complete a certain task under various conditions- destroy all 6 towers in 60 seconds, set 5 targets on fire
  • Insanity - Kill your Mog or Dog in the most spectacular way
  • Construction - Build a fort and test its durability in free play, practise for multiplayer/doubles as a level builder

Scores/Networking

A website and online service should back the game, tracking high scores and allowing players to upload/share levels and challenge others with their creations. In addition to simple points scoring the amount of destruction inflicted players times will also be logged, along with the number of shots and other vital stats about their performance in a given level. This should provide multiple aspects of competitiveness and a high replay value

  • Save and share forts online
  • Save your party-mode scores, or challenge scores for others players to beat
  • Compete directly with players in a fort to fort battle

Implementation

Core

Graphics

  • The graphics will probably be based on a selfmade renderer
  • The main idea is to go for a style like in LittleBigPlanet (Reference image), possibly a bit more cartoonish
  • Each scene consists of a background, an active layer (where the "player" is moving above) and a possible foreground.
  • Back- and foreground will be blurred out but still be rendered in 3D
  • The foreground should be transparent towards the center of the screen
  • The whole scene will be motion blurred
  • Anything is presented in a bright light to create a friendly atmosphere

Physics

  • The physics will be based on Chipmunk Physics
  • Use ragdolls for the active actors (Mogs / Dogs)
  • Any actor should have a fixed depth value so they can't flee the 2D playfield

Stream

  • Streams are similar to scripts
  • A custom format following the KISS-principle was developed
  • Almost the whole game is based on streams, split into smaller parts
  • Major stream categories right now include:
    • Actors, storing information about teams (MogsVsDogs) and actor meshes
    • Scenes, describing the general scene layout and containing animation for the fore and background as well as obstacle animations
    • Shaders, shaders to be used in the game (Multi-Pass Gaussian Blur and Textured/Lit primitive rendering) with ability for different path to work on different Hardware (OGL, OGLES2, ..)
    • Stages, Creates obstacles
    • Modes, Calculates score, controls camera moves, .. etc
    • Core, Manages gameplay, menu, replays, ..

Game

Stages

  • Rooftops
    • Background: Houses, Clouds (animated using stream), Trees
    • Active: Houses to walk on, Garages and balconys for the base
    • Foreground: Street lights, Phone lines
    • Obstacles: Objects from background reaching into the scene, Chimneys, Higher buildings (Curch for example), Water spray from fire hydrants
    • Launchers: Fireworks
    • Concept art:

What's done?

  • Stream compiler/interpreter (Not complete yet, but works)
  • Renderer subsystem to abstract the game (Based on OGLES2.0)