I made Snibble: Scrabble x Snake where you can steal words from other players. I’d love feedback 🐍📖
I’ve built this little weird browser game over the last few years as a solo developer, where you control a snake and collect letters to form a word, then eat your tail to submit and score.
I think it’s kind of fun and fresh, but I’ve been staring at it too long so I need fresh eyes and a cold hard slap from reality. I really enjoy watching the bots play, it’s a bit like watching Conways game of life.
I’m finally posting it to the public as a beta, and would love feedback! The link is the first ever game replay, so you can watch it then play the “ghost” which is me.
Can you:
- come first? The bots are currently easy to beat
- beat my ghost (easy 😅)
I’d love to see who can post the top score in the comments
Do you count browser games written from scratch as a custom engine? I’d love to talk about my engine some day
TLDR: custom browser engine in a 6 year timeline on and off, would anyone like to know more and is anyone else building simpler browser engines?
Hey folks I’ve been developing a game, and as a byproduct a game engine (nowhere near as impressive as what I see on here)
I started off trying to build a simple browser game, over like 10 iterations - I learnt web development specifically to build this game 6 years ago.
First couple of approaches I tried using off the shelf engines and frameworks:
- unity
- godot x2
- react x3 (lol)
- phaser (yuck)
- raw JavaScript + DOM elements (yuck)
- raw typescript + canvas no libraries or frameworks
My final attempt and current attempt I’ve settled on raw Typescript + WebGL + Canvas and I’m really happy with the results so far! But the engine is very specific for this game. Close to 80,000 lines of code now (about 20,000 is dead code I need to remove)
I don’t have a conventional GUI based engine where I can build on it, it’s all basically code level.
But I’ve completely separated rendering from logic, and the engine is fully deterministic so I have some pretty awesome features:
- Full game replays without video or conventional storage
- Headless simulation mode where I can run tens of thousands of games with a Monte Carlo method to tune my heuristic bots
- A gameplay scripting API
- Ghost mode (tied to replay)
- Can simulate level procedural generation + 2000+ entities all doing pathfinding and heavy logic all on-screen on a m1 MacBook Pro without any dropped frames at 120fps (this is just for stress testing)
- conventional game mode with 64-128 players sits at <1ms total task/frame times for all logic and rendering - super proud of this!
I’m hoping to post gameplay and the engine soon :)
Thanks for reading
Question about web hosting split for solo play vs multiplayer game (same game) - see description
TLDR: I’ve built a single player browser game which is static assets and 0 cost, I plan to release multiplayer which will cost me - would you split into 2 different URLs eg “multi.myurl.gg” vs “myurl.gg” etc (placeholder URLs)
Hey reddit, I’ve built a browser game in my spare time and have a question about potentially hosting on 2 different URLs.
My specific issue is - right now the game is single player only + bots, and cost wise most of the game is free for me to host at any scale due to the way I’ve architected single player. This includes sharing features and things like watching replays, I could effectively have a billion users and still pay the same as when I have 1 user. This is great!
But, once I introduce multiplayer, I have to pay for Cloudflare workers, storage, egress fees potentially etc for those same sharing and replay features. I’ve estimated these costs to be quite low even at scale, but I’m extremely frugal and want to always keep the single player experience alive. The multiplayer experience is more dependant on how well it performs with the public.
So I was thinking of hosting single player at something like “myurl.gg” and multiplayer at something like “multi.myurl.gg” for a clean separation of concerns.
Am I over-engineering here??
@mods this is not self promotion, I’ve used placeholder URLs etc