Skip to content

giacomelli/Doog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Doog

Build status Quality status Coverage Status License

Doog is a framework to create console/terminal games, but using advanced game programming patterns.


Feature

  • Animations (30+ easings)
  • Font System
  • Graphic system (console/terminal)
  • Input system
  • Log system (console and file)
  • Physic system (currently supporing just collision detection)
  • Transform (position, scale and rotation)

Games

Nowadays we have just a Snake game implementation that show how to use Doog to create a old style game.

Snake

Boundaries

How to run it?

Build

Open a console/terminal and type:

git clone https://github.com/giacomelli/Doog.git
cd Doog/src
dotnet build

Run Snake game

dotnet run --project Samples/Snake

Run Doog.samples

dotnet run --project Samples/Doog.Samples

How to debug it?

If you are developing a game using Doog and want some help to debug it, you can use the runners arguments below:

debug-enabled

Shows some stats about the game world in the left-top corner of the game screen. Informations like FPS and currenlty enabled components count.

dotnet run --project Samples/Snake debug-enabled

ingame-log

Show the log messages registered by the LogSystem in the bottom part of the game screen.

dotnet run --project Samples/Snake ingame-log

file-log

Write the log messages registered by the LogSystem to the log.txt file.

dotnet run --project Samples/Snake file-log

You can combine those arguments:

dotnet run --project Samples/Snake debug-enabled ingame-log

How to improve it?

License

Licensed under the The MIT License (MIT). In others words, you can use this library for developement any kind of software: open source, commercial and proprietary.

About

Doog is a framework to create console/terminal games, but using advanced game programming patterns

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages