Devlog Update 78

Hello 2016! Last year was already pretty interesting, but this year should get quite exciting as well :)

The modding community over at ParkitectNexus keeps growing, which is fantastic! What’s not so great is that many mods need some kind of settings dialog and so far had to implement it themselves and opened it when hitting some hotkey, which started to become chaotic. So on the initiative of the modding community we added a mod settings screen that unifies all of that and also allows to turn off mods without having to uninstall them:

I also made two small mods myself for things that don’t need to be part of the main game - one is a template for a color palette changing effect:

The other is Twitch Integration, which allows viewers of a Twitch livestream to spawn their own guest and follow his activities. That should be fun :)
That one should be out shortly after Pre-Alpha 6 - which is a bit delayed this time due to the holidays as already said in last weeks post, but it should be done soon. We already started working on getting it stable and ready.

Devlog Update 77

Art Stream

Usually we’re doing a live stream at the end of the month, but due to the holidays we’re shifting it to January this time. Same for the next Pre-Alpha update.

Devlog

I made a simple change this week that improves the staff/guest AI quite a bit and helps with performance as well.

Imagine a worker who’s tasked with grabbing a delivery crate from the stack and bringing it to a shop. First of all the worker needs to figure out how to get to the delivery crate stack, if he even can get there at all. This is done using a pathfinding algorithm. Once the worker reached the crate and picked it up he needs to figure out how to get to the shop, again using a pathfinding algorithm.

But what if there is no path from the position of the crate to the shop? The worker unnecessarily went all the way to pick up the crate and wasted time that he could have used to work on something else. It would be better if the game checked whether the crate can be delivered before the worker goes to get it. Pathfinding is relatively fast, but doing a lot of it would quickly get too expensive. So this needs to be done slightly differently!

The solution is that the game simply knows at all times which paths are interconnected. This can be calculated very fast (and only needs to be recalculated if a path gets added/removed) using Flood fill, so now we can essentially check for free whether the crate and shop are reachable before doing the more expensive pathfinding calculation for how to get to these locations.

Here’s a debug view of this connectivity information:

It visualizes which paths are interconnected, so for example any path tiles with a dark green cube can only be reached from other path tiles with a dark green cube. If you’re on a path tile with a dark green cube you can’t reach tiles with a blue cube.

The game keeps separate versions of this for the guests and employees, since guests can additionally use rides to move around the park.

This can be used in a couple of other scenarios too: for example employees who are assigned to a zone will now immediately return to that zone if they’re outside of it (e.g. Janitors who transported a trash bag out of the park). It was previously too expensive to find a reachable path tile within the zone.

Devlog Update 76

You might have seen a couple of bigger Parkitect videos this week, e.g. by Nerd³, Olli43 and MonotoneTim - it’s been a pretty great week (with a lot of time spent on answering emails), but we still got a few things done.

We added an Inverted Coaster!

And here it is in action:

And we added some ride music:

If you’re familiar with Gordons previous work you might recognize some of these titles…

There are only these four short calliope tracks so far that we’ll probably combine into one longer piece. More to come over time!

Update 75

It’s been a bit of a slow week, with a mix of smaller stuff and some non-development related tasks getting done.

The color picker has been completed for now:

Recoloring objects received a quick transition effect:

Gordon put sounds for the Bobsled Coaster and Vertical Drop Coaster into the game.

We’re testing some new rain:

(The animation is very fluent in the game, choppiness is due to GIF)

Guests don’t have to wait until their coaster car is at the front of the station anymore before they can leave. This allowed us to give rides a “wait until full” setting, which also means that the Alpine Coaster cars won’t run empty anymore.

And you can let your guests take a bath now:

We don’t show stuff that doesn’t make it into the game here very often, but here’s a little something - we thought it would be fun if a claw from a claw crane machine grabbed the guest when you pick him up, including rope physics:

It didn’t work as well as expected. The swinging made putting the guest down exactly where you wanted pretty annoying, so it got scrapped.