Ivanluck Lucky Ore is an open-source Minecraft Bedrock add-on that adds a naturally generated ivanluck:lucky_ore block. Mining it always rolls from a high-tier reward table and separately has a 20% chance to trigger a mild bad-luck side effect.
- Visible lucky ore block with a custom texture.
- Overworld generation in newly created chunks only.
- Weighted reward loot table for every lucky ore break.
- Mild bad-luck side effects:
- poison plus slowness
- one silverfish spawn
- junk item drop
- Late-game crafting recipe for additional lucky ore.
- TypeScript-based Bedrock script logic.
- Node.js 22 or newer
- npm 10 or newer
- Minecraft Bedrock
26.1.xor a compatible Bedrock Dedicated Server build
npm install
npm run lint
npm run build
npm run mcaddonBuild outputs:
dist/server/behavior_packs/ivanluckdist/server/resource_packs/ivanluckdist/packages/ivanluck.mcaddon
cd /path/to/bedrock-server
grep '^level-name=' server.propertiesIf that prints level-name=My World, the world folder is:
/path/to/bedrock-server/worlds/My World
Create the world-level pack folders if they do not already exist:
WORLD_NAME="$(grep '^level-name=' server.properties | cut -d= -f2-)"
mkdir -p worlds/"$WORLD_NAME"/behavior_packs
mkdir -p worlds/"$WORLD_NAME"/resource_packsCopy the staged packs:
cp -R dist/server/behavior_packs/ivanluck worlds/"$WORLD_NAME"/behavior_packs/
cp -R dist/server/resource_packs/ivanluck worlds/"$WORLD_NAME"/resource_packs/Create or update:
worlds/<level-name>/world_behavior_packs.jsonworlds/<level-name>/world_resource_packs.json
If those files already contain other packs, append these objects instead of replacing the whole file.
world_behavior_packs.json
[
{
"pack_id": "C33CEE03-8A8F-4DCB-BCE6-CA5452C41D6E",
"version": [1, 0, 0]
}
]world_resource_packs.json
[
{
"pack_id": "C27EA254-250B-4640-8E08-36F6195290BD",
"version": [1, 0, 0]
}
]In server.properties, set:
texturepack-required=true
content-log-console-output-enabled=true
Restart your actual server process or service after copying the updated packs.
This repo includes a generic deploy script for Linux Bedrock Dedicated Server setups:
BEDROCK_HOST=root@example.com \
BEDROCK_SERVER_ROOT=/home/ubuntu/bedrock-server \
BEDROCK_RESTART=true \
npm run deploy:bedrockEnvironment variables:
BEDROCK_HOST: required SSH target such asroot@example.comBEDROCK_SERVER_ROOT: optional, defaults to/home/ubuntu/bedrock-serverBEDROCK_SERVICE: optional systemd service name, defaults tobedrockBEDROCK_RESTART: optional, set totrueto restart the server after deploy
- Update
package.jsonto the target version. - Commit the change to
main. - Create and push a semver tag such as
v0.1.0. - GitHub Actions will build the add-on and publish a GitHub Release with:
.mcaddon- behavior pack
.mcpack - resource pack
.mcpack - SHA-256 checksums
- Lucky ore only appears in chunks generated after the add-on is installed.
- Existing chunks are not retrofitted.
- Use world-specific pack folders under
worlds/<level-name>/..., notdevelopment_behavior_packsordevelopment_resource_packs, for Bedrock Dedicated Server runtime installs.
See CONTRIBUTING.md.
See SECURITY.md.
Released under the MIT License.