Commit Graph

12 Commits

Author SHA1 Message Date
c35b97afef fix(lobby_transfer): restore transferPlayer beta API (Player.transfer does not exist in BDS 1.26)
All checks were successful
Deploy Addons / deploy (push) Successful in 15s
Commit 81f84b5 misdiagnosed the mc-lobby crash loop and stripped the
@minecraft/server-admin@1.0.0-beta dependency, swapping in
player.transfer({hostname,port}). At runtime that throws
"player.transfer is not a function" the first time anyone steps on a
portal — the stable @minecraft/server API never exposed transfer() on
Player in BDS 1.26.14.

The real root cause of the original crash loop was unrelated: the
mc-lobby Docker volume had lost its vanilla behavior-pack collection
(vanilla_*, chemistry*, editor, server_library, …). Copying those back
from a healthy sibling volume fixed the boot crash; nothing in the
lobby_transfer pack needed to change. Restoring the beta transferPlayer
here brings lobby back in line with hub-return-addon, which has always
used this pattern successfully on jamie/lyla/mya.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 00:00:53 +01:00
81f84b56a0 fix(lobby_transfer): replace removed @minecraft/server-admin transferPlayer with stable Player.transfer
All checks were successful
Deploy Addons / deploy (push) Successful in 15s
Bedrock 1.26 rejects the @minecraft/server-admin 1.0.0-beta dependency at
pack load, which was crashing mc-lobby on boot (exit 1 right after pack
stack + block-version logging). The transferPlayer helper has been part of
the stable @minecraft/server API as Player.transfer since 1.21, so we can
drop the server-admin import and dependency entirely.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 23:36:16 +01:00
db8f37a24d fix(addons): populate recipe unlock with crafting_table ingredient
All checks were successful
Deploy Addons / deploy (push) Successful in 14s
Bedrock 1.26 rejects { context } variants as "malformed unlocking context"
and [] as "empty unlocking ingredient array". The unlock field must contain
at least one ingredient item; players who have that item unlock the recipe.

Using minecraft:crafting_table as the unlock ingredient makes semantic sense
(all 26 recipes already require the crafting_table tag) and effectively means
"visible once the player has any crafting table".

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 23:28:17 +01:00
e6148a2949 fix(addons): correct recipe unlock shape and block format_version
All checks were successful
Deploy Addons / deploy (push) Successful in 13s
Follow-up to 4324882. The { "context": "always_unlocked" } form triggered
"malformed unlocking context" on 1.26-series Bedrock (AlwaysUnlocked pascal
form fared no better). Empty-array form is the universally accepted "recipe
always known" shape. This unblocks mc-lobby which was crashing on boot.

Also reverts block format_version on mailbox.json + smart_crafting_table.json
to 1.21.0 — every other working block in the repo uses that, so the prior
1.21.60 choice was unnecessary.

- 19 dragon + portal recipes (spark_pet_BP, lobby_transfer_BP): unlock -> []
- 7 other recipes touching unlock { context: ... }: same
- 2 block files: format_version 1.21.60 -> 1.21.0

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 23:22:41 +01:00
43248820fa fix(addons): bring silverlabs packs into schema compliance
All checks were successful
Deploy Addons / deploy (push) Successful in 14s
- recipes: add unlock { context: always_unlocked } to all spark_pet and lobby_transfer recipes (1.20+ requirement) — fixes mc-lobby crash loop
- spark_dragon entity_sensor: wrap in subsensors[] and convert sensor_range → range [a,b] per 1.21 schema
- anthrax_cat interact: wrap event/filters in on_interact to match Bedrock 1.21 interact schema
- block format_version: bump mailbox and smart_crafting_table to 1.21.60
- item icons: replace { texture: X } with shorthand string form
- heyhe_egg description: replace bare category with menu_category block

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 23:18:24 +01:00
cc18066c17 fix(lobby,easter-egg): update portal coordinates and egg-check ring
Lobby portal zones and signs moved to the rebuilt portal area at
~(436..488, 65..74, -322..-281), including a second Lyla's-World
"Super Kitties" portal. Signs now use per-portal facing_direction
so they face the hub walkway correctly.

Easter-egg placeAllEggs validation now samples the far-ring eggs
(indices 45-49) before falling back to the near ring — avoids false
"blocks missing" reports when only close-ring eggs have been picked up.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 14:19:33 +01:00
c32dbf42c4 feat(addons): update portal blocks, recipes, and transfer scripts
All checks were successful
Deploy Addons / deploy (push) Successful in 17s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 11:31:40 +00:00
d9eafd2c12 feat(portals): add craftable portal blocks replacing hardcoded coordinates
Portal frame crafted from obsidian + ender pearl, combined with crystals
(emerald/amethyst/prismarine) to create world-specific portal blocks.
Stepping on a portal block triggers transfer. Includes resource pack with
vanilla textures, block definitions, crafting recipes, and updated script.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 14:23:23 +00:00
5eefd26f67 feat(portals): add portal signs, transfer notifications, and welcome titles
Lobby portals now have oak wall signs showing whose world each portal leads to
(Jamie/Lyla/Mya with color-coded text). Players see a title notification when
entering a portal. Child worlds show a welcome title with the world name on
arrival, read from variables.json via @minecraft/server-admin.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 02:46:03 +00:00
c12a468958 fix(transfer): use transferPlayer() beta API and enable experiments in level.dat
Switch from runCommand("transfer ...") to the @minecraft/server-admin
transferPlayer() function for reliable server-to-server transfers.
Enable Beta APIs experiment (gametest flag) in all 4 world level.dat files.
Add spawn protection to prevent transfer loops on arrival.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 02:34:29 +00:00
2b0a0c4997 fix(transfer): remove quotes around player name in transfer command
The /transfer command doesn't accept quoted player names. Removing the
embedded double quotes fixes portal transfers in both lobby and hub-return
addons.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 22:23:20 +00:00
389e053dc5 feat: add multi-world hub system with lobby portals and hub-return addon
Lobby addon detects players in portal zones at X: -15/0/15 and transfers
them to Jamie/Lyla/Mya survival worlds. Hub-return addon gives players a
recovery compass and chat commands (!hub, !lobby) to return to the lobby.

Includes docker-compose.yml for 4 Bedrock servers (lobby + 3 child worlds),
spark pet behavior/resource packs, and updated .gitignore.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 22:02:56 +00:00