Show HN: A collaborative pixel drawing game for when you're bored (Attempt #2) (pixel.vkoskiv.com)

62 points by vkoskiv ↗ HN
Previous thread: https://news.ycombinator.com/item?id=30167391

Hello again HN! It's been 3 months since I last submitted this project and the back-end server software melted down.

I was really bummed that many people didn't get to play, so I've spent most of my spare time since that last post completely rewriting the back-end server software using small, carefully selected dependencies (C99, sqlite, mongoose.ws & cJSON) I've done some basic performance testing and I'm cautiously optimistic that it can now handle up to ~1000 concurrent users.

If you have any ideas for improvements, do let me know! Bots are permitted, but try and do something creative instead of just filling the canvas with junk :^)

You can view the source code for the new back-end here: https://github.com/vkoskiv/nmc2 You can also check out a recent time-lapse here: https://www.youtube.com/watch?v=FUmnUvTqn6M The time-lapse gets generated from the server log output using this tool: https://github.com/zouppen/pikselipeli-parser/

(Note to HN staff: It wouldn't let me repost this unless it had a 'slightly different url', hence the sneaky redirect there. If this is a big no-no, I apologize, otherwise feel free to swap out the URL to the redirected one :^))

30 comments

[ 2.7 ms ] story [ 74.8 ms ] thread
a proper r/place-like website sounds amazing! Thanks for making it :)
I'm fairly certain there are many existing ones that are better in many ways, but this one was made by my friends and I, and it was fun to build!
The trackmania car is amazing, is it generated via a program??
Someone drew that by hand one pixel at a time, believe it or not! :^)
Does it work? Not for me.
Stuck loading? What kind of browser are you using? I should have mentioned that this is optimised for desktop browsers only at the moment.
It seems to load for me but I never get to see anything in the canvas. Safari on iPhone.
Yeah, it seemed to break on mobile Safari after I moved to a 1024x1024 canvas. Not sure how to go about fixing that :(
~50 concurrent users already! Thank you all for checking this out. The old Swift backend gave out at around ~20 concurrent. This new one is barely even registering on htop at the moment. :^)
69 concurrent. Nice. Looks like the web proxy, nginx, is using more CPU than the actual websocket server software. That's good, right?
Calming down now. I think we peaked at around ~95 concurrent a few hours ago. Very nice to see! I also learned that I very much overprovisioned thst Hetzner system I’m running the thing on. The server is basically idle, and the server software too only uses a few dozen megs of memory.
Hey I love it, coming back and seeing the organic emergence of new patterns/jokes/refinements. It's truly something!
It increments per click/same pixel?

The need to wait adds an interesting dynamic.

Also interesting can open incognito window and have more tiles.

Could be cool to get hourly screenshots visible somewhere.

It gives you more tiles, and after a few level increments, that limit pretty much goes away, and then you're only bound by the server rate limiter. It's mostly there to prevent newly generated bot accounts from placing too much junk on the canvas.
It feels like the higher your level the more wait there is between levels.
That Lain Iwakura is amazing. Did she start off as the lady in the IDA Pro logo?

Also does anybody have the original pixel design? I'd love to devandalize it but I'm no good at pixel art

I seem to be stuck at level 7 with ~980/1000 tiles. Progress is really slow.
I'm waiting for a Conways Game of Life refrence
As of 23:35ish UTC there appears to be a glider on the board.
I saw a couple of bots fighting over the same land, immediately drawing over each others lines, which was fun.
Cool project! I made a little Edgar in the character corner.