aboutsummaryrefslogtreecommitdiff
path: root/TODO.md
diff options
context:
space:
mode:
Diffstat (limited to 'TODO.md')
-rw-r--r--TODO.md72
1 files changed, 2 insertions, 70 deletions
diff --git a/TODO.md b/TODO.md
index a139835..52a4d54 100644
--- a/TODO.md
+++ b/TODO.md
@@ -4,7 +4,7 @@ A low-tech sci-fi MUD set on a terraformed asteroid. Runescape-style combat and
## Theme
-Not generic fantasy. Takes place on a terraformed asteroid. Technology has regressed — people scrap and scavenge remnants of the old world. "Science" replaces Prayer, "Technology" replaces Magic. Scavenging replaces Runecrafting.
+Takes place on a terraformed asteroid. Technology has regressed — people scrap and scavenge remnants of the old world. "Science" replaces Prayer, "Technology" replaces Magic. Scavenging replaces Runecrafting.
## Skills (23 total, all go from 1-99)
@@ -193,75 +193,7 @@ See WORLDBUILDING.md for full examples of every data type with explanations.
## Action Plan
-### Phase 1: Tiny ASCII Map
-
-- [x] Limit the room description to 70 characters wide. Add a setting named "maxWidth" in an appropriate section of config.yaml along with comment explaining it.
-
-Next to the block of room description text should be an ASCII mini-map showing the current room as @ and a grid of the rooms and connections surrounding it. A full-size ASCII map for the "map" command will eventually be implemented so keep that in mind for methodology and potential functions we can reuse.
-Each line of the map should print on the maxWidth+2 character after the description (so there's always at least one space between the description and map)
-If the map is longer than the description, just keep printing new lines for the map.
-
-The first line is always ╔═════╗
-The last line is always ╚═════╝
-Each of the 5 inner lines begins and ends with ║
-
-The map shows up to 9 rooms and any exits connecting them. The 5 inner lines have 7 characters each (including the border) which be defined like this:
-
-Line 1: [║, Room A (shown if there is a west exit from North Room or north exit from West Room), — if there is a west exit from North Room, North Room, — if there is an east exit from North Room, Room B (shown if there is an east exit from North Room or north exit from East Room), ║]
-Line 2: [║, | if there is a north exit from West Room, Blank, | if there is a north exit from Current Room, ↑ if there is an up exit from Current Room, | if there is a north exit from East Room, ║]
-Line 3: [║, West Room, — if there is a west exit from Current Room, @, — if there is an east exit from Current Room, East Room, ║]
-Line 4: [║, | if there is a south exit from West Room, ↓ if there is a down exit from Current Room, | if there is a south exit from Current Room, Blank, | if there is a south exit from East Room, ║]
-Line 5: [║, Room C (shown if there is a west exit from South Room or south exit from West Room), — if there is a west exit from South Room, South Room, — if there is an east exit from South Room, Room D (shown if there is an east exit from South Room or south exit from East Room), ║]
-
-Note that North Room, East Room, South Room, and West Room can still show up even if there isn't a direct link from the current room to them. For example if there is a to East Room, then that has an exit north, then that room has an exit west, the 'north room' still shows up on the map.
-
-Each room has a parameter map_symbol to identify it on the map.
-
-This is how the map looks when every possible room and exit is shown. o is the map_symbol for each room in this example:
-
-╔═════╗
-║o—o—o║
-║| |↑|║
-║o—@—o║
-║|↓| |║
-║o—o—o║
-╚═════╝
-
-This is a map with fewer connections. Note that 'Room A' and 'North Room' show up despite only being connected through East Room and Room B.
-
-╔═════╗
-║o—o—o║
-║ |║
-║o—@—o║
-║| ║
-║o ║
-╚═════╝
-
-
-Here's how the room description would look limited to 70 characters long with the map to the right:
-
-Central Market
-The market square pulses with the unbridled energy of a thousand ╔═════╗
-voices, a symphony of commerce and humanity that hasn't changed in ║o—o—o║
-generations. Overhead, September clouds drift lazily across the sky, ║| |↑|║
-occasionally releasing weak sunlight that transforms the ancient ║o—@—o║
-stone beneath countless feet into patches of burnished gold. ║|↓| |║
- ║o—o—o║
- ╚═════╝
-
-- [x] This is a feature that can be toggled with the "tinymap" toggle. If the toggle is off, don't print the map at all.
-- [x] Add a toggle "left-tinymap". If this is enabled, the map should be printed on each line before the room description. For example:
-
-Central Market
-╔═════╗ The market square pulses with the unbridled energy of a thousand
-║o—o—o║ voices, a symphony of commerce and humanity that hasn't changed in
-║| |↑|║ generations. Overhead, September clouds drift lazily across the sky,
-║o—@—o║ occasionally releasing weak sunlight that transforms the ancient
-║|↓| |║ stone beneath countless feet into patches of burnished gold.
-║o—o—o║
-╚═════╝
-
-### Phase 1b: Map & Option System
+### Phase 1: ASCII map implemented with BFS
- [x] Replaced `toggle` command with `option`/`options` — supports bool (on/off), string (choice lists), and int option types
- [x] All old toggles migrated to the option system (tinymap, left-tinymap, xpdrops, exits, mobenter, mobleave, mobspawn, reserve, depletion, description)