papermc-skill 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cursor/rules/paper-plugin-dev.mdc +23 -0
- package/.cursorrules +6 -0
- package/.paseo/rules.md +8 -0
- package/.pi/rules.md +8 -0
- package/.windsurfrules +7 -0
- package/CHANGELOG.md +31 -0
- package/CLAUDE.md +27 -0
- package/CODEX.md +12 -0
- package/DEEPSEEK.md +18 -0
- package/README.md +66 -26
- package/bin/cli.js +461 -36
- package/docs/12-data-components-and-display-entities.md +264 -0
- package/docs/13-multi-agent-system-and-tooling.md +90 -0
- package/package.json +16 -4
- package/skills/paper-plugin-dev/SKILL.md +144 -110
- package/templates/paper-modern-template/.gradle/9.7.1/checksums/checksums.lock +0 -0
- package/templates/paper-modern-template/.gradle/9.7.1/checksums/md5-checksums.bin +0 -0
- package/templates/paper-modern-template/.gradle/9.7.1/checksums/sha1-checksums.bin +0 -0
- package/templates/paper-modern-template/.gradle/9.7.1/executionHistory/executionHistory.bin +0 -0
- package/templates/paper-modern-template/.gradle/9.7.1/executionHistory/executionHistory.lock +0 -0
- package/templates/paper-modern-template/.gradle/9.7.1/fileHashes/fileHashes.bin +0 -0
- package/templates/paper-modern-template/.gradle/9.7.1/fileHashes/fileHashes.lock +0 -0
- package/templates/paper-modern-template/.gradle/9.7.1/kotlin-dsl-plugin-entries/kotlin-dsl-plugin-entries.lock +0 -0
- package/templates/paper-modern-template/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/templates/paper-modern-template/.gradle/buildOutputCleanup/cache.properties +1 -1
- package/templates/paper-modern-template/build/tmp/compileJava/previous-compilation-data.bin +0 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Modern Paper & Folia Minecraft Java plugin development standards
|
|
3
|
+
globs: **/*.java, **/*.gradle.kts, **/paper-plugin.yml, **/config.yml
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Modern Paper & Folia Plugin Development Rules
|
|
7
|
+
|
|
8
|
+
When editing or generating code in this Minecraft plugin project:
|
|
9
|
+
|
|
10
|
+
- **Target API**: PaperMC 1.21+ / 26.x on Java 21+ with `folia-supported: true`.
|
|
11
|
+
- **Text & Colors**: Exclusively use Kyori Adventure `Component` and `MiniMessage.miniMessage().deserialize(...)`. Ban `org.bukkit.ChatColor` and `§`.
|
|
12
|
+
- **Items**: Use `DataComponentTypes` (e.g. `FOOD`, `TOOL`, `CUSTOM_MODEL_DATA`). Never touch legacy NBT or reflection.
|
|
13
|
+
- **Holograms**: Spawn `TextDisplay` or `ItemDisplay` with `Billboard.CENTER` and interpolated JOML `Matrix4f` transformations. Never use `ArmorStand`.
|
|
14
|
+
- **Folia Multi-Threading**:
|
|
15
|
+
- Never call `Bukkit.getScheduler()` for tick tasks without checking Folia compatibility.
|
|
16
|
+
- Entity mutations: `entity.getScheduler()`.
|
|
17
|
+
- World/block mutations: `Bukkit.getRegionScheduler()`.
|
|
18
|
+
- Database & I/O: 100% async (`Bukkit.getAsyncScheduler()`).
|
|
19
|
+
- **Security & Dupes**:
|
|
20
|
+
- Cancel GUI clicks and apply 200ms debounce.
|
|
21
|
+
- Store `UUID` instead of `Player` references in static maps to avoid memory leaks.
|
|
22
|
+
- Reject `NaN`, `Infinity`, and negative values in commands.
|
|
23
|
+
- **Verification**: Run `npx papermc-skill audit` before finishing work.
|
package/.cursorrules
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Cursor Rules: Modern Paper & Folia Development
|
|
2
|
+
- Use Kyori Adventure & MiniMessage (`<green>`, `<gradient:...>`). Never use ChatColor or '§'.
|
|
3
|
+
- Use DataComponentTypes for items.
|
|
4
|
+
- Use Display Entities with JOML Matrix4f transformations for holograms.
|
|
5
|
+
- Adhere to Folia region-threading rules.
|
|
6
|
+
- Audit security using `npx papermc-skill audit`.
|
package/.paseo/rules.md
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Paseo Agent Rules: Paper & Folia Development
|
|
2
|
+
|
|
3
|
+
- Target: PaperMC 1.21+ / 26.x with Folia region threading support.
|
|
4
|
+
- Text: Kyori Adventure + MiniMessage only. Legacy ChatColor and '§' are banned.
|
|
5
|
+
- Items: Use DataComponentTypes (MC 1.20.5+ through 26.x). Zero raw NBT.
|
|
6
|
+
- Holograms: Use TextDisplay / ItemDisplay with interpolated JOML transformations.
|
|
7
|
+
- Concurrency: Thread-safe region scheduling. All I/O and DB queries must run asynchronously.
|
|
8
|
+
- Security: Enforce click debounce on GUIs, sanitize numeric inputs against NaN, run `npx papermc-skill audit`.
|
package/.pi/rules.md
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# pi.dev Agent Directives: Modern Minecraft Plugin Architecture
|
|
2
|
+
|
|
3
|
+
- Enforce Kyori Adventure and MiniMessage.
|
|
4
|
+
- Never use legacy ChatColor or § color codes.
|
|
5
|
+
- Use DataComponentTypes for items (1.20.5+ / 26.x).
|
|
6
|
+
- Avoid ArmorStands for holograms; use Display Entities (TextDisplay, ItemDisplay) with smooth client-side interpolation.
|
|
7
|
+
- Preserve Folia region-threading safety with RegionScheduler and EntityScheduler.
|
|
8
|
+
- Audit security using `npx papermc-skill audit`.
|
package/.windsurfrules
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Windsurf Rules: Modern Paper & Folia Development
|
|
2
|
+
|
|
3
|
+
- Exclusively use Kyori Adventure & MiniMessage (`<color>`, `<gradient>`). Legacy ChatColor is banned.
|
|
4
|
+
- Items: Use DataComponentTypes (Minecraft 1.20.5+ / 26.x). No raw NBT.
|
|
5
|
+
- Holograms: Use Display Entities (TextDisplay, ItemDisplay) with JOML Matrix4f transformations.
|
|
6
|
+
- Concurrency: Folia region-safe scheduling (`player.getScheduler()`, `Bukkit.getRegionScheduler()`).
|
|
7
|
+
- Security: Sanitize all inputs against NaN and negative bounds. Audit code using `npx papermc-skill audit`.
|
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,37 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.2.0] - 2026-11-11
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- **Universal Multi-Agent Installation System (`npx papermc-skill install-skill [options]`)**:
|
|
12
|
+
- Direct installation and rule support for 8 premier AI coding agent platforms:
|
|
13
|
+
- **Google Antigravity / agy** (`~/.gemini/config/skills/paper-plugin-dev` and `.agents/skills/`)
|
|
14
|
+
- **Claude Code** (`~/.claude/skills/` and workspace `CLAUDE.md`)
|
|
15
|
+
- **OpenAI Codex** (`~/.codex/skills/` and workspace `CODEX.md`)
|
|
16
|
+
- **Cursor** (`.cursor/rules/paper-plugin-dev.mdc` and `.cursorrules`)
|
|
17
|
+
- **DeepSeek Harness** (`~/.deepseek/skills/` and workspace `DEEPSEEK.md`)
|
|
18
|
+
- **Paseo** (`~/.paseo/skills/` and workspace `.paseo/rules.md`)
|
|
19
|
+
- **pi.dev** (`~/.pi/skills/` and workspace `.pi/rules.md`)
|
|
20
|
+
- **Windsurf** (workspace `.windsurfrules`)
|
|
21
|
+
- Supports `--all`, `--agent <name>`, `--global`, `--local`, and interactive target selection prompt.
|
|
22
|
+
- **Overpowered (OP) Code Generators (`npx papermc-skill generate <recipe> [name]`)**:
|
|
23
|
+
- `component-item`: Scaffolds modern Data-Component item builder (MC 1.20.5 - 26.x).
|
|
24
|
+
- `display-entity`: Scaffolds zero-lag interpolated TextDisplay & ItemDisplay hologram engine.
|
|
25
|
+
- `mace-combat`: Scaffolds 1.21 Tricky Trials Mace smash physics and shockwave knockback.
|
|
26
|
+
- `menu-gui`: Scaffolds exploit-proof inventory menu controller with 200ms click debounce.
|
|
27
|
+
- **Masterclass Guide 12: Modern Data Components & Display Entities (`docs/12-data-components-and-display-entities.md`)**:
|
|
28
|
+
- Comprehensive guide on the paradigm shift from legacy NBT to DataComponentTypes (`io.papermc.paper.datacomponent`), Custom Model Data, Food properties, Tool rules, and JOML Matrix4f smooth client-side interpolation.
|
|
29
|
+
- **Masterclass Guide 13: Multi-Agent System & Universal AI Tooling (`docs/13-multi-agent-system-and-tooling.md`)**:
|
|
30
|
+
- In-depth architectural setup guide for orchestrating Paper & Folia plugin development across all major AI agent harnesses.
|
|
31
|
+
- **Enhanced Security Audit Scanner**:
|
|
32
|
+
- Added detection for legacy NBT manipulation (`net.minecraft.nbt`), `BukkitRunnable` on Folia, and `ArmorStand` laggy floating text anti-patterns.
|
|
33
|
+
|
|
34
|
+
### Changed
|
|
35
|
+
- **PaperMC & Folia Modern Versioning Support**:
|
|
36
|
+
- Updated compatibility matrix to support Paper 1.21+ through 26.x (Java 21 LTS and Java 25+).
|
|
37
|
+
- Enriched `skills/paper-plugin-dev/SKILL.md` with modern Tricky Trials combat kinematics and Data Components recipes.
|
|
38
|
+
|
|
8
39
|
## [1.1.0] - 2026-10-01
|
|
9
40
|
|
|
10
41
|
### Added
|
package/CLAUDE.md
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Claude Code Instructions: Paper & Folia Minecraft Plugin Development
|
|
2
|
+
|
|
3
|
+
You are an expert Minecraft server software architect specializing in modern **PaperMC**, **Folia**, **Kyori Adventure**, and **Data Components**.
|
|
4
|
+
When writing or refactoring Minecraft plugin code in this project, adhere strictly to these rules:
|
|
5
|
+
|
|
6
|
+
## ⚔️ Core Architectural Rules
|
|
7
|
+
1. **Never use legacy `ChatColor` or section sign (`§`)**:
|
|
8
|
+
- Always use Adventure Component API and `MiniMessage.miniMessage().deserialize("<gradient:#ff0080:#7928ca>Text</gradient>")`.
|
|
9
|
+
2. **Never use raw NBT (`net.minecraft.nbt`)**:
|
|
10
|
+
- In Minecraft 1.20.5+ / 1.21+ / 26.x, use `DataComponentTypes` (e.g. `itemStack.setData(DataComponentTypes.CUSTOM_MODEL_DATA, ...)`).
|
|
11
|
+
3. **No Memory Leaks**:
|
|
12
|
+
- Never store `Player`, `World`, or `Entity` in static collections. Store `UUID` instead.
|
|
13
|
+
4. **Folia Multi-Threading Safety**:
|
|
14
|
+
- For player/entity operations: use `player.getScheduler()`.
|
|
15
|
+
- For block/chunk operations: use `Bukkit.getRegionScheduler()`.
|
|
16
|
+
- For async tasks: use `Bukkit.getAsyncScheduler()`.
|
|
17
|
+
- Never call `Bukkit.getScheduler()` when targeting Folia.
|
|
18
|
+
5. **Zero-Lag Visuals**:
|
|
19
|
+
- Never spawn invisible `ArmorStand` entities for text holograms.
|
|
20
|
+
- Use `TextDisplay` and `ItemDisplay` with JOML `Matrix4f` transformations and client-side interpolation.
|
|
21
|
+
6. **Exploit & Dupe Prevention**:
|
|
22
|
+
- Debounce all custom GUI clicks (200ms cooldown).
|
|
23
|
+
- Cancel `InventoryDragEvent` and `InventoryClickEvent` by default.
|
|
24
|
+
- Sanitize all numeric input with `Double.isFinite(val)` and strict lower/upper bounds.
|
|
25
|
+
- Identify custom items through `PersistentDataContainer` (PDC), never item names or lore.
|
|
26
|
+
7. **Quality Gate**:
|
|
27
|
+
- Run `npx papermc-skill audit` to verify compliance before concluding tasks.
|
package/CODEX.md
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# OpenAI Codex Instructions: Paper & Folia Minecraft Plugin Engineering
|
|
2
|
+
|
|
3
|
+
This repository uses modern PaperMC (1.21+ / 26.x) and Folia multi-threaded architecture.
|
|
4
|
+
|
|
5
|
+
## Guidelines for Codex:
|
|
6
|
+
- **Build Tool**: Gradle Kotlin DSL (`build.gradle.kts`) with Java 21 LTS or Java 25.
|
|
7
|
+
- **Commands**: Modern Brigadier via Paper's `LifecycleEvents.COMMANDS`.
|
|
8
|
+
- **Text & UI**: Kyori Adventure with MiniMessage formatting. Legacy `ChatColor` is strictly forbidden.
|
|
9
|
+
- **Item System**: Use modern `io.papermc.paper.datacomponent.DataComponentTypes` rather than NBT or reflection.
|
|
10
|
+
- **Concurrency**: Respect Folia region thread boundaries. Never mutate blocks or entities off their respective region thread.
|
|
11
|
+
- **Display Entities**: Use `TextDisplay` and `ItemDisplay` with JOML `Matrix4f` transformations for holograms.
|
|
12
|
+
- **Security**: Prevent item dupes and memory leaks. Audit with `npx papermc-skill audit`.
|
package/DEEPSEEK.md
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# DeepSeek Harness Directives: Modern Paper & Folia Plugin Development
|
|
2
|
+
|
|
3
|
+
Follow these production-grade principles when synthesizing or auditing Minecraft Java code:
|
|
4
|
+
|
|
5
|
+
1. **Kyori Adventure & MiniMessage**:
|
|
6
|
+
- Parse rich color tags using `<green>`, `<gradient:...>`, and `<hover:show_text:...>`.
|
|
7
|
+
- Never output legacy raw format codes `§` or `ChatColor`.
|
|
8
|
+
2. **Modern Data Components (MC 1.20.5 — 26.x)**:
|
|
9
|
+
- Use `DataComponentTypes` for all item customization (`FOOD`, `TOOL`, `CUSTOM_MODEL_DATA`, `MAX_STACK_SIZE`).
|
|
10
|
+
3. **Thread Safety on Folia**:
|
|
11
|
+
- Entities run on isolated thread pools. Always schedule entity mutations on `entity.getScheduler()`.
|
|
12
|
+
- Never invoke blocking operations (SQL, HTTP, disk) on Bukkit or Folia region threads.
|
|
13
|
+
4. **Display Entity Holograms**:
|
|
14
|
+
- Spawn `TextDisplay` or `ItemDisplay` with `Billboard.CENTER` and interpolated transformations.
|
|
15
|
+
5. **Exploit Prevention**:
|
|
16
|
+
- Validate numerical arguments with `Double.isFinite()` and bounds.
|
|
17
|
+
- Guard GUIs with a 200ms debounce map.
|
|
18
|
+
- Run `npx papermc-skill audit` on code changes.
|
package/README.md
CHANGED
|
@@ -6,16 +6,17 @@
|
|
|
6
6
|
|
|
7
7
|
# ⚔️ PAPERMC PLUGIN SKILL & KNOWLEDGE BASE ⚔️
|
|
8
8
|
|
|
9
|
-
**Stop writing legacy Spigot code like it's 2014. Build for modern Paper & Folia with pure speed, thread-safety, and
|
|
9
|
+
**Stop writing legacy Spigot code like it's 2014. Build for modern Paper & Folia (1.21+ through 26.x) with pure speed, thread-safety, zero lag, and multi-agent AI intelligence.**
|
|
10
10
|
|
|
11
|
-
[](https://papermc.io)
|
|
12
12
|
[](https://github.com/PaperMC/Folia)
|
|
13
|
-
[](https://adoptium.net)
|
|
13
|
+
[](https://adoptium.net)
|
|
14
|
+
[](docs/13-multi-agent-system-and-tooling.md)
|
|
14
15
|
[](https://www.npmjs.com/package/papermc-skill)
|
|
15
16
|
[](https://github.com/ardianryan/papermc-skill/releases/latest)
|
|
16
17
|
[](LICENSE)
|
|
17
18
|
|
|
18
|
-
[⚡ Quickstart](#-instant-quickstart-5-seconds) • [💎 Key Features](#-why-modern-paper-matters) • [📚
|
|
19
|
+
[⚡ Quickstart](#-instant-quickstart-5-seconds) • [🤖 Multi-Agent Setup](#-universal-ai-agent-installation) • [💎 Key Features](#-why-modern-paper-matters) • [📚 13 Masterclass Guides](#-13-masterclass-technical-guides) • [⚡ Code Generators](#-overpowered-op-code-generators)
|
|
19
20
|
|
|
20
21
|
---
|
|
21
22
|
|
|
@@ -23,50 +24,97 @@
|
|
|
23
24
|
|
|
24
25
|
## 🚀 Instant Quickstart (5 Seconds!)
|
|
25
26
|
|
|
26
|
-
|
|
27
|
+
Scaffold a production-grade, Folia-ready Paper plugin right now with **one command**:
|
|
27
28
|
|
|
28
29
|
```bash
|
|
29
30
|
npx papermc-skill create MyEpicPlugin
|
|
30
31
|
```
|
|
31
32
|
|
|
32
|
-
|
|
33
|
+
Install the AI skill across all your coding agents (**Antigravity**, **Claude Code**, **Codex**, **Cursor**, **DeepSeek**, **Paseo**, **pi.dev**, **Windsurf**):
|
|
33
34
|
|
|
34
35
|
```bash
|
|
35
|
-
npx papermc-skill install-skill --
|
|
36
|
+
npx papermc-skill install-skill --all
|
|
36
37
|
```
|
|
37
38
|
|
|
38
|
-
|
|
39
|
+
Generate modern **DataComponent** items or **Display Entity** holograms instantly:
|
|
39
40
|
```bash
|
|
40
|
-
npx papermc-skill
|
|
41
|
+
npx papermc-skill generate component-item EpicRelicBuilder
|
|
42
|
+
npx papermc-skill generate display-entity HologramController
|
|
41
43
|
```
|
|
42
44
|
|
|
43
|
-
|
|
45
|
+
Audit any plugin codebase for exploits, dupe glitches, memory leaks, and anti-patterns:
|
|
46
|
+
```bash
|
|
47
|
+
npx papermc-skill audit
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Query the newest Minecraft & PaperMC releases from the official API:
|
|
44
51
|
```bash
|
|
45
52
|
npx papermc-skill check-update
|
|
46
53
|
```
|
|
47
54
|
|
|
48
|
-
|
|
55
|
+
Browse architectural cheat sheets directly in your terminal:
|
|
49
56
|
```bash
|
|
50
|
-
npx papermc-skill
|
|
57
|
+
npx papermc-skill docs
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## 🤖 Universal AI Agent Installation
|
|
63
|
+
|
|
64
|
+
Integrate the skill into your preferred AI agent environment with native workspace rules and global configurations:
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
# Interactive selection menu
|
|
68
|
+
npx papermc-skill install-skill
|
|
69
|
+
|
|
70
|
+
# Install to ALL supported agents at once
|
|
71
|
+
npx papermc-skill install-skill --all
|
|
72
|
+
|
|
73
|
+
# Or target specific platforms:
|
|
74
|
+
npx papermc-skill install-skill --agent agy # Google Antigravity & AGY CLI (~/.gemini/config/skills)
|
|
75
|
+
npx papermc-skill install-skill --agent claude # Claude Code (~/.claude & workspace CLAUDE.md)
|
|
76
|
+
npx papermc-skill install-skill --agent codex # OpenAI Codex (~/.codex & workspace CODEX.md)
|
|
77
|
+
npx papermc-skill install-skill --agent cursor # Cursor (.cursor/rules & .cursorrules)
|
|
78
|
+
npx papermc-skill install-skill --agent deepseek # DeepSeek Harness (~/.deepseek & DEEPSEEK.md)
|
|
79
|
+
npx papermc-skill install-skill --agent paseo # Paseo (~/.paseo & .paseo/rules.md)
|
|
80
|
+
npx papermc-skill install-skill --agent pi # pi.dev (~/.pi & .pi/rules.md)
|
|
81
|
+
npx papermc-skill install-skill --agent windsurf # Windsurf (.windsurfrules)
|
|
51
82
|
```
|
|
52
83
|
|
|
84
|
+
See [**Guide 13: Multi-Agent System & Tooling**](docs/13-multi-agent-system-and-tooling.md) for full configuration details.
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## ⚡ Overpowered (OP) Code Generators
|
|
89
|
+
|
|
90
|
+
Scaffold exploit-proof, modern patterns into your plugin with zero boilerplate:
|
|
91
|
+
|
|
92
|
+
| Command | Generated Artifact | Highlights |
|
|
93
|
+
| :--- | :--- | :--- |
|
|
94
|
+
| `npx papermc-skill generate component-item` | `ModernItemBuilder.java` | MC 1.20.5+ / 1.21+ / 26.x Data Components. Zero NBT, custom model data, food props, glint override. |
|
|
95
|
+
| `npx papermc-skill generate display-entity` | `DisplayHologramEngine.java` | Zero-tick lag TextDisplay & ItemDisplay with smooth client-side JOML Matrix4f interpolation. |
|
|
96
|
+
| `npx papermc-skill generate mace-combat` | `MaceKineticCombatListener.java` | 1.21 Tricky Trials Mace smash physics, height-scaled damage, particle shockwave knockback. |
|
|
97
|
+
| `npx papermc-skill generate menu-gui` | `SafeMenuController.java` | Anti-dupe inventory menu with 200ms click debounce, cursor safety, and drag cancellation. |
|
|
98
|
+
|
|
53
99
|
---
|
|
54
100
|
|
|
55
101
|
## 💎 Why Modern Paper Matters
|
|
56
102
|
|
|
57
103
|
The Minecraft server ecosystem has evolved dramatically. Legacy habits lead to server lag spikes, thread collisions, and fatal crashes on modern engines:
|
|
58
104
|
|
|
59
|
-
| Feature | 💀 Legacy Spigot / Bukkit | ⚡ Modern Paper & Folia (1.
|
|
105
|
+
| Feature | 💀 Legacy Spigot / Bukkit | ⚡ Modern Paper & Folia (1.21+ / 26.x) |
|
|
60
106
|
| :--- | :--- | :--- |
|
|
61
107
|
| **Color & Text** | `ChatColor.RED + "§lText"` | **Kyori Adventure & MiniMessage**: `<gradient:#ff007f:#7f00ff><bold>Text</bold></gradient>` |
|
|
62
|
-
| **
|
|
108
|
+
| **Item Data System** | Legacy NBT / Lore hacking | **Data Components (`DataComponentTypes`)**: Type-safe, validated, zero-reflection item mutations. |
|
|
109
|
+
| **Floating Visuals** | Laggy `ArmorStand` entities | **Display Entities (`TextDisplay`, `ItemDisplay`)**: Smooth JOML Matrix4f client interpolation, zero CPU tick overhead. |
|
|
110
|
+
| **Persistent Data** | Raw JSON files / custom lore | **PersistentDataContainer (PDC)**: Native, type-safe data on Items, Entities, Chunks, and Worlds. |
|
|
63
111
|
| **Command System** | `plugin.yml` + `setExecutor(...)` | **Paper Native Brigadier**: Client-side syntax validation, auto tab-completion directly in Mojang's engine. |
|
|
64
112
|
| **Multi-Threading** | Single main thread (`BukkitScheduler`) | **Threaded Regions (Folia)**: Independent regional ticking via `RegionScheduler` & `EntityScheduler`. |
|
|
65
113
|
| **Server Internals** | Obfuscated Spigot remapping | **Paperweight Userdev**: Direct, unmapped access to Mojang Mappings (`net.minecraft.*`) at runtime. |
|
|
66
114
|
|
|
67
115
|
---
|
|
68
116
|
|
|
69
|
-
## 📚
|
|
117
|
+
## 📚 13 Masterclass Technical Guides
|
|
70
118
|
|
|
71
119
|
Written by developers for developers, covering everything from basic setup to high-throughput concurrency:
|
|
72
120
|
|
|
@@ -83,6 +131,8 @@ Written by developers for developers, covering everything from basic setup to hi
|
|
|
83
131
|
| **09** | [Custom Items, Abilities & Combat](https://github.com/ardianryan/papermc-skill/blob/main/docs/09-custom-items-and-combat.md) | Raycasting spells (`rayTraceEntities`), particle beam effects, vanilla visual cooldowns, and SFX. |
|
|
84
132
|
| **10** | [Asynchronous Database Storage](https://github.com/ardianryan/papermc-skill/blob/main/docs/10-database-and-storage.md) | SQLite & MySQL HikariCP connection pooling, thread-safe asynchronous DAO pattern with `CompletableFuture`. |
|
|
85
133
|
| **11** | [Security & Exploit Prevention](https://github.com/ardianryan/papermc-skill/blob/main/docs/11-security-and-exploit-prevention.md) | Eliminating dupe glitches, inventory race conditions, PDC tamper verification, numeric/economy validation, and packet DoS defense. |
|
|
134
|
+
| **12** | [Modern Data Components & Display Entities](https://github.com/ardianryan/papermc-skill/blob/main/docs/12-data-components-and-display-entities.md) | Paradigm shift from legacy NBT to DataComponentTypes (1.20.5 - 26.x), JOML Matrix4f transforms, and smooth Display Entity holograms. |
|
|
135
|
+
| **13** | [Multi-Agent System & Universal Tooling](https://github.com/ardianryan/papermc-skill/blob/main/docs/13-multi-agent-system-and-tooling.md) | Complete multi-agent integration guide for Antigravity, Claude Code, Codex, Cursor, DeepSeek, Paseo, and pi.dev. |
|
|
86
136
|
|
|
87
137
|
---
|
|
88
138
|
|
|
@@ -119,23 +169,13 @@ cd templates/paper-modern-template
|
|
|
119
169
|
|
|
120
170
|
---
|
|
121
171
|
|
|
122
|
-
## 🤖 AI Agent Integration
|
|
123
|
-
|
|
124
|
-
This repository includes a machine-readable coding skill in [`skills/paper-plugin-dev/SKILL.md`](skills/paper-plugin-dev/SKILL.md).
|
|
125
|
-
|
|
126
|
-
When pair-programming with AI coding agents:
|
|
127
|
-
- Tell your agent: *"Use the `paper-plugin-dev` skill"*.
|
|
128
|
-
- The agent will automatically generate Folia-safe schedulers, MiniMessage components, Brigadier command trees, and PDC data holders with zero legacy anti-patterns.
|
|
129
|
-
|
|
130
|
-
---
|
|
131
|
-
|
|
132
172
|
## 📦 Packages & Distribution
|
|
133
173
|
|
|
134
174
|
| Channel | Identifier / Command | Link |
|
|
135
175
|
| :--- | :--- | :--- |
|
|
136
176
|
| **NPM Global** | `npx papermc-skill` | [](https://www.npmjs.com/package/papermc-skill) |
|
|
137
177
|
| **GitHub Packages** | `@ardianryan/papermc-skill` | [GitHub Packages Hub](https://github.com/users/ardianryan/packages?repo_name=papermc-skill) |
|
|
138
|
-
| **Release Asset** | `papermc-skill-v1.
|
|
178
|
+
| **Release Asset** | `papermc-skill-v1.2.0.zip` | [Latest GitHub Release](https://github.com/ardianryan/papermc-skill/releases/latest) |
|
|
139
179
|
|
|
140
180
|
---
|
|
141
181
|
|