Skip to content

Isaac Custom Board Generation Bug? #420

Description

@legovader09

Hi, would like to report a potential custom board generation bug, perhaps I'm not using the feature correctly but here goes:

When creating a json for the isaac board like so:

Hotel Architect.json
[
  [
    {
      "name": "Build a bar"
    },
    {
      "name": "Build a casino"
    },
    {
      "name": "Build a spa and sauna"
    },
    {
      "name": "Build a conference room"
    },
    {
      "name": "Place 10 decorative items"
    },
    {
      "name": "Guest checks out unhappy"
    },
    {
      "name": "Hire 20 staff members"
    },
    {
      "name": "Kick out the critic"
    },
    {
      "name": "Serve 15 drinks at the bar"
    },
    {
      "name": "Serve 15 meals at the restaurant"
    },
    {
      "name": "Place and keep radioactive waste for 24 hours"
    },
    {
      "name": "Place and keep abandoned cars for 24 hours"
    },
    {
      "name": "Hire and keep a stinky staff member for 3 consecutive days"
    }
  ],
  [
    {
      "name": "Create a themed bedroom"
    },
    {
      "name": "Have someone freeze / collapse / quit"
    },
    {
      "name": "Have someone vomit"
    },
    {
      "name": "Hire 40 staff members"
    },
    {
      "name": "Purchase an object worth at least $50,000"
    },
    {
      "name": "Unlock and place a large dumpster"
    },
    {
      "name": "Have a total of 10 vomits"
    },
    {
      "name": "Reach a debt ratio of 85%"
    },
    {
      "name": "Reach 50 check-ins"
    },
    {
      "name": "Have 5 guests leave early"
    },
    {
      "name": "Build 10 bedrooms"
    },
    {
      "name": "Reach a net worth change of +$10,000"
    },
    {
      "name": "When having more than 10 guest rooms, have a Rooms / Cleaner ratio below 1.0"
    },
    {
      "name": "Have a ghost in your hotel"
    }
  ],
  [
    {
      "name": "Reach the top floor"
    },
    {
      "name": "Build a room that occupies an entire width of the hotel"
    },
    {
      "name": "Have a queue of at least 5 guests at any station"
    },
    {
      "name": "Purchase an object worth at least $100,000"
    },
    {
      "name": "Cause 3 areas of the hotel to be overworked simultaneously"
    },
    {
      "name": "Reach a 4-star rating"
    },
    {
      "name": "Reach $1,000,000 asset value"
    },
    {
      "name": "Reach a guests review score of 90% with at least 3 guest types"
    },
    {
      "name": "Build 15 bedrooms"
    },
    {
      "name": "Reach a net worth change of +$20,000"
    },
    {
      "name": "Have a Brat or Upper Crust use room service"
    },
    {
      "name": "Unlock 30 upgrades"
    },
    {
      "name": "Have a staff member reach max level"
    }
  ],
  [
    {
      "name": "Reach a 5-star rating"
    },
    {
      "name": "Build 20 bedrooms"
    },
    {
      "name": "Reach a net worth change of +$30,000"
    },
    {
      "name": "Have at least 5 of each staff type"
    }
  ]
]

I seem to get duplicates on the board (marked in the same colours)

Image

If I add "types" to each goal, the board fails to generate:

Hotel Architect.json + Types
[
  [
    {
      "name": "Build a bar",
      "types": [
        "Zones"
      ]
    },
    {
      "name": "Build a casino",
      "types": [
        "Zones"
      ]
    },
    {
      "name": "Build a spa and sauna",
      "types": [
        "Zones"
      ]
    },
    {
      "name": "Build a conference room",
      "types": [
        "Zones"
      ]
    },
    {
      "name": "Place 10 decorative items",
      "types": [
        "Objects"
      ]
    },
    {
      "name": "Guest checks out unhappy",
      "types": [
        "Guests"
      ]
    },
    {
      "name": "Hire 20 staff members",
      "types": [
        "Staff"
      ]
    },
    {
      "name": "Kick out the critic",
      "types": [
        "Guests"
      ]
    },
    {
      "name": "Serve 15 drinks at the bar",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "Serve 15 meals at the restaurant",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "Place and keep radioactive waste for 24 hours",
      "types": [
        "Building"
      ]
    },
    {
      "name": "Place and keep abandoned cars for 24 hours",
      "types": [
        "Building"
      ]
    },
    {
      "name": "Hire and keep a stinky staff member for 3 consecutive days",
      "types": [
        "Staff"
      ]
    }
  ],
  [
    {
      "name": "Create a themed bedroom",
      "types": [
        "Building"
      ]
    },
    {
      "name": "Have someone freeze / collapse / quit",
      "types": [
        "Guests"
      ]
    },
    {
      "name": "Have someone vomit",
      "types": [
        "Guests"
      ]
    },
    {
      "name": "Hire 40 staff members",
      "types": [
        "Staff"
      ]
    },
    {
      "name": "Purchase an object worth at least $50,000",
      "types": [
        "Objects"
      ]
    },
    {
      "name": "Unlock and place a large dumpster",
      "types": [
        "Objects"
      ]
    },
    {
      "name": "Have a total of 10 vomits",
      "types": [
        "Guests"
      ]
    },
    {
      "name": "Reach a debt ratio of 85%",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "Reach 50 check-ins",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "Have 5 guests leave early",
      "types": [
        "Guests"
      ]
    },
    {
      "name": "Build 10 bedrooms",
      "types": [
        "Building"
      ]
    },
    {
      "name": "Reach a net worth change of +$10,000",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "When having more than 10 guest rooms, have a Rooms / Cleaner ratio below 1.0",
      "types": [
        "Staff"
      ]
    },
    {
      "name": "Have a ghost in your hotel",
      "types": [
        "Guests"
      ]
    }
  ],
  [
    {
      "name": "Reach the top floor",
      "types": [
        "Building"
      ]
    },
    {
      "name": "Reach a guests review score of 90% with at least 3 guest types",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "Build a room that occupies an entire width of the hotel",
      "types": [
        "Building"
      ]
    },
    {
      "name": "Have a queue of at least 5 guests at any station",
      "types": [
        "Guests"
      ]
    },
    {
      "name": "Purchase an object worth at least $100,000",
      "types": [
        "Objects"
      ]
    },
    {
      "name": "Cause 3 areas of the hotel to be overworked simultaneously",
      "types": [
        "Staff"
      ]
    },
    {
      "name": "Reach a 4-star rating",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "Reach $1,000,000 asset value",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "Build 15 bedrooms",
      "types": [
        "Building"
      ]
    },
    {
      "name": "Reach a net worth change of +$20,000",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "Have a Brat or Upper Crust use room service",
      "types": [
        "Guests"
      ]
    },
    {
      "name": "Unlock 30 upgrades",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "Have a staff member reach max level",
      "types": [
        "Staff"
      ]
    }
  ],
  [
    {
      "name": "Reach a 5-star rating",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "Build 20 bedrooms",
      "types": [
        "Building"
      ]
    },
    {
      "name": "Reach a net worth change of +$30,000",
      "types": [
        "Hotel"
      ]
    },
    {
      "name": "Have at least 5 of each staff type",
      "types": [
        "Staff"
      ]
    }
  ]
]
Image

Not sure if my JSON is wrong, if Isaac even supports types (the isaac_generator.js code seems to imply so), or if there is any other requirements I'm failing to meet to ensure it doesn't show duplicate goals

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions