SadConsole 9.0.0-alpha7
See the version list below for details.
dotnet add package SadConsole --version 9.0.0-alpha7
NuGet\Install-Package SadConsole -Version 9.0.0-alpha7
<PackageReference Include="SadConsole" Version="9.0.0-alpha7" />
<PackageVersion Include="SadConsole" Version="9.0.0-alpha7" />
<PackageReference Include="SadConsole" />
paket add SadConsole --version 9.0.0-alpha7
#r "nuget: SadConsole, 9.0.0-alpha7"
#:package SadConsole@9.0.0-alpha7
#addin nuget:?package=SadConsole&version=9.0.0-alpha7&prerelease
#tool nuget:?package=SadConsole&version=9.0.0-alpha7&prerelease
- Various
ControlHostcontrol management bugs fixed (thanks coldwarrl). - Rendering of Fonts improved.
- Start of
Fontsystem overhaul. - Fixed bug
DrawStringinstruction with cursors. - Improved
ITexturefrom GameHosts. Has more methods likeGet/SetPixelandToSurface. - Improved
Cursorusability. - Draw method on objects changed to Render to communicate intent.
- LayeredScreenSurface completely rewritten.
- Hosts now use strings to define renderers and allow you to redefine them in the host.
- Surface now have a TintBeforeDrawCall which when false tints the screen draw call to allow transparent surfaces.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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 was computed. 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 was computed. 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. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 is compatible. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETCoreApp 3.1
- Newtonsoft.Json (>= 12.0.3)
- SharpFNT (>= 2.0.0)
- TheSadRogue.Primitives (>= 1.0.0-alpha4-debug)
-
.NETStandard 2.1
- Newtonsoft.Json (>= 12.0.3)
- SharpFNT (>= 2.0.0)
- TheSadRogue.Primitives (>= 1.0.0-alpha4-debug)
NuGet packages (8)
Showing the top 5 NuGet packages that depend on SadConsole:
| Package | Downloads |
|---|---|
|
SadConsole.Host.MonoGame
A graphics hosting library for SadConsole that targets MonoGame. |
|
|
SadConsole.Extended
A library of common classes that extend SadConsole with new controls, windows, and more. |
|
|
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.8.0 | 542 | 1/19/2026 |
| 10.8.0-debug | 160 | 1/19/2026 |
| 10.7.0 | 660 | 11/15/2025 |
| 10.7.0-debug | 236 | 11/15/2025 |
| 10.6.0 | 1,460 | 8/9/2025 |
| 10.6.0-debug | 244 | 8/9/2025 |
| 10.5.0 | 2,577 | 12/7/2024 |
| 10.5.0-debug | 280 | 12/7/2024 |
| 10.4.2 | 420 | 10/24/2024 |
| 10.4.2-debug | 202 | 10/24/2024 |
| 10.4.1 | 1,590 | 6/13/2024 |
| 10.4.1-debug | 305 | 6/13/2024 |
| 10.4.0 | 1,662 | 3/31/2024 |
| 10.4.0-debug | 336 | 3/31/2024 |
| 10.0.3 | 840 | 3/14/2024 |
| 10.0.3-debug | 410 | 3/14/2024 |
| 10.0.2 | 1,792 | 11/10/2023 |
| 10.0.2-debug | 1,003 | 11/10/2023 |
| 10.0.1 | 858 | 11/10/2023 |
| 9.0.0-alpha7 | 2,070 | 7/11/2020 |
A lot of structual changes to split out rendering from SadConsole. You now need to add SadConsole.Host.MonoGame
or SadConsole.Host SFML to your project.
Major changes:
- Object model has changed a lot. Console types no longer inherit from CellSurface and are based on a few different base
classes and interfaces implemented through ScreenObject. Everything in SadConsole is now a ScreenObject.
- Console.Surface represents the cell surface of the console. Extension methods are provided so that you can use
Console.Print and related methods. If you coding inside a Console instance though, the extension methods only work if
you qualify the call with this.Print.
- Font/FontMaster are now merged into a single type: Font.
- Font sizes are always represented in an X,Y value now, and are seperate from the font itself. This means every
console has a Font and FontSize property now instead of a single Font property.
- All UI objects were moved into the SadConsole.UI namespace.
- The theme system was overhauled (and mostly backported to SadConsole v8).
- A lot of misc name changes, swapping out where it specified Console and substituting ScreenObject. For example,
SadConsole.Input.MouseConsoleState is now SadConsole.Input.MouseScreenObjectState
- SadConsole.Global had a lot of changes and not longer exists. Properties from Global are now available on SadConsole.GameHost.Instance.
- SadConsole.GameHost.Instance.Screen is the root console displayed on the screen to which all other objects are attached to. It is a console
and you cannot change this. It makes it simpler for new users. To disable it, disable the renderer: SadConsole.GameHost.Instance.Screen.Renderer = null.
Objects added to the Children collection will still work; SadConsole will not bother drawing the root console itself.
- ControlConsole no longer provides the logic for the GUI system. This was migrated to a new component: ControlHost. The host can be added to any console
you want to be able to display controls. The ControlsConsole type remains for ease of use. It now provides a ControlHostComponent property with direct
access to the component instance automatically added to the console.
- Entity is no longer a Console but a ScreenObject.
- App creation is slightly different with a few names migrated and events for draw/update callbacks
SadConsole.Game.Create(80, 25);
SadConsole.Game.Instance.OnStart = Init;
SadConsole.Game.Instance.FrameUpdate += Instance_FrameUpdate;
SadConsole.Game.Instance.Run();
SadConsole.Game.Instance.Dispose();