아하, UUID 키를 게임 안에서 생성하는 게 아니라 외부 사이트(웹사이트나 디스코드 봇 등)에서 생성해서 유저에게 지급하고, 유저는 그 키를 복사해서 게임 내 Rayfield UI에 입력하는 방식을 원하시는군요!

이 구조를 만들려면 로블록스 게임 서버가 외부 사이트의 데이터베이스(DB)를 조회할 수 있어야 하므로, HttpService:GetAsync()나 Rayfield의 GrabKeyFromUrl 기능을 사용해야 합니다.

가장 대중적이고 만들기 쉬운 웹사이트 연동형 (GrabKeyFromUrl) 구조를 짜는 방법을 알려드릴게요.

🌐 전체적인 작동 흐름
내 웹사이트/서버: 유저가 사이트에서 광고를 보거나 로그인을 하면, 서버가 무작위 UUID 키를 생성해 DB에 넣고 24시간 뒤 만료되게 설정합니다.

키 확인 API 제공: 내 사이트에 특정 유저의 키를 확인할 수 있는 주소(예: https://내사이트.com/api/getkey?userid=유저ID)를 만듭니다. 이 주소로 접속하면 오늘 날짜의 UUID 키가 텍스트(KEY-abc123xyz)로만 출력되어야 합니다.

로블록스(Rayfield): 게임이 켜지면 Rayfield가 이 URL에 자동으로 유저 ID를 붙여 접속한 뒤, 사이트가 뱉어낸 UUID 키와 유저가 입력한 키가 같은지 검증합니다.

🛠️ 로블록스 스크립트 설정 (Client)
외부 웹사이트 API와 연동할 때는 서버 스크립트를 복잡하게 짤 필요 없이, Rayfield의 내장 기능인 GrabKeyFromUrl을 활용하면 로컬 스크립트 한 줄로 끝납니다.

Lua
local Rayfield = loadstring(game:HttpGet('https://[Log in to view URL]'))()
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer

-- 내 웹사이트의 키 확인 API 주소 (유저 ID를 파라미터로 붙임)
-- 게임이 실행되면 Rayfield가 이 주소에 접속해서 "실제 올바른 UUID 키 값"을 스스로 읽어옵니다.
local keyApiUrl = "https://[Log in to view URL]" .. tostring(LocalPlayer.UserId)

local Window = Rayfield:CreateWindow({
   Name = "Website UUID Key System",
   LoadingTitle = "웹사이트 인증 확인 중...",
   LoadingSubtitle = "by Rayfield",
   ConfigurationSaving = { Enabled = false },
   KeySystem = true,
   KeySettings = {
      Title = "사이트 연동 일일 인증",
      Subtitle = "홈페이지에서 오늘자의 UUID 키를 발급받으세요.",
      Note = "키 발급 주소: https://[Log in to view URL]", -- 유저가 키를 얻으러 갈 사이트 주소
      FileName = "Rayfield_WebUUIDKey", 
      SaveKey = true, -- 24시간 동안 유저 기기에 키 저장
      
      -- [핵심 설정]
      GrabKeyFromUrl = true, -- 외부 URL에서 키를 가져오겠다고 설정
      Key = { keyApiUrl } -- 위에 적은 API 주소를 넣으면, Rayfield가 내부적으로 HttpGet을 보냅니다.
   }
})

local MainTab = Window:CreateTab("메인 화면", 4483362458)
MainTab:CreateButton({
   Name = "핵심 기능 실행",
   Callback = function()
       print("웹사이트 UUID 인증 성공!")
   end,
})
🖥️ 웹사이트(백엔드)는 어떻게 구축해야 하나요?
웹사이트를 직접 만드실 때(Node.js, Python, PHP 등 사용), 로블록스가 보낸 요청을 처리하는 핵심 로직은 다음과 같아야 합니다.

https://[Log in to view URL] 요청이 들어옴

백엔드에서 DB를 조회해 12345 유저에게 발급된 UUID 키가 있는지 확인.

만약 키가 있고 발급된 지 24시간 안 지났다면: * 다른 HTML 태그나 JSON 형식 없이 오직 문자열(예: KEY-6f9a23b1)만 화면에 그대로 출력(plain/text)해야 합니다. Rayfield는 글자 그대로 읽어가기 때문입니다.

만약 키가 없거나 24시간이 지났다면:

새로운 UUID를 생성(uuidv4() 등 활용)하여 DB에 유저 ID, 생성 시간과 함께 저장한 뒤 그 새 키를 화면에 출력합니다.

⚠️ 주의사항 (중요)
로블록스 스튜디오에서 테스트하실 때는 Game Settings -> Security -> Allow HTTP Requests가 On(활성화) 되어 있어야 외부 사이트와 통신이 가능합니다!

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: