Dev Blog 5: Setting the stage

As winter is rolling in, snow is blowing in Snow Plow! Good thing we have a new machine coming out of the factory right in time! Since the last dev blog, a brand new dumper truck has been modeled. Yes, we already had one in the previous version of Snow Plow, but when reviewing the model, I concluded that it could be made more realistic and performant. That’s right! With better modeling techniques, I was able to make a model that is way more detailed, while reducing the number of poligons and vertices, allowing the final 3D model to be lighter, hence offering better performances in-game.

As I am writing this blog, the dumper, not representing any real-world truck but highly inspired by one, is being coded in the game engine. What I will call the “Intercontinental Workhorse” doesn’t have any plows yet. As I said, the truck is being coded right now, as a truck only. It’s taking a little bit more time than it should, but that’s expected; So far, the “enter-exit” system (that makes the first-person controller climb on board a vehicle, giving you control of that vehicle) had to deal with one truck only. But now, it has to switch between several vehicles depending on which you choose to board. It might seem very obvious and easy, but in fact, you still gotta make it work with lines of code! So a few expected hickups have been solved and now it’s only a matter of tweaking all the parameters to match the specs of that specific vehicle. When all done, the 45° front plow and the wing will be modeled and animated as well.

Audio

The first steps in audio design and integration have been made. For now, we’re only at the stage of experimenting and seeing the possibilities. But so far, I can tell that we’ll be able to push sound design to something pretty amazing. My goal is to achieve: 1 – Highly realistic vehicle sounds effects, up to the quality of a simulation game, and 2 – A very moody and immersive ambiance using environment sound effects and an original soundtrack.

Each corner of the map will have it’s own ambiance. Wind will whistle, grainy snow will make crackling noises. In the forest, you’ll hear the tree branches winding in the wind, birds sing and water streams flow. In the city, you’ll have all the background noises that a busy city usually gets.

Environmental engine

This was unplanned; I was testing the sound effects integration at night and just got some kind of inspiration for the environmental system. I ended up changing the course of what I was doing and overhauled the whole thing. Result: Procedural clouds, moon, northen lights (aurora borealis) and better day/night transition. Beautiful!

Setting the stage

This is a bit more technical, but the sandbox map (and mode) is now complete (but still subject to changes). It’s a small 250×500 meters map that holds everything, all the codes, all the vehicles, etc, mainly for testing and development purposes.

But since the “normal” game mode will eventually be an open world with many regions, it can’t all be loaded and contained in one level. Things will be split and generated on demand. What I mean is that the game mode will first be loaded, containing the first person controller and all the required scripts. Then, it will call for asynchronous loading of the required regions of the map during runtime. That will allow to reduce initial loading time, improve performance by running only the required parts of the world, and load the next sector at runtime when the player is changing sector. This work will be done shortly, as soon as current projects are completed. It will set the stage for the upcoming work on the main game mode, and the main world.

Multiplayer

As I’m building Snow Plow, I’m gathering knowledge on how to integrate multiplayer into the game. I’m actually setting everything as if the game was multiplayer. It’s still unclear on what game modes will be present in the game, and if any of them will be multiplayer at all. But I can tell that it is my intention to try hard to allow you to seamlessly have friends to join your game so you can beat that storm together.

Release

I know you’re all excited to try it out! Again, the first release won’t be anything close to a final product. Not even a beta or an alpha version. It will be the development version I’m working on. As I’m saying since the beginning, it’s a project I want to share with the community so until it has any kind of commercial potential, I will give the community a chance to try the game to the point it is in it’s development. And that will be free.

It’s still unclear how many keys will be distributed, as well as which distribution platform will be used first. Could be Steam, itch.io, or other. Or maybe itch.io while it’s free/on donations, then Steam later on… More information to come.

When can you try it? No promise here! But I’m hoping to give you something before the end of the year!?! Ish?! At least during the winter. If 2020 is being nice with us….

What’s new?

In addition to what’s above, here you can see the highlights of what’s been happening since the last update. It’s not an extensive list, a lot of work is done under the hood and not necessarily visible, such as code tweaking and bugs fixing.

  • Character control has been optimized with head bobbing animation for more realism, and the option to turn it off in the options menu if that annoys you.
  • The vehicle camera behaviour has been changed. It’s still controlled with the mouse, but when you move the mouse sideways, the camera first slides sideways, allowing you to drive with the camera offset and see what your plows are doing. If you keep moving the mouse, then the camera will orbit around the vehicle, giving you a 360° rotation around it. When driving forward, the camera slowly comes back to a forward view.
  • I’m testing this out: since a grader usually works at slower speeds, when you hold W (or UP arrow), it drives forward in first gear only. By double-tapping the same key, it switches to the subsequent gears and in automatic transmission. That allows to easily work in first gear and avoids having to constantly release the key to keep a slow speed. It’s a little bit like running in Minecraft: hold to walk, double-tap to run.

That’s all for this dev blog! A lot is going on behind the scene, the dumper truck is almost done, the environmental system is undergoing overhaul, and I’m also planning to shortly overhaul the snow system to make it behave even more realistically. So stay tuned!

PS: I have to say that I’m pretty excited to start creating the definitive world. Downtown, rural side, suburbs, national road… it’ll be awesome! Please submit your best ideas of sectors, buildings, features, etc, via Facebook or the comment box below.

Oh, one last thing! I found, on an old hard drive, my first attempt at Snow Plow. It was back when I didn’t even had the ambition to make it 3D. The folder is dated from 2010…

See you in the next update!

Eric, project lead.