Related Games / Theme Parkitect, new RCT-based game
- 25-August 14
-
G Force Offline
Yep, that was a bug - has been fixed since!
Siiiiicckkkkk. Favorite feature of these Arrow suspended coasters is how they rock on break runs and such.
-
kenos Offline
game idea is nice but i think it is like a very good browser game, the grafic design is easy and not in time but it is an kickstarter project like path of exile and if you see this poe game they have more comunity at this moment as diablo 3 have and poe fuck the diablo 3 game (blizzard game - one of best game designer and one of the ritchest) . Nice kickstarter project
-
RRP Offline
Update 52
Garret is currently busy with moving to a new place, so I’ve used this week to do some more experimental technical work.
Probably the biggest and most important system that’s still entirely missing is the scenery visibility checking. I had done some initial tests a couple months ago though, and this week was a good opportunity to push it a bit further to figure out what we can do with it. Here’s a debug screenshot:
Every white line here connects a path tile with the scenery items that are visible from that spot, taking occlusions into account. Of course it’s just a rough approximation, and it has only been done for the rock objects here for testing purposes, but as you can see that’s still a slightly crazy amount of calculations that need to be done.You can imagine that it’s not a great idea to test every path tile against every single scenery item in the game world - a method for quickly getting only nearby objects relative to a given point is needed. This can be achieved using space partitioning: for example, imagine that the game world is divided into two halves, A and B, and you have done some calculations beforehand to figure out which objects are inside half A and which are inside half B. If you now want to know which objects are within a certain range of some point you first check how far away that point is from your two halves - if one of the halves is further away than the range you’re interested in, you know that all objects inside that half are outside the range as well and you don’t need to do any distance checks against them individually.
Nice! Now, instead of using just two halves a better and slightly more sophisticated approach is to use a hierarchy of ever-smaller cubes that partition space more fine-grained in areas with lots of objects. This structure is called an Octree, and it’s one of the usual solutions for doing space partitioning (see the linked Wikipedia article if you’re interested in learning more about it!). To my own surprise we so far got away without using one, but we rarely had to do checks against nearby objects so far (e.g., for checking collisions when building something new - this is only done for one single frame, and checking against every single object in the game world was fast enough so far to not cause any overly noticeable lag). There are so many scenery visibility checks to do though that it was necessary now, and we would have needed it for bigger parks anyways.Here’s what an octree looks like in action:
And with that the performance of doing the visibility checks is in a feasible range now (and some older code received a performance boost too!). The main problem left is that recalculating everything when loading a park still takes too long, but before working on that we should figure out for which kinds of objects we’ll use these visibility checks anyways (probably not for every single little stone?), and how much they add to the gameplay. -
RRP Offline
Update 53
It’s been a rather unremarkable week for the devlog. Garret has been busy trying to keep the craftsmen refurbishing his new place under control. I’ve had to spend a couple days on bookkeeping and taxes. Gordon has been trying to convince a local theme park of letting him do some sound recordings (with uncertain results so far). He also delivered the sound effects for the remaining flat rides that we have in the game right now, and we got them implemented.
We’re approaching another build now, which means the remaining time went into testing and fixing, so there’s not much to say apart from that really. I guess most notable would be that I finally added some checks to prevent you from building rides and shops halfway into the terrain:
It’s been one of the long-standing tasks that I somewhat procrastinated on - in the end it was trivial to implement! You can still build rides/shops underground, but they have to be completely covered now.
I still need to disallow dragging terrain through existing stuff, though….hmm!
Garret did a spontaneous art stream to test his new internet connection! He worked on the beginnings of a mini train. Here’s the current state:
The entire recording is still available for a while over on his Twitch channel if you missed it. -
RRP Offline
Update 54
We finished and implemented the Miniature Railway transport ride:
Compared to the Suspended Monorail it’s significantly slower, but it can transport more people at once.
Rides received a test run mode. Tracked rides received support height limits. And of course there’s the obligatory number of small improvements and fixes.
We should have a build for our $40 tier backers next week. This’ll be the first time a bigger group of people will have access to the game, so it’ll be interesting to see how it goes! -
Cocoa Offline
If they wanted to make it realistic they should add speed or gforce limits in addition to or replacing height limits. That stuff is just as pertinent to track design in real life if not more. For example, the skytower in orlando is a type of ride that doesnt usually go over 200 feet because it would get shakey or uncomfortable at high speeds but it works in the skytower form because of smaller drops. -
constructor Offline
I don't always like the choice of colors in the videos. It may help to look at some pixelart, like for example "eboy", and go in generell for less intense and brighter colors.
-
RRP Offline
Update 55
http://www.twitch.tv/garret_r
It’s time for an art stream again! Garret will be streaming the creation of some new art on his Twitch channel on Wednesday from 12pm to 2pm. He plans to start working on a Carousel It’s been a busy week! We’ve added some new food stalls:
This is Bubble Tea, Chinese Food, Mini Donuts, Popcorn and Ice Cream. And we added a Mini Coaster:
It’s supposed to be used for fairly relaxed rides through some scenery, so its building options are rather limited.
We put the guest names from the $50 Kickstarter tier into the game, so these uniquely named guests come to check out your park every now and then. I spent the majority of this week on a rather big feature though - tracked ride blueprints! That means you’ll be able to save your tracked ride for placing it in another park or for sharing it with someone. It’ll also allow us to ship the game with some pre-designed rides eventually (which we’ll also need for the $500 Kickstarter tier). I initially didn’t write the code with the idea in mind that coasters will ever be moved or rotated around so some bigger changes were required, but it’s almost working now:
I tried to finish it for this weeks $40 tier build, but there’s still a couple things left to do and due to the bigger code changes that had to be done we decided to leave it out for now and properly test and finish it later.
The build still got delayed longer than initially planned due to this, but it’s done now and we sent it off to Humble! It’ll probably take another couple days until they uploaded it though. You’ll receive an email once it’s available
Gordon bought a Concertina. He’s still learning but already used it for a song!
https://soundcloud.c...concertina-song
It’s another one that’s supposed to play in the background while building stuff. -
Roomie Offline
Looking good. Sad I didnt get on board with this when the KS was going but can't wait for a more public build.
-
Cocoa Offline
I wish theyd make more realistic food stalls instead of copying rct... like small vendors, food trucks, sit down restaurants, etc. The stalls were the worst part of rct imo. Also, they should put in midway/arcade games!
From what i understand they browse this topic so maybe theyll listen to me -
inthemanual Offline
The stalls aren't bad. But I agree, they could be a lot more creative with them. Allow stalls to serve multiple foods, plus drinks, but be upgradable or have different better sstyles with more options or better quality food available through research. Start with a vendor cart then a food truck, then a small shack and eventually be able to build cafes and restaurants. -
RRP Offline
Update 56
The $40 backers build went live earlier this week, and we’ve received tons of valuable feedback so far with many good suggestions. Also plenty of bug reports, but finding the problems that we missed so far is the purpose of this build after all, so that’s alright
Most of this week was thus spend on collecting and evaluating what everyone had to say. We also released a hotfix patch that fixes some of the worst bugs that had been reported so far.
Some people have built pretty impressive parks - here’s one that we particularly liked:
Garret finished the carousel from his art stream earlier this week, and we put it into the game:
We’ve done more research on Steam Early Access over the last few weeks, and what we’ve heard a lot is that an Early Access launch has to be treated almost identical to a real launch, meaning the game should be as finished as possible. We’re not near that yet, and as you know that’s not really what we planned the Early Access release to be either, so we decided it would be a better idea to do a much smaller launch for now: we’ll extend the current pre-alpha phase and for now only sell the game over our website while we’re working on getting more content and core features done. We’ll still go on Steam Greenlight in August though, which should allow us to distribute builds over Steam. We’ll just do it in a more private way instead of selling it on the big Steam Early Access store yet.
That means everyone who backed us on Kickstarter and preordered will get a build soon just as planned (and everyone interested can get into the pre-alpha too), and we get more time to work on everything so we can leave a good first impression on the huge Steam audience once we finally release it over there. -
RRP Offline
Update 57
We finally added some extra wide stations for the wing coaster:
…which required some bigger changes, but the positive side effect is that tracked rides don’t need an entrance at every station anymore, as some of you requested.
Garret made a couple new generic scenery items:
He also did a first balancing pass on food, so resource and production costs of food items and their effects on guests should make more sense now.
There haven’t been any major new bugs popping up in the current testing phase, so we moved on to fixing a bunch of smaller stuff. Keep an eye out for a new build within the next 1-2 days if you’re in the testing group. -
RRP Offline
Update 58
Garret continues to work on generic scenery items. Here’s some new topiaries!
I finally got a bit away from bug fixing and back into working on new stuff. Remember the blueprints from a couple weeks earlier? A “blueprint” is what we’re calling a file that contains a tracked ride design. The game lets you save your tracked rides so you can easily rebuild it inside another park, or you can share it with someone else by giving them the blueprint file.
And this is what a blueprint looks like:
“Alright, that’s a neat screenshot of a ride”, you might say, “but how does this relate to what you said about blueprints above? It’s just an image.” Well, it really is just a .png image, but it also contains some extra information hidden inside it that the game needs for loading this exact ride! You could simply download this image here1 to the games folder and then place the ride in one of your parks.
Neat…but why?
I actually did it the other way around and used a custom file format at first. You’d have a .blueprint file that contains the ride data, and inside that there’d be a screenshot of the ride that the game can use for quickly displaying a preview in the blueprint selection UI. Turning it around is rarely done as far as I know, but it isn’t an entirely new idea either: most notably, Spore stored its creatures inside PNGs too.
Doing it like this has a couple of benefits:
It’s a nice and fun way to display your creations
Makes sharing easier, as there are lots of websites that allow uploading images for free
Good way to keep track of which file contains which coaster if you downloaded lots of rides to your computer, as you’ll get a preview of the ride contained within the file directly in your file explorer
It’s cool.
How does it work?
So how does the game actually store ride data inside a PNG? There’s two ways I could think of (and that I both tried):
Using PNG chunks
PNG files consist of “chunks” - blocks of data that contain certain information about the image. Usually there’s at least the “IHDR” chunk, a header that contains the width and height of the image and information about how many bits are stored for each pixel; and the “IDAT” chunk that contains the actual pixel data. The cool part is that you can define your own chunks that can contain whatever data you want. Wait, there’s an official method that allows us to store our game data inside the image? Awesome, problem solved, we’re done here!
Well, unfortunately not. It does work fine indeed - the problem is that some websites (e.g. Twitter) try to optimize uploaded PNGs to reduce file size, and oftentimes that includes stripping away all chunks that aren’t absolutely needed for displaying the image (in my test, the file size of Twitters “optimized” image without my custom data is actually bigger than my original file with the additional data chunk though :/
Advantages of using PNG chunks
It’s a simple method that doesn’t require any weird hacks
Can store arbitrary amounts of data inside the PNG
Players could modify the image (e.g. writing the ride name and stats on it) without destroying the data stored inside it. People could probably do some interesting things with this.
Disadvantages
Hard to tell whether the image still contains the data after downloading it from somewhere. Could confuse/annoy players.
(Ab)Using the pixel data
Which PNG chunk can’t possibly be optimized away? The “IDAT” chunk that contains the pixel data!
A truecolor PNG with alpha channel stores 32 bits of data for each pixel. That’s 8 bits for each channel: the red, green and blue color channels, and the alpha channel used for determining how transparent that pixel is.
A binary 8-bit number can store 256 different values, from 0 to 255. The left-most bit is the most significant bit, which means that changing it has the biggest influence on the resulting color of the pixel. For example, a binary value of 10000000 for the red channel represents the decimal value 128, meaning that this pixel has a red intensity of 128 out of a possible 256 (= 50%). The right-most bit is the least significant one: it changes the value only by 1/256th, and that’s almost nothing. Changing one color channel by 1/256th is such a little change that you have to look very, very closely to notice a difference.So why don’t we use these least significant bits of the 4 color channels of each pixel for something more…useful? Like storing our ride data?
An image of 512 pixels width and 512 pixels height contains 262,144 pixels. We can use 4 bits from each pixel, so that gives us 1,048,576 bits = 128 kilobyte. That’s plenty! For comparison, the ride pictured at the top of this post requires just about 5 kilobyte.
And in fact, if we zoom into that image and change the colors and increase the contrast a bit to make it easier to see…
See that noise in the top half? That’s our ride data
Advantages of using the pixel data
Should survive all optimizations that some websites do. If they actually modify the pixel data you can usually easily tell, e.g. if the image has been resized.
Disadvantages
Amount of data that can be stored is limited. We could sacrifice image quality and use the two least significant bits to double available space, or increase the image size if needed, or pad the image with transparent pixels for which we could use all 24 bits from the color channels. Still… it’ll be enough space for 99.999% of players, but someone will build something that doesn’t fit. Could fall back to a custom file format in that case or just disallow saving to a blueprint (if the ride has to be ridiculously big to hit the limit).
1 except Tumblr resizes images, so this blog is one of the places where it still doesn’t work -
RRP Offline
Update 60
Phew. We completed another build, so if you’re one of our $40 Kickstarter backers you should be able to download it from Humble soon. I’ve attached the change log to the end of this post. As you see that’s a relatively long list including some bigger changes, so we’ll give our testers some time now to find the problems that we missed, while we work on a couple of new things in the meantime. We had a super fun art livestream this week where Garret modeled this new Wave Swinger ride, and I’ve put it into the game since:
Really happy with how it turned outhttps://vine.co/v/eIbFAW1FtBD
$40 Backer Build Changelog v1.3
- added Blueprints (saving tracked ride designs)
- added Wave Swinger ride
- added new topiaries
- added a bunch of new build sfx
- added new Entertainer walk animation
- added shop and attraction satisfaction rates
- added Toilets getting dirty if used; Janitors clean them
- added some employee stats
- tweaked coaster physics (increased friction, so some old rides might not work anymore)
- did a balancing pass on flat ride and tracked ride stats
- did a balancing pass on guest happiness and ride preference
- made guests better at judging how much they liked a ride (Ferris Wheel and transport rides are still problematic)
- made terraforming tool and tower ride height changer feel more responsive
- shortened queue signs and lamps to fit into tunnels
- despawning derailed cars after a while; enabled collisions between cars
- increased max. support height on Suspended Coaster
- moved shops back a bit so guests don’t clip into them as badly
- made park visualizations (happiness, trash) respond faster
- guests: tweaked collision avoidance to look more natural, should also result in fewer collisions; better foot placement while walking
- increased attraction builder preview image sizes
- clamping number input fields to valid ranges
- improved the look of wooden supports on some terrain configurations
- fixed terraforming tool sometimes producing weird unexpected results with smoothing enabled
- fixed terraforming flatten tool not properly following the mouse cursor
- fixed cursor jumping around near vertical walls in terraforming tools
- fixed a case where guests would step onto employee paths
- fixed guests getting stuck if toilet they’re using is being deleted
- fixed tracked ride entrance/exit being deleted if adjacent station platform was removed
- fixed some problems with longitudinal G force calculation
- fixed a case where a path tile failed to delete and gave infinite refunds
- fixed park entrance being misaligned
- fixed newly hired employees appearing in the list of whatever employee tab is currently opened in the employee manager window
- fixed wooden supports clipping through the track
- fixed ghost train behaviour and stats for multi-station tracked rides
- fixed people getting confused on stairs (most notably guests on stair queues)
- fixed bench/lamp/bin-builder not previewing correct prices while multi-building objects using Shift key
- fixed fence builder not previewing building costs when dragging
- fixed park info window opened from sidebar menu being slightly different than when opened from clicking on park entrance
- fixed guests not receiving as much nausea on rides as intended
- might fix a bug that caused workers to stop working (blind fix, let me know if it still happens)Update 61
Guests learned how to walk across the terrain this week in case they’re suddenly not on a path anymore, either because you dropped them somewhere or deleted the path they were standing on. They’re pretty confused and just randomly walk around until they eventually get back onto a path, but that’s a lot better than getting stuck and not moving at all as they did before. That means I got to throw guests off paths onto various structures to test what happens - for science! And fun.
(This is what the “parks” I build look like 99% of the time - just test cases for certain conditions.)
Making them able to walk across the terrain was one of these tasks I’ve been procrastinating since forever, and in the end it was neither hard nor a lot of work to do. But I also made use of code originally written for other parts of the game that did not exist a couple months back…sometimes it can be a good idea to let a tricky programming task wait and it might become easier to solve due to other code changes, or you learn something new that helps or suddenly have an idea how to tackle it differently.
Sandbox Pre-Alpha
It looks like we’ll be releasing the pre-alpha later this week! It’ll be available to everyone who backed our Kickstarter or bought the game from our website. We’ll post here, on our subreddit and Twitter once it’s been uploaded. If you’ve been following this devlog you already know this, but here’s what to expect from this release anyways:
This will be an early WIP release and not quite representative of the final game, so you’ll surely run across some bugs. We’ll be putting out updates fairly frequently, and some will contain major changes (new features, systems, overhauls, etc). That said, the game is playable, though there is no goal or challenge yet. Money has no impact at the moment, but the guests act more or less as we want them to. Right now the game is about building cool stuff and trying to keep people happy and ratings high. Money will become an important factor soon, as we’re working on the resource system and staff system that are major factors of it. These updates will be free, in case some were wondering. With that out of the way, we’re excited to see what everyone makes with it!
Parkitect Nexus
Parkitect Nexus is a fan-made sharing site made by one of our awesome backers, Luuk Holleman. It’s a great place to share coaster blueprints and park saves, and Luuk’s even pulling data out of the saves to display on the site! Check it out, and be sure to share some creations once you get your hands on the game. There’s already a bunch of really cool stuff on there! -
Roomie Offline
Sounds good. I've bought the game myself now but probably won't be able to download the pre alpha for another couple of weeks when I get home.
Looking forwards to messing around with this and hopefully contributing a bit with bug reports.
-
Roomie Offline
Some of those coasters sure are pretty. Looking forwards to trying out a recreation or two though.
Tags
- No Tags