What database options are there for Godot?

Godot Version



(I’m working on an MMORPG sandbox pixel art 2D game)

I’m not that familiar with Godot Mutlipler but from what I know Godot can do the networking by itself.

So I’m looking for a database that I could use for my game that can worldwide singleton and for storing chat logs, trade logs, etc :package:.

I also have heard you can use like node js with Godot but I’m not sure how it would be nice since I’m working on a web-based multiplayer :globe_with_meridians:.

I also know about Nakama but I don’t like the way it’s working because I cannot export it to ARM and the data I send must be JSON from what I know but if I’m wrong let me know. :grinning:

Also since Godot supports C# I could have some more options for databases, right?
(I don’t know C# but I can learn it)

1 Like

There is a PostgreSQL driver at GitHub - Marzin-bot/PostgreSQLClient: PostgreSQL connector for Godot Engine in GDScript.
that works well.

I’m not sure honestly I’m just scared of the fact that they haven’t been update in 3-4 years

That’s a valid concern, which I also had when the author first announced his driver. That’s why I was passing data from my game to my server through text files until he assured me that he would not abandon the driver.

He announced not too long ago that he was abandoning the driver, and set his repository to read only. And sure enough, the driver does not work out of the box with Godot 4. Fortunately, I read the code and found that the fix was one argument in one line of code. After making the change, the driver works with Godot 4.

Being MIT-licensed, we are free to do whatever we want with the code, so I’m not terribly concerned about its future unless the Godot devs make further API changes that break backward compatibility again. But I’m crossing my fingers that it won’t happen again.

1 Like

I don’t know if you found a solution for your game so far but you could look into writing a c++ module that takes care of storing your data with your DBMS of choice.
It’s a bit more effort but that’s the route I went and it works reasonably well.