blake-mealey / mantle

An infrastructure-as-code and deployment tool for Roblox.
https://mantledeploy.vercel.app/
MIT License
93 stars 11 forks source link

add full infra-as-code support for all experience assets #11

Closed blake-mealey closed 2 years ago

blake-mealey commented 3 years ago

(DRAFT)

~Experience icon:~

~Experience thumbnails:~

~Experience developer products:~

~Experience badges:~ added in #59

~Experience game passes:~ added in #45

~Experiences:~

~Places:~

Assets (images, audio, etc):

blake-mealey commented 3 years ago

Reference for creating experiences:

axios({
            url: `https://api.roblox.com/universes/create?groupId=${groupId}`,
            method: "POST",
            headers: {
                Cookie: `.ROBLOSECURITY=${cookie}`,
                "User-Agent": "RobloxStudio/WinInet RobloxApp/0.461.0.416397 (GlobalDist; RobloxDirectDownload)",
                "X-CSRF-TOKEN": xcsrfToken || "",
            },
            data: {
                templatePlaceIdToUse: 95206881
            }
        })

Create from templates webpage: https://www.roblox.com/places/create

Better reference: https://devforum.roblox.com/t/create-universes-externally-documentation-of-universescreate/1392952 And for place creation: https://devforum.roblox.com/t/create-places-externally-documentation-of-ideplacescreatev2/1398462

blake-mealey commented 3 years ago

Game assets should be supported as well, specifically: images, audio, and meshes.

Game assets are created via two steps. First, they are uploaded to Roblox, then they are assigned an alias which can then be used by the rbxgameasset content data type.

Aliases:

~Images:~ added in #66

~Audio:~ added in #67

Meshes (not fully understood):

Configuration API:

templates;
  # or should we split them up by type?
  assets:
    # just a file path, uses file name without extension for alias
    - file/path
    # file paths with glob support
    - file/path/*
    # file path with custom alias, does not support globs
    - name: name
      file: file/path

There are some other features which we could provide APIs for but I don't see any obvious use-cases for them:

blake-mealey commented 3 years ago

Does it make sense to support animations? I am not sure how that work (imported from .rbxmx files maybe?)

blake-mealey commented 2 years ago

Closing in favour of #122 as the rest of the resources have been added