website/content/features.md

124 lines
4.7 KiB
Markdown
Raw Normal View History

2021-04-02 04:07:27 +00:00
---
title: "Features"
draft: false
toc: true
---
The following are the game's **current** features and its **planned** features
before the game leaves "alpha" status.
![Screenshot of the level editor](/images/floor-is-lava.png)
2021-04-03 04:22:33 +00:00
# _Sketchy Maze_ is a "Forever Project"
I have a list of features I _really_ want for the "1.0" launch of the game, but
I'll plan on continuing development for as long as I find it interesting and will
release free updates to everybody who buys the game just once.
I've always wanted to make a videogame, and always liked to learn about game
design and everything, but never actually made anything worthwhile until
_Sketchy Maze._ Over time, I realized that I don't actually want to build
"a video game," what I wanted was a game _project_. Something I could just work
on and add features to, more of a game "platform," something long-term like
Minecraft.
This page describes the initial set of features planned for the 1.0 and some
ideas I have kicking around further down the road if all goes well.
# 1.0 Features
The expected feature list for the "1.0" version of the game, and how
far along I am.
## Level & Doodad Editor
The level editor should include basic drawing tools:
* **Features:**
* [x] Easily switch between Play Mode and Edit Mode to test your level.
* [x] Draw your own pixels anywhere you want.
* _Should_ be pixel-perfect collision detection, though Boy has a hitbox
that could use some trimming.
* [x] Editable Palette to add and modify colors.
* **Drawing tools:**
* [x] Freehand
* [x] Line
* [x] Rectangle
* [x] Ellipse
* [x] Eraser
* [x] Undo/Redo
* [ ] Zoom In/Out ([--experimental](/guidebook/experimental.html))
* **Level Sizes:**
* [x] Bounded levels (0,0 to 2550,3300)
* [ ] Custom width/height for Bounded (just needs UI work)
* [x] No Negative Space: infinitely big levels which still have a
top-left corner bounded at (0,0)
* [x] Unbounded: infinitely large levels with no corners.
* [ ] Bordered: a bounded level where the top and left decorations
wrap around on the bottom and right sides too.
* **Wallpaper Themes:**
* [x] Notebook: standard blue ruled notebook paper.
* [x] Blueprint: dark blueprint paper.
* [x] Legal pad: yellow legal pad with blue and red lines.
* [ ] Blank sheet: a texture of a blank white sheet of paper.
* [ ] Grid paper: a white page with grid pattern.
* [x] Pure white: just a solid white background with no texture.
* [ ] Placemat: a wavy pattern meant to decorate all four sides of a
Bordered map.
* [ ] Custom Wallpaper: users will be able to bundle a custom
wallpaper texture inside their level file.
* **Doodad Editor:**
## Doodads Editor
## Single Player Campaign
The game is expected to come with a series of proper levels built-in which
are played in sequence and has some kind of interconnected story or
something. Currently you get some tutorial levels.
* **Single Player Campaign:**
* [ ]
* **Polish:**
* The platforming physics will be better. Currently the character gets
stick walking up sloped surfaces, _especially_ moving Left (but not as
much moving Right).
* [ ] Checkbox?
# Current Doodads
The current list of doodads built-in with the game can be found in the
[guidebook](/guidebook/doodads.html). For the exhaustive list so far, we have:
* **Bird:** a red bird that flies back and forth and can be ridden on.
* **Button:** sends a power on/off signal to a linked doodad.
* **Colored Doors & Keys:** four pairs of locks and matching keys.
* **Crumbly Floor:** a break-away floor.
* **Electric Door:** a closed door that only opens when it's powered.
* **Red Azulian:** test mob.
* **Small Key Doors:** locked doors and keys that are consumed each time
a door is unlocked.
* **Start & End Flags:** set the player spawn point and level goal.
* **State Blocks:** blue and orange blocks that toggle from solid to
passable.
* **State Button:** on/off switch that globally toggles state blocks.
* **Switches:** toggle electric doors open or closed or provide power
on/off to other doodads.
* **Trapdoors:** one-way passages (all four directions).
* **Warp Doors:** for fast travel around the map between any two linked
Warp Doors.
* **Warp Doors (Blue & Orange):** boolean state versions of Warp Doors,
which may only be entered while the door is active.
Some hidden doodads that you can activate with cheat codes, but which
don't **do** very much because they were for the player character:
* **Boy:** the player character in a blue hoodie.
* **Blue Azulian:** the original placeholder character, a blue version of
the Red Azulian.
(For that cheat code, try entering "boolProp showAllDoodads true" into
the developer console **before** opening the Level Editor, and they will
be available in the Doodads palette with the others).