> For the complete documentation index, see [llms.txt](https://unknown-56-works.gitbook.io/luigiscreen/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://unknown-56-works.gitbook.io/luigiscreen/getting-started/readme.md).

# Introduction

LuigiScreen is a server-side Paper/Bukkit plugin that displays streams, videos, images and GIFs on walls of Minecraft maps.

It loads the selected media source, decodes its latest frame and renders it through **MapEngine**. Players do not need a client mod.

Author: **unknown\_56**

> LuigiScreen is currently an alpha project. Back up your server before upgrading and test new builds away from production.

## Current release

Documentation version: `1.2.0-alpha.3`

Supported server platforms:

* Paper `1.21.11`
* Java `21`
* Windows x86\_64
* Linux x86\_64

Required plugin:

* MapEngine `1.8.12`

LuigiScreen belongs to the Bukkit plugin ecosystem but currently targets Paper APIs. Install it on Paper, not on a plain Spigot or CraftBukkit server.

Project links:

* [Free source code](https://github.com/unknown-566/LuigiScreen)
* [Issue tracker](https://github.com/unknown-566/LuigiScreen/issues)
* [License and editions](/luigiscreen/support/licensing.md)

## Start here

Server administrators should begin with the [Control Studio overview](/luigiscreen/control-studio/control-studio.md). Open the in-game interface with `/screen menu`, or create a secure browser session with `/screen web` and follow the [Web Studio guide](/luigiscreen/control-studio/web-studio.md).

Start with [Media sources](/luigiscreen/screens-and-streaming/sources.md) to choose RTMP, MJPEG, a local video, a local or remote image, or a GIF.

For live OBS video, follow the [RTMP quick start](/luigiscreen/getting-started/quick-start.md). If the Minecraft server is hosted elsewhere, first read [Choose an RTMP network setup](/luigiscreen/screens-and-streaming/overview.md).

If you prefer Czech, use the [Český rychlý start](/luigiscreen/czech/quick-start.md).

## What LuigiScreen provides

* In-game Control Studio and local browser Web Studio with role-based sections
* One-time Web Studio login links, secure sessions, CSRF protection and revocation
* Browser Live Studio with Preview/Program control and bounded live thumbnails
* Live Control, per-screen queues, groups, schedules and audience voting
* Watched Media Library with validation and generated map thumbnails
* Draft/Publish editing, config snapshots, audit history and undo
* Playback explanations, eligibility diagnostics and usage statistics
* Multiple named map screens up to the safety limits in `config.yml`
* RTMP and MJPEG live streams
* Looping local videos and GIFs
* Local and URL images
* One shared loader for screens using the same source type and value
* Independent source, FPS, distance, world, location, width, height and enabled state per screen
* Granular command permissions and optional per-screen visibility permissions
* Fully non-destructive configuration reloads; `/screen remove` is required to delete a screen
* Optional guided MediaMTX setup for RTMP
* Automatic reconnect with exponential backoff
* Viewer-distance based pause and resume
* Adaptive FPS for large screens
* Localized Czech and English messages
* Performance boss bar and 15-line debug sidebar
* Masked remote-source credentials in status output and logs
* Public AGPL-3.0-only Free source code

## Live-stream limitation

LuigiScreen reads a live stream; it does not create one by itself. When using RTMP, MediaMTX must be running somewhere and OBS or another publisher must send video to it. If the publishing computer is turned off, live desktop capture stops.

For simple 24/7 playback, use a local video or GIF directly. For a remotely managed RTMP source, see [External hosting and 24/7](/luigiscreen/network-guides/external-hosting.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://unknown-56-works.gitbook.io/luigiscreen/getting-started/readme.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
