Minetest structures & physics
Posted: Sun Dec 02, 2018 23:25
I've been playing MT for a bit now and would like to add my comments.
Granted this is a cubic world built of blocks. Some blocks can move (falling, etc) while most objects are stationary.
One thing which seems to be missing from the core system are certain spacial (as in "space": coord & attitude) supports. A block has a coordinate and so does a player. However there are other conditions which I'd suggest might improve the game. Object Grouping, Attitude and Viewpoints. Let me explain...
A block is a singular entity. However entities can be combined to build even larger groups of objects (I'll call "Group Objects" [non-programming] for lack of a better word). These Group Objects can and should operate together as if they were a single object/block. Perhaps a key block is the reference block, or even a key coordinate within any Group Object (initially a computed center of object) from which all events happen.
Such activities would be similar to "Sticky MoveStones" but with far extended capabilities of grouping and movements and even attitudes.
Events include change of position in space as well as change or orientation (even if block angles such as 90deg/180deg/270deg).
And example might be a moving airship. After building and calling some as-yet undefined command to define this object, the Group Object now operates (even moves) as a single entity. Any position which can be occupied by any block can occupied by the object (with collision detection).
Any intentional or unintentional collision with intersecting blocks undefines the Group Object with blocks separating from the Group Object's center according to their distance from that center -- which would create a realistic explosion. Of course this also requires some natural physics capability even for an ordinary block (such as ballistic trajectories rather than mere freefall).
Any Group Object can be controlled by a Player (privately or publicly) and are considered protect until the originating player or a collision undefines the Group Object.
My 2nd comment is upon the concept of Player Viewpoint:
Under certain conditions (e.g. outer space), a player's viewpoint should become fully rotatable not just along the X-Z axis but also the Y axis. Up/Down are simply from the player's viewpoint. Any construction continues to be in World coordinates without the player having to know/understand the true orientation of the blocks (other than from observation of his own coord changes).
This makes it possible, in Space, to make any direction look "up or down" to him. He can slip thru 1x1 hatches by changing his attitude to fit and restore attitude. Any furniture (which itself is already fully rotatable) can be seen in any attitude as "up" to a player.
This feature shouldn't be too complex to support as it simply requires the a players 1x2x1 block person to be utilized in any orientation. (2x1 under most circumstances, yet 1x1 under others). And in terms of game play, as long as the system understands it's own world orientation the player need not be concerned about his.
Any thoughts, considerations, ideas? I'd like to discuss them. I think Group Objects alone could be a major enhancement to Minetest for all players.
--prof
Granted this is a cubic world built of blocks. Some blocks can move (falling, etc) while most objects are stationary.
One thing which seems to be missing from the core system are certain spacial (as in "space": coord & attitude) supports. A block has a coordinate and so does a player. However there are other conditions which I'd suggest might improve the game. Object Grouping, Attitude and Viewpoints. Let me explain...
A block is a singular entity. However entities can be combined to build even larger groups of objects (I'll call "Group Objects" [non-programming] for lack of a better word). These Group Objects can and should operate together as if they were a single object/block. Perhaps a key block is the reference block, or even a key coordinate within any Group Object (initially a computed center of object) from which all events happen.
Such activities would be similar to "Sticky MoveStones" but with far extended capabilities of grouping and movements and even attitudes.
Events include change of position in space as well as change or orientation (even if block angles such as 90deg/180deg/270deg).
And example might be a moving airship. After building and calling some as-yet undefined command to define this object, the Group Object now operates (even moves) as a single entity. Any position which can be occupied by any block can occupied by the object (with collision detection).
Any intentional or unintentional collision with intersecting blocks undefines the Group Object with blocks separating from the Group Object's center according to their distance from that center -- which would create a realistic explosion. Of course this also requires some natural physics capability even for an ordinary block (such as ballistic trajectories rather than mere freefall).
Any Group Object can be controlled by a Player (privately or publicly) and are considered protect until the originating player or a collision undefines the Group Object.
My 2nd comment is upon the concept of Player Viewpoint:
Under certain conditions (e.g. outer space), a player's viewpoint should become fully rotatable not just along the X-Z axis but also the Y axis. Up/Down are simply from the player's viewpoint. Any construction continues to be in World coordinates without the player having to know/understand the true orientation of the blocks (other than from observation of his own coord changes).
This makes it possible, in Space, to make any direction look "up or down" to him. He can slip thru 1x1 hatches by changing his attitude to fit and restore attitude. Any furniture (which itself is already fully rotatable) can be seen in any attitude as "up" to a player.
This feature shouldn't be too complex to support as it simply requires the a players 1x2x1 block person to be utilized in any orientation. (2x1 under most circumstances, yet 1x1 under others). And in terms of game play, as long as the system understands it's own world orientation the player need not be concerned about his.
Any thoughts, considerations, ideas? I'd like to discuss them. I think Group Objects alone could be a major enhancement to Minetest for all players.
--prof