https://github.com/imagment/silver-cplusplus
A simple and easy library for text-based game development
https://github.com/imagment/silver-cplusplus
cpp cpp17 game-development gamedev gamedev-library library programming silver text-based-game-engine text-based-games videogames
Last synced: 2 months ago
JSON representation
A simple and easy library for text-based game development
- Host: GitHub
- URL: https://github.com/imagment/silver-cplusplus
- Owner: imagment
- License: mit
- Created: 2024-10-03T11:40:56.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2025-04-06T12:09:28.000Z (2 months ago)
- Last Synced: 2025-04-10T01:00:49.903Z (2 months ago)
- Topics: cpp, cpp17, game-development, gamedev, gamedev-library, library, programming, silver, text-based-game-engine, text-based-games, videogames
- Language: C
- Homepage: https://discord.gg/72TbP8G69k
- Size: 2.72 MB
- Stars: 11
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
**Silver C++** is a simple and easy-to-use library designed for text-based game development. You can create an interactive story game, an escape room game, a simple console adventure, and anything!
When I was a solo game developer, I used to get frustrated with having to adjust every little design detail, like resizing a logo or fixing a missing pixel on my pixel art. Thatโs when I started exploring text-based games.
I realized that text-based games are often underrated, but they can be incredibly rewarding with a good story and solid game mechanics. Thatโs why I created this libraryโto simplify the development process of text-based games.
Creating text-based games is incredibly rewarding, and this library not only enhances their value and productivity but also aims to make text-based games more enjoyed and accessible to many videogame enjoyers. Our goal is to let people enjoy text-based games just as much as they enjoy traditional games.
[](https://discord.gg/72TbP8G69k)
[](https://github.com/imagment/Silver-Cplusplus/releases)## Installation
To install **Silver C++**, follow these steps:
1. Clone the repository:
```bash
git clone https://github.com/imagment/Silver-Cplusplus.git2. Build with CMake
After cloning the repository, navigate to the project folder and use CMake to build the project:
```
cd Silver-Cplusplus
mkdir build
cd build
cmake ..
make
```
**Important: Compatibility Information**
<<<<<<< HEAD
Silver C++ is only compatible with **Linux-based** operating systems.
Windows is *not* supported currently. We are creating another version of Silver C++ that supports Windows.
=======
**Silver C++** is compatible with both **Linux-based** and **Windows-based** operating systems.
For **Windows** users, you can use the [Silver Windows Edition](https://github.com/imagment/Silver-Windows-Edition/tree/dev).
>>>>>>> dev## Features
- โ **No external dependencies** - All required libraries are included into Silver C++
- ๐ **Simple & Lightweight** โ Minimal setup required, so you can focus on game logic.
- ๐จ **Rich Text Support** โ Easily display formatted text, colors, and simple animations for immersive gameplay.
- ๐ฎ **Interactive Input Handling** โ Seamlessly process user input for interactive storytelling and decision-making.
- ๐ **Easy-to-Use API** โ Intuitive functions for game logic, and essential components like transform, camera and sprite rendering.
- โก **Multithreading Support** โ Boost performance by running tasks concurrently.
- ๐ข **Math Module** โ Built-in utilities for Vectors and Rects
- ๐ **Code Style** โ Written in C++17 using CamelCase and PascalCase notation for clarity and consistency.## Examples
```
#include "Silver.hpp"int main() {
Actor c1;
c1.AddComponent();Actor actor("alert", "Hello World!");
actor.GetComponent()->position = Vector3Zero;
actor.GetComponent()->scale = Vector3(1,1,1);
actor.AddObject();
c1.GetComponent()->RenderFrame();Hold();
return 0;
}
```