Really neat! My only complaint is that the handling is very sluggish. Also it might be nice to have a first-person vew, maybe the camera view contributes to the sluggish feeling.
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.
> maybe the camera view contributes to the sluggish feeling.
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.
> we discovered to our surprise that the camera is a critical piece of making sure the physics actually feels like physics
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.
Oh wow. I found speedhaste demo via one of the many computer magazines that started flourishing in/around 98/99. Played it quite a lot and loved it. The music, the physics, the graphics, was so good. I still remember the music & the transmission select voice when you start a race. Fantastic stuff, thank you
Physics are always a major headache - mine are pretty hacky and cut a lot of corners, such as ignoring trees or preventing the car from flipping. I only height-test the wheels, progress them independently, and then resolve the chassis position from that. It's not terribly physically accurate but it gets the job done, and is pretty cheap!
Yeah these simple approaches are great and a bit of a lost art. Physics engines give a lot of flexibility and emergent behaviour but add a lot of complication when you want to constrain the madness. I wrote my own simple vehicle for our platform the other day which was a lot of fun:
Interesting that they generated terrain first and then tried to fit the road onto it (with the headaches involved, like getting stuck on peninsulas) and not generated road first and then surrounded it by terrain!
I figured that was the best way to get organic-feeling roads stitched seamlessly into a far-spanning environment. I also didn't recognise at the time just how hard it would be, but I still think it was the right choice.
>"Really neat! My only complaint is that the handling is very sluggish"
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.
A small note: 80 miles an hour on windy roads, driving in the middle of the road, is not slow and chill. That's "I want to die" fast and reckless... maybe have two autodrive settings. "slow and chill" going appropriate speeds and driving correctly (left/right toggle?) and "landscape zoomies" or something for what it currently does. Right now auto pilot is literally stress inducing =D
Just assume the roads are closed to everyone else but you, the VIP.
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.
Sure, but if the title of the site is "slow roads" and it's billed as "slow and chill", then careening down a road with half your car in the oncoming traffic lane at 80 miles an hour by default is not a good default.
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" =)
Ha, true. I'll see to making it a little less reckless, and probably give a setting to have it follow a lane, if it isn't too difficult. The idea of a "slow road" is more about taking the scenic route - back roads like these tend to have some of the highest speed limits, at least in the UK.
Here in Canada 80kph is the maximum for back roads, but when it's twisty by nature, or it's straight with a few turns but has a cliff to one side, that road is a 60kph road. Add most of the time anything S-bend or hard turns will be on a 40kph advisory.
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
Don't know whereabouts you are in Canada, but in BC and Alberta all speed limits are excruciatingly low. So much so that it's a norm to drive 20km/h over the limit on the highways and the police won't bother at all until it's an excess of that.
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.
> back roads like these tend to have some of the highest speed limits
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.
i found the bus averaging 80km/h pretty realistic. what felt wrong was the acceleration. it would go to max speed on a straight road even if there was a curve just a few hundred meters ahead. perhaps reducing the acceleration when autodrive is on will help.
maybe you can add a self learning component. every time the vehicle bumps the barrier, it was going/accelerating to fast.
You may prefer the other terrain. At the bottom left of the screen you can switch away from the hills. The other road makes more sense to be flying down the middle.
This would be great for Rally racing games, since it's all about reacting to unknown terrain.
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.
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.
You're right - I spent a while looking for existing procedural driving games before I started, and seeing how disappointing the Dirt 4 implementation was was all the motive I needed. Thanks for the kind words.
That is also why Bethesda switched from procedural generation for Daggerfall to hand built for Morrowind. I have to wonder if we could train a model now to do this stuff? For terrain it is mostly mappable to an image anyway. Could fix undercut cliffs in a post processing step using voxel models instead. Probably not a very good database to pull from for underground stuff though if you want to generate dungeons.
Oh, and I noticed that the tyres don't seem to respond to the steerangle changes immediately, instead it seems to slowly interpolate towards it. Not sure if it's cosmetic and does not represent the logical wheel state, but if it does then you might want to change it so that the steer-bar position directly sets the wheel angle, otherwise they'll end up being derivatives of derivatives making it extra sluggish.
> This would be great for Rally racing games, since it's all about reacting to unknown terrain.
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.
I have a keyboard steering related question. I like key control, but I do find the on/off nature of keyboard turning to be lacking.
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.
Your description is that steering decays then has mouse impulse added, which makes sense to me. But the code decays the steering after adding the delta-X. Is there a reason for that?
As the discrete impulse is meant to approximate average derivative, applying decay after the impulse ensures that the value is always attenuated by decay (low frame rate underestimate the ground truth impulse, whereas the converse overestimates at low framerate).
I wish the autodrive had a defensive driving option. As it is, it goes at 120 kmph on these windy roads and takes over the entire available space including the opposing lane. Wish you could limit the speed for a more relaxed cruise
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!
This is really cool! Thank you for making/posting this. I played around with it for about half an hour to 45 minutes or so. I did manage to break it two or three times but I can't reproduce it reliably yet. I'll provide a proper bug report if I can figure out the exact conditions, but mostly if you go off road and get to the top of a big enough hill and then accelerate down the hill as quickly as you can and crash into a barrier you can sometimes flip yourself over it. When you do, you are no longer tethered to the ground and, instead, kind of hover above it and the road. Sometimes you can slip through the ground and the water, and all other barriers become passable.
Thanks for the kind words! That screenshot looks like the tail-end of the road - the world despawns behind you as you drive, leaving behind this weird-looking trench. That isn't a bug, but it definitely looks like one - the plan is to add a little achievement for driving back that far, so that people will know it's expected behaviour. Don't worry about replicating bugs, or finding exact coordinates; I've been seeing them all stream in on my analytics backend, and they come with all the metadata I need :)
Oh, nice re: the analytics backend. Good thinking! This project has prompted me to dust off some code I was working on a couple years ago, I'm excited to play around with it.
Wow, I didn't expect I will like this as much as I did. This is a really neat idea and could probably be turned into an actual product. If the author added some more content (like some landmarks sprinkled on the landscape every now and then, possibly some varied terrain eg. bridges over rivers, cities/villages, windmills, dams, maybe some simple wildlife, etc.) and released it on PS4/PS5 for few bucks I can imagine it could sell pretty well.
It actually does generate bridges over bodies of water. If the road goes over a lake/river, it creates a simple bridge over it. I'm not sure if there are other bridge types
I'm not sure I want cities but I agree with adding a few villages and landmarks
If we're putting in requests, my two would be a forest setting (would allow the Autumn option to be more colorful - particularly with some Aspen) and a Mountain/steep valley option.
And yes, please advise when it's available for sale :-)
Much appreciated! There isn't any reason it can't be freely available; it costs almost nothing to host. Development time is the true cost, so it's more a question of how much I'm able to add.
This is a really minor detail, but — how long are the lane dashes? It looks like they're 50% white, 50% space, but in real life they are actually a lot longer and spaced a lot farther apart than most people think. A tiny detail to consider if you're going for realism.
A typical single lane road in the UK under national speed limits (60mph) have dashes that look like these - if not opposite (longer lines with shorter gaps)
Based on some other road details, like the barriers, bollards and road signs, I'd say it was modelled fairly realistically on UK roads.
Bingo - the dash spacing is still wrong, but it's based on the roads you might find around the Peak District (Cat and Fiddle, Snake Pass, etc.). I didn't reckon many people would mind the line spacing, but it'd be an easy fix
i seem to remember that i have seen them vary in length, and i have the distinct impression that the length variation is dependent on the suggested speed. that is, shorter dashes if you should go slower, longer dashes if you can go faster. the specific details probably vary from country to country.
When I set it to 15 mph it feels like a really nice screensaver.
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.
Man, I wanted something like this when I was a kid. (I liked it as an adult too, but I immediately drove off the road deliberately… just like I would have when I was 12)
Around 2000 when I was 11, there was a language called Darkbasic that had a 3d cave runner demo with a procedurally generated track. I made it faster and played it.
Nice! Loved driving around and trying to break the physics.
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.
There are some less hilly areas you can leave the road easily, there's something of an achievement when you manage to careen off a cliff that says "The edge: what did you expect" or something to that effect. To be clear, I did not expect to continue flying through the air like an airplane going through turbulence (which is what happened)
Some time ago I added ABS, traction control and some torque vectoring to the Unity CarDemo ... that made the supercar surprisingly handable (is that a word?) even with acceleration levels increased to insane values. Especially with keyboard control (ie full tilt left or right) the car would not spin out in curves. Maybe you get a kick out of implementing some "electronic assists" for your car?
I don't know if there are other achievements but the one with the "What did you expect" text popping up really made me laugh. Good foresight anticipating players like me.
"What did you expect" - ha!
Nice. The keyboard controls could definitely feel snappier, but once I got a feel for the mouse controls I settled right in. And taking the coach offroad is super fun!
Love it! If feel like you should lean into the landscapes, which are the biggest draw, by not penalizing driving off the road as much. Maybe dirt roads with some more floaty handling but not the speed penalty?
It isn't intentional, that's just the physics of low friction on steep slopes. But you're right, nearly everyone starts by immediately seeing how far off-road they can drive, so it wouldn't be a bad idea to better support that :)
Some underwater features would be nice for people that likes to try silly things.
[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 :) . )
The only correct play is to drive forward a few hundred yards, do a u-turn and drive back past where you started. Very entertaining. Especially when you fall off into the ocean and earn an achievement.
I turned right, drove up the hill in the woods, down to a lake, kept going on the bottom of the lake and arrived to The Edge. Nices views from the top of the hills.
Kudos to the developer! I'm a huge fan of open world driving sims (Forza Horizon series) and find the endless roads (and the long races) a great way to unwind. Knowing the roads is one thing, but add in changing weather conditions and general road traffic, each corner can be different each time you go round. Certainly keeps me on my toes!
I got really weird results when I set the seed to 0099FF - not the decimal value of 0x99FF, I mean the literal string "0099FF". I got all kinds of terrain generation glitches including one where the surface on which my wheels rested was a good 50 feet above what the texture was applied to.
Neat, this is my project - thanks for sharing! For anyone interested, I have a brief overview post up on Medium while I work on a deeper technical write-up:
This would be great for spin cycles and exercise bikes. many bikes now come with BLE controllers that transmit speed and cadence information that could be used for speed controls. The directional controls can be emulated by a keyboard emulator (arduino based) etc.
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.
i loved the drive but the speed is offputting.... i mean it only seems to work when i am like 100km, something that autodrive does while i can expect a mountain winding road to be comfortable at 20-50 because of twists and turns?
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
Very nice creation !
But sad that AZERTY keyboards are often forgotten in mini games. The game is not really playable outside QWERTY keyboards.
(Arrow keys would be a good alternative too)
Rookie error on my part, apologies - I was needlessly agonising over having to make string comparisons in my input controller. This week I'll be refactoring it to use a map, and be adding some UI for remapping.
Additionally, if you add the seed to the URL GET parameters, I can share this with my colleagues to compete who clocks more kms during a morning stand up.
I appreciate the player is rewarded for going offroad. That was fun. :)
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?
I've heard it's mappable on a steam deck, but I don't know about others. Controller support is one of the most-requested features, so I'll be trying to work on it this coming week. Thanks!
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.
It popped up a message saying "Hold shift to increase acceleration". But I got the feeling that I was playing it wrong if I went far above 40 mph, so the shift key seems perfectly useless.
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 think this would be way better if it could work with only the mouse. LMB/RMB for brake/accelerator and moving mouse left/right for proportional steering with steering position visual feedback.
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.
Great idea, but landscape is not very realistic, I'm driving next to sea or huge lake going uphill, then driving further away from sea, all the time going uphill and after some time I'm back at coast at same elevation where I started while going all the time uphill and NEVER going downhill.
Also why is autodrive driving in the middle of the road and not in the correct lane?
That's interesting - the sea plane is set at a y position of 0 so I can't imagine how that could happen... You can press F3 to get a debug overlay showing your position, maybe you could verify that the Y value looks correct?
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.
I think what happened is that some people perceive they go upwards even when going flat. I discovered that after I once tried to stop at the top of a hill but already was beyond the top because the car started to roll down by itself. Perhaps you could adjust some angles of view?
that's what I tried, it always rolls back and I went clearly long time uphill and at best only flat, but clearly never went downhill to make up for same elevation as I gained to be back at same level with sea where I end up no matter how long I go uphill
Took some finagling, but I made it off the road and onto the endless meadow. Really fun to slide around on and try to avoid the trees. Can't comment on the road driving, as I never spent more than a minute on it. I'm surprised you have an effect for driving underwater, too.
OP could add an optional online mode where you occasionally see other drivers cruising around and make it so that you'd just go through them as if they were ghosts if you tried to crash into them
That's very well done. I was pretty happy about turning my Camaro into a Jeep and being able to go off-road for miles before finally running out of map.
The fall and winter modes are especially evocative. Winter with fog or winter with night reminded me so much of driving in Utah.
It looks great, but I can't stand the wasd controls. Please let me control steering with one hand (e.g. z-x or a-s) and acceleration/braking with the other (e.g. k-m).
this is awesome! i love having a web-based chill car game like this to play to calm down, let my brain chill, and play it when im in bed or the middle of thinking or in between meetings.
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!
I really like this, nice work! Only thing missing for me is police sirens with flashing lights chasing me, on coming traffic, and Limp Bizkit and Bush playing in the background.
It turned out to be a broader issue. Firefox was behaving the same. Reboot didn't work either. There is a setting in window 10 control panel to set choose GPU for selected apps. That worked.
Excellent! I noticed some beautiful scenes on your twitter feed, it would be nice if I could pass the seed in the URL to just jump in (if that's how that works).
There is a nice way to set fog to be two-tone - I'll play with that and see what I get. The default Summer mode has quite a distant fog, but the morning/evening weathers are a little mistier.
I don't mean fog, I mean just the fact that air is blue, so things get smoothly bluer with distance (or rather, more sky-colored). Check out any mountain landscape, nearby trees are green and distant ones are blue: https://live.staticflickr.com/1009/531101849_a7d297e0cc_b.jp...
True, though in practice that's the way fog is applied in the shader. With the two-tone setup I can have a blue hue in the foreground transitioning into the hard white at the edge of the view dist.
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.
[0] https://sidequestvr.com/app/1403/ghost-racing-vr-wip