A chill driving game with procedurally generate scenic landscapes
slowroads.io
slowroads.io
I love the procedurally-generated landscapes. It really captures the feeling of driving on unfamiliar roads.
I'm curious how the physics works. Is this using raycast wheels? A couple of years ago I made a racing game for Oculus Quest using Godot[0], based on Godot's "VehicleBody", and getting the physics to work satisfactorily was a major headache. But a procedural world would have made it so much cooler.
By the sounds of it they’re doing a very simple sim with raycast wheels and not using a rigidbody physics engine.
https://dotbigbang.com/game/b0e8bf8b309b44a3b0abed8f9525e335...
I tried it on PC, laptop (both are Windows) and on Google Pixel 6 Pro. All are very fluid. But reaction on keypress I think has slight constant delay. Not sure what's the reason. Anyways I used it on auto drive and just stared for a while.
Can confirm. I was physics lead on a console driving game, and we discovered to our surprise that the camera is a critical piece of making sure the physics actually feels like physics, and that it’s quite difficult to get the camera right. The camera can make real physics feel sluggish, cartoony, or just wrong, and a great camera can make fake physics feel real. We humans are pretty sensitive to subtle motions.
Making physics feel right is also about lots of other cues too though (cues which aren’t here in this game). Sound and effects and even sometimes tactile feedback are also needed to complete the illusion. Sometimes real physics is surprisingly sluggish, and we don’t notice how slowly momentum changes until we take away the sounds and bumps and dust and skid marks.
This was my experience when I made Speed Haste, a 3D racing game back in 95. I spent a few nights banging my head against my car physics code, and being frustrated and tired, I switched to tuning camera code to clear my head. Voila! Car physics and handling felt completely different. As you say, audio was huge too, even back in these primitive and (by today's standards) cartoony times.
I've used this anecdote when teaching gamedev students, to hammer in their heads that games are complex because they're the sum of their parts + the sum of all the interactions between all the parts.
(for the historically inclined, code for the game is available at https://github.com/TheJare/SpeedHasteSrc)
Fascinating since we evolved with no cars or engine noise yet our brain is still making correlations around the audio inputs.
Good memories and a fun game, you also had that flight game, but I don't remember the name.
It's a bit like a "ambient study music" site that plays darkstep with flashing lights when you press "just play me something to study to" =)
maybe you can add a self learning component. every time the vehicle bumps the barrier, it was going/accelerating to fast.
Basic physics is also pretty applicable here. ;)
acceleration = velocity^2 /radius
with a simplified
max friction force = coefficient of friction * car weight
And to tie them together
force = mass * acceleration
No going 115+ in a blind corner over a road that will launch you off the side of a mountain if you steer poorly =D
This also makes for an excellent emergency budget fill-ups at the end of the quarter - just set a photoradar in the 50 zone where everyone everyday go 80 and, voila, - no deficit.
I assume that's because there are some roads still left where they're trusting drivers' common sense to not try to drive as fast as they're theoretically allowed to.
As for the speed, it’s nowhere near ‘i want to die’ reckless for those long sweepers and a lot of people do find the rhythm of that sort of driving to be relaxing. The other component is simply that the sensation of speed is always much lower than it would be in real life in these kind of things.
Anyway, good job, actually cool!
Also, it would be better if mouse steering is damping impulse based, i.e. every frame the steering position exponentially decays, mouse position resets to center and the change is added as impulse on the steering position.
sensitivity = max_ang / ( screenwidth/2 )
decay_rate = 6.0
frame(dt){
dx = mouse.x - center_pos
mouse.reset()
steer_ang += dx*sensitivity
steer_ang.clamp(-max_ang,max_ang)
steer_ang *= exp(-decay_rate * dt)
}Indeed, eventually you know the tracks by heart, so much so that you don't need the pacing notes anymore. I'm surprised nobody thought of using procedural generation here.
It's not exactly true that you react to unknown terrain, though, because IRL there's reckons in order to make pace notes, and I suspect that rally races tend to happen more-or-less on the same roads.
PS: actually someone did think about using procgen for rally games: https://www.racedepartment.com/downloads/procedurally-genera...
First let's move WASD over to the right by one key, so ESDF.
S and F would now turn slightly.
Now let's add A and G and assign those to more extreme turning.
Is there any driving game which has done this, or at least has some sort of configurable system where it could be tried? I assume it has to exist somewhere if it is at all usable.
Left | Right | Total
------|-------|------
+0.25 | +0.75 | +1.00
0.00 | +0.75 | +0.75
-0.25 | +0.75 | +0.50
+0.25 | 0.00 | +0.25
0.00 | 0.00 | 0.00
-0.25 | 0.00 | -0.25
+0.25 | -0.75 | -0.50
0.00 | -0.75 | -0.75
-0.25 | -0.75 | -1.00
(two ternary digits -> 3^2 = 9 combinations)This may interest you: https://aimpad.com/
> Aimpad® patented technology adds full analog movement control to the traditional WASD keyboard layout
I'm pretty sure the tracks in Dirt 4 were procedurally generated. This made them feel extremely generic and bland compared to the hand modelled tracks in the sibling-series Dirt Rally.
corrected code should be
sensitivity = userpref.sensitivity * max_ang / ( screenwidth/2 )
decay_rate = 6.0
frame(dt){
dx = mouse.x - center_pos
mouse.reset()
steer_ang += sensitivity*dx/dt
steer_ang.clamp(-max_ang,max_ang)
steer_ang *= exp(-decay_rate * dt)
}This is very lovely and really relaxing (aside from the crazy speeds the autodrive goes at haha). Kudos to the creator! Btw if you haven't tried the numerous options to change weather, time of day, vehicle and even planet, go for it! There's a surprising amount of options
OH! I'm just finding out that there's a lock that's next to the speedometer that limits how fast the car goes! Damn this is so neat!
https://i.imgur.com/YDyJa5g.png
(edit: It might be related to hitting slightly awkward terrain?)
(edit 2: Got it on video, though my commentary didn't get recorded for some reason) https://www.youtube.com/watch?v=f7U-qS7P2tI
Edit: Seems there's actually a way to support the developer on Ko-Fi: https://ko-fi.com/slowroads
Edit 2: Also props for good optimisation, it runs flawlessly on my M1 Macbook even on the highest setting.
I'm not sure I want cities but I agree with adding a few villages and landmarks
And yes, please advise when it's available for sale :-)
I don't plan to sell it, but you can follow my twitter for updates. I'd like to keep it freely available if I can :)
It is the fact that it is freely available for everyone to experience it thought your browser
Racing games? there are a shit ton on steam/ps/xbox/switch/mobile
Money people are very annoying
Examples:
https://www.google.com/maps/@37.9700533,-121.9225333,59a,35y...
https://www.google.com/maps/@37.9700286,-121.9224894,3a,60y,...
Based on some other road details, like the barriers, bollards and road signs, I'd say it was modelled fairly realistically on UK roads.
- Autopilot on
- Using the motor bike
- Setting roads to "casual"
- Season to summer
- Cycle timer of 3 minutes
- Setting cruise control to max 120
- Hitting "c" until you get complete first person view
- View distance: Ultra
- Detail: Ultra
Very cool experience, sort of put me in a trance a bit.. and I can't quite put my finger on why!
Which, really -- turning this into a screensaver for mac/pc that skipped the sound and slowly/gently cycled through days and seasons would actually be really nice! At least on my M1 MacBook Air it seems to be pretty low CPU usage.
At first I was disappointed you couldn't leave the road until I found you just needed to use more speed + boost. After that I spent all the time driving off-road.
I drove backwards at the start and clipped into some geometry, causing the car to gain a ton of vertical velocity and fly high into the air up to the clouds! When it dropped back down it bounced around a lot. Found you could reproduce this by finding where the road surface was clipped and gain some speed before entering it.
This made me think: You should add some planes!
Had a great time exploring.
Great work!
[Note: It was difficult to reach the water. Most of the time it has some protection, that makes it more realistic. But I finally found a part without protection :) . )
Feedback, Off-World was incredibly laggy.
When I was in high school I read about perlin noise landscape generation technique in a random blog post. I shared the technique with a friend and he was very excited. A week later he presented a program which rendered Minecraft-style landscapes in ortho projection. A few more weeks passed and he added 3D perspective (using alien tech called "projection matrices"), water reflections, grass and day-night cycle animation with shadows from Sun and stars. All this using Pascal and some primitive bundled-in 2D graphics lib.
Another related high school memory is Audiosurf game, where the road and environment are generated using an algorithm based on music tempo. What if we replace this algo with a modern generative model? Probably literally a bad trip.
like there is
1. incline effect on the speed (up turns down speed and going down increases) 2. snow effect on wheels 3. traffic mode 4. like above, speed responsiveness at slower speeds 5. gear shifting
thank you for building a great product
A feature request that, if I were you, I would probably say no to:
It would be cool to have URL flags to load with auto-drive on and cruise control at a certain level.
I think it would be fun to easily share what I find relaxing about this. Also it would be a kinda cool default new page.
I noticed as I approached the edge that large square tiles started to show up (the terrain was still contiguous until I go all the way to the edge, but it divided into uniform-sized squares by increasingly-high dirt walls with no collision detection). I wonder what caused that?
- "The edge. What did you expect?"
- Going off the edge and seeing the terrain from off the edge.
- A crash.
Controller support would be great. Or I wonder if there is already some way to map the controller inputs? Browser extension maybe
A roadster would be a 2-seat convertible (no C-pillar), like a Mazda MX-5 (Miata) or a Porsche Boxster.
Apologies - please click below to continue with a different generation seed. Your distance progress will carry over.
This error has been recorded for investigation."
Well, I guess that's what you get from leaving the road and continue driving through the hills.
Sorry to broke it, I was enjoying driving those hills and was impressed to not hit a "border" of the world. I thought it would happen sooner to be honest.
Lovely countryside -- very evocative of winding country roads in the southern or midwestern USA -- but I get stressed out when driving even in a simulation; real world driving is worse, so I'm not feeling the "zen".
I've always also preferred the more immersive inside-out view where the view rotates directly with direction of motion rather than the overhead/behind view.
Also why is autodrive driving in the middle of the road and not in the correct lane?
Autodrive is in the middle of the road because it was much easier to implement. I'll see if I can get around to letting you choose a more legal lane-follow option.
* You have a clear view of the road ahead
* You're wanting to drive fairly quickly, which is when this road positioning can helpThe fall and winter modes are especially evocative. Winter with fog or winter with night reminded me so much of driving in Utah.
Supporting the gamepad API would be ideal.
for the last 5 years or so, its been this game for me: http://uploads.ungrounded.net/alternate/1099000/1099839_alte...
you can see its very similar vibe to yours.
in case you shut down the site, is there a way i can download this for personal use so i can host it on my own servers (in the event you take it down)? thanks for making and sharing!
The sounds are especially nice.
On physics side, the car will really stick to the ground, even when jumping beyond a hill.
Also, where are the horse/dragon versions? :D
I've got some airtime on the Moon map.
The endless explorable landscape is what I wished games could be like when I was a kid.
Any way you could offer an alternative to WASD controls for those of us who aren't using standard keyboards?
Nothing in the lakes; nothing under the sea. Just boring half-light and featureless bottom. Would be nice to see it populated
And you can't hit anything! Can drive right through forests, ghost trees.
Currently I just kept wondering, that driving on a middle of a road with such a tight corners seemed like dangerous.
- Distance: Ultra - Render scale: 0.75 - Detail: Low
Even if view distance is low, setting detail to med lowers the FPS.
Well done!
Makes it easier for me to drive ;P
Also me: try to counter-steer at 100 mph.
[1] https://en.wikipedia.org/wiki/Penn_%26_Teller%27s_Smoke_and_...