Inspect
Inspect는 서버의 상태를 확인하는 창이며, 탭이 네 개 있습니다. F4 키나 View > Inspect로 열고 닫을 수 있습니다.

| 탭 | 내용 | 필요한 능력 |
|---|---|---|
| Server | 현재 서버 수치와 인스턴스 집계 | Server |
| History | 서버에 쌓인 지난 수치의 그래프 | Server |
| Watches | 서버 인스턴스의 속성 감시와 변경 기록 | Server + ServerValues |
| Remotes | Remote·Bindable 호출 확인, 값 보내기와 호출 | Execute (서버 쪽 대상은 Server + ServerValues도 필요) |
Server 능력이 없으면 Inspect 창이 나타나지 않고, 능력이 부족한 탭도 나타나지 않습니다. 능력은 권한과 레벨에서 설명합니다.
창이 닫혀 있거나 탭이 가려져 있는 동안에는 그 탭이 서버에 요청을 보내지 않습니다.
Server 탭
섹션 제목: “Server 탭”서버 수치
섹션 제목: “서버 수치”창이 열려 있으면 2초마다 서버 수치를 받아 갱신합니다. 수치는 세 줄로 나뉩니다.
| 줄 | 항목 |
|---|---|
| 첫째 | Instances, Moving parts, Primitives, Contacts, Players |
| 둘째 | Heartbeat, Physics step, Send, Receive, Uptime |
| 셋째 | Memory total(아래에 scripts, instances, physics), Place version |
그 아래 줄에는 JobId와 Streaming: on/off(StreamingEnabled 여부)가 표시됩니다. 수치를 받지 못하면 같은 줄에 Server stats unavailable: …가 빨갛게 표시됩니다.
수치 아래의 그래프 세 개는 최근 값의 흐름을 보여 줍니다. Heartbeat(ms), Memory(MB), Instances를 표시하며, 그래프 위에 가장 최근 값이 나옵니다. 표본이 어느 정도 쌓이기 전에는 선이 그려지지 않습니다.
인스턴스 집계 (Count classes)
섹션 제목: “인스턴스 집계 (Count classes)”서버에 어떤 클래스의 인스턴스가 몇 개 있는지 집계합니다. 누수나 갑작스러운 증가를 찾을 때 유용합니다.
- Count classes를 누릅니다. 집계하는 동안에는
Counting...으로 표시됩니다. - 아래 목록에
ClassName,Count,Change열이 표시됩니다. 개수가 많은 클래스부터 상위 200개까지 표시되며, 그 경우(top 200 shown)이 붙습니다.
집계 결과는 이전 결과와 비교할 수 있습니다.
- Snapshot: 현재 결과를 비교 기준으로 저장합니다. 오른쪽에
Snapshot: 47,224 instances (game)처럼 표시됩니다. - 기준을 저장한 뒤 Count classes를 다시 누르면
Change열에 클래스별 증감(+N/-N)이 표시됩니다. 늘어난 쪽은 호박색, 줄어든 쪽은 초록색입니다. 기준과 범위가 같을 때만 비교합니다. - Clear snapshot: 기준을 지웁니다. 기준이 없으면
No snapshot이 표시됩니다. - Scope: game / Scope: selection: 집계 범위를 정합니다.
selection이면 서버 Explorer에서 선택한 노드 하나와 그 자손만 집계합니다. 노드를 하나만 선택하지 않았으면Scope: whole game (select one server node)라고 알려 주고 전체를 집계합니다. - Sort: count / Sort: change: 목록을 개수순으로 볼지 증감순으로 볼지 정합니다.
서버는 전체 검색이 너무 잦지 않도록 제한합니다. 연달아 누르면 a full search ran a moment ago; try again in 8 s 같은 안내가 빨갛게 표시됩니다.
History 탭
섹션 제목: “History 탭”
서버는 시작할 때부터 1초마다 수치를 표본으로 쌓습니다. 게임 설정에서 History = false로 끌 수 있으며, 이 경우 탭에 the history recorder is off in this game이 표시됩니다. 오래된 기록은 점점 큰 버킷으로 합쳐지며 최대 72시간 전까지 남습니다. 이 탭은 그 기록을 선 그래프로 보여 줍니다.
- 구간:
15 min,1 h,6 h,24 h,72 h탭으로 볼 기간을 선택합니다. - 지표:
Heartbeat,Physics,Instances,Moving,Memory,Script mem,Send,Receive,Players,Errors/s중에서 선택하면 그래프가 바뀝니다(두 줄로 배치됩니다). - 그래프: 진한 선이 버킷의 평균(Avg), 옅은 선이 최대(Max)입니다. 순간적으로 튄 값은 Max에 남습니다. 값이 없는 버킷에서는 선이 끊깁니다.
- 그래프 위에 마우스를 올리면 해당 버킷의 값이 아래 줄에 표시됩니다.
- 위쪽 안내 줄에는 기록이 시작된 시각, 버킷 크기(
bucket), 버킷 수가 표시됩니다. 서버가 시작된 지 얼마 되지 않았으면 구간보다 짧게 표시됩니다. - 탭이 보이는 동안 10초마다 자동으로 갱신하며, Refresh로 바로 갱신할 수도 있습니다.
Watches 탭
섹션 제목: “Watches 탭”
서버 인스턴스의 속성이나 특성을 감시하다가 값이 바뀔 때마다 기록합니다. 서버가 0.25초마다 값을 확인하므로, 값이 순간적으로 바뀌었다 돌아오면 기록되지 않을 수 있습니다.
감시할 속성 추가
섹션 제목: “감시할 속성 추가”- 서버 Explorer에서 인스턴스를 우클릭해 **Watch property…**를 선택합니다. Watches 탭이 열리고 속성 이름 상자에 커서가 놓입니다. 서버 Explorer에서 노드를 하나 선택하면
Target:줄이 그 노드로 바뀝니다. - 속성 이름을 입력합니다. 특성은
Attribute:<이름>형식으로 씁니다. 예:Health,Attribute:Cooldown. - Enter를 누르거나 Watch property를 누릅니다.
창마다 최대 20개까지 감시할 수 있습니다(Watched properties (3/20)). 이미 감시 중인 속성이면 Already watching that.이라고 알려 줍니다. 이름이나 권한에 문제가 있으면 서버가 보낸 이유가 상태 줄에 빨갛게 표시됩니다. 목록이 비어 있으면 No watches. Server Explorer: right-click > Watch property…라는 안내가 표시됩니다.
목록과 변경 기록
섹션 제목: “목록과 변경 기록”- 위쪽 목록:
Instance,Property,Current value열이 있습니다. 줄 오른쪽의 Remove를 누르면 감시를 멈추고 줄을 지웁니다. 대상 인스턴스가 사라지면 그 줄에 종료 표시가 남습니다. - Changes: 값이 바뀐 기록입니다.
Time (UTC),Instance,Property,Value열이 있고 새 기록은 맨 아래에 추가됩니다. 감시를 시작할 때의 값도 첫 기록으로 남습니다. 상자에 입력해 인스턴스, 속성, 값으로 필터링할 수 있고, Clear를 누르면 화면의 기록을 비웁니다. - 기록 줄을 누르면 아래 칸에
[시각 UTC] 경로 . 속성 = 값형식으로 전체 내용이 표시됩니다.
Remotes 탭
섹션 제목: “Remotes 탭”
RemoteEvent, RemoteFunction, BindableEvent, BindableFunction(과 UnreliableRemoteEvent)을 서버와 클라이언트 양쪽에서 디버깅할 수 있습니다.
대상 선택
섹션 제목: “대상 선택”Explorer에서 Remote나 Bindable을 우클릭해 Debug remote를 선택합니다. 클라이언트 Explorer에서 선택하면 클라이언트 쪽, 서버 Explorer에서 선택하면 서버 쪽으로 열립니다. Execute가 없으면 항목에 needs Execute가 표시되고 선택할 수 없습니다. 대상이 없을 때는 Right-click a remote or bindable in the Explorer (client or server) > Debug remote.라는 안내가 표시됩니다. Devplorer 자체의 Remote는 대상으로 쓸 수 없습니다.
호출 확인 (Start watching)
섹션 제목: “호출 확인 (Start watching)”Start watching을 누르면 그때부터 도착하는 호출을 목록에 기록합니다. 누르기 전의 호출은 기록되지 않습니다. Stop watching으로 멈출 수 있습니다. 목록의 열은 Time (UTC), Player, Arguments입니다.
| 대상 | 확인할 수 있는 호출 |
|---|---|
| 서버의 RemoteEvent | 클라이언트가 서버로 보낸 호출(OnServerEvent) |
| 서버의 BindableEvent | 서버 안에서 Fire된 호출 (Player 열은 (server)) |
| 클라이언트의 RemoteEvent | 서버가 이 클라이언트로 보낸 호출(OnClientEvent) |
| 클라이언트의 BindableEvent | 이 클라이언트 안에서 Fire된 호출 |
| RemoteFunction, BindableFunction | 콜백이 하나뿐이라 끼어들 수 없어 확인할 수 없습니다(보내기만 가능) |
필터 상자에 입력해 플레이어나 인자로 필터링할 수 있고, Clear를 누르면 목록이 비워집니다. 1초에 너무 많은 호출이 오면 일부는 개수만 세고 표시 줄로 알려 줍니다.
보내기와 호출
섹션 제목: “보내기와 호출”아래 패널에 인자를 입력하고 단추를 누릅니다.
- 인자: 쉼표로 구분해 입력합니다. 예:
1, "text", true, Vector3.new(1, 2, 3), {key = "v", 5}. 숫자, 문자열, 불리언, 테이블과Vector3.new,Color3.fromRGB,CFrame.new,UDim2.new같은 허용된 생성자만 쓸 수 있으며, 코드는 실행되지 않습니다. 비워 두면 인자 없이 보냅니다. - Target (UserId): 서버 쪽 RemoteEvent/RemoteFunction에서만 씁니다.
all이면 모든 클라이언트, UserId를 입력하면 해당 플레이어 한 명에게 보냅니다. Me를 누르면 내 UserId가 입력됩니다. 옆에 해당 플레이어 이름이 표시됩니다. - 실행 단추의 글자는 대상에 따라 다릅니다.
| 대상 | 단추 |
|---|---|
| 클라이언트의 RemoteEvent | FireServer |
| 클라이언트의 RemoteFunction | InvokeServer |
| 서버의 RemoteEvent | Fire to client(s) |
| 서버의 RemoteFunction | InvokeClient (UserId 한 명이 꼭 필요합니다) |
| BindableEvent | Fire event |
| BindableFunction | Invoke function |
- 호출(Invoke)은 응답을 최대 5초까지 기다리며, 늦게 도착한 응답은 버립니다. 결과는 단추 아래에 표시됩니다.
- 서버의 RemoteEvent에 Target을
all로 두고 실행하면 Fire to ALL clients? 확인 창이 한 번 나타납니다. 모든 플레이어의 실제 핸들러가 실행된다는 경고입니다. 확인 단추 Fire를 눌러야 전송됩니다.