SquareReflect is a 2D maze game with open mechanics thanks to infinite possibilities of tiles.
This game allows you to play a small character lost in a level and your goal is to reach the end of the level. No gravity physics make you continue your way until you hit a tile that can allow you to choose a new direction to go.
The project is currently split in several projects :
- Core/Core.csproj manages the mechanics and global classes such as tiles, boards and games and cannot be started,
- ConsoleUI/ConsoleUI.csproj allows the Core project to be viewed and inputs to be managed via the console,
- GraphicUI/GraphicUI.csproj launches an application that makes the game clearer thanks to the MonoGame graphic labrary based on Microsoft's XNA library (currently WIP),
- Test/Test.csproj contains all the written tests.
Only a few boards are available in the 'Boards' directory, but more will be added soon. The goal is to create an editor that will allow everyone to create their own levels.
This project requires .NET version 6.0 and uses the Monogame library version 3.8.1.303.
To run the ConsoleUI project, execute the following command
dotnet run --project ConsoleUI/ConsoleUI.csproj
You can add the name of the board you want to play with using the seconde command. The board must be in the SquareReflect/Boards
directory with a .srboard
extension. You don't need to include the extension in the command.
dotnet run --project ConsoleUI/ConsoleUI.csproj -- <BoardName>
Fonts have different renderings, to maximase the visibility you can set your terminal font to Noto Sans CJK HK Bold
.
To run the GraphicUI project, run:
dotnet run --project GraphicUI/GraphicUI.csproj
You can run tests with:
dotnet test