Update TODO.md

- add very ambitious plans to rewrite state syncing
- move partial_vanilla to unplanned section
This commit is contained in:
NullBite 2023-06-22 02:40:22 -04:00
parent 7c874e16fe
commit 7f3b96c5d4
Signed by: nullbite
GPG Key ID: 6C4D545385D4925A

32
TODO.md
View File

@ -18,12 +18,30 @@
- [ ] fix armor, won't re-enable until cleanup
## Cleanup
- [ ] Rewrite state management and synchronization code to be less horrifying
- [ ] one library for syncing state
- [ ] sender side: allow syncing entire state (EXPENSIVE) or just
single values
- [ ] internally map variable names to a number deterministically
to reduce unnecessary data transfer
i.e. t["this_is_a_very_long_but_readable_variable_name"]=42 ->
t[6]=42
- [ ] use a lookup table/array based on order added
- [ ] user should never see this, variable name to number
translation should be completely transparent
- [ ] alternatively no manual syncing; state should be implicitly
"shared" and can only be written to/read from via functions to
prevent bad programming from desyncing state
- [ ] receiver side: register handler function that has access to both
old and new state
- [ ] receive value -> run handler function -> replace old value with current
- [ ] i think figura has a shared storage thing but it's not real time,
mirror values to this so newly initialized players load with
correct state
- [ ] one library for storing configs and their default values
- [ ] this will insert values into the shared state using the other library
- [ ] potentailly rework shared state variables
- [ ] rework appropriate action wheel items as ToggleAction instead of ClickAction
- [ ] reimplement partial vanilla as texture swap
- [x] remove partial_vanilla stuff from PartsManager
- [ ] fix UVManager with matrices or something
- [ ] add swap to skin texture
- [ ] split off large snippets of code into separate files
- [.] PartsManager
- [.] UVManager
@ -31,6 +49,12 @@
- [ ] cleanup tick functions, timers
- [ ] cleanup armor code to make less redundant
# Low priority
- [ ] reimplement partial vanilla as texture swap
- [x] remove partial_vanilla stuff from PartsManager
- [ ] fix UVManager with matrices or something
- [ ] add swap to skin texture
# Done
- [x] fix pings
- [x] fix action wheel