Show HN: Balancing game for the mobile browser with increasing difficulty
balanc3dgame.com
balanc3dgame.com
The camera is tilted instead of looking straight down, and my phone needs to be flat to be in the no movement neutral position. This is unpleasant in to ways: How I'm sitting right now makes it hard to look at my phone while it's flat; it would be much nicer to be able to set my neutral point so I could play with the phone mostly vertically. The combination of flat phone and camera angle is awkward, as when you're looking straight down at the flat phone it looks like the level is tilted, and the ball should be rolling. If you're sticking with flat always being neutral, the corresponding camera angle should be from directly above, imo.
After trying the phone and dying, I ended up playing on the desktop with the arrow keys, much more pleasant.
Your light is coming from a direction where the magnitude is the same in x,y, and z. This means there's no difference in shading between three of the visible faces. (Or, you're using shaders which does this for some other reason.) This may be an intentional choice on your part, but I think it'd probably look better with a light angle which gives more definition to the geometry. Especially the level text suffers from this.
On the last level, is the spinning obstacle at a slightly offset pace from the first moving platform? When I first saw the level, they were very poorly timed with the obstacle sweeping past where you'd go to get on to the moving platform right as the moving platform came closest. Waiting a bit seemed to slowly improve the situation, and I eventually got tired of waiting and just went for it. Still unsure if they're actually in sync or not.
I died the third time on the last level, and called it quits when it put me back at the start. A very harsh punishment.
I’d recommend instead forgetting that your phone has an up. Hold it in landscape and rotate it as needed to get the angle you want before tilting.
I think having a universal 3-life max is very harsh. I died on level 9 and was sent back to level 1. No way am I going to do the first 9 again, so I won't find out what was on 10.
I think it would be more casual friendly to have infinite repeats in every level, but you could have a total count of deaths, for people who care about their score.
[0] https://supermonkeyball.fandom.com/wiki/Super_Monkey_Ball_(i...
Replaying a level is boring
I think having 3 lives per level with it resetting just that level might be better for starters, then the 3 lives for the entire game being a “hard mode”.
Those are the exact words I head in my head while playing as well. I'd love to see a remake on modern devices.
Great fun :-)
One idea is to sample orientation for a little bit at start, then consider the average to be zero. Then have a button that zeroes motion to whatever it currently is as a backup.
That way I can play your game without getting up from bed just yet.
Not sure I learned anything about Knot Theory from playing this, but that was fun.
Gave up once it started again from scratch, its not fun just re-doing all the levels to try again
With infinite lives, it would have guaranteed you made it to the end, at which point you would stop playing anyway.
So in both cases you stop playing, but at least in one of the cases the game remains hard for people who like a challenge. Win win!
“Stop playing” is not a meaningful metric
Plenty of games have a “zen mode” or “story mode” or “explorer mode” or any other kind of name to enable an option where’re you’re not severely punished by mistakes. Better yet, they usually allow you to switch modes mid-game. Which means you can progress at your own pace and appreciate everything without getting stuck and rage quitting.
Anecdotally, even if I never turn those modes on I find that the games who have them tend to be more fun and better designed in terms of difficulty progression. Examples include Celeste and Cross Code.
For this game, such a mode would even allow someone to see all the levels or practice in one where they’re stuck and then try again with lives turned on. That would be a win win.
Here is a link to the repo: https://github.com/nargaw/Balanc3d_game
Twitter: https://twitter.com/nate_dev_
If you had a great time and want to support the project: https://natedev.gumroad.com/l/balanc3d
Kind of fun
I see 3 dots on the left, a 1 on the right, but nothing seems to happen when clicking/swiping
Can I suggest that you put something like “hold your phone flat and face up” On the instructions / landing page
And make sure the start button can be seen in landscape mode
I gave up and it’s only because HN gave me those hints that I got tomplay at all
But - well done - you shipped ! Brilliant :-)
Level 9 made me realize there's some inner dread deep within me when it's about playing web-based games with mazes.
Especially for those where you can fall off the path.
[0] https://store.steampowered.com/app/425410/Road_to_Ballhalla/
https://www.balanc3dgame.com/assets/index-53e87cdf.js
* react-dom.production.min.js * react-jsx-runtime.production.min.js * react-reconciler-constants.production.min.js * react-reconciler.production.min.js * react.production.min.js * scheduler.production.min.js * use-sync-external-store-shim.production.min.js * use-sync-external-store-shim/with-selector.production.min.js
But I guess I played enough Super Monkey Ball as a teen to still have a lot of practice for this.
Maybe this is a speed run tactic that can be used later ;)
I’ve been following your work ever since that Lightning talk on Three.js at the Carolina Code Conference. You’ve got a lot of talent and motivation, which is a killer combination.
I managed to complete it in one shot. The old dog still has it :)
edit: Nice game, though. I wonder what it's made with. There seems to be a huge amount of generated shader code in the js. I wonder if that could be avoided.
Unsolicited improvement suggestion: When I finish a level, let me see how well I did compared to others.
Looks good!
React games however (even 2D ones) are a slideshow.
Amazing job.
You need to physically tilt your device to play.