]> git.localhorst.tv Git - blank.git/blobdiff - doc/todo
simplify ray/chunk intersection test
[blank.git] / doc / todo
index 2c54c10065cddbc52980230e7efa31d3d0d12645..921221aa14f9681672023c4ed7480a35eaa3604d 100644 (file)
--- a/doc/todo
+++ b/doc/todo
@@ -19,7 +19,8 @@ font rendering
 
 command line
 
 
 command line
 
-       useful for development and later on world administration
+       more commands pls
+       and show me their output
 
 persistence
 
 
 persistence
 
@@ -28,12 +29,24 @@ persistence
 
        store some kind of byte order mark?
 
 
        store some kind of byte order mark?
 
+       world and player names should be normalized so they can safely
+       be used in path names
+
 networking
 
 networking
 
-       write tests
-       do some manual testing
-       some more testing
-       a little optimization
+       definitely needs throttling for the internets
+
+       players stats (who's connected, their ping, and game-relevant
+       things) should be sent to clients
+
+       some method for authenticating a player might be nice
+
+       maybe stale and inexistent chunks should be visualized (e.g. by
+       drawing a semi-transparent box around them)
+
+threading
+
+       (clientside) networking and disk IO are prime candidates for threading
 
 launcher ui
 
 
 launcher ui
 
@@ -41,19 +54,14 @@ launcher ui
 
 entity ai
 
 
 entity ai
 
-       pathfinding, chase and roam states
+       pathfinding, better turning behaviour
 
 
-(block) lighting
+lighting
 
        occlusion/neighbor light mixing is implemented, but still linear
        this could be solved by using a pre-interpolated light texture and
        mapping light levels to coordinates on that
 
 
        occlusion/neighbor light mixing is implemented, but still linear
        this could be solved by using a pre-interpolated light texture and
        mapping light levels to coordinates on that
 
-       also: how could block light affect entity lighting?
-       maybe get the interpolated light level at the entity's center and use
-       that as the light power for the directional lighting shader and use a
-       direction that's fixed relative to the camera?
-
        there's a bug where a chunk's model is not updated if its neighbor
        changes border light levels
        I kinda mitigated it a little for direct neighbors during linking, but
        there's a bug where a chunk's model is not updated if its neighbor
        changes border light levels
        I kinda mitigated it a little for direct neighbors during linking, but
@@ -63,6 +71,10 @@ entity ai
        having the light propagate into solid blocks, but feels like this
        could cause some weird behaviours
 
        having the light propagate into solid blocks, but feels like this
        could cause some weird behaviours
 
+       entity lighting is now derived from block light levels
+       it's not interpolated and the calculation is very basic, so it
+       has some unexpected effects
+
 gravity
 
        maybe like light levels? should also store a direction with it in
 gravity
 
        maybe like light levels? should also store a direction with it in
@@ -94,8 +106,8 @@ world generator that is not boring
 
 entity/world collision
 
 
 entity/world collision
 
-       first draft of entity/world collision is implemented
-       it jitters and has some surprising behaviour
+       I don't like the force/spring based collision response, maybe revert
+       back to impulses
 
 spawning
 
 
 spawning
 
@@ -116,3 +128,15 @@ spawning
 sprite/particle system
 
        these could help make the world seem more alive
 sprite/particle system
 
        these could help make the world seem more alive
+
+items
+
+       items representing both blocks and non-blocks (such as tools, weapons,
+       armor), with a simpler physics simulation than entities, much like the
+       one for particles
+       they can be picked up by entities, so those should have one or more parts
+       in their skeleton to render them when they're "held"
+       players' inventories have to be changed so they select an item rather
+       than a block
+       item IDs could be the block ID for blocks, and anything from 2^16 up for
+       non-blocks