Time Nick Message 13:54 ANAND Would anyone give me pointers regarding which DBMS is best suited for MT's map backend? 13:55 sfan5 depends on usage and which features you need 13:55 ANAND I know "Dummy" is unbeatable. I'd like to know what's the next best. ;) 13:56 ANAND Performance, mostly 13:56 ANAND Would there be different choices for singleplayer and multiplayer? 13:56 sfan5 sqlite3 with sqlite_synchronous = 1 or leveldb 13:57 ANAND Ok. What about singleplayer vs multiplayer? 13:58 ANAND As a side-question: Which one is easier to implement? 13:58 sfan5 I'd say in singleplayer the difference is irrelevant and you can just use the default 13:58 ANAND Oh, I see 13:59 ANAND Going by lines of code in database-*.cpp, LevelDB and Redis have only ~200 lines of code. Does that mean they're simpler to implement than say, SQLite3? 14:00 sfan5 not all database-*.cpp files implement the same features 14:00 sfan5 but it is correct to say that the implementation of redis or leveldb in C++ is shorter 14:00 ANAND Interesting 14:01 sfan5 but that doesn't mean sqlite3 couldn't be equally as short if you implemented it in e.g. python 14:01 ANAND I see. Thanks for all the info! 14:02 sfan5 for which usecase are you looking to implement a backend? 14:03 ANAND It's for a personal project of mine, actually 14:04 ANAND I'm planning on developing a voxel game engine similar to MT (but much more rudimentary) for my final-year project at uni 14:05 sfan5 you could also start with the very basic approach of using files on disk, one for each block unit (e.g. 16^3 like MT) 14:06 ANAND That did cross my mind, but would that be as efficient as a good DB? 14:07 sfan5 no of course not 14:07 sfan5 but does it matter? 14:07 ANAND Thought that'd compensate for unoptimised code :) 14:08 ANAND But that seems like the way to start off the project 14:09 ANAND It'd do for the time-being, until disk I/O becomes the bottleneck 14:10 ANAND But thanks for the help, again :) 14:17 rubenwardy on Linux, it's likely to be of comparable speed 14:18 rubenwardy Maps aren't relational, the only indexing is on the map position - which you get from file names 14:18 rubenwardy Windows tends to struggle with lots of small files 14:21 ANAND > on Linux, it's likely to be of comparable speed 14:21 ANAND That's neat 16:08 rdococ Here's a thought: a fork of player_textures that has a repertoire of skins, where people can request additions and updates to their own skin, which get updated automatically when each server pulls from it 16:08 rdococ like skinsdb, but automatic and based on username 16:10 ANAND Sounds good until you realise players can reserve names on a first-come-first-serve basis :) 16:14 rdococ well, that issue applies to anything. someone malicious could register an account with your username on anything you haven't already registered for 16:14 rdococ but maybe there could be some kind of mechanism where you have to prove you use that username on a server that supports it 16:23 ANAND Yeah, separate authentication for skins would help.