Hey guys,
After meeting the lovely James Stant last week, I'm pleased to be able to bring you a new Meet the Team Q&A!
Principle Programmer, Owen Mc Carthy is one of the most knowledgeable people when it comes to the simulation and management in Planet Coaster and brings a really interesting and fresh insight into the development of the game.
If you have any questions for Owen he will be popping on the thread this afternoon for a short while and tomorrow to answer questions. At which point we will move the thread into the main forums for everyone to enjoy!
What is your earliest memory of visiting a theme park?
When I was a child we went to Alton Towers. Nemesis had just opened and I remember being just tall enough to ride it and it was fantastic. It was my first “dangly legs” coaster and I still have a picture at home somewhere of me riding it!
What is the craziest memory for you about theme parks?
It would have to a tie between SheiKra in Busch Gardens, Tampa Bay Florida and Duelling Dragons in Universal Studios Island of Adventure. A couple of my friends and I went to Orlando Florida during our college years. We took a day trip out to Busch Gardens and it was at the quieter time of the summer and there were barely any queues for the rides and we were able to get front row seats in every coaster we went on. I distinctly remember the feeling and vision of when the duelling dragon trains head straight towards each other travelling at about 100km/h each ( with a relative velocity of -200km/h to each other ) and then curl up at the last moment avoiding collision. That was a great rush and you really have to be in the front row to get that special moment on Duelling Dragons.
Then there was SheiKra, which at the time I went was still the tallest, fastest, longest Dive coaster in the world. I loved going up the chain lift to the top and getting the magnificent views and being able to look down and see everybody in the entire park. Then it gets to the dive where it holds you horizontal for several seconds before the coaster drops. I loved it so much that as soon as it finished I went and queued up for it again. I think I rode it 3 or 4 times in about 15 minutes and was in the front row every time!
What is your favourite type of ride and why?
Rollercoasters would be my favourite but I also have a special place in my heart for centrifugal force rides like “Round Up”. You are put in a spinning cage and the centrifugal force pins you to the wall. You have no restraints, harness or straps holding you in. Just the awesome power of physics!
What exactly are you working on with Planet Coaster?
Since the beginning of the project I have been working on the crowd simulation for the guests. After production on Screamride finished we had a bit of time to do some research for Planet Coaster. I really wanted to take the crowd in a park simulation game to new level. For me there was no point in us making Planet Coaster if it was just going to be a rehash of what had come before. So, having a background in programming physics simulations, I loved the idea of using fluid dynamics to simulate crowd motion as I think it gives a very natural look to the guests. My gut told me it was possible and that I could do it but getting them from point A to B is only one part you also have to make them look, animate and sound believable. Luckily at Frontier we have fantastic animation, audio and rendering teams that could pull it off. It’s been a huge collaborative effort between us all.
As a key member of the team working on Simulation, which specific area are you most proud of and why?
I am immensely proud of the crowd simulation. The first principle is that the guests have to physically get to the rides, attractions and shops to appreciate them and hence spend their cash. No Guests, No Game.... The intelligence of the guests comes from the combination of the 'guest brain' figuring out what their likes, dislikes and needs are, and how they then navigate the park to discover and get to those. With such intelligent guests as ours, players naturally build parks that respect that intelligence. If you build a bad park layout you will quickly see your park overcome with congestion, full of unhappy guests and losing money. It’s not just a case of trying to fit as many attractions into as small a space as you can anymore. When I look at the parks our designers and the community are building, the ones that don’t have congestion look like beautiful real life parks. Real park engineers have to think about congestions and how their guests will feel and move around in the park and now the Planet Coaster players have to as well when they build their parks. I hope the player gets a great satisfaction seeing a smooth flow in their park.
We also have a very neat system in place which I’m quite proud of where we know the shortest path distance from every single guest position to every single destination instantly, with no CPU cost whatsoever. This opens up many possibilities for the guest brain. We are able to evaluate hundreds of destinations for EVERY single guest in the park when making decisions. We also know what rides are connected to what rides, which ones are accessible from the park entrance etc. It’s even used to build up your Park Rating. I remember when one of our programmers David Getley was starting to implement the park rating systems and he came over and asked me “Is it possible to know which rides are connected to other rides and the park entrances” He almost cringed asking me the question because usually that’s an expensive thing to do. I told him that the answer was “Yes, and it’s free so you can literally do it as many times as you want without effecting the framerate in anyway”. His cringe turned to a smile and I could see loads of lightbulbs turning on in his head with the possibilities that it opened up. That was a great feeling.
After the prototype phase where it started out with a few hundred yellow circles moving on a flat map, there were so many challenges to overcome. I had to prove that it was a viable technique for the numbers of guests we were talking and that it could work in a user generated voxel landscape which was being researched at the same time. Also that it we could do in real-time on modern systems. I am sure it made the lead programmer Matt Simper very nervous, as well as the lead designer Andy Fletcher. If it didn’t work we would have had to go back to the drawing board on many parts of the game, design and the schedule. It’s one of those things that you almost feel like you are staking your career on! I say almost because I knew with the people and talent we have here at Frontier and by having every discipline involved and on the same page from day 1 that it was possible! I think it’s probably the best thing I’ve programmed to date and I have no idea yet how I can ever surpass it!
And of course, we know that you are working hard on more sim features for beta, how’s that been progressing?
The crowd simulation has been working all throughout the project, it is fundamental to the simulation game we are making and so we wanted to test it early. Of course we continue to refine and balance and optimise it. The Alpha was really about testing out the creation and sharing features of the game, and Beta is when all the management elements of the game will come together.
To say I’ve been working recently isn’t quite true though. Instead it’s probably more accurate to say that I’ve been playing with crashing test coasters into the guests in the crowd simulation. We’ve just showed that feature at EGX in a glorious video and I think the response of the community has been great. They seem to have loved it as much as the guests in the video did and the guests in the video loved it as much as I did programming it!
What does an average day at work look like for you?
I’ve got a 30 minute walk to work so I usually spend some of that thinking about any coding tasks I’m currently working on. The first thing I do when I get in is update my code and resources and get everything building. While that is happening, I usually go and catch up on any emails, and go through my bug lists to plan my day. Next I’ll usually go and have a talk with the designers/animators/rendering team depending on the feature I am coding up and make sure we are all on the same page and that anything they require or I will require soon is being worked on. Then I usually run the game and watch the guests moving around hypnotically for a few minutes to make sure they are all ok! Then I’ll pop my headphones on and get into the coding zone, fixing bugs or programming new features.
What kind of music do you listen to while you are working?
I’m a big progressive rock fan. My favourite band is Dream Theater so I usually listen to them, but my tastes are quite varied. If I’m working on something that requires me to focus heavily I’ll usually have the Cloud Atlas soundtrack on, or listen to an ambient thunderstorm. If it wasn’t for the Cloud Atlas soundtrack we wouldn’t have overlapping paths. I distinctly remember having a technical breakthrough last November walking from work down to the bonfire in the dark and gazing into the bonfire and fireworks while listening to that soundtrack!
What have you worked on before Planet Coaster, and what did you do on those projects?
Kinectimals (Xbox 360) - Physics and Water Simulation
Kinectimals: Now with bears (Xbox 360) - Physics and Water Simulation
Kinectimals mobile (Android, Ios)
Coaster Crazy (Android, Ios) - Physics
Kinect Disneyland Adventures (Xbox 360) – Physics, Avateering and Motion analysis
Kinect Sports Rivals (Xbox One) – Physics, Animation, Core systems
Tales From Deep Space (Amazon KF, iOS) - Physics and Amazon library integration
ScreamRide (Xbox One, X360) - Ragdoll Physics
Planet Coaster (PC) – Crowd Simulation and Physics
How does working on Planet Coaster compare to working on other games you’ve worked on?
It has been very refreshing. Having the opportunity to do some research at the beginning really allowed us to innovate. Without that none of what you see on Planet Coaster would be the same. I really think we have a much more superior game because of being fully independent and having creative control now. It’s really allowed all our creativity to shine in a way like never before.
What have you learned so far from working on Planet Coaster?
We have a very passionate community who really like plazas.
What makes Planet Coaster such a special game, in your opinion?
I think we’ve really lived up to the “Simulation Evolved” subtitle. This game oozes passion and dedication from Frontier and the community and every screenshot or video I see brings a huge smile to my face.
What is currently your favourite Planet Coaster feature in Alpha 3, and why?
Guests using bins. I love how it turned out. Having the guests throw rubbish into bins while walking makes me smile constantly. After dealing with the constant scale and challenge of the crowd sim for so long, sometimes a small relatively simple feature to implement like this can bring much happiness and take away any stress
Tell the community a fun fact about yourself.
I have a replica of the Sorting Hat from Harry Potter that I wear on milestone days. It makes a very satisfying bobbing motion as I sit there coding and bobbing my head to music.
If you could ask the community one question, what would it be?
What else can we do to bring more life to the crowd?
After meeting the lovely James Stant last week, I'm pleased to be able to bring you a new Meet the Team Q&A!
Principle Programmer, Owen Mc Carthy is one of the most knowledgeable people when it comes to the simulation and management in Planet Coaster and brings a really interesting and fresh insight into the development of the game.
If you have any questions for Owen he will be popping on the thread this afternoon for a short while and tomorrow to answer questions. At which point we will move the thread into the main forums for everyone to enjoy!
What is your earliest memory of visiting a theme park?
When I was a child we went to Alton Towers. Nemesis had just opened and I remember being just tall enough to ride it and it was fantastic. It was my first “dangly legs” coaster and I still have a picture at home somewhere of me riding it!
What is the craziest memory for you about theme parks?
It would have to a tie between SheiKra in Busch Gardens, Tampa Bay Florida and Duelling Dragons in Universal Studios Island of Adventure. A couple of my friends and I went to Orlando Florida during our college years. We took a day trip out to Busch Gardens and it was at the quieter time of the summer and there were barely any queues for the rides and we were able to get front row seats in every coaster we went on. I distinctly remember the feeling and vision of when the duelling dragon trains head straight towards each other travelling at about 100km/h each ( with a relative velocity of -200km/h to each other ) and then curl up at the last moment avoiding collision. That was a great rush and you really have to be in the front row to get that special moment on Duelling Dragons.
Then there was SheiKra, which at the time I went was still the tallest, fastest, longest Dive coaster in the world. I loved going up the chain lift to the top and getting the magnificent views and being able to look down and see everybody in the entire park. Then it gets to the dive where it holds you horizontal for several seconds before the coaster drops. I loved it so much that as soon as it finished I went and queued up for it again. I think I rode it 3 or 4 times in about 15 minutes and was in the front row every time!
What is your favourite type of ride and why?
Rollercoasters would be my favourite but I also have a special place in my heart for centrifugal force rides like “Round Up”. You are put in a spinning cage and the centrifugal force pins you to the wall. You have no restraints, harness or straps holding you in. Just the awesome power of physics!
What exactly are you working on with Planet Coaster?
Since the beginning of the project I have been working on the crowd simulation for the guests. After production on Screamride finished we had a bit of time to do some research for Planet Coaster. I really wanted to take the crowd in a park simulation game to new level. For me there was no point in us making Planet Coaster if it was just going to be a rehash of what had come before. So, having a background in programming physics simulations, I loved the idea of using fluid dynamics to simulate crowd motion as I think it gives a very natural look to the guests. My gut told me it was possible and that I could do it but getting them from point A to B is only one part you also have to make them look, animate and sound believable. Luckily at Frontier we have fantastic animation, audio and rendering teams that could pull it off. It’s been a huge collaborative effort between us all.
As a key member of the team working on Simulation, which specific area are you most proud of and why?
I am immensely proud of the crowd simulation. The first principle is that the guests have to physically get to the rides, attractions and shops to appreciate them and hence spend their cash. No Guests, No Game.... The intelligence of the guests comes from the combination of the 'guest brain' figuring out what their likes, dislikes and needs are, and how they then navigate the park to discover and get to those. With such intelligent guests as ours, players naturally build parks that respect that intelligence. If you build a bad park layout you will quickly see your park overcome with congestion, full of unhappy guests and losing money. It’s not just a case of trying to fit as many attractions into as small a space as you can anymore. When I look at the parks our designers and the community are building, the ones that don’t have congestion look like beautiful real life parks. Real park engineers have to think about congestions and how their guests will feel and move around in the park and now the Planet Coaster players have to as well when they build their parks. I hope the player gets a great satisfaction seeing a smooth flow in their park.
We also have a very neat system in place which I’m quite proud of where we know the shortest path distance from every single guest position to every single destination instantly, with no CPU cost whatsoever. This opens up many possibilities for the guest brain. We are able to evaluate hundreds of destinations for EVERY single guest in the park when making decisions. We also know what rides are connected to what rides, which ones are accessible from the park entrance etc. It’s even used to build up your Park Rating. I remember when one of our programmers David Getley was starting to implement the park rating systems and he came over and asked me “Is it possible to know which rides are connected to other rides and the park entrances” He almost cringed asking me the question because usually that’s an expensive thing to do. I told him that the answer was “Yes, and it’s free so you can literally do it as many times as you want without effecting the framerate in anyway”. His cringe turned to a smile and I could see loads of lightbulbs turning on in his head with the possibilities that it opened up. That was a great feeling.
After the prototype phase where it started out with a few hundred yellow circles moving on a flat map, there were so many challenges to overcome. I had to prove that it was a viable technique for the numbers of guests we were talking and that it could work in a user generated voxel landscape which was being researched at the same time. Also that it we could do in real-time on modern systems. I am sure it made the lead programmer Matt Simper very nervous, as well as the lead designer Andy Fletcher. If it didn’t work we would have had to go back to the drawing board on many parts of the game, design and the schedule. It’s one of those things that you almost feel like you are staking your career on! I say almost because I knew with the people and talent we have here at Frontier and by having every discipline involved and on the same page from day 1 that it was possible! I think it’s probably the best thing I’ve programmed to date and I have no idea yet how I can ever surpass it!
And of course, we know that you are working hard on more sim features for beta, how’s that been progressing?
The crowd simulation has been working all throughout the project, it is fundamental to the simulation game we are making and so we wanted to test it early. Of course we continue to refine and balance and optimise it. The Alpha was really about testing out the creation and sharing features of the game, and Beta is when all the management elements of the game will come together.
To say I’ve been working recently isn’t quite true though. Instead it’s probably more accurate to say that I’ve been playing with crashing test coasters into the guests in the crowd simulation. We’ve just showed that feature at EGX in a glorious video and I think the response of the community has been great. They seem to have loved it as much as the guests in the video did and the guests in the video loved it as much as I did programming it!
What does an average day at work look like for you?
I’ve got a 30 minute walk to work so I usually spend some of that thinking about any coding tasks I’m currently working on. The first thing I do when I get in is update my code and resources and get everything building. While that is happening, I usually go and catch up on any emails, and go through my bug lists to plan my day. Next I’ll usually go and have a talk with the designers/animators/rendering team depending on the feature I am coding up and make sure we are all on the same page and that anything they require or I will require soon is being worked on. Then I usually run the game and watch the guests moving around hypnotically for a few minutes to make sure they are all ok! Then I’ll pop my headphones on and get into the coding zone, fixing bugs or programming new features.
What kind of music do you listen to while you are working?
I’m a big progressive rock fan. My favourite band is Dream Theater so I usually listen to them, but my tastes are quite varied. If I’m working on something that requires me to focus heavily I’ll usually have the Cloud Atlas soundtrack on, or listen to an ambient thunderstorm. If it wasn’t for the Cloud Atlas soundtrack we wouldn’t have overlapping paths. I distinctly remember having a technical breakthrough last November walking from work down to the bonfire in the dark and gazing into the bonfire and fireworks while listening to that soundtrack!
What have you worked on before Planet Coaster, and what did you do on those projects?
Kinectimals (Xbox 360) - Physics and Water Simulation
Kinectimals: Now with bears (Xbox 360) - Physics and Water Simulation
Kinectimals mobile (Android, Ios)
Coaster Crazy (Android, Ios) - Physics
Kinect Disneyland Adventures (Xbox 360) – Physics, Avateering and Motion analysis
Kinect Sports Rivals (Xbox One) – Physics, Animation, Core systems
Tales From Deep Space (Amazon KF, iOS) - Physics and Amazon library integration
ScreamRide (Xbox One, X360) - Ragdoll Physics
Planet Coaster (PC) – Crowd Simulation and Physics
How does working on Planet Coaster compare to working on other games you’ve worked on?
It has been very refreshing. Having the opportunity to do some research at the beginning really allowed us to innovate. Without that none of what you see on Planet Coaster would be the same. I really think we have a much more superior game because of being fully independent and having creative control now. It’s really allowed all our creativity to shine in a way like never before.
What have you learned so far from working on Planet Coaster?
We have a very passionate community who really like plazas.
What makes Planet Coaster such a special game, in your opinion?
I think we’ve really lived up to the “Simulation Evolved” subtitle. This game oozes passion and dedication from Frontier and the community and every screenshot or video I see brings a huge smile to my face.
What is currently your favourite Planet Coaster feature in Alpha 3, and why?
Guests using bins. I love how it turned out. Having the guests throw rubbish into bins while walking makes me smile constantly. After dealing with the constant scale and challenge of the crowd sim for so long, sometimes a small relatively simple feature to implement like this can bring much happiness and take away any stress
Tell the community a fun fact about yourself.
I have a replica of the Sorting Hat from Harry Potter that I wear on milestone days. It makes a very satisfying bobbing motion as I sit there coding and bobbing my head to music.
If you could ask the community one question, what would it be?
What else can we do to bring more life to the crowd?
Last edited: