Currently the server has huge advantage of lua modding. However it's quite finicky to get it working without deadlocks and when they happen it's very hard to find the original source of the problem. Any ideas on how to make this better?
Another thing that could be interesting to have is custom blocks. Now the server tries really hard to be vanilla. We could use "invalid" block ids to allow for more modability. Also if this idea is extended to custom entities (e.g. lua-entities) you could practically implement any java based mod (e.g. Thaumcraft?) serverside in lua. You could already do a lot by using mod channels.
Finally i think that it would be fun to have "living worlds". This is idea of blocks interacting in interesting ways (e.g. water erodes stone to dirt and then to sand?). This can be done already (e.g. every tick iterate over fixed amount of blocks per chunk?) but is easy to mess up. I propose having lua simulator(s?) per chunk. Their logic would be defined by lua only. This could also improve the first point: by limiting where the chunk modifications are happening.
Tl;dr:
So what do you think?
(edit by xoft: fixed title typo)
Another thing that could be interesting to have is custom blocks. Now the server tries really hard to be vanilla. We could use "invalid" block ids to allow for more modability. Also if this idea is extended to custom entities (e.g. lua-entities) you could practically implement any java based mod (e.g. Thaumcraft?) serverside in lua. You could already do a lot by using mod channels.
Finally i think that it would be fun to have "living worlds". This is idea of blocks interacting in interesting ways (e.g. water erodes stone to dirt and then to sand?). This can be done already (e.g. every tick iterate over fixed amount of blocks per chunk?) but is easy to mess up. I propose having lua simulator(s?) per chunk. Their logic would be defined by lua only. This could also improve the first point: by limiting where the chunk modifications are happening.
Tl;dr:
- deadlocks in lua (hard?)
- better support for "non-vanilla" block ids
- lua simulators
So what do you think?
(edit by xoft: fixed title typo)