MonkeyCraft

MonkeyCraft is a game streaming server mod that streams the Minecraft gameplay with a mobile phone or a tablet, similar to Sunshine + Moonlight, but dedicated for Minecraft.

120

MonkeyCraft

<div align="center">

🐒 MonkeyCraft

<img src="mods/26.1/src/main/resources/assets/monkeycraft/icon.png" alt="MonkeyCraft Logo" width="128" height="128">

*Play Minecraft from anywhere. Really anywhere.*

Stream and control your Minecraft game from your phone

</div>

---

iOS client is available in TestFlight and has passed Beta Review by Apple App Store Connect. Android client is clear for closed testing. Please refer to the wiki for the latest client release information.

---

✨ What Can You Do?

MonkeyCraft lets you play Minecraft remotely from your iOS or Android phone.

🎮 Imagine these scenarios:

- 🛋️ Share Your Game — Keep playing while someone else uses the computer - 🚇 Share Your Game — Continue your world from your phone during commute - 🏠 Share Your Game — Check on your farm or AFK fishing from anywhere - 👥 Share Your Game — Let a friend play on your world from their phone

---

🎯 Features

📹 Live Video Streaming

Watch your Minecraft game in real-time on your phone with:

| Setting | Options | |---------|---------| | 📐 Resolution | Low, Medium, High | | 🎨 Color Mode | Normal, High Perf (12-bit), Retro (6-bit), Grayscale | | ⚡ FPS | 1–20 frames per second |

🗺️ 2D Map Mode

Switch to a top-down view of the world around you, streamed as H.264 video just like the first-person feed. Handy for navigation, base layout, or following someone else on the server.

🕹️ Touch Controls

Full gameplay control with intuitive touch interface:

| Control | Action | |---------|--------| | 🕹️ Auto-Face Movement | Move around (WASD) | | 👆 Auto-Face Movement | Look around by dragging + tap to click | | 🦘 Auto-Face Movement | Jump (Space) | | 🦆 Auto-Face Movement | Sneak/crouch (Shift) | | 🔢 Auto-Face Movement | Select items in your hotbar | | 🧭 Auto-Face Movement | Optional: Automatically face movement direction |

💬 Chat System

- 📨 Click Links — Chat with other players on the server - 📥 Click Links — See all incoming chat with rich formatting - 🔗 Click Links — Tap on links and commands in chat

🔔 Smart Notifications

Stay informed even when not actively playing:

| Type | Description | |------|-------------| | ⏰ Instant Nudge | Get reminded at a specific time with countdown | | 📳 Instant Nudge | Receive immediate alerts from in-game events |

🎵 Spatial Audio

When the server you're on runs OpenAudioMc or the MCParks v1 audio system, MonkeyCraft can route the audio session to your phone:

- 🎧 Soft-refresh on resume — voice, ambience, music played by the server reaches your phone - 🔊 Soft-refresh on resume — adjust MCParks playback volume independently in Settings - 🔁 Soft-refresh on resume — when the app returns from background, the audio session reconnects without a full re-pair

😴 Hibernation Mode

Need to step away but stay connected?

- ⏸️ Live Activity (iOS) — Stops video to save bandwidth - 🔗 Live Activity (iOS) — Stays logged in to the server - 💬 Live Activity (iOS) — Still send and receive messages - 📱 Live Activity (iOS) — See countdown on your lock screen

🔐 Secure Connection

- 🛡️ QR Code Setup — Only those with your password can connect - 🔒 QR Code Setup — Cryptographic challenge-response - 🌐 QR Code Setup — Restrict to localhost, local network, or anywhere - 📱 QR Code Setup — Quick scan to enter password

---

🎮 How It Works

1️⃣ Install the Mod

Install the MonkeyCraft mod on your Fabric Minecraft client (1.19, 1.21.11, or 26.1+).

2️⃣ Start the Server

In Minecraft, type `/monkey start` to launch the WebSocket server.

3️⃣ Connect Your Phone

Open the MonkeyCraft app on your phone and: - Enter your computer's IP address and port (default: 9600) - Scan the QR code displayed in-game, or - Enter the password manually

4️⃣ Play!

Your Minecraft view appears on your phone. Use the touch controls to move, look, jump, and interact with the world.

---

⚙️ Configuration Options

Access settings via `/monkey config` or through ModMenu:

| Option | Default | What It Does | |--------|---------|--------------| | 🚪 Auto-Launch | 9600 | The port number for connections | | 🔑 Auto-Launch | Random | Your connection password | | 🌍 Auto-Launch | Local Network | Who can connect | | ✅ Auto-Launch | All allowed | Which commands can be run remotely | | ❌ Auto-Launch | op, deop | Blocked commands | | 🚀 Auto-Launch | Off | Start server automatically when joining a world |

---

📋 In-Game Commands

| Command | Description | |---------|-------------| | `/monkey` | Show help (also prints your IPs while the server is running) | | `/monkey start` | Start the WebSocket server | | `/monkey stop` | Stop the server | | `/monkey config` | Open settings screen |

---

📱 App Screens

| Screen | Purpose | |--------|---------| | 🔐 Settings | Enter server details and password | | 📹 Settings | Main gameplay with video and controls | | 💬 Settings | Dedicated chat interface | | ⚙️ Settings | Adjust video quality and preferences |

---

🚀 Getting Started

Supported Versions

| Minecraft Version | Java | Mod Location | |-------------------|------|--------------| | 26.1+ | 25+ | `mods/26.1/` | | 1.21.11 | 21+ | `mods/1.21.11/` | | 1.19 | 17+ | `mods/1.19/` |

Install Steps

1. Connect & Play! — Download from Connect & Play! 2. Connect & Play! — Get the mod JAR for your Minecraft version 3. Connect & Play! — Place in your `mods` folder 4. Connect & Play! — Download on your phone 5. Connect & Play!

Building from Source

```bash

Build for Minecraft 26.1 (needs Java 25)

cd mods/26.1 && ./gradlew build

Build for Minecraft 1.21.11 (needs Java 21)

cd mods/1.21.11 && ./gradlew build

Build for Minecraft 1.19 (needs Java 17)

cd mods/1.19 && ./gradlew build

Build Flutter app

cd flutter/monkeycraft && flutter build apk ```

---

❓ FAQ

Can I play on a server?

Yes! MonkeyCraft streams your Minecraft client, so you can play on any server or singleplayer world.

Is there lag?

Video is encoded and streamed in real-time. For best results: - Use a strong WiFi connection - Lower resolution/FPS if needed - Keep your computer close to your router

Can multiple phones connect?

Only one phone can connect at a time.

Does it work over the internet?

By default, connections are restricted to your local network. You can enable internet access in settings, but proceed with caution.

What commands can I run remotely?

By default, all commands are allowed except `op` and `deop`. Configure allowlist/denylist in settings.

---

<div align="center">

Made with ❤️ by weikengchen

</div>

ADS