[Game] Cellestial Game [cellestial_game]

Post Reply
User avatar
LMD
Member
Posts: 1396
Joined: Sat Apr 08, 2017 08:16
GitHub: appgurueu
IRC: appguru[eu]
In-game: LMD
Location: Germany
Contact:

[Game] Cellestial Game [cellestial_game]

by LMD » Post

Image
Image

Cellestial Game (cellestial_game)

Game of Life in three dimensions.

About

Written entirely by Lars Mueller aka LMD or appguru(eu). Code licensed under the MIT and GPLv3 licenses (see below). For media licenses see each mod's Readme.

Links
Part of the Cellestial Series: cellestial, cellestiall and cellestial_game
Contains the following mods:
  • modlib: Basic modding utility library, MIT
  • cmdlib: Chatcommand library, MIT
  • hud_timers: HUD timer library, MIT
  • adv_chat: Advanced chat, GPLv3
  • cellestial: Provides 3D cellular automata, MIT
  • cellestiall: Makes the entire world consist out of cellular automata, MIT
Mods to be considered:
  • management: Server management, work in progress
  • worldedit: World editing, needs more restrictions & interoperability with cellestial internals
Last edited by LMD on Mon Dec 28, 2020 17:31, edited 11 times in total.
My stuff: Projects - Mods - Website

User avatar
Wuzzy
Member
Posts: 4802
Joined: Mon Sep 24, 2012 15:01
GitHub: Wuzzy2
IRC: Wuzzy
In-game: Wuzzy
Contact:

Re: [Game] Cellestial Game [cellestial_game]

by Wuzzy » Post

Heh. Cool stuff. It was only a question of time until someone does this. :D

Although I am really not experienced with cellular automata at all. I have no idea which automata generate interesting results.

The Game of Life rules seem to be very chaotic if applied to 3D. Many start states spread the cells through the whole arena, which then stays mostly filled.

Do you have suggestions for more interesting rulesets?

This seems fairly polished and feature-rich already, which is nice. Although I think things need to be made a bit more user-friendly.
I noticed in complex situations, the Simulation mode is sometimes not fast enough to make a step every second. :-(
Maybe add an indicator on the screen to show if the next simulation step is still being calculated. Because if you use the wand for a step, and nothing happens, you are not sure if this is because this step really did nothing, or if the game is still calculating.
Finally, I suggest a "see-through" mode. If enabled, all nodes in the arena become see-through nodes, they are like glass or leaves (drawtype="allfaces"), only their border is rendered. That way, you can see much better the state of the simulation (hopefully).

It takes a while to learn all the chat commands, of which there are plenty. Maybe it will be more user-friendly to add many of the more important chat command features into tools (items) and formspecs.

PS: I wouldn't call it "Cellestial Game", because it's not a game. It's an automaton. :P

User avatar
LMD
Member
Posts: 1396
Joined: Sat Apr 08, 2017 08:16
GitHub: appgurueu
IRC: appguru[eu]
In-game: LMD
Location: Germany
Contact:

Re: [Game] Cellestial Game [cellestial_game]

by LMD » Post

Wuzzy wrote:
Sun Nov 15, 2020 17:48
Heh. Cool stuff. It was only a question of time until someone does this. :D

Although I am really not experienced with cellular automata at all. I have no idea which automata generate interesting results.

The Game of Life rules seem to be very chaotic if applied to 3D. Many start states spread the cells through the whole arena, which then stays mostly filled.

Do you have suggestions for more interesting rulesets?

This seems fairly polished and feature-rich already, which is nice. Although I think things need to be made a bit more user-friendly.
I noticed in complex situations, the Simulation mode is sometimes not fast enough to make a step every second. :-(
Maybe add an indicator on the screen to show if the next simulation step is still being calculated. Because if you use the wand for a step, and nothing happens, you are not sure if this is because this step really did nothing, or if the game is still calculating.
Finally, I suggest a "see-through" mode. If enabled, all nodes in the arena become see-through nodes, they are like glass or leaves (drawtype="allfaces"), only their border is rendered. That way, you can see much better the state of the simulation (hopefully).

It takes a while to learn all the chat commands, of which there are plenty. Maybe it will be more user-friendly to add many of the more important chat command features into tools (items) and formspecs.

PS: I wouldn't call it "Cellestial Game", because it's not a game. It's an automaton. :P
Thank you very much for your feedback! I unfortunately can't implement your suggestions / fix the bugs now, but I will do ASAP.
My stuff: Projects - Mods - Website

Quiark
Member
Posts: 14
Joined: Mon Aug 27, 2018 06:19
GitHub: quiark
IRC: quiark

Re: [Game] Cellestial Game [cellestial_game]

by Quiark » Post

these rules are not boring at all

https://www.youtube.com/watch?v=dQJ5aEsP6Fs

User avatar
LMD
Member
Posts: 1396
Joined: Sat Apr 08, 2017 08:16
GitHub: appgurueu
IRC: appguru[eu]
In-game: LMD
Location: Germany
Contact:

Re: [Game] Cellestial Game [cellestial_game]

by LMD » Post

I have fixed the bugs you reported. Thank you very much for identifying them!
My stuff: Projects - Mods - Website

bzt
Member
Posts: 217
Joined: Tue Sep 24, 2019 14:26

Re: [Game] Cellestial Game [cellestial_game]

by bzt » Post

Hi,

I'm trying this with MT engine 5.4.1 and the game installed through ui from contentdb. The game starts, but when I use the wand-like item, and click on the "Apply" button in the popup window (I do not change the default rule), I get various Lua run-time errors either in callback item_OnSecondaryUse and sometimes in on_playerReceiveFields, both complaining about main.lua:184. Here's one debug log for example:

Code: Select all

2021-08-01 14:27:18: WARNING[Main]: Undeclared global variable "cellestiall" accessed at ...minetest/games/cellestial_game/mods/cellestiall/init.lua:1
2021-08-01 14:27:19: WARNING[Server]: Undeclared global variable "id" accessed at ...minetest/games/cellestial_game/mods/cellestial/arena.lua:200
2021-08-01 14:27:19: WARNING[Server]: Undeclared global variable "id" accessed at ...minetest/games/cellestial_game/mods/cellestial/arena.lua:203
2021-08-01 14:27:34: ERROR[Main]: ServerError: AsyncErr: ServerThread::run Lua: Runtime error from mod 'modlib' in callback on_playerReceiveFields(): ....minetest/games/cellestial_game/mods/cellestial/main.lua:184: attempt to perform arithmetic on local 'number' (a nil value)
2021-08-01 14:27:34: ERROR[Main]: stack traceback:
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/cellestial/main.lua:184: in function 'deserialize_rule'
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/cellestial/main.lua:197: in function 'deserialize_full_rule'
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/cellestial/main.lua:203: in function 'deserialize_wand'
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/cellestial/main.lua:387: in function 'obtain_wand'
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/cellestial/main.lua:424: in function 'handler'
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/modlib/minetest.lua:126: in function <....minetest/games/cellestial_game/mods/modlib/minetest.lua:122>
2021-08-01 14:27:34: ERROR[Main]: 	/usr/share/minetest/builtin/game/register.lua:422: in function </usr/share/minetest/builtin/game/register.lua:406>
2021-08-01 14:27:34: ACTION[Main]: Server: Shutting down
I've tried with empty arena and with a glider too, same error. What should I do?
Wuzzy wrote:PS: I wouldn't call it "Cellestial Game", because it's not a game. It's an automaton. :P
I think it's okay, because cellular automata often called Convay's Game of Life too.

Cheers,
bzt

User avatar
LMD
Member
Posts: 1396
Joined: Sat Apr 08, 2017 08:16
GitHub: appgurueu
IRC: appguru[eu]
In-game: LMD
Location: Germany
Contact:

Re: [Game] Cellestial Game [cellestial_game]

by LMD » Post

bzt wrote:
Sun Aug 01, 2021 12:32
Hi,

I'm trying this with MT engine 5.4.1 and the game installed through ui from contentdb. The game starts, but when I use the wand-like item, and click on the "Apply" button in the popup window (I do not change the default rule), I get various Lua run-time errors either in callback item_OnSecondaryUse and sometimes in on_playerReceiveFields, both complaining about main.lua:184. Here's one debug log for example:

Code: Select all

2021-08-01 14:27:18: WARNING[Main]: Undeclared global variable "cellestiall" accessed at ...minetest/games/cellestial_game/mods/cellestiall/init.lua:1
2021-08-01 14:27:19: WARNING[Server]: Undeclared global variable "id" accessed at ...minetest/games/cellestial_game/mods/cellestial/arena.lua:200
2021-08-01 14:27:19: WARNING[Server]: Undeclared global variable "id" accessed at ...minetest/games/cellestial_game/mods/cellestial/arena.lua:203
2021-08-01 14:27:34: ERROR[Main]: ServerError: AsyncErr: ServerThread::run Lua: Runtime error from mod 'modlib' in callback on_playerReceiveFields(): ....minetest/games/cellestial_game/mods/cellestial/main.lua:184: attempt to perform arithmetic on local 'number' (a nil value)
2021-08-01 14:27:34: ERROR[Main]: stack traceback:
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/cellestial/main.lua:184: in function 'deserialize_rule'
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/cellestial/main.lua:197: in function 'deserialize_full_rule'
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/cellestial/main.lua:203: in function 'deserialize_wand'
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/cellestial/main.lua:387: in function 'obtain_wand'
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/cellestial/main.lua:424: in function 'handler'
2021-08-01 14:27:34: ERROR[Main]: 	....minetest/games/cellestial_game/mods/modlib/minetest.lua:126: in function <....minetest/games/cellestial_game/mods/modlib/minetest.lua:122>
2021-08-01 14:27:34: ERROR[Main]: 	/usr/share/minetest/builtin/game/register.lua:422: in function </usr/share/minetest/builtin/game/register.lua:406>
2021-08-01 14:27:34: ACTION[Main]: Server: Shutting down
I've tried with empty arena and with a glider too, same error. What should I do?
Wuzzy wrote:PS: I wouldn't call it "Cellestial Game", because it's not a game. It's an automaton. :P
I think it's okay, because cellular automata often called Convay's Game of Life too.

Cheers,
bzt
Thanks for the thorough report. I'm pretty sure I broke this with a modlib update (It seems modlib now emits a trailing dot for numbers in higher bases, which for some reason Lua's tonumber doesn't accept). I assume it was commit https://github.com/appgurueu/modlib/com ... cced7079fa.
My stuff: Projects - Mods - Website

User avatar
LMD
Member
Posts: 1396
Joined: Sat Apr 08, 2017 08:16
GitHub: appgurueu
IRC: appguru[eu]
In-game: LMD
Location: Germany
Contact:

Re: [Game] Cellestial Game [cellestial_game]

by LMD » Post

It should be fixed now. I have patched and upgraded modlib.
My stuff: Projects - Mods - Website

bzt
Member
Posts: 217
Joined: Tue Sep 24, 2019 14:26

Re: [Game] Cellestial Game [cellestial_game]

by bzt » Post

Thank you very much, it is working now!

Cheers,
bzt

Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests