@ -26,11 +26,33 @@ _Sketchy Maze_ is first and foremost a videogame for **desktop operating systems
It should run on any GNU/Linux, Microsoft Windows or Apple macOS computer.
If you're feeling dangerous, you can also run it on GNU/Linux smartphone devices
like the Purism Librem 5 or Pine64 Pinephone.
like the Purism Librem 5 or Pine64 Pinephone. Mobile ports are _relatively_
down on the priority list, but it already _sorta_ functions.
See the [Download](/download) page.
# Pricing
## Do I need to learn how to program?
Nope! You can just draw some levels and use pre-made doodads in them. The "1.0"
version of the game is expected to include a proper set of single player levels
that can simply be _played_ so you don't even need to draw your own level if
you're not feeling creative.
## The user interface is ugly!
I find the "Windows 95" look charming.
The good thing about the user interface is that it's released as a
[free and open source](#is-this-game-open-source) module. Eventually I plan to
build theming support into the UI toolkit, and _Sketchy Maze_ will automatically
look awesome.
I developed my UI toolkit from scratch, and the "Windows 95" look is _very_ easy
to program. A button is just a handful of rectangles drawn on top of each other
with offsets to provide the "3D look" and I found it preferable to make the UI
toolkit _look how it acts_ until I was confident I did it right.
# Pricing and Distribution
## Is this game free?
@ -56,3 +78,89 @@ Paid versions of the game will include _additional_ features such as:
sharing with other players.
* Possibly some access to online account features (in-game UI to share and
download levels and doodads made by others, etc.)
It is expected that the full set of built-in doodads will be equally available
in free versions of the game. And these doodads should be varied and featureful
enough to create all sorts of custom and creative levels, which can be shared
with other players.
## Will the game feature any form of Digital Rights Management (DRM)?
I hate DRM, so I don't expect so.
## Will this game be available on Steam?
I haven't decided yet. I think I could try and distribute the game myself first.
It's gonna be in beta for some time and I can see if it attracts a cult following
along the way.
# Technicals
## What is this game built with?
_Sketchy Maze_ runs on a custom game engine, built from the ground up, in the
[Go](https://golang.org) programming language using [SDL2](https://www.libsdl.org/) for graphics via [veandco/go-sdl2](https://github.com/veandco/go-sdl2) bindings for Go.
While the game itself is not open source, some of its critical components are released as free and open source projects that other developers can use in their projects.
## Is this game open source?
Parts of it are!
_Sketchy Maze_ was built from the ground up using little more than
[SDL2](https://www.libsdl.org/) which lets you plot pixels on a screen. While
I was designing the game, I thought it'd be a good idea to write an abstraction
layer between low-level SDL2 functions and give me a clean, Go-like API to work
with that keeps my code from either _depending_ too much on SDL or for my Go
code to be written too C-like to work with it.
So I built my own [render](https://git.kirsle.net/go/render) library that
abstracts around SDL2 for desktops and HTML5 Canvas elements for WebAssembly,
and my game needed UI buttons so I wrote a [UI toolkit](https://git.kirsle.net/go/ui)
which provides Labels, Buttons, Menus, Windows, and all sorts of useful widgets
to draw my user interface with.
Here are a list of open source projects created **as a part of** development of
_Sketchy Maze_ which should be generally useful to any Go developers for making