We wanted to create a game unlike anything that has been done before. Something that we would be proud to call our own.

What it does

LineFighter is a physics-based platformer ragdoll-like fighting game that combines the use of classic fighting techniques with strategic plays to outsmart your opponent. A two-player game, LineFighter allows players to draw the level from a nearly blank-slate, so each game is different from the last. A player wins when their opponent falls too far, gets trapped by cleverly drawn lines, or runs out of health from taking too many melee hits.

How we built it

We decided to build our own game engine, since we wanted maximum control and performance in our game, being a physics-based game that requires hundreds if not thousands of shapes. For rendering, we used MonoGame, a cross-platform C# rendering/input/audio framework. For physics, we used Farseer, a C# wrapper of the well-known Box2D C++ physics library. We built the project using both Windows and Mac machines, to verify that our game could reach the maximum player base.

Challenges we ran into

The biggest challenge was figuring out how to make it easy to use a controller to draw on a screen. We went through sever different design iterations before perfecting the controls, so they are intuitive to new players. There were also many minor challenges we faced, such as cross-platform build environments, and the time constraint, since we had to spend a large portion of our time developing the game engine itself.

Accomplishments that we're proud of

We're very proud of the finished product. We took a risk by developing our own game engine instead of using proven tools, like Unity. However, this risk paid off, since we were able to optimize our game on levels that wouldn't have been easy using higher-level tools. Our game is fun and easy to play, and we learned a lot making it, so we are very proud of the final outcome.

What we learned

We learned a lot about game development, especially from the perspective of developing our own set of tools and frameworks.

What's next for Line Fighter

We would love to add online multiplayer, better graphics, and eventually publish it on Steam or another gaming platform to share the fun with everyone else!

Special Notes:

This game requires an Xbox controller to play.


Jump: A Punch: B Move: Left thumb stick Draw: Hold right trigger and move right thumbstick Forfeit: Y

Built With

  • c#
  • custom-game-engine-(built-from-scratch)
  • farseer-physics
  • monogame
Share this project: