SadConsole is a C#-based .NET cross-platform terminal, ascii, console, game engine. It simulates these types of programs and with it you can make ascii-styled games for modern platforms. At its heart, SadConsole is really a giant tile-based game engine. However, its object model is conceptually similar to a traditional console app.
While SadConsole is a generic library that doesn't provide any rendering capabilities, "host" libraries are provided that add renderers to SadConsole. The two hosts provided by this library are for SadConsole.Host.MonoGame and SadConsole.Host.SFML. When adding a host library to your project, you don't need to reference the base SadConsole package. If you use MonoGame, you'll also need to add a rendering NuGet package, such as MonoGame.Framework.DesktopGL.
SadConsole currently targets .NET 6, .NET 7, .NET 8, and .NET 9
For the latest changes in this release, see the notes below
Here are some of the features SadConsole supports:
Note: .NET 6 has been dropped by the host libraries in favor of .NET 8 as the minimum version. The core SadConsole library still supports .NET 6.
ClearScreenComponent
. Instead, the clear screen happens right before the final draw of the main SadConsole component.Builder.Run
was renamed to Builder.ProcessConfigs
and a new Builder.Run
was added to make it simpler to configure and start the game.IsDirty = false
when exiting UpdateAndRedraw
.SetGlyph
method overload to ICellSurface
which takes a GlyphDefinition
to update the glyph and mirror of a cell.MoveToFront
functionality.MouseDrag
component.OptimizedScreenSurfaceRenderer
which is a renderer that only draws dirty cells.IsDirty = false
when they're actually drawn instead of when the update method of the control says it should be drawn.RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4