I broke it

I’m using a new procedural roads system and it’s not cooperating. I’ve also hit a massive lack of motivation/discipline which conveniently coincided with the fam’s first vacation in about two years. My deadline for release is still EOY but I couldn’t see any way past doing this. There are several issues now:

Passengers

Still needs some tweaks, but they’re in there.

I was able to cram two passengers into the Nomo car, but they don’t look “natural” quite yet. I had to change the car colliders as well which explains the overturned car in the background that’s slowing sinking into the asphalt. Next thing will be to tie into the passenger colliders to know if they’ve been injured.

Weather System

Still trying to fix the white halo at sea level.

Adding a weather system means the game can ship with more levels/puzzles, so that’s what I’m working on now. The clouds scroll and their density can be adjusted. Rain might get weird considering how it changes the visuals (I’m hoping I can just increase some specular to.. everything?)

Clearer skies with bloom and some other tweaks

Got URP With Post Processing Working

New Look and Feel

I had to practically start over, but I think switching the project over to use the Universal Rending Pipeline was worth it. I also made some changes to better mimic the layout of MCity. Here’s what’s new:

“Tunnel” for testing sensor outages

Thank you blend swap!

Highway/Interstate

Actual Highway Signs Coming Soon!

Dirt/Gravel Road

Still figuring out the method of enclosure here.

Section of Road With Trees

These trees are actually a type of poplar and not cypress.

Improved Intersections With Better Traffic Light Models

Get these poles some PBR!

Roundabout With TestTown Sculpture

Yep! It totally spins! Please ignore the obvious difference in grass textures.

I realized that these extra sections mean I can easily increase the level count. Thanks for reading!

Destruction!

Damage to the car after a collision.

Here’s my first try at implementing damage to the car. It’s working for the body mesh but not the bumper because I still need to combine the sub-meshes. This was just a test to see if the Impact Deformable Component could work in my project. Now I need to add some sort of smoke/sparks effect and disable/hinder the car once it takes enough damage.

Also, I’m switching to Unity’s universal rendering pipeline for improved visuals. I was using the built-in renderer which supposedly does not have the features that the new pipelines do. The first thing I’m attempting to implement with it is some basic anti-aliasing but I haven’t figured that out yet. Thanks for reading!

Terrainity

I flattened the terrain “walls” that prevented players from driving off the edge of the world, but I never liked the look of it. I think a better design is shutting the car off when the player drives outside the test area (with a fence around the perimeter maybe). I imported a free skybox asset and I am happy with the results. Technically, this does not count against my feature freeze as one of my cards is “TestTown Improvements,” so I can throw this work in that bin.

To Feature Freeze Or Not To Feature Freeze

I’m giving myself a hard deadline of the end of the year to release this game. It’s going out in whatever state it’s in so I can move on to the next project. I can’t stop thinking of new things I want to implement, which, naturally, increases the difficulty of finishing this thing exponentially. Most software companies deal with this by implementing a product-wide feature freeze which means nothing new gets added until everything they’ve already committed to doing is tested and ready for public consumption… but I just had a really good idea that I think is important enough to include! Occupants! Self-driving cars are pretty useless if they don’t drive people around, so, I want to take the ragdolls and stick them in the car by attaching their hands and feet to the steering wheels with some basic collision detection to determine if the occupants were harmed. This also helps with the scoring system as some companies will value their occupants more than others ;).

The other idea I had was using some sort of soft body/destrictible mesh for the cars and the props in TestTown because I think people will have a lot of fun knocking stuff down and it’s a good way to determine the amount of property damage the player has incurred. However, this could take a long time to implement if I can’t find an existing system that does a good enough job.

I’m going to add these two features to the board and stop there. Honestly, if I can ship this game with just the prototypes of these features I’ll be happy. Thanks for reading!

New Cars For CarCoder

From left to right: Fuber, NoMo, and Teslow

I had to model the LiDAR unit on the Fuber (blue volvo-ish) car. The NoMo car looks a bit small and thin here, so I might change it, but the problem so far has been the Teslow car. It’s too blocky, and I haven’t found a good substitute that isn’t published under an editorial license. I’m going to try importing the prefab’s model into Blender and using a subdividing modifier on the larger meshes, starting with the wheels to see if I can increase the level of detail.

Also, something I didn’t showcase in my last post was that I changed the game’s title scene to this absurdity:

Not sure if this will end up in the final cut as it is 😉

Losing Steam

Motivation sucks. For every bit of it that I get, there seems to be an equal and opposite amount of apathy. Despite that, I guess it still technically produces something positive because during the manic depressive high I get a few things done. I had been contributing to my project at least an hour every business day and then taking the weekends off, but the last two days I just played video games instead of the hour I should have spent working on CarCoder. I guess that’s not bad considering I did work for a few weeks like that. I want to share some screenshots of everything that I did to see if that helps me, and also talk a bit about why I don’t want to work on the project anymore.

New Features

1. You can no longer make the car fall off the edge of the world:

New terrain surrounding TestTown

2. Trees!

Trees!

3. Intersections with “working” lights!

At the moment, you can only turn all the lights on or off (working on a day/night cycle)

4. Improved resolution of TestTown’s town square backdrop and added more props:

Used an AI upscaler to make the backdrop a higher resolution

5. Improved look of the “auxiliary” TestTown buildings:

The circled building is where the coder will physically be.

6. Added a four-way intersection with stop signs:

Are regular stop signs double-sided? Hmm.. might need to look into that.

7. CCTV camera models:

New models for street-cams

8. CCTV shaders:

Needs more scan lines! (also the camera name should be here but it’s not)

9. You can adjust the time of each instruction as well as remove them:

You can use the slider to adjust the time each instruction runs, or remove instructions using the red x. Needs some polish but works!

Things that are broke now that were not before

No more car sounds.. after adding additional cars for the car selection scene (more on this in a moment) my car controller would do very odd things like cause the wheels to just float away and other oddities that I just took out the sounds and animations to get the new cars working.

New bugs

Reordering an instruction can break the new adjustment UI changes (I think)

The biggest change I have made so far is the car selection scene, or what I’m calling the job selection scene. I had this idea that the player could choose who they wanted to work for since there are several companies, and that would give them a different car with different capabilities/specifications (speed, handling, etc) and a completely different scoring mechanism depending on that companies safety rating. So, while one car manufacturer might value safety above everything else, another might value the speed at which you completed objectives above everything else. I set out to create a new scene that appears after you select a level, and here’s how it looks so far:

Yuck, right?

You can see the new cars, sure, and it all works, but let’s just admit that it needs a lot of polish, to say the least. The new scoring system complicates things as well, but I felt it was necessary to make the game more interesting and give it some replayability. It didn’t seem like much fun without the chance to get things wrong, and this way, less, um, cautious players can progress but still be challenged. This has also meant tasks of tedium like searching the internet for appropriate yet affordable 3D models, and then getting those models to work (and look) correctly. My goal now is to make all the levels I possibly can and get everything working. Then, a feature freeze to get it polished up for the release.