CollabRL

by sinoth
Overall:★★★★★★★★★★3.13(#38)
Fun:★★★★★★★★★★2.75(#57)
Innovation:★★★★★★★★★★4.31(#1)
Theme:★★★★★★★★★★3.00(#79)
Graphics:★★★★★★★★★★2.13(#101)
Humor:★★★★★★★★★★3.00(#22)
Community:★★★★★★★★★★2.57(#75)
Coolness:★★★★★★★★★★33%
CollabRL is an attempt to make a multiplayer roguelike in which the players can edit the world around them. I didn't get as fancy edit controls as I would have liked, but you can at least walk around and 'drop' letters on the ground which other players see immediately.
Technically this was a very difficult project for me.. I had to learn threading (mutexes and condition variables yay) as well as proper asynchronous transfer with sockets. I also used sqlite as a database system for storing map information which had a bit of a learning curve, but ended up working very well.
Language used: C++

Libraries used:
libtcod --- for input and display
sqlite --- for storing map information
win-pthreads --- for thread trickery
zlib --- for network compression

Controls:
Arrow keys - move
Any letter - drop that letter on the ground for others to see

Comments11

It connected fine, but then I couldn't do anything, just one @ on the screen that wouldn't do anything.
A nice text based collabrative workspace. If it had some rules for the world it would be nifty.
SpaceManiac
Wow, so much fun, but it had trouble when I had to walk places. Slow download I suppose?
localcoder
This worked for me for a while and then stopped.

Although this is not really playable as a game, I did have fun drawing 'fan art' for the games I judged yesterday and having little exchanges with someone who was on at the same time.
more fun than I had anticipated : )
sirGustav
interesting idea

[cache: storing page]
At first I thought it wasn't about exploration, but as soon as I entered I changed my mind. This is explorer-created content.
jplur
Well I couldn't connect but I like the idea, although it would be nice if the characters had some meaning in the game, rather than just text to look at.

Other games by @sinoth

Found a bug?
Tell us on Discord