add roadmap file

trunk
vilmibm 2022-12-30 00:37:02 -05:00
parent 0ffe80db86
commit d6747eef60
1 changed files with 69 additions and 0 deletions

69
roadmap.md 100644
View File

@ -0,0 +1,69 @@
# hermeticum roadmap
_being a rather unsorted, evolving, and utterly incomplete braindump of tasks for hermeticum_
for the next push, i see two things: editing WITCH scripts in-client and inter-room movement. I think I'd rather work on inter-room movement until not being able to edit WTICH scripts in-client becomes unbearable.
In tildemush, inter-room movement worked like this:
- there were six directions:
- north
- south
- east
- west
- above/up
- below/down
- rooms contained "exit" objects
- exit objects are defined as objects with an `exit` key in their data map
- the exit map gets two keys added:
- one for the room in which the exit was created pointing to target room with given direction
- one for the target room with reverse of given direction
- the exit object is then added to _both_ the current and target room
- when a go command is observed, the server checks the current room for exit objects and finds the one with the given direction and moves the sender to the room it targets
I don't like the exit simultaneously existing in two rooms at once or the special handling at the server level.
TODO draft something new
## server beta
- [x] grpc server
- [x] session handling (opening/closing)
- [x] verb handling
- [x] WITCH: initial setup
- [x] DB: initial schema
- [ ] DB: sundry error handling
- [ ] build out some more default rooms
- [ ] WITCH: ability to send verbs outward
- [ ] WITCH: transitive verb support
- [ ] WITCH: provides function
- [ ] WITCH: movement stuff (teleport, move)
- [ ] VERBS: create
- [ ] VERBS: announce (for gods)
- [ ] VERBS: movement
- [ ] VERBS: inventory
- [ ] get
- [ ] drop
- [ ] view inventory
- [ ] VERBS: script editing
- [ ] VERBS: look
- [ ] VERBS: examine
- [ ] password hashing
- [ ] encrypted connection
- [ ] cron system
- [ ] room mapping
- [ ] global chat
- [ ] loudness system
## client beta
- [x] basic tview app
- [x] registration
- [x] login
- [ ] sundry error handling
- [ ] encrypted connection
- [ ] ping/pong tracking for server health report
- [ ] room mapping
- [ ] global chat
- [ ] details pane (see: examine command)
- [ ] script editing