# MPP - Scene Info Viewer Script V1.5.1 - Documentation

Shows your visitors what is going on in your scene: its name, how many people are in, the instance role, the gravity, how long the scene has been running and how long they have been there. They ask by clicking an object, by typing a chat command, or through an MPP - Action Button. The same click can open Sansar's **details window** of the scene (description, links, travel). A second, more technical **debug report** (IDs, script memory, visitor names) and a short **status** are reserved to you and to the avatars you allow, a **Watch** can warn you in private when the script memory of the scene runs high or when the scene is full, and a **Startup Check**, On by default, tells you how the scripts' memory behaved while the scene was starting.

This script is **standalone** - it does not require any other MPP script to function. It works with **MPP - Action Button** if you want a button that asks for the report.

**New in V1.5.1.** The Startup Check: during the first 30 seconds after the scene starts (10 to 60, 0 = Off), the script follows the script memory of the scene and whispers to you and your Whitelist each rise of level and the return to normal, then a summary of the start. As the scene owner you get that summary once per start, even when the start was green and even if you arrive later; if your chat was not ready, the script tries again. It works with the Watch Off. The code is also lighter, with no visible change. Your V1.4.0 settings are all kept.

---

## Quick Start

1. After purchase, the script is in your **Inventory** in Build mode. Add it to an object: an info sign, a desk, a totem at the landing point.
2. Build and visit. Click the object: you receive the simple report in private, and the details window of the scene opens.
3. Type `/sceneinfo` in the Nearby Chat: same report, without the window. Type `/sceneinfodebug`: the debug report, for you only. Type `/SceneStatus`: the health of the scene in a few lines, for you only.
4. About 30 seconds after the scene has started, or a few seconds after you arrive, you receive the summary of the Startup Check in private: whether the script memory stayed normal while everything was initializing.
5. Optional: turn `Watch/Enable` On to be warned in private, for the whole life of the scene, when something needs your attention.

That is all most scenes need. The rest of this guide details every option.

---

## How It Works

| Source | Settings | What the visitor gets |
|---|---|---|
| **Click** | `Activation/Enable Click`, `Click Report Mode (0-2)`, `Open Details On Click` | The simple report (mode 1, default), the debug report (mode 2) or nothing (mode 0), and/or the details window |
| **Chat command** | `Chat/Simple Command`, `Debug Command`, `Status Command` | `/sceneinfo`, `/sceneinfodebug` or `/SceneStatus`, with the details window if the matching switch is On |
| **Script Event** | `Events/Simple Event Name`, `Debug Event Name` | Sent by an MPP - Action Button: the report goes to the avatar who pressed the button |

Every request goes through the same checks: the access control (debug report and status only), the per-avatar cooldown and, for a report posted to everyone, the public cooldown. Then the report is **whispered** to the avatar (default) or **posted to everyone** in the Nearby Chat.

In the Build panel the settings are grouped by category: `Activation/`, `Report/`, `Watch/`, `Access/`, `Chat/`, `Events/` and `Debug/`.

---

## The Three Reports

### Simple report

```
[Scene Info]
Scene: <experience name>
🟢 Visitors: 3 / 50
Instance role: <role>
Gravity: 9.81 m/s^2 (default 9.81)
Script active: 2h 14m 5s
Your tracked visit: 12m 40s
```

- `Report/Show Script Active Time` (On): the time since the script started, which is the last restart of the scene, not the real age of the instance.
- `Report/Show Tracked Visit Time` (On): how long the avatar who asked has been in the scene. Only in a whispered report: it makes no sense for everyone. An avatar present before the script started is counted from the script start.

### Debug report

The simple report, then: location handle, instance ID, world ID, event ID, owner handle and avatar UUID, access group, compat / proto / config versions, build ID, API version, and the script memory of the scene:

```
🟢 Script memory: 4.08 MB of 256 MB (1.6%, normal), peak 18.24 MB
Memory thresholds: warning 192 MB, critical 230.4 MB, limit 256 MB; activity Low
This script: 0 pending events, coroutines 0 / 512
Your avatar scale: 1
Your event ticket: None
```

- **Script memory** is the memory used by **all the scripts of the scene together**, against the limit Sansar gives the scene. The peak is the highest value since the scene restarted.
- **Memory thresholds** are Sansar's own three levels, and the activity (Low, Medium, High) tells how busy the scripts' memory is.
- **This script** shows two values of the Scene Info Viewer itself, not of the scene: a script cannot read them for the other scripts.
- **Your avatar scale** and **Your event ticket** are about the avatar who asked (the scale chosen in the avatar editor, and the ticket used to enter a ticketed event). Only in a whispered report.
- With `Report/Show Visitor Names In Debug` On, the names of the avatars present (`Max Visitor Names In Debug`, 0 = all). `Report/Show Full IDs` Off shortens the long IDs to their first 8 and last 4 characters.

### Status

```
[Scene Status]
🟢 Script memory: 4.08 MB of 256 MB (1.6%, normal), peak 18.24 MB
🟢 Visitors: 3 / 50
Watch: On, every 5 minutes, Scene Full Alert On
🟢 Startup check (30 s): script memory normal throughout, peak 18.24 MB of 256 MB (7.1%), activity Low.
```

The two values of the scene that have a limit, the state of the Watch, and the Startup Check: `Startup check: Off`, `Startup check: running, 12 of 30 s, highest level so far normal` while the window is open, or its summary once it is over. Asked with `Chat/Status Command` (`/SceneStatus`), always whispered, with the same access as the debug report.

A long report is sent in several chat messages of `Report/Max Characters Per Message` characters at most (default 580).

---

## Status Icons

With `Report/Status Icons` On (default), the memory and visitor lines, the Watch alerts and the Startup Check messages start with a colored disc:

| Disc | Script memory | Visitors |
|---|---|---|
| 🟢 | Normal: under Sansar's warning threshold | Room left |
| 🟡 | Warning threshold reached | 80 percent of the limit or more |
| 🟠 | Critical threshold reached | - |
| 🔴 | Limit reached: Sansar may stop scripts in a scene that stays there | The scene is full |

The thresholds are those Sansar reports for your scene (in the example above: warning 192 MB, critical 230.4 MB, limit 256 MB); the script does not invent its own. The level is also written in words in the memory line ("normal", "warning", "critical", "limit"), and a full scene shows "(full)".

`Report/Status Icons` Off gives the same lines as plain text, without the discs.

---

## The Startup Check

`Watch/Startup Check Seconds` (30 by default, 10 to 60; 0 = Off). The first seconds of a scene are the risky ones: every script initializes at once. During that window the script reads the script memory of the scene once per second and **whispers to the scene owner and to the avatars of `Access/Whitelist`** who are in the scene. It works whether the Watch is On or Off; visitors never see these messages. A value under 10 is raised to 10, with a warning in the script console: the first visitor joins the scene a few seconds after the scripts start, and a shorter window would close before anyone is there.

### During the window

- Each time the level **rises** above the last one announced, one alert:

```
🟡 Startup alert (12 s): script memory at the warning level, 200 MB of 256 MB (78.1%).
🟠 Startup alert (14 s): script memory at the critical level, 235 MB of 256 MB (91.8%).
🔴 Startup alert (16 s): script memory limit reached, 256 MB of 256 MB (100%). Scripts may be stopped.
```

- Sansar keeps the highest memory value of the scene by itself. If that peak rose higher than any reading between two readings, or before the first one, it is announced too:

```
🟡 Startup alert (9 s): script memory reached the warning level between two readings, peak 201 MB of 256 MB (78.5%).
```

- A **partial descent** (orange to yellow, for instance) is not announced.
- The **return to normal** is announced once the memory has been normal for 3 seconds in a row, so that a value oscillating around a threshold does not flood the chat. After that, a new rise is announced again:

```
🟢 Startup status (21 s): script memory back to normal, 64 MB of 256 MB (25%).
```

- At most 8 alerts are sent during a window; what happens after them is kept for the summary.
- Sansar counts the script memory at its own pace, every ten seconds or so in a quiet scene: the readings follow that pace, and a very fast rise can show as one jump.

### The summary

At the end of the window, one message, with the disc of the **highest** level reached:

```
🟢 Startup check (30 s): script memory normal throughout, peak 18.24 MB of 256 MB (7.1%), activity Low.
🟠 Startup check (30 s): script memory reached the critical level at 14 s, peak 235 MB of 256 MB (91.8%), activity Medium. Now 64 MB of 256 MB (25%), normal.
```

The seconds count from the start of the script (the start of the scene); the activity is the highest level of memory activity seen (Low, Medium, High); "Now" is the state at the moment the summary is sent.

Who gets it, and when:

- **You, the scene owner, always get the summary once per start of the scene**, green or not: at the end of the window if you are in the scene, 5 seconds after your arrival otherwise, even long after the start. A summary received later says since when the scene has been running, and its "Now" is read at that moment:

```
🟢 Startup check (30 s, started 12m 40s ago): script memory normal throughout, peak 18.24 MB of 256 MB (7.1%), activity Low.
🟠 Startup check (30 s, started 12m 40s ago): script memory reached the critical level at 14 s, peak 235 MB of 256 MB (91.8%), activity Medium. Now 64 MB of 256 MB (25%), normal.
```

- A **Whitelist avatar in the scene before the end of the window** gets the summary too, green included: at the end of the window, or 5 seconds after their arrival if they had just come in (a chat that is still loading does not show messages).
- A **Whitelist avatar arriving after the window** gets it only if the start was **not** green, 5 seconds after their arrival: no message for nothing.
- If a chat was not ready when the summary came (an avatar still loading), the script tries again every 5 seconds for 30 seconds.
- Each avatar gets the summary once per start of the scene.

### With the Watch

- During the window, the Watch leaves the memory alerts to the Startup Check (no double message); its Scene Full Alert keeps working.
- At the end of the window the Watch takes over from the level the summary reports as "Now", with its own rules (every change, descents included, at its own interval and on Sansar's level events).
- An owner or Whitelist avatar who arrives later while the level is not normal receives the startup summary if they are owed one, otherwise the current Watch alert: one message, never two.

The alerts of a rise and a summary that is not green are also written as warnings in the script console.

---

## The Watch

`Watch/Enable` (Off by default). When On, the script looks at the scene by itself for the whole life of the instance and **whispers an alert to the scene owner and to the avatars of `Access/Whitelist`** who are in the scene. Visitors never see these messages.

### Script memory

- The memory level is checked every `Watch/Check Every Minutes` (1 to 60, default 5), and at once when Sansar itself reports that the level has changed.
- You get a message **only when the level changes**, never the same alert twice in a row:

```
🟡 Scene alert: script memory at the warning level, 200 MB of 256 MB (78.1%).
🟠 Scene alert: script memory at the critical level, 235 MB of 256 MB (91.8%).
🔴 Scene alert: script memory limit reached, 256 MB of 256 MB (100%). Scripts may be stopped.
🟢 Scene status: script memory back to normal, 64 MB of 256 MB (25%).
```

- If you arrive in the scene while the level is not normal, you receive the current alert a few seconds after your arrival.
- An alert is also written as a warning in the script console, so it is kept even when nobody was there to read it.

### Scene full

`Watch/Scene Full Alert` (On): when the scene reaches its visitor limit, you receive one message:

```
🔴 Scene full: 50 / 50 visitors. The next visitors will arrive in a new instance of this scene for as long as this one is full.
```

The limit is the one of your scene. The message is sent once per filling: it is not repeated while visitors leave and come back around the limit, and it can be sent again once the scene has emptied by a tenth of its limit (45 visitors for a limit of 50). There is no message when the scene has room again.

---

## Activation

### Click

- `Activation/Enable Click` (On): the object highlights on hover and shows `Activation/Hover Text` (empty = an automatic text: "Scene Info / Open Details", "Scene Debug", "Open Scene Details"...). The hover text is cut at 128 characters.
- `Activation/Click Report Mode (0-2)`: 0 = no report (the click can still open the details window), 1 = simple report (default), 2 = debug report, with the access control below.
- `Activation/Open Details On Click` (On): the click also opens Sansar's details window of the scene for the visitor.

With mode 0 and the window Off, a click would do nothing: no interaction is created, and a warning says so in the script console.

### Chat commands

`Chat/Enable Chat Commands` (On) listens to `Chat/Simple Command` (`/sceneinfo`), `Chat/Debug Command` (`/sceneinfodebug`) and `Chat/Status Command` (`/SceneStatus`) in the Nearby Chat: exact match, case ignored, empty = Off. `Open Details On Simple Command` and `Open Details On Debug Command` (Off) open the details window too.

### Script Events

`Events/Enable Script Events` (Off) listens to `Events/Simple Event Name` (`mpp_sceneinfo`) and `Events/Debug Event Name` (`mpp_sceneinfodebug`). Set an **MPP - Action Button** to send one of these names as a script event: the report goes to the avatar who pressed the button, with the details window if `Open Details On Simple Event` or `Open Details On Debug Event` is On. An event that does not carry the avatar (sent by a script that is not an MPP button) is ignored.

### The details window

The Sansar window of the current scene, with its description, its links and the travel button, opened on the visitor's screen. It is a handy way to show the scene's rules or links from an object.

---

## Delivery and Cooldowns

- `Report/Simple Report To Everyone` and `Report/Debug Report To Everyone` (Off): On, the report is posted in the Nearby Chat for everyone instead of being whispered. The lines about the avatar who asked (visit time, avatar scale, event ticket) are then left out. The status is always whispered.
- `Activation/Cooldown Seconds` (default 3, 0 to 120): a visitor who asks again within this time is refused, whatever the source (click, command, event).
- `Activation/Public Cooldown Seconds` (default 5, 0 to 120): minimum time between two reports posted to everyone, whoever asks, so the chat is never flooded.
- `Activation/Cooldown Notice` (On): a refused visitor receives a private message, only visible to them: by default "Please wait 3 seconds before asking for the scene info again.". At most one message every 3 seconds per visitor, and none when the wait is under half a second. Write your own text in `Activation/Cooldown Notice Text`: `{time}` becomes the remaining time with its unit ("2 seconds", "1 minute 5 seconds"), `{seconds}` the whole number of seconds. Empty text, or the notice Off, = silent refusal.

---

## Access to the Debug Report and the Status

The simple report is open to everyone. The debug report and the status follow `Access/Permission Mode (1-3)`:

| Mode | Who gets the debug report and the status |
|---|---|
| **1** (default) | The scene owner only |
| **2** | The scene owner and the avatars of `Access/Whitelist` |
| **3** | Everyone, except the avatars of `Access/Blacklist` (empty list = everyone) |

The scene owner is always allowed, in every mode. The lists take avatar **handles** (the name in the profile link, `https://www.sansar.com/profiles/<handle>`) or avatar **UUIDs**, separated by commas or semicolons; `@` and letter case are ignored. A display name with a space is ignored with a warning.

A refused avatar receives `Access/Denied Text` in private (default "You are not allowed to use the scene debug report."), at most once every 5 seconds; empty = silent. A refused **click** still opens the details window when `Open Details On Click` is On.

**The Whitelist has a second role:** its avatars receive the Watch alerts and the Startup Check messages, together with the scene owner, in every Permission Mode. In mode 1 they are warned but cannot ask for the debug report themselves.

---

## Editor Properties Reference (37 total)

### Activation
| Property | Type | Default | Description |
|---|---|---|---|
| Activation/Enable Click | bool | On | Click on the object sends the report and/or opens the details window |
| Activation/Hover Text | string | (empty) | Hover text; empty = automatic |
| Activation/Click Report Mode (0-2) | integer, 0-2 | 1 | 0 = none, 1 = simple report, 2 = debug report |
| Activation/Open Details On Click | bool | On | The click also opens the scene details window |
| Activation/Cooldown Seconds | number, 0-120 | 3 | Wait per visitor between two requests |
| Activation/Cooldown Notice | bool | On | Private "please wait" message for a request that comes too soon |
| Activation/Cooldown Notice Text | string | "Please wait {time} before asking for the scene info again." | Text of that message; `{time}` and `{seconds}` are replaced, empty = no message |
| Activation/Public Cooldown Seconds | number, 0-120 | 5 | Minimum time between two reports posted to everyone |

### Report
| Property | Type | Default | Description |
|---|---|---|---|
| Report/Status Icons | bool | On | Colored disc at the start of the memory and visitor lines, of the Watch alerts and of the Startup Check messages; Off = plain text |
| Report/Simple Report To Everyone | bool | Off | Post the simple report in the chat for everyone |
| Report/Debug Report To Everyone | bool | Off | Post the debug report in the chat for everyone |
| Report/Show Script Active Time | bool | On | Time since the script started |
| Report/Show Tracked Visit Time | bool | On | Visit time of the avatar who asked (whispered reports only) |
| Report/Show Visitor Names In Debug | bool | Off | Names of the avatars present, in the debug report |
| Report/Max Visitor Names In Debug | integer, 0-100 | 10 | Names shown at most; 0 = all |
| Report/Show Full IDs | bool | Off | Off = long IDs shortened |
| Report/Max Characters Per Message | integer, 120-2000 | 580 | A longer report is split into several messages |

### Watch
| Property | Type | Default | Description |
|---|---|---|---|
| Watch/Enable | bool | Off | Checks the script memory of the scene and whispers an alert to the owner and the Whitelist when its level changes |
| Watch/Check Every Minutes | integer, 1-60 | 5 | Minutes between two checks; a level change reported by Sansar is handled at once |
| Watch/Scene Full Alert | bool | On | One alert when the scene reaches its visitor limit |
| Watch/Startup Check Seconds | number, 0-60 | 30 | Seconds watched after the scene starts (10 to 60, a lower value is raised to 10; 0 = Off): rises and return to normal whispered to the owner and the Whitelist, then a summary; works with the Watch Off (**new in V1.5.1**) |

### Access
| Property | Type | Default | Description |
|---|---|---|---|
| Access/Permission Mode (1-3) | integer, 1-3 | 1 | Who gets the debug report and the status; the owner always |
| Access/Whitelist | string | (empty) | Handles or UUIDs allowed in mode 2; they also receive the Watch alerts and the Startup Check messages |
| Access/Blacklist | string | (empty) | Handles or UUIDs refused in mode 3 |
| Access/Denied Text | string | "You are not allowed to use the scene debug report." | Private refusal, at most every 5 s; empty = silent |

### Chat
| Property | Type | Default | Description |
|---|---|---|---|
| Chat/Enable Chat Commands | bool | On | Listen to the three commands |
| Chat/Simple Command | string | "/sceneinfo" | Command of the simple report; empty = Off |
| Chat/Debug Command | string | "/sceneinfodebug" | Command of the debug report; empty = Off |
| Chat/Status Command | string | "/SceneStatus" | Command of the status; empty = Off |
| Chat/Open Details On Simple Command | bool | Off | The simple command also opens the details window |
| Chat/Open Details On Debug Command | bool | Off | The debug command also opens the details window |

### Events
| Property | Type | Default | Description |
|---|---|---|---|
| Events/Enable Script Events | bool | Off | Listen to the two Script Events |
| Events/Simple Event Name | string | "mpp_sceneinfo" | Event of the simple report; empty = Off |
| Events/Debug Event Name | string | "mpp_sceneinfodebug" | Event of the debug report; empty = Off |
| Events/Open Details On Simple Event | bool | Off | The simple event also opens the details window |
| Events/Open Details On Debug Event | bool | Off | The debug event also opens the details window |

### Debug
| Property | Type | Default | Description |
|---|---|---|---|
| Debug/Debug Logging | bool | Off | Writes the start summary, every request, accepted or refused, with the avatar handle and UUID, every Watch alert and the end of the Startup Check (number of readings, alerts sent, summaries delivered) to the script console |

---

## Version Notes

| Version | What changed |
|---|---|
| V1.0 - V1.2.4 | Internal versions, never sold: simple and debug reports, click, chat commands, Script Events, details window, cooldowns, visit tracking |
| V1.3.0 | First release on the Store. Every setting visible in the Build panel (a numeric click mode, "To Everyone" switches), access to the debug report by permission mode with whitelist and blacklist, customizable refusal text, "please wait" notice for the cooldowns, safe delivery when an avatar leaves during a report, warnings for a wrong setup, settings grouped by category, Debug Logging |
| V1.4.0 | Status icons: colored discs on the script memory and visitor lines. Memory lines rewritten (used of limit, percentage, level, thresholds, activity in words). Avatar scale and event ticket in the debug report. New `/SceneStatus` command. New Watch: private alerts to the owner and the Whitelist when the script memory changes level, and when the scene is full |
| **V1.5.1** (this version) | New Startup Check (On by default): the script memory followed during the first seconds of the scene, rises and return to normal whispered to the owner and the Whitelist, a summary at the end of the window that the scene owner always gets once per start, retried while a chat is loading, a line in `/SceneStatus`. Lighter code, no visible change (the internal versions 1.4.1 and 1.5.0 were never published) |

### Updating from V1.4.0

Replace the script on your object: the 36 settings of V1.4.0 keep their values, nothing has to be entered again. One setting is new, at its default: `Watch/Startup Check Seconds` (30). Without touching anything, the only visible changes are the Startup Check messages at the start of the scene and the new line of `/SceneStatus`. Set it to 0 if you do not want the Startup Check.

### Updating from V1.3.0

The 31 settings of V1.3.0 keep their values. Six settings are new, at their defaults: `Report/Status Icons` (On), `Watch/Enable` (Off), `Watch/Check Every Minutes` (5), `Watch/Scene Full Alert` (On), `Watch/Startup Check Seconds` (30) and `Chat/Status Command` (`/SceneStatus`). If you use `Access/Whitelist`, remember that its avatars receive the Startup Check messages, and the Watch alerts once you turn the Watch On.

### Updating from V1.2.4

Only for an object that already carried the internal V1.2.4. The 21 settings that keep their name keep their value; take a screenshot of the Build panel first. Six settings are replaced and must be entered again: Click Mode (None, Simple, Debug) becomes `Activation/Click Report Mode (0-2)` (0, 1, 2); Simple Output and Debug Output (Private, Public) become `Report/Simple Report To Everyone` and `Debug Report To Everyone`; Debug Access (OwnerOnly, OwnerOrWhitelist) becomes `Access/Permission Mode (1-3)` (1, 2); Debug Admin Handles and Debug Admin Avatar UUIDs become the single `Access/Whitelist`.

---

## Recipes

**A - The info sign.** Defaults: a click whispers the simple report and opens the details window. Put it at the landing point.

**B - A public counter.** `Report/Simple Report To Everyone` On, `Activation/Open Details On Click` Off, `Hover Text` "Who is here?": a click posts the visitor count for everyone, at most every 5 seconds.

**C - The admin desk.** `Activation/Click Report Mode (0-2)` 2, `Access/Permission Mode (1-3)` 2, your helpers' handles in `Access/Whitelist`: a click gives them the debug report, and the other visitors get the details window with a polite refusal.

**D - A "Scene info" button on a control desk.** An MPP - Action Button set to send the script event `mpp_sceneinfo`, `Events/Enable Script Events` On: the report goes to whoever presses the button.

**E - Commands only.** `Activation/Enable Click` Off: no click, only the three commands in the chat.

**F - The event night watch.** `Watch/Enable` On, your co-hosts' handles in `Access/Whitelist`: during the event, you and your co-hosts are warned in private if the scripts run out of memory, and when the scene is full and newcomers start landing in a second instance.

**G - A quick health check.** Type `/SceneStatus` before and after adding scripted objects to the scene: the memory line tells you what they cost.

**H - The startup report.** Leave `Watch/Startup Check Seconds` at 30: each time the scene starts, you receive the summary, at the end of the window or a few seconds after you arrive. A yellow or orange start means the scripts of the scene use a lot of memory while initializing; remove or lighten objects one at a time and compare the peaks. A script that starts late? Raise the window to 60.

---

## Troubleshooting

| Symptom | Check |
|---|---|
| The object has no hover text | `Activation/Enable Click` Off, or `Click Report Mode` 0 with `Open Details On Click` Off (warning "no click interaction is created" in the script console) |
| I click and nothing happens | Your own cooldown: with `Cooldown Notice` On you get the "please wait" message; with it Off the refusal is silent |
| `/sceneinfodebug` or `/SceneStatus` answers "You are not allowed..." | Both follow `Access/Permission Mode (1-3)`: add the handle to the `Whitelist` in mode 2, or use mode 3. The scene owner is always allowed |
| A whitelisted friend is still refused | The list takes the **handle** (from the profile link) or the avatar UUID, not the display name; an entry with a space is ignored with a warning |
| I do not want the discs | `Report/Status Icons` Off: same lines, plain text |
| No startup summary when I arrive | As the scene owner you get it once per start, a few seconds after you arrive: if it did not come, `Watch/Startup Check Seconds` is 0, or you already received it for this start of the scene. `/SceneStatus` shows the summary at any time |
| My Whitelist helper got no startup summary | They arrived after the window and the start was green: that is normal, nothing needed their attention |
| The script console says "Startup Check Seconds 1 is under 10" | The window is raised to 10 seconds: set 10 or more, or 0 for Off |
| I want no Startup Check | `Watch/Startup Check Seconds` 0 |
| The Watch never says anything | That is the normal case: it only speaks when the memory level changes or the scene gets full. Check with `/SceneStatus`: the Watch line must read "Watch: On" |
| The Watch is On but I received no alert | Alerts go to the scene owner and the `Whitelist` avatars who are in the scene at that moment. If you were away, you get the current memory alert a few seconds after you arrive, and the script console keeps the warning |
| A helper receives the alerts but cannot ask for the debug report | Their handle is in the `Whitelist` with Permission Mode 1. Use mode 2 to give them the debug report and the status too |
| "Scene full" came only once | By design: one message per filling, sent again only after the scene has emptied by a tenth of its limit |
| The memory figure does not move right away | Sansar refreshes it at its own pace, every ten seconds or so in a quiet scene; the value is the last one it counted |
| The report is cut, or too many messages | Raise `Report/Max Characters Per Message` (up to 2000) |
| The visit time is missing | It is only in a whispered report, and only with `Show Tracked Visit Time` On |
| "Script active" is shorter than I expect | It counts from the last restart of the scene, not from its creation |
| The Action Button does nothing | `Events/Enable Script Events` On, and the button's command equal to the event name. The button must be an MPP - Action Button (it carries the avatar in its event) |
| I want to know what the script does | Turn `Debug/Debug Logging` On: the script console shows the start summary, every request, accepted or refused, every Watch alert and the end of the Startup Check |

---

## Limits

- The script memory is the one of all the scripts of the scene together; Sansar does not tell which script uses how much. The pending events and coroutines shown are those of this script only.
- The Startup Check and the Watch follow the script memory of the scene pool only: the scripts worn by the visitors have their own pools and are not counted. No script can read the processor time of the scene, nor the memory of the players' computers (textures, meshes).
- The Startup Check counts its seconds from the start of this script, which is the start of the scene when the script is in it; the peak it reports is the one Sansar keeps since the server started.
- The Watch follows the two values of the scene that have a limit: the script memory and the number of visitors. Its alerts, and the Startup Check messages, reach only the owner and the Whitelist avatars present in the scene.
- The status has a chat command but no click mode and no Script Event.
- The visit time and the script active time are measured by the script: they start at the last restart of the scene.
- A Script Event sent by a script that does not carry the avatar (not an MPP - Action Button) cannot be answered: there is nobody to whisper to.
- The gravity is the scene's, read at the moment of the report.

---

## Related MPP Items

| Item | What it adds |
|---|---|
| **Action Button Script** | Buttons that ask for the report through a script event, on a control desk. Store: https://www.sansar.com/store/listings/3e1a3546-6c79-4527-bc1e-78d02648d19e/action-button-script |
| **Commands Help On Chat Script** | Lists your scene commands (`/sceneinfo` among them) when a visitor asks for help, and greets arrivals. Store: https://www.sansar.com/store/listings/fea2df6b-21ce-48eb-94fc-4b7a7aad2777/commands-help-on-chat-script |

---

*MPP - My Pretty Pixels. Scene Info Viewer Script (script `MPP - Scene Info Viewer`). Store: https://www.sansar.com/store/listings/34549ccc-ce32-4bc6-a2f1-5e05d70a97b0/scene-info-viewer-script*
