CRDT implementation for game development in Defold

Hello, everyone.

My name is Vitaliy Shabalkin, and I’m a computer science student graduating next year. For my graduation project, I’ve been exploring game development, specifically implementing CRDTs in Lua. I believe this could be particularly useful for game development in Defold.

CRDTs, or Conflict-Free Replicated Data Types, could simplify cooperative game systems, though they might not suit all games. Here are a few links for more details on CRDTs:

I began by reading papers, articles, and watching videos about CRDTs to understand the basic concepts. I explored some JavaScript-based projects like Automerge and Yjs, which look amazing. And I found Zed code editor, which also use CRDTs.

To start, my plan is to test the technology by creating a server, client part and cooperative versions of some public Defold game examples.

I want to share updates, results and thoughts here. As a newbie in game development, I would greatly appreciate your feedback on the potential usefulness of CRDTs in games. Any kind words or stories about your own graduation projects would also be very welcome.

Just in case - my email is: shabalkin_vv@mail.ru

Thank you!

9 Likes

Looking forward to it, great job Vitaliy!

I am a huge fan of CRDT (and Redux) here. Maybe someone interested in this topic will be happy to learn more about it in podcast or video format:

Podcasts:

Videos:

5 Likes