NewsLab
Aug 28 14:13 UTC

Show HN: Build your own theme park (magicpatterns.com)

51 points|by thealexanderlee||24 comments|Read full story on magicpatterns.com
I built an agent that helps you build Rollercoaster Tycoon-influenced theme parks. You can prompt something like “Build me a cool theme park” and it’ll build a cohesive theme park with multiple worlds and connected with paths and rides.

The weird part is that I built it using the same ideas we use to make AI-generated websites follow a company’s design system.

I work as an engineer at Magic Patterns, focused on building our Design System Agent, aimed to use your existing brand, components, and conventions instead of producing something that looks like generic AI-generated UI.

By default, models tend to converge on similar-looking designs. This is part of that “vibe coded slop” feeling: the same typography treatments, shadows, cards, icons, animations, etc… My job is to figure out the right context and guardrails so that when you prompt “Build me a dashboard,” the result actually looks like your existing product.

At some point I realized those same ideas could be applied to RCT.

While in web, you might have rules about which typography, colors, spacing, and components should be used together.

In a theme park, you need rules like: rollercoasters need complete tracks, rides need entrances connected to paths, paths need to connect different areas of the park, and a pirate-themed world should actually use pirate-themed scenery.

It was interesting seeing how closely the problem of building a coherent theme park resembled the problem of building a coherent product UI. Similarly with web design, simply giving the model the right components wasn't enough.

I ended up building an eval loop where Magic Patterns would generate a park, another agent would grade it against a rubric, and then the agent would update its rules and skill files before trying again.

The rubric checked things like whether rollercoasters formed valid tracks with at least one drop, whether rides were accessible by paths, whether each world used the appropriate themed scenery, and whether the park worked as a whole.

After a lot of iterations, you can now prompt something as simple as “Build me a cool theme park.” and you should get back a fully functioning park with guests, rides, paths, rollercoasters, and themed worlds.

Best yet, you can also follow the guests, listen to their thoughts, and watch them ride the rides in RCT fashion.

Happy to answer any questions, but would love to see the parks you all create!

Comments (24)

23 shown
  1. 1. addandsubtract||context
    I asked for a theme park in space with aliens, but it just loaded a generic(?) park, with 5 different themed "islands", but none of them are space themed. Do I need an account to actually create a prompt?
  2. 2. elicash||context
    Same happened to me (with my very different prompt).
  3. 3. thealexanderlee||context
    Hi! Thanks for trying it! Sometimes the agent can get tripped up if it doesn't have a component that matches the theme. For example, I can tell you I don't have a rocketship asset or alien asset, so it might default to something to generic in replacement. And also we have lots of pirate assets, so then it might lean toward a pirate-theme if it sees the word "island."

    That said - I just noticed a bug making them overly generic. Fixing right now!

  4. 4. mmargenot||context
    not a lot of horror assets either unfortunately. i wanted ghosts and ghouls and zombie tiki with my pirates but got industrial wasteland and candyland.
  5. 5. thealexanderlee||context
    You should be able to prompt to create your own horror assets, but it might take some time for them to build though!
  6. 6. raajg||context
    Great to see the interest in RCT . also https://labs.ramp.com/rct
  7. 7. gverrilla||context
    “Build me a cool theme park” is not a very exciting prompt.
  8. 8. thealexanderlee||context
    that's fair. Thanks for your feedback!

    Perhaps more exciting: build a chocolate factory slide and river with a hot fudge river... haha

  9. 9. mlfreeman||context
    No special Bender easter egg if you request a theme park with blackjack and hookers?

    https://www.youtube.com/watch?v=ubPWaDWcOLU

  10. 10. readdit||context
    Actually pretty cool. One idea would be to take a theme park map, like what they give you at the entrance. And recreate the park using that image.
  11. 11. thealexanderlee||context
    oooh! Fun idea. I think this might actually work... if you upload an image + prompt it to make a theme park referencing the map.
  12. 12. jcgr||context
    Love Magic Patterns, happy user here
  13. 13. thealexanderlee||context
    that's kind of you to write, thanks for reading. Do you like RollerCoaster Tycoon too?! Anything we can make better?
  14. 14. nurymka||context
  15. 15. thealexanderlee||context
    oh wow, I'm surprised it edited the assets to look like that!
  16. 16. empressplay||context
    I specified mountainous terrain but it can only seem to create a flat park, which is a little boring and more like Theme Park World than Roller Coaster Tycoon.

    But it's still pretty cool nevertheless.

  17. 17. fwip||context
    I'm trying not to break any rules, but. I went in expecting the joy and whimsy of RCT, and was very disappointed to see something that is visually soulless and barren.

    Which is to say, I don't think the comparison is doing you any favors.

  18. 18. greatgib||context
    I flagged your post and hope your project will go to oblivion, not that because it would not be nice but because you are using fucking serious dark patterns!

    Like I arrive on the homepage, to give it a try, it is like "go, just type the description on the park and we will generate it", so I spend time crafting my requests, and when you validate, you arrive on a fucking login-registration-wall.

    I'm not against needing users to be registered, but that it something that you should tell upfront before users waste time trying to use your tool.

    And the dark pattern doesn't stop there, behind the registration-wall, you have another deceptive practice, a dynamic "loading status" like "connecting the dots", "mixing the palette", ... that is running to give the impression that the generation is running when it is not at all until your register.

  19. 19. thealexanderlee||context
    Hey, thanks so much for the feedback although obviously hurts a bit for wanting something I just created for fun to go into oblivion.

    I totally understand your feedback though. The issue is that AI costs a lot of money under the hood, and so we needed some way to know if a user was hitting a limit. Will think about how to make that more clear upfront.

    Thanks again for your feedback.

  20. 20. mcphage||context
    So you took a game about building a theme park, and... took out the ability to build the theme park?
  21. 21. memile||context
    It’s a clever idea to generate the interface from a prompt while staying within a design system. Just a quick question: to what extent does the design system constrain the generated result?
  22. 22. thealexanderlee||context
    good question! I'd say similar in web where ideally the agent doesn't stray too far from creating new components. I noticed that happening here as well unless you directly prompt for it.

    But the design system follows a set of rules and skill files and applies them when needed!

  23. 23. eecks||context
    "My job is to figure out the right context and guardrails so that when you prompt “Build me a dashboard,” the result actually looks like your existing product."

    What is the challenge here? Yes if you don't guide an LLM it will come up with it's own design.. but you can just tell it to use your brand and assets and it works pretty well