minecode-mcp 0.1.0__tar.gz
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.
- minecode_mcp-0.1.0/.gitignore +12 -0
- minecode_mcp-0.1.0/LICENSE +21 -0
- minecode_mcp-0.1.0/PKG-INFO +320 -0
- minecode_mcp-0.1.0/example/crystal_dimension/README.md +98 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/dimension/crystal_void.json +11 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/dimension_type/crystal_void.json +23 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/build_tower.mcfunction +23 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/give_kit.mcfunction +15 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/help.mcfunction +11 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/load.mcfunction +5 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/return.mcfunction +5 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/spawn_boss.mcfunction +9 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/teleport.mcfunction +17 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/tick.mcfunction +5 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/biome/crystal_plains.json +65 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/configured_feature/amethyst_clusters.json +35 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/configured_feature/crystal_spikes.json +42 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/configured_feature/ore_crystal_diamond.json +18 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/configured_feature/ore_crystal_emerald.json +18 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/noise_settings/crystal_void.json +93 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/placed_feature/amethyst_clusters.json +19 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/placed_feature/crystal_spikes.json +19 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/placed_feature/ore_crystal_diamond.json +27 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/placed_feature/ore_crystal_emerald.json +27 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/minecraft/tags/function/load.json +5 -0
- minecode_mcp-0.1.0/example/crystal_dimension/data/minecraft/tags/function/tick.json +5 -0
- minecode_mcp-0.1.0/example/crystal_dimension/pack.mcmeta +6 -0
- minecode_mcp-0.1.0/minecode/__init__.py +6 -0
- minecode_mcp-0.1.0/minecode/scrappers/__init__.py +7 -0
- minecode_mcp-0.1.0/minecode/scrappers/minecraftwiki.py +518 -0
- minecode_mcp-0.1.0/minecode/scrappers/misode.py +570 -0
- minecode_mcp-0.1.0/minecode/scrappers/mojira.py +181 -0
- minecode_mcp-0.1.0/minecode/scrappers/spyglass.py +432 -0
- minecode_mcp-0.1.0/minecode/server.py +913 -0
- minecode_mcp-0.1.0/pyproject.toml +49 -0
- minecode_mcp-0.1.0/readme.md +295 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Your Name
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: minecode-mcp
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: MCP Server for Minecraft datapack development with wiki, Spyglass, Misode, and Mojira integrations
|
|
5
|
+
Project-URL: Homepage, https://github.com/yourusername/minecode-mcp
|
|
6
|
+
Project-URL: Repository, https://github.com/yourusername/minecode-mcp
|
|
7
|
+
Project-URL: Issues, https://github.com/yourusername/minecode-mcp/issues
|
|
8
|
+
Author-email: Your Name <your.email@example.com>
|
|
9
|
+
License-Expression: MIT
|
|
10
|
+
License-File: LICENSE
|
|
11
|
+
Keywords: ai,copilot,datapack,mcp,minecraft
|
|
12
|
+
Classifier: Development Status :: 4 - Beta
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Topic :: Games/Entertainment
|
|
20
|
+
Requires-Python: >=3.10
|
|
21
|
+
Requires-Dist: beautifulsoup4>=4.12.0
|
|
22
|
+
Requires-Dist: mcp>=1.25.0
|
|
23
|
+
Requires-Dist: requests>=2.31.0
|
|
24
|
+
Description-Content-Type: text/markdown
|
|
25
|
+
|
|
26
|
+
# 🎮 MineCode
|
|
27
|
+
|
|
28
|
+
**MCP Server for Minecraft Datapack Development**
|
|
29
|
+
|
|
30
|
+
MineCode is a [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) server that supercharges AI assistants like **GitHub Copilot**, **Claude**, and **ChatGPT** with Minecraft-specific knowledge and tools. It provides real-time access to Minecraft data, wiki information, bug tracking, and datapack generators.
|
|
31
|
+
|
|
32
|
+

|
|
33
|
+

|
|
34
|
+

|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## ✨ Features
|
|
39
|
+
|
|
40
|
+
- **19 MCP Tools** for comprehensive Minecraft development
|
|
41
|
+
- **Real-time Data** from multiple authoritative sources
|
|
42
|
+
- **Version-specific** information (blocks, items, commands, registries)
|
|
43
|
+
- **Datapack Generators** access to loot tables, recipes, biomes, dimensions
|
|
44
|
+
- **Bug Tracking** integration with Mojira
|
|
45
|
+
- **Works with** VS Code, Claude Desktop, and any MCP-compatible client
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## 🚀 Quick Start
|
|
50
|
+
|
|
51
|
+
### Installation
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
# From PyPI (recommended)
|
|
55
|
+
pip install minecode-mcp
|
|
56
|
+
|
|
57
|
+
# Or from GitHub
|
|
58
|
+
pip install git+https://github.com/yourusername/minecode-mcp.git
|
|
59
|
+
|
|
60
|
+
# Or for development
|
|
61
|
+
git clone https://github.com/yourusername/minecode-mcp.git
|
|
62
|
+
cd minecode-mcp
|
|
63
|
+
pip install -e .
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### Configuration
|
|
67
|
+
|
|
68
|
+
#### VS Code with GitHub Copilot
|
|
69
|
+
|
|
70
|
+
Create `.vscode/mcp.json` in your workspace:
|
|
71
|
+
|
|
72
|
+
```json
|
|
73
|
+
{
|
|
74
|
+
"servers": {
|
|
75
|
+
"minecode": {
|
|
76
|
+
"type": "stdio",
|
|
77
|
+
"command": "minecode"
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
#### Claude Desktop
|
|
84
|
+
|
|
85
|
+
Add to your `claude_desktop_config.json`:
|
|
86
|
+
|
|
87
|
+
```json
|
|
88
|
+
{
|
|
89
|
+
"mcpServers": {
|
|
90
|
+
"minecode": {
|
|
91
|
+
"command": "minecode"
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**Config file locations:**
|
|
98
|
+
| OS | Path |
|
|
99
|
+
|----|------|
|
|
100
|
+
| Windows | `%APPDATA%\Claude\claude_desktop_config.json` |
|
|
101
|
+
| macOS | `~/Library/Application Support/Claude/claude_desktop_config.json` |
|
|
102
|
+
| Linux | `~/.config/Claude/claude_desktop_config.json` |
|
|
103
|
+
|
|
104
|
+
#### Alternative (using Python directly)
|
|
105
|
+
|
|
106
|
+
```json
|
|
107
|
+
{
|
|
108
|
+
"mcpServers": {
|
|
109
|
+
"minecode": {
|
|
110
|
+
"command": "python",
|
|
111
|
+
"args": ["-m", "minecode.server"]
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## 🛠️ Available Tools
|
|
120
|
+
|
|
121
|
+
### Basic Tools
|
|
122
|
+
| Tool | Description |
|
|
123
|
+
|------|-------------|
|
|
124
|
+
| `hello_world` | Test connectivity with a hello message |
|
|
125
|
+
| `get_minecraft_version` | Get info about a specific Minecraft version |
|
|
126
|
+
| `validate_datapack` | Validate datapack syntax and structure |
|
|
127
|
+
| `list_commands` | List all Minecraft commands for a version |
|
|
128
|
+
|
|
129
|
+
### 📚 Minecraft Wiki Tools
|
|
130
|
+
| Tool | Description |
|
|
131
|
+
|------|-------------|
|
|
132
|
+
| `search_wiki` | Search Minecraft Wiki for pages |
|
|
133
|
+
| `get_wiki_page` | Get content and summary of a wiki page |
|
|
134
|
+
| `get_wiki_commands` | Get list of all Minecraft commands from wiki |
|
|
135
|
+
| `get_wiki_category` | Get all pages in a wiki category (Blocks, Items, Mobs, etc.) |
|
|
136
|
+
|
|
137
|
+
### 🐛 Mojira Bug Tracker Tools
|
|
138
|
+
| Tool | Description |
|
|
139
|
+
|------|-------------|
|
|
140
|
+
| `search_mojira` | Search for Minecraft bug reports with filters |
|
|
141
|
+
|
|
142
|
+
### 🔍 Spyglass API Tools
|
|
143
|
+
| Tool | Description |
|
|
144
|
+
|------|-------------|
|
|
145
|
+
| `spyglass_get_versions` | Get all Minecraft Java Edition versions with pack formats |
|
|
146
|
+
| `spyglass_get_registries` | Get registry entries (items, blocks, entities, biomes, enchantments) |
|
|
147
|
+
| `spyglass_get_block_states` | Get block state properties and default values |
|
|
148
|
+
| `spyglass_get_commands` | Get command syntax tree for any command |
|
|
149
|
+
|
|
150
|
+
### 🎨 Misode Generator Tools
|
|
151
|
+
| Tool | Description |
|
|
152
|
+
|------|-------------|
|
|
153
|
+
| `misode_get_generators` | List all available datapack generators |
|
|
154
|
+
| `misode_get_presets` | Get vanilla presets for any generator type |
|
|
155
|
+
| `misode_get_preset_data` | Get full JSON data for a specific preset |
|
|
156
|
+
| `misode_get_loot_tables` | Get loot tables by category (blocks, chests, entities) |
|
|
157
|
+
| `misode_get_recipes` | Get recipes with type filtering (crafting, smelting, etc.) |
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## 💡 Usage Examples
|
|
162
|
+
|
|
163
|
+
### Ask your AI assistant:
|
|
164
|
+
|
|
165
|
+
**Creating datapacks:**
|
|
166
|
+
> "Create a custom dimension with floating islands and rare ores"
|
|
167
|
+
|
|
168
|
+
**Looking up game data:**
|
|
169
|
+
> "What are all the block states for a redstone repeater in 1.21?"
|
|
170
|
+
|
|
171
|
+
**Finding recipes:**
|
|
172
|
+
> "Show me the crafting recipe for a beacon"
|
|
173
|
+
|
|
174
|
+
**Checking bugs:**
|
|
175
|
+
> "Search Mojira for bugs related to elytra"
|
|
176
|
+
|
|
177
|
+
**Getting command syntax:**
|
|
178
|
+
> "What's the syntax for the /execute command?"
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## 📁 Project Structure
|
|
183
|
+
|
|
184
|
+
```
|
|
185
|
+
MineCode/
|
|
186
|
+
├── minecode/ # Main package
|
|
187
|
+
│ ├── __init__.py
|
|
188
|
+
│ ├── server.py # MCP server (19 tools)
|
|
189
|
+
│ └── scrappers/ # Data fetching modules
|
|
190
|
+
│ ├── __init__.py
|
|
191
|
+
│ ├── minecraftwiki.py # Minecraft Wiki API client
|
|
192
|
+
│ ├── mojira.py # Mojira bug tracker scraper
|
|
193
|
+
│ ├── spyglass.py # Spyglass MC API client
|
|
194
|
+
│ └── misode.py # Misode mcmeta client
|
|
195
|
+
├── example/ # Example datapacks
|
|
196
|
+
│ └── crystal_dimension/ # Custom dimension example
|
|
197
|
+
├── server.py # Standalone server (development)
|
|
198
|
+
├── client.py # Test client
|
|
199
|
+
├── pyproject.toml # Package configuration
|
|
200
|
+
├── requirements.txt # Dependencies
|
|
201
|
+
├── LICENSE # MIT License
|
|
202
|
+
└── .vscode/
|
|
203
|
+
└── mcp.json # VS Code MCP configuration
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
## 🌐 Data Sources
|
|
209
|
+
|
|
210
|
+
| Source | URL | Data Provided |
|
|
211
|
+
|--------|-----|---------------|
|
|
212
|
+
| **Minecraft Wiki** | [minecraft.wiki](https://minecraft.wiki) | Game mechanics, items, mobs, tutorials |
|
|
213
|
+
| **Mojira** | [bugs.mojang.com](https://bugs.mojang.com) | Bug reports, known issues |
|
|
214
|
+
| **Spyglass MC** | [api.spyglassmc.com](https://api.spyglassmc.com) | Registries, commands, block states |
|
|
215
|
+
| **Misode mcmeta** | [github.com/misode/mcmeta](https://github.com/misode/mcmeta) | Vanilla presets, generators |
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## 🔧 Development
|
|
220
|
+
|
|
221
|
+
### Setup
|
|
222
|
+
|
|
223
|
+
```bash
|
|
224
|
+
# Clone the repository
|
|
225
|
+
git clone https://github.com/yourusername/minecode-mcp.git
|
|
226
|
+
cd minecode-mcp
|
|
227
|
+
|
|
228
|
+
# Create virtual environment
|
|
229
|
+
python -m venv venv
|
|
230
|
+
venv\Scripts\activate # Windows
|
|
231
|
+
source venv/bin/activate # Linux/Mac
|
|
232
|
+
|
|
233
|
+
# Install dependencies
|
|
234
|
+
pip install -r requirements.txt
|
|
235
|
+
|
|
236
|
+
# Install in editable mode
|
|
237
|
+
pip install -e .
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
### Testing
|
|
241
|
+
|
|
242
|
+
```bash
|
|
243
|
+
# Test the MCP server with the test client
|
|
244
|
+
python client.py
|
|
245
|
+
|
|
246
|
+
# Test individual scrapers
|
|
247
|
+
python -c "from minecode.scrappers import spyglass; print(spyglass.get_versions())"
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
### Building & Publishing
|
|
251
|
+
|
|
252
|
+
```bash
|
|
253
|
+
# Install build tools
|
|
254
|
+
pip install build twine
|
|
255
|
+
|
|
256
|
+
# Build the package
|
|
257
|
+
python -m build
|
|
258
|
+
|
|
259
|
+
# Upload to TestPyPI (for testing)
|
|
260
|
+
twine upload --repository testpypi dist/*
|
|
261
|
+
|
|
262
|
+
# Upload to PyPI (production)
|
|
263
|
+
twine upload dist/*
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
---
|
|
267
|
+
|
|
268
|
+
## 📦 Example Datapack
|
|
269
|
+
|
|
270
|
+
The `example/crystal_dimension/` folder contains a complete datapack demonstrating MineCode's capabilities:
|
|
271
|
+
|
|
272
|
+
- **Custom Dimension**: "The Crystal Void" with unique terrain
|
|
273
|
+
- **Custom Biome**: Purple/cyan themed with special effects
|
|
274
|
+
- **Custom Features**: Crystal ores, amethyst spikes, decorations
|
|
275
|
+
- **8 Functions**: Teleport, boss spawning, item kits, building tools
|
|
276
|
+
|
|
277
|
+
### Functions included:
|
|
278
|
+
| Function | Description |
|
|
279
|
+
|----------|-------------|
|
|
280
|
+
| `/function crystal:teleport` | Teleport to The Crystal Void |
|
|
281
|
+
| `/function crystal:return` | Return to the Overworld |
|
|
282
|
+
| `/function crystal:give_kit` | Get Crystal Explorer kit |
|
|
283
|
+
| `/function crystal:spawn_boss` | Summon the Crystal Guardian (500 HP) |
|
|
284
|
+
| `/function crystal:build_tower` | Build a decorative Crystal Tower |
|
|
285
|
+
| `/function crystal:help` | Show all available commands |
|
|
286
|
+
|
|
287
|
+
To use it, copy `crystal_dimension/` to your Minecraft world's `datapacks/` folder.
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
## 🤝 Contributing
|
|
292
|
+
|
|
293
|
+
Contributions are welcome! Please feel free to submit issues and pull requests.
|
|
294
|
+
|
|
295
|
+
1. Fork the repository
|
|
296
|
+
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
|
|
297
|
+
3. Commit your changes (`git commit -m 'Add amazing feature'`)
|
|
298
|
+
4. Push to the branch (`git push origin feature/amazing-feature`)
|
|
299
|
+
5. Open a Pull Request
|
|
300
|
+
|
|
301
|
+
---
|
|
302
|
+
|
|
303
|
+
## 📄 License
|
|
304
|
+
|
|
305
|
+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
|
|
306
|
+
|
|
307
|
+
---
|
|
308
|
+
|
|
309
|
+
## 🙏 Acknowledgments
|
|
310
|
+
|
|
311
|
+
- [Model Context Protocol](https://modelcontextprotocol.io/) - The protocol that makes this possible
|
|
312
|
+
- [Spyglass MC](https://spyglassmc.com/) - For the comprehensive Minecraft data API
|
|
313
|
+
- [Misode](https://misode.github.io/) - For the datapack generators and vanilla presets
|
|
314
|
+
- [Minecraft Wiki](https://minecraft.wiki/) - For the game documentation
|
|
315
|
+
|
|
316
|
+
---
|
|
317
|
+
|
|
318
|
+
<p align="center">
|
|
319
|
+
Made with 💜 for the Minecraft community
|
|
320
|
+
</p>
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# Crystal Dimension Datapack
|
|
2
|
+
|
|
3
|
+
A custom Minecraft datapack featuring **The Crystal Void** - a unique dimension filled with crystal formations, rare ores, and mysterious creatures.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
1. Copy the `crystal_dimension` folder into your Minecraft world's `datapacks` folder
|
|
8
|
+
2. Run `/reload` in-game or restart the world
|
|
9
|
+
3. You should see the message: `[Crystal Dimension] Datapack loaded!`
|
|
10
|
+
|
|
11
|
+
## Features
|
|
12
|
+
|
|
13
|
+
### Custom Dimension: The Crystal Void
|
|
14
|
+
- Unique terrain with amethyst and crystal formations
|
|
15
|
+
- Custom sky and fog colors (purple/cyan theme)
|
|
16
|
+
- No rain or precipitation
|
|
17
|
+
- Special ambient lighting effects
|
|
18
|
+
|
|
19
|
+
### Custom Worldgen Features
|
|
20
|
+
- **Crystal Diamond Ore** - Large veins of diamond blocks
|
|
21
|
+
- **Crystal Emerald Ore** - Rich emerald deposits
|
|
22
|
+
- **Crystal Spikes** - Towering amethyst block formations
|
|
23
|
+
- **Amethyst Clusters** - Decorative cluster patches
|
|
24
|
+
|
|
25
|
+
### Mob Spawns
|
|
26
|
+
- **Allays** - Friendly crystal creatures
|
|
27
|
+
- **Phantoms** - Night hunters of the void
|
|
28
|
+
- **Endermen** - Mysterious wanderers
|
|
29
|
+
|
|
30
|
+
## Commands
|
|
31
|
+
|
|
32
|
+
| Command | Description |
|
|
33
|
+
|---------|-------------|
|
|
34
|
+
| `/function crystal:help` | Display all available commands |
|
|
35
|
+
| `/function crystal:teleport` | Teleport to The Crystal Void |
|
|
36
|
+
| `/function crystal:return` | Return to the Overworld |
|
|
37
|
+
| `/function crystal:give_kit` | Receive the Crystal Explorer kit |
|
|
38
|
+
| `/function crystal:spawn_boss` | Summon the Crystal Guardian boss |
|
|
39
|
+
| `/function crystal:build_tower` | Build a decorative Crystal Tower |
|
|
40
|
+
|
|
41
|
+
## Tips
|
|
42
|
+
|
|
43
|
+
- When entering The Crystal Void, you'll automatically receive night vision
|
|
44
|
+
- The Crystal Guardian boss has 500 HP and deals 25 damage - be prepared!
|
|
45
|
+
- Use the Explorer kit's elytra and fireworks to navigate the dimension
|
|
46
|
+
- Mine budding amethyst blocks from the Crystal Towers to farm amethyst shards
|
|
47
|
+
|
|
48
|
+
## Pack Information
|
|
49
|
+
|
|
50
|
+
- **Pack Format:** 94 (Minecraft 1.21.11)
|
|
51
|
+
- **Namespace:** `crystal`
|
|
52
|
+
- **Author:** Generated with MineCode
|
|
53
|
+
|
|
54
|
+
## File Structure
|
|
55
|
+
|
|
56
|
+
```
|
|
57
|
+
crystal_dimension/
|
|
58
|
+
├── pack.mcmeta
|
|
59
|
+
└── data/
|
|
60
|
+
├── crystal/
|
|
61
|
+
│ ├── dimension/
|
|
62
|
+
│ │ └── crystal_void.json
|
|
63
|
+
│ ├── dimension_type/
|
|
64
|
+
│ │ └── crystal_type.json
|
|
65
|
+
│ ├── function/
|
|
66
|
+
│ │ ├── load.mcfunction
|
|
67
|
+
│ │ ├── tick.mcfunction
|
|
68
|
+
│ │ ├── teleport.mcfunction
|
|
69
|
+
│ │ ├── return.mcfunction
|
|
70
|
+
│ │ ├── give_kit.mcfunction
|
|
71
|
+
│ │ ├── spawn_boss.mcfunction
|
|
72
|
+
│ │ ├── build_tower.mcfunction
|
|
73
|
+
│ │ └── help.mcfunction
|
|
74
|
+
│ └── worldgen/
|
|
75
|
+
│ ├── biome/
|
|
76
|
+
│ │ └── crystal_plains.json
|
|
77
|
+
│ ├── configured_feature/
|
|
78
|
+
│ │ ├── ore_crystal_diamond.json
|
|
79
|
+
│ │ ├── ore_crystal_emerald.json
|
|
80
|
+
│ │ ├── crystal_spikes.json
|
|
81
|
+
│ │ └── amethyst_clusters.json
|
|
82
|
+
│ ├── noise_settings/
|
|
83
|
+
│ │ └── crystal_noise.json
|
|
84
|
+
│ └── placed_feature/
|
|
85
|
+
│ ├── ore_crystal_diamond.json
|
|
86
|
+
│ ├── ore_crystal_emerald.json
|
|
87
|
+
│ ├── crystal_spikes.json
|
|
88
|
+
│ └── amethyst_clusters.json
|
|
89
|
+
└── minecraft/
|
|
90
|
+
└── tags/
|
|
91
|
+
└── function/
|
|
92
|
+
├── load.json
|
|
93
|
+
└── tick.json
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## License
|
|
97
|
+
|
|
98
|
+
Free to use and modify. Created as an example for MineCode MCP tools.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{
|
|
2
|
+
"ambient_light": 0.5,
|
|
3
|
+
"bed_works": false,
|
|
4
|
+
"coordinate_scale": 8.0,
|
|
5
|
+
"effects": "minecraft:the_end",
|
|
6
|
+
"has_ceiling": false,
|
|
7
|
+
"has_raids": false,
|
|
8
|
+
"has_skylight": true,
|
|
9
|
+
"height": 256,
|
|
10
|
+
"infiniburn": "#minecraft:infiniburn_end",
|
|
11
|
+
"logical_height": 256,
|
|
12
|
+
"min_y": 0,
|
|
13
|
+
"monster_spawn_block_light_limit": 7,
|
|
14
|
+
"monster_spawn_light_level": {
|
|
15
|
+
"type": "minecraft:uniform",
|
|
16
|
+
"max_inclusive": 7,
|
|
17
|
+
"min_inclusive": 0
|
|
18
|
+
},
|
|
19
|
+
"natural": false,
|
|
20
|
+
"piglin_safe": true,
|
|
21
|
+
"respawn_anchor_works": true,
|
|
22
|
+
"ultrawarm": false
|
|
23
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Create a Crystal Structure at current position
|
|
2
|
+
# Builds a decorative amethyst tower
|
|
3
|
+
|
|
4
|
+
fill ~ ~ ~ ~2 ~10 ~2 minecraft:amethyst_block hollow
|
|
5
|
+
setblock ~1 ~11 ~1 minecraft:amethyst_cluster[facing=up]
|
|
6
|
+
setblock ~1 ~11 ~ minecraft:amethyst_cluster[facing=up]
|
|
7
|
+
setblock ~ ~11 ~1 minecraft:amethyst_cluster[facing=up]
|
|
8
|
+
setblock ~2 ~11 ~1 minecraft:amethyst_cluster[facing=up]
|
|
9
|
+
setblock ~1 ~11 ~2 minecraft:amethyst_cluster[facing=up]
|
|
10
|
+
|
|
11
|
+
setblock ~1 ~5 ~-1 minecraft:amethyst_cluster[facing=south]
|
|
12
|
+
setblock ~1 ~5 ~3 minecraft:amethyst_cluster[facing=north]
|
|
13
|
+
setblock ~-1 ~5 ~1 minecraft:amethyst_cluster[facing=east]
|
|
14
|
+
setblock ~3 ~5 ~1 minecraft:amethyst_cluster[facing=west]
|
|
15
|
+
|
|
16
|
+
fill ~1 ~ ~1 ~1 ~10 ~1 minecraft:budding_amethyst
|
|
17
|
+
|
|
18
|
+
setblock ~1 ~12 ~1 minecraft:beacon
|
|
19
|
+
fill ~ ~13 ~ ~2 ~13 ~2 minecraft:tinted_glass
|
|
20
|
+
fill ~1 ~-1 ~1 ~1 ~-5 ~1 minecraft:iron_block
|
|
21
|
+
|
|
22
|
+
tellraw @s {"text":"[Crystal Dimension] Crystal Tower created!","color":"light_purple"}
|
|
23
|
+
playsound minecraft:block.beacon.activate master @s ~ ~ ~ 1 1
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Give player a Crystal Explorer kit
|
|
2
|
+
# Includes tools, armor, and supplies for exploring the Crystal Void
|
|
3
|
+
|
|
4
|
+
give @s minecraft:diamond_pickaxe{Enchantments:[{id:"fortune",lvl:3},{id:"efficiency",lvl:5},{id:"unbreaking",lvl:3}]} 1
|
|
5
|
+
give @s minecraft:netherite_sword{Enchantments:[{id:"sharpness",lvl:5},{id:"looting",lvl:3}]} 1
|
|
6
|
+
give @s minecraft:elytra 1
|
|
7
|
+
give @s minecraft:firework_rocket{Fireworks:{Flight:3}} 64
|
|
8
|
+
give @s minecraft:golden_apple 16
|
|
9
|
+
give @s minecraft:ender_pearl 16
|
|
10
|
+
give @s minecraft:amethyst_shard 64
|
|
11
|
+
give @s minecraft:spyglass 1
|
|
12
|
+
give @s minecraft:torch 64
|
|
13
|
+
|
|
14
|
+
tellraw @s {"text":"[Crystal Dimension] You received the Crystal Explorer kit!","color":"gold"}
|
|
15
|
+
playsound minecraft:entity.player.levelup master @s ~ ~ ~ 1 1
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Display help for Crystal Dimension commands
|
|
2
|
+
tellraw @s {"text":"=== Crystal Dimension Commands ===","color":"gold","bold":true}
|
|
3
|
+
tellraw @s {"text":""}
|
|
4
|
+
tellraw @s [{"text":"/function crystal:teleport","color":"aqua"},{"text":" - Teleport to Crystal Void","color":"gray"}]
|
|
5
|
+
tellraw @s [{"text":"/function crystal:return","color":"aqua"},{"text":" - Return to Overworld","color":"gray"}]
|
|
6
|
+
tellraw @s [{"text":"/function crystal:give_kit","color":"aqua"},{"text":" - Get Crystal Explorer kit","color":"gray"}]
|
|
7
|
+
tellraw @s [{"text":"/function crystal:spawn_boss","color":"aqua"},{"text":" - Spawn Crystal Guardian boss","color":"gray"}]
|
|
8
|
+
tellraw @s [{"text":"/function crystal:build_tower","color":"aqua"},{"text":" - Build a Crystal Tower","color":"gray"}]
|
|
9
|
+
tellraw @s [{"text":"/function crystal:help","color":"aqua"},{"text":" - Show this help message","color":"gray"}]
|
|
10
|
+
tellraw @s {"text":""}
|
|
11
|
+
tellraw @s {"text":"================================","color":"gold"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Teleport player back to Overworld
|
|
2
|
+
execute in minecraft:overworld run tp @s ~ 100 ~
|
|
3
|
+
title @s title {"text":"Overworld","color":"green","bold":true}
|
|
4
|
+
title @s subtitle {"text":"You have returned","color":"yellow"}
|
|
5
|
+
playsound minecraft:entity.enderman.teleport master @s ~ ~ ~ 1 1
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Spawn Crystal Guardian (custom boss mob)
|
|
2
|
+
# Summons a powerful guardian at the player's location
|
|
3
|
+
|
|
4
|
+
summon minecraft:warden ~ ~ ~ {CustomName:'{"text":"Crystal Guardian","color":"light_purple","bold":true}',CustomNameVisible:1b,Glowing:1b,Attributes:[{Name:"generic.max_health",Base:500},{Name:"generic.attack_damage",Base:25}],ActiveEffects:[{Id:10,Duration:999999,Amplifier:1,ShowParticles:0b}],HandItems:[{id:"minecraft:amethyst_shard",Count:1b},{}]}
|
|
5
|
+
|
|
6
|
+
title @a[distance=..50] title {"text":"CRYSTAL GUARDIAN","color":"dark_purple","bold":true}
|
|
7
|
+
title @a[distance=..50] subtitle {"text":"has awakened!","color":"red"}
|
|
8
|
+
playsound minecraft:entity.warden.emerge hostile @a[distance=..50] ~ ~ ~ 2 0.5
|
|
9
|
+
effect give @a[distance=..20] darkness 5 0
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Teleport player to Crystal Void dimension
|
|
2
|
+
# Creates a safe platform at spawn
|
|
3
|
+
|
|
4
|
+
execute in crystal:crystal_void run setblock 0 64 0 minecraft:amethyst_block
|
|
5
|
+
execute in crystal:crystal_void run setblock 1 64 0 minecraft:amethyst_block
|
|
6
|
+
execute in crystal:crystal_void run setblock -1 64 0 minecraft:amethyst_block
|
|
7
|
+
execute in crystal:crystal_void run setblock 0 64 1 minecraft:amethyst_block
|
|
8
|
+
execute in crystal:crystal_void run setblock 0 64 -1 minecraft:amethyst_block
|
|
9
|
+
execute in crystal:crystal_void run setblock 1 64 1 minecraft:amethyst_block
|
|
10
|
+
execute in crystal:crystal_void run setblock 1 64 -1 minecraft:amethyst_block
|
|
11
|
+
execute in crystal:crystal_void run setblock -1 64 1 minecraft:amethyst_block
|
|
12
|
+
execute in crystal:crystal_void run setblock -1 64 -1 minecraft:amethyst_block
|
|
13
|
+
|
|
14
|
+
execute in crystal:crystal_void run tp @s 0 65 0
|
|
15
|
+
title @s title {"text":"Crystal Void","color":"light_purple","bold":true}
|
|
16
|
+
title @s subtitle {"text":"Welcome to the dimension of crystals","color":"aqua"}
|
|
17
|
+
playsound minecraft:block.amethyst_block.chime master @s ~ ~ ~ 1 0.5
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
{
|
|
2
|
+
"carvers": [],
|
|
3
|
+
"downfall": 0.0,
|
|
4
|
+
"effects": {
|
|
5
|
+
"fog_color": 10518688,
|
|
6
|
+
"mood_sound": {
|
|
7
|
+
"block_search_extent": 8,
|
|
8
|
+
"offset": 2.0,
|
|
9
|
+
"sound": "minecraft:ambient.cave",
|
|
10
|
+
"tick_delay": 6000
|
|
11
|
+
},
|
|
12
|
+
"music_volume": 1.0,
|
|
13
|
+
"sky_color": 8103167,
|
|
14
|
+
"water_color": 10485759,
|
|
15
|
+
"water_fog_color": 8355839,
|
|
16
|
+
"grass_color": 10485759,
|
|
17
|
+
"foliage_color": 10485759
|
|
18
|
+
},
|
|
19
|
+
"features": [
|
|
20
|
+
[],
|
|
21
|
+
[],
|
|
22
|
+
[],
|
|
23
|
+
[],
|
|
24
|
+
[],
|
|
25
|
+
[],
|
|
26
|
+
["crystal:ore_crystal_diamond", "crystal:ore_crystal_emerald"],
|
|
27
|
+
[],
|
|
28
|
+
[],
|
|
29
|
+
["crystal:crystal_spikes", "crystal:amethyst_clusters"],
|
|
30
|
+
[]
|
|
31
|
+
],
|
|
32
|
+
"has_precipitation": false,
|
|
33
|
+
"spawn_costs": {},
|
|
34
|
+
"spawners": {
|
|
35
|
+
"ambient": [],
|
|
36
|
+
"axolotls": [],
|
|
37
|
+
"creature": [
|
|
38
|
+
{
|
|
39
|
+
"type": "minecraft:allay",
|
|
40
|
+
"maxCount": 3,
|
|
41
|
+
"minCount": 1,
|
|
42
|
+
"weight": 10
|
|
43
|
+
}
|
|
44
|
+
],
|
|
45
|
+
"misc": [],
|
|
46
|
+
"monster": [
|
|
47
|
+
{
|
|
48
|
+
"type": "minecraft:phantom",
|
|
49
|
+
"maxCount": 2,
|
|
50
|
+
"minCount": 1,
|
|
51
|
+
"weight": 50
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"type": "minecraft:enderman",
|
|
55
|
+
"maxCount": 4,
|
|
56
|
+
"minCount": 1,
|
|
57
|
+
"weight": 100
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
"underground_water_creature": [],
|
|
61
|
+
"water_ambient": [],
|
|
62
|
+
"water_creature": []
|
|
63
|
+
},
|
|
64
|
+
"temperature": 0.5
|
|
65
|
+
}
|