SadConsole 10.7.0

dotnet add package SadConsole --version 10.7.0
                    
NuGet\Install-Package SadConsole -Version 10.7.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="SadConsole" Version="10.7.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SadConsole" Version="10.7.0" />
                    
Directory.Packages.props
<PackageReference Include="SadConsole" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add SadConsole --version 10.7.0
                    
#r "nuget: SadConsole, 10.7.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package SadConsole@10.7.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=SadConsole&version=10.7.0
                    
Install as a Cake Addin
#tool nuget:?package=SadConsole&version=10.7.0
                    
Install as a Cake Tool

SadConsole Logo

Chat on discord NuGet

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 8, .NET 9, and .NET 10

For the latest changes in this release, see the notes below

Features

Here are some of the features SadConsole supports:

  • Show any number of consoles of any size.
  • Uses graphical tile-based images to build out an ASCII-character font with support for more than 256 characters.
  • Fonts are simply sprite sheet tilesets tied to ascii codes, you can use full graphical tiles if you want.
  • Use more than one font file. However, each console is restricted to a single font.
  • Full GUI system for interactive controls such as list boxes, buttons, and text fields.
  • Importers for DOS ANSI files, TheDraw text fonts, RexPaint, and Playscii.
  • Animated consoles and instruction system to chain commands together.
  • String encoding system for colors and effects while printing.
  • Entity support for drawing thousands of movable objects on the screen
  • Translating images to text-blocks.
  • Keyboard and mouse support.
  • Highly customizable framework.
String display and parsing

string pic

GUI library

GUI library pic

Scrolling

scrolling console

Latest changes

  • Cleaned up various warnings and XML comments.
  • [Core] BlinkChar supports starting on or off now.
  • [Core] Fix crash when resizing a surface with a smaller height and same width while the clear flag is set.
  • [Core] ScreenObject positioning can be scaled by an amount, such as a font size or any other size.
  • [Core] SadFont.ToString now returns the font name.
  • [Core] AnimatedScreenObject.ResyncFrameSizes method added correctly set the size of a new frame to the first frame in the animation.
  • [Core] When splashscreen closes, call update on new the new Screen. Fixes a bug with ControlsHost not drawing the first state of controls.
  • [UI] Fixed a long-standing bug with CompositeControl where visual focus wasn't removed from a child control when the mouse moved out of the window.
  • [Extended] Added the config builder extension PopupGlyphPicker.
  • [SFML] Upgraded to the latest SFML.Net version.
  • [FNA] Upgraded to FNA 25.11.
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (8)

Showing the top 5 NuGet packages that depend on SadConsole:

Package Downloads
SadConsole.Extended

A library of common classes that extend SadConsole with new controls, windows, and more.

SadConsole.Host.MonoGame

A graphics hosting library for SadConsole that targets MonoGame.

SadConsole.Host.SFML

A graphics hosting library for SadConsole that targets SFML.

SadConsole.GoRogueHelpers

A helper library for SadConsole games built with GoRogue.

TheSadRogue.Integration

An official integration library for using GoRogue and SadConsole together to create a roguelike.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on SadConsole:

Repository Stars
Thraka/SadConsole
A .NET ascii/ansi console engine written in C# for MonoGame and SFML. Create your own text roguelike (or other) games!
Version Downloads Last Updated
10.7.0 416 11/15/2025
10.7.0-debug 213 11/15/2025
10.6.0 1,099 8/9/2025
10.6.0-debug 224 8/9/2025
10.5.0 2,505 12/7/2024
10.5.0-debug 250 12/7/2024
10.4.2 390 10/24/2024
10.4.2-debug 182 10/24/2024
10.4.1 1,568 6/13/2024
10.4.1-debug 281 6/13/2024
10.4.0 1,626 3/31/2024
10.4.0-debug 310 3/31/2024
10.0.3 803 3/14/2024
10.0.3-debug 383 3/14/2024
10.0.2 1,766 11/10/2023
10.0.2-debug 979 11/10/2023
10.0.1 841 11/10/2023
10.0.1-debug 809 11/10/2023
10.0.0 1,956 10/29/2023
10.0.0-debug 1,107 10/29/2023
10.0.0-beta3-debug 1,219 10/14/2023
10.0.0-beta3 1,186 10/14/2023
10.0.0-beta2-debug 1,177 10/11/2023
10.0.0-beta2 1,205 10/11/2023
10.0.0-beta1-debug 1,212 10/11/2023
10.0.0-beta1 1,242 10/11/2023
10.0.0-alpha4-debug 1,491 8/26/2023
10.0.0-alpha4 1,447 8/26/2023
10.0.0-alpha3-debug 1,360 8/26/2023
10.0.0-alpha3 1,361 8/26/2023
10.0.0-alpha2-debug 1,761 6/18/2023
10.0.0-alpha2 1,563 6/18/2023
10.0.0-alpha1-debug 1,735 6/4/2023
9.2.2 5,557 1/22/2022
9.2.2-debug 1,385 1/22/2022
9.2.1 2,687 1/4/2022
9.2.0 3,612 12/31/2021
9.2.0-debug 1,251 12/31/2021
9.1.1 6,231 8/7/2021
9.1.1-debug 1,445 8/7/2021
9.1.0 2,363 7/6/2021
9.1.0-debug 1,428 7/6/2021
9.0.0 5,067 6/6/2021
9.0.0-debug 1,434 6/6/2021
9.0.0-beta4 2,205 1/15/2021
9.0.0-beta3 2,387 12/19/2020
9.0.0-beta2 1,800 10/9/2020
9.0.0-beta1 1,908 8/1/2020
9.0.0-alpha9 1,945 7/25/2020
9.0.0-alpha8 1,602 7/13/2020
9.0.0-alpha7 2,043 7/11/2020
9.0.0-alpha6 2,023 5/28/2020
9.0.0-alpha5 1,797 5/26/2020
9.0.0-alpha4 1,609 5/1/2020
9.0.0-alpha3 1,815 5/1/2020
9.0.0-alpha2 1,728 3/14/2020
9.0.0-alpha1 2,215 1/26/2020
8.99.3 3,962 8/15/2020
8.99.3-debug 1,648 8/15/2020
8.99.2 1,985 7/14/2020
8.99.2-debug 1,607 7/14/2020
8.99.1 2,677 4/11/2020
8.99.1-debug 1,625 4/11/2020
8.99.0 2,726 11/27/2019
8.99.0-debug 1,615 11/27/2019
8.9.1 4,177 11/5/2019
8.9.1-debug 1,619 11/5/2019
8.9.0 2,524 9/7/2019 8.9.0 is deprecated because it is no longer maintained.
8.9.0-debug 1,952 9/7/2019 8.9.0-debug is deprecated because it is no longer maintained.
8.8.1 3,459 7/28/2019 8.8.1 is deprecated because it is no longer maintained.
8.8.1-debug 1,881 7/28/2019 8.8.1-debug is deprecated because it is no longer maintained.
8.8.0 2,712 7/27/2019 8.8.0 is deprecated because it is no longer maintained.
8.8.0-debug 1,822 7/27/2019 8.8.0-debug is deprecated because it is no longer maintained.
8.7.1 2,255 6/22/2019 8.7.1 is deprecated because it is no longer maintained.
8.7.1-debug 1,883 6/22/2019 8.7.1-debug is deprecated because it is no longer maintained.
8.7.0 2,100 6/22/2019 8.7.0 is deprecated because it is no longer maintained.
8.7.0-debug 1,931 6/22/2019 8.7.0-debug is deprecated because it is no longer maintained.
8.6.0 2,351 4/14/2019 8.6.0 is deprecated because it is no longer maintained.
8.6.0-debug 1,938 4/14/2019 8.6.0-debug is deprecated because it is no longer maintained.
8.5.0 2,259 4/2/2019 8.5.0 is deprecated because it is no longer maintained.
8.5.0-debug 1,964 4/2/2019 8.5.0-debug is deprecated because it is no longer maintained.
8.4.1 2,208 3/19/2019 8.4.1 is deprecated because it is no longer maintained.
8.4.1-debug 1,975 3/19/2019 8.4.1-debug is deprecated because it is no longer maintained.
8.4.0 2,094 3/17/2019 8.4.0 is deprecated because it is no longer maintained.
8.4.0-debug 1,966 3/17/2019 8.4.0-debug is deprecated because it is no longer maintained.
8.3.0 2,185 3/10/2019 8.3.0 is deprecated because it is no longer maintained.
8.3.0-debug 1,906 3/10/2019 8.3.0-debug is deprecated because it is no longer maintained.
8.2.0 2,225 3/2/2019 8.2.0 is deprecated because it is no longer maintained.
8.2.0-debug 2,012 3/2/2019 8.2.0-debug is deprecated because it is no longer maintained.
8.1.0 2,194 2/28/2019 8.1.0 is deprecated because it is no longer maintained.
8.1.0-debug 1,906 2/28/2019 8.1.0-debug is deprecated because it is no longer maintained.
8.0.0 2,306 2/24/2019 8.0.0 is deprecated because it is no longer maintained.
8.0.0-pre5 1,983 2/19/2019 8.0.0-pre5 is deprecated because it is no longer maintained.
8.0.0-pre4 2,009 1/31/2019 8.0.0-pre4 is deprecated because it is no longer maintained.
8.0.0-pre2 2,040 12/30/2018 8.0.0-pre2 is deprecated because it is no longer maintained.
8.0.0-pre1 1,992 12/30/2018 8.0.0-pre1 is deprecated because it is no longer maintained.
7.3.0 2,232 12/29/2018
7.2.0 2,449 11/20/2018 7.2.0 is deprecated because it is no longer maintained.
7.1.0 2,507 10/19/2018 7.1.0 is deprecated because it is no longer maintained.
7.0.4 2,445 9/8/2018 7.0.4 is deprecated because it is no longer maintained.
7.0.3 2,278 9/8/2018 7.0.3 is deprecated because it is no longer maintained.
7.0.2 2,669 8/31/2018 7.0.2 is deprecated because it is no longer maintained.
7.0.0 2,313 8/29/2018
7.0.0-pre1 2,122 8/22/2018 7.0.0-pre1 is deprecated because it is no longer maintained.
6.5.0 2,789 6/12/2018
6.4.11 2,936 4/13/2018 6.4.11 is deprecated because it is no longer maintained.
6.4.11-pre1 2,711 4/6/2018 6.4.11-pre1 is deprecated because it is no longer maintained.
6.4.10 2,898 3/18/2018 6.4.10 is deprecated because it is no longer maintained.
6.4.9 2,860 3/18/2018 6.4.9 is deprecated because it is no longer maintained.
6.4.8 2,833 3/18/2018 6.4.8 is deprecated because it is no longer maintained.
6.4.7 2,901 3/16/2018 6.4.7 is deprecated because it is no longer maintained.
6.4.6 3,137 2/14/2018 6.4.6 is deprecated because it is no longer maintained.
6.4.5 2,940 2/3/2018 6.4.5 is deprecated because it is no longer maintained.
6.4.3 2,769 11/14/2017 6.4.3 is deprecated because it is no longer maintained.
6.4.2 2,854 8/11/2017 6.4.2 is deprecated because it is no longer maintained.
6.4.1 2,674 8/10/2017 6.4.1 is deprecated because it is no longer maintained.
6.4.0 2,754 7/25/2017 6.4.0 is deprecated because it is no longer maintained.
6.3.0 2,781 6/9/2017 6.3.0 is deprecated because it is no longer maintained.
6.2.2 2,781 5/20/2017 6.2.2 is deprecated because it is no longer maintained.
6.2.1 2,874 4/23/2017 6.2.1 is deprecated because it is no longer maintained.
6.2.0 2,704 4/22/2017 6.2.0 is deprecated because it is no longer maintained.
6.1.4 2,696 4/17/2017 6.1.4 is deprecated because it is no longer maintained.
6.1.3 3,363 4/3/2017 6.1.3 is deprecated because it is no longer maintained.
6.1.2 2,679 4/1/2017 6.1.2 is deprecated because it is no longer maintained.
6.1.1 2,628 4/1/2017 6.1.1 is deprecated because it is no longer maintained.
6.1.0 2,632 3/31/2017 6.1.0 is deprecated because it is no longer maintained.
6.0.1 2,771 3/19/2017 6.0.1 is deprecated because it is no longer maintained.
6.0.0 2,462 3/18/2017

- Cleaned up various warnings and XML comments.
- `BlinkChar` supports starting on or off now.
- Fix crash when resizing a surface with a smaller height and same width while the clear flag is set.
- `ScreenObject` positioning can be scaled by an amount, such as a font size or any other size.
- `SadFont.ToString` now returns the font name.
- `AnimatedScreenObject.ResyncFrameSizes` method added correctly set the size of a new frame to the first frame in the animation.
- Fixed a long-standing bug with `CompositeControl` where visual focus wasn't removed from a child control when the mouse moved out of the window.
- When splashscreen closes, call update on new the new Screen. Fixes a bug with `ControlsHost` not drawing the first state of controls.