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.
Files changed (36) hide show
  1. minecode_mcp-0.1.0/.gitignore +12 -0
  2. minecode_mcp-0.1.0/LICENSE +21 -0
  3. minecode_mcp-0.1.0/PKG-INFO +320 -0
  4. minecode_mcp-0.1.0/example/crystal_dimension/README.md +98 -0
  5. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/dimension/crystal_void.json +11 -0
  6. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/dimension_type/crystal_void.json +23 -0
  7. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/build_tower.mcfunction +23 -0
  8. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/give_kit.mcfunction +15 -0
  9. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/help.mcfunction +11 -0
  10. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/load.mcfunction +5 -0
  11. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/return.mcfunction +5 -0
  12. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/spawn_boss.mcfunction +9 -0
  13. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/teleport.mcfunction +17 -0
  14. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/function/tick.mcfunction +5 -0
  15. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/biome/crystal_plains.json +65 -0
  16. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/configured_feature/amethyst_clusters.json +35 -0
  17. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/configured_feature/crystal_spikes.json +42 -0
  18. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/configured_feature/ore_crystal_diamond.json +18 -0
  19. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/configured_feature/ore_crystal_emerald.json +18 -0
  20. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/noise_settings/crystal_void.json +93 -0
  21. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/placed_feature/amethyst_clusters.json +19 -0
  22. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/placed_feature/crystal_spikes.json +19 -0
  23. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/placed_feature/ore_crystal_diamond.json +27 -0
  24. minecode_mcp-0.1.0/example/crystal_dimension/data/crystal/worldgen/placed_feature/ore_crystal_emerald.json +27 -0
  25. minecode_mcp-0.1.0/example/crystal_dimension/data/minecraft/tags/function/load.json +5 -0
  26. minecode_mcp-0.1.0/example/crystal_dimension/data/minecraft/tags/function/tick.json +5 -0
  27. minecode_mcp-0.1.0/example/crystal_dimension/pack.mcmeta +6 -0
  28. minecode_mcp-0.1.0/minecode/__init__.py +6 -0
  29. minecode_mcp-0.1.0/minecode/scrappers/__init__.py +7 -0
  30. minecode_mcp-0.1.0/minecode/scrappers/minecraftwiki.py +518 -0
  31. minecode_mcp-0.1.0/minecode/scrappers/misode.py +570 -0
  32. minecode_mcp-0.1.0/minecode/scrappers/mojira.py +181 -0
  33. minecode_mcp-0.1.0/minecode/scrappers/spyglass.py +432 -0
  34. minecode_mcp-0.1.0/minecode/server.py +913 -0
  35. minecode_mcp-0.1.0/pyproject.toml +49 -0
  36. minecode_mcp-0.1.0/readme.md +295 -0
@@ -0,0 +1,12 @@
1
+ venv/
2
+ __pycache__/
3
+ *.pyc
4
+ *.pyo
5
+ *.pyd
6
+ .Python
7
+ *.egg-info/
8
+ dist/
9
+ build/
10
+ .env
11
+ .DS_Store
12
+ *.log
@@ -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
+ ![Python](https://img.shields.io/badge/Python-3.10+-blue)
33
+ ![MCP](https://img.shields.io/badge/MCP-1.25.0-green)
34
+ ![License](https://img.shields.io/badge/License-MIT-yellow)
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,11 @@
1
+ {
2
+ "type": "crystal:crystal_void",
3
+ "generator": {
4
+ "type": "minecraft:noise",
5
+ "biome_source": {
6
+ "type": "minecraft:fixed",
7
+ "biome": "crystal:crystal_plains"
8
+ },
9
+ "settings": "crystal:crystal_void"
10
+ }
11
+ }
@@ -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
+ # Crystal Dimension Datapack - Load Function
2
+ # Runs once when the datapack loads
3
+
4
+ tellraw @a {"text":"[Crystal Dimension] Datapack loaded!","color":"light_purple"}
5
+ tellraw @a {"text":"Use /function crystal:teleport to enter the Crystal Void!","color":"aqua"}
@@ -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,5 @@
1
+ # Crystal Dimension Datapack - Tick Function
2
+ # Runs every game tick (optional effects)
3
+
4
+ # Give night vision to players in the crystal dimension for better visibility
5
+ execute as @a[nbt={Dimension:"crystal:crystal_void"}] run effect give @s night_vision 13 0 true
@@ -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
+ }