CreatePlace doesn't work when inside of a CreatePlace Place

Repro:

Run CreatePlace on a place with Create Place API enabled. Teleport into that place then try running the same code. You’ll be met with this error:

I have the proper setting enabled on the place I’m duplicating. It works fine as long as I’m in the place, but when I’m calling the CreatePlace call from a created place it gives the above error.

image

Interestingly enough, the cloned place has this setting disabled. Perhaps that’s the source of this bug?

2 Likes

We don’t copy the “Allow this place to be…” fields to the newly created place so this is working as originally built. What is your use case for having the newly created place create other places? Seems very meta!

1 Like

I’m actually cloning the original place, but from within the new place. I think the API is accidentally checking that “Allow coping” is enabled on it’s current place rather than the place ID I give it.

I clone the original place because it’s the template that loads my player’s UGC-type content (rooms, servers, etc…)

3 Likes

Can you provide reproduction steps? I tried the following and was unable to reproduce:

  1. Create a universe
  2. Enable “Allow this place to be copied…” on the root place
  3. Join the root place
  4. Call AssetService:CreatePlaceAsync() on the root place
  5. Teleport to the newly created place
  6. Call CreatePlaceAsync on the root place
  7. Observe that it works
  8. Call CreatePlaceAsync on the newly created place
  9. Observe that it fails because the newly created place doesn’t have the “Allow this place to be copied…” checkbox enabled
1 Like