Conversation
Signed-off-by: Tim <tim@heidler.eu.org>
…ure/#47 # Conflicts: # src/main/java/de/theidler/create_mobile_packages/index/CMPMenuTypes.java # src/main/java/de/theidler/create_mobile_packages/index/CMPPackets.java # src/main/resources/assets/create_mobile_packages/lang/en_us.json
- Centralize logistics network retrieval in new `NetworkHelper` utility class. - Replace direct casts and raw lookups with helper methods for cleaner and safer code. - Add null checks to improve robustness.
…' into mc1.20.1/feature/better-networks
Update src/main/java/de/theidler/create_mobile_packages/robo/PlayerTarget.java Update src/main/java/de/theidler/create_mobile_packages/compat/jade/BeePortComponentProvider.java Update src/main/java/de/theidler/create_mobile_packages/network_settings/AddPlayerToNetworkPackage.java Update src/main/java/de/theidler/create_mobile_packages/network_settings/RemovePlayerFromNetworkPackage.java Update src/main/java/de/theidler/create_mobile_packages/network_settings/ModifyNetworkLockStatePackage.java Update src/main/java/de/theidler/create_mobile_packages/network_settings/SetNetworkNamePackage.java Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ork targeting. if Bee can't find a valid target, it will first try returning to the port it came from. if not possible, it will fly to the closest port within the network that can accept it.
Better Networks
* New translations en_us.json (German) * New translations en_us.json (Portuguese, Brazilian) * New translations en_us.json (French) * New translations en_us.json (Japanese) * New translations en_us.json (Polish) * New translations en_us.json (Russian) * New translations en_us.json (Swedish) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (French) * New translations en_us.json (French) * New translations en_us.json (Portuguese, Brazilian) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (French) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (Japanese) * New translations en_us.json (German) * New translations en_us.json (German) * New translations en_us.json (Russian) * New translations en_us.json (Russian) * New translations en_us.json (German) * New translations en_us.json (Russian) * New translations en_us.json (French) * New translations en_us.json (Japanese) * New translations en_us.json (Polish) * New translations en_us.json (Swedish) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (Portuguese, Brazilian) * New translations en_us.json (German) * New translations en_us.json (Russian) * New translations en_us.json (French) * New translations en_us.json (Japanese) * New translations en_us.json (Polish) * New translations en_us.json (Swedish) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (Portuguese, Brazilian) * New translations en_us.json (German) * New translations en_us.json (German) * New translations en_us.json (Russian) * New translations en_us.json (French) * New translations en_us.json (Japanese) * New translations en_us.json (Polish) * New translations en_us.json (Swedish) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (Portuguese, Brazilian)
There was a problem hiding this comment.
Pull request overview
Release prep for Create: Mobile Packages 0.6.0 (MC 1.20.1), adding logistics-network–scoped delivery, a new handheld packaging tool, and several compatibility/build/UX upgrades.
Changes:
- Adds Logistics Network support (network membership, settings UI, mixin persistence) and updates Robo delivery logic to respect network scope.
- Introduces Mobile Packager item (recipes, models/textures, UI + edit/create flows).
- Adds custom toast overlay for Robo Bee delivery/ETA plus Curios/Jade/EMI/JEI integration, updated dependencies, CI, and translations.
Reviewed changes
Copilot reviewed 113 out of 118 changed files in this pull request and generated 17 comments.
Show a summary per file
| File | Description |
|---|---|
| src/main/resources/data/curios/tags/items/body.json | Adds Curios “body” tag entry for Portable Stock Ticker |
| src/main/resources/data/create_mobile_packages/recipes/robo_bee_clear.json | Adds “clear” crafting recipe for Robo Bee (NBT reset) |
| src/main/resources/data/create_mobile_packages/recipes/mobile_packager.json | Adds crafting recipe for Mobile Packager |
| src/main/resources/data/create_mobile_packages/recipes/bee_port_clear.json | Adds “clear” crafting recipe for Bee Port (NBT reset) |
| src/main/resources/create_mobile_packages.mixins.json | Adds mixin config definition for the mod |
| src/main/resources/assets/create_mobile_packages/textures/item/mobile_packager.png | New Mobile Packager item texture |
| src/main/resources/assets/create_mobile_packages/textures/gui/player_networks.png | New GUI texture for player networks screen |
| src/main/resources/assets/create_mobile_packages/textures/block/bee_port_open.png | New/updated Bee Port “open” texture |
| src/main/resources/assets/create_mobile_packages/textures/block/bee_port.png | New/updated Bee Port texture |
| src/main/resources/assets/create_mobile_packages/models/item/mobile_packager.json | Adds item model for Mobile Packager |
| src/main/resources/assets/create_mobile_packages/lang/zh_cn.json | Updates/extends Chinese translations (toasts, mobile packager, wording) |
| src/main/resources/assets/create_mobile_packages/lang/sv_se.json | Updates/extends Swedish translations (toasts, mobile packager) |
| src/main/resources/assets/create_mobile_packages/lang/ru_ru.json | Updates/extends Russian translations (toasts, mobile packager) |
| src/main/resources/assets/create_mobile_packages/lang/pt_br.json | Updates/extends Brazilian Portuguese translations (toasts, mobile packager) |
| src/main/resources/assets/create_mobile_packages/lang/pl_pl.json | Updates/extends Polish translations (toasts, mobile packager) |
| src/main/resources/assets/create_mobile_packages/lang/ja_jp.json | Major Japanese translation improvements + new keys |
| src/main/resources/assets/create_mobile_packages/lang/fr_fr.json | French translation fixes + new keys |
| src/main/resources/assets/create_mobile_packages/lang/en_us.json | Adds new UI/toast/Jade/network/mobile-packager keys |
| src/main/resources/assets/create_mobile_packages/lang/de_de.json | Updates/extends German translations (toasts, mobile packager) |
| src/main/resources/META-INF/mods.toml | Updates Create dependency range; registers mixin config |
| src/main/java/de/theidler/create_mobile_packages/toast/types/SimpleToast.java | Adds simple toast type (title/subtitle/icon) |
| src/main/java/de/theidler/create_mobile_packages/toast/types/PackageToast.java | Adds package toast type with item list rendering |
| src/main/java/de/theidler/create_mobile_packages/toast/ToastOverlayRenderer.java | Adds custom overlay renderer for toasts |
| src/main/java/de/theidler/create_mobile_packages/toast/Toast.java | Adds toast base class + serialization registry |
| src/main/java/de/theidler/create_mobile_packages/toast/ShowToastOnClientPacket.java | Adds packet to show toast client-side |
| src/main/java/de/theidler/create_mobile_packages/toast/RemoveToastOnClientPacket.java | Adds packet to remove a toast client-side |
| src/main/java/de/theidler/create_mobile_packages/toast/RemoveAllToastsOnClientPacket.java | Adds packet to clear all toasts client-side |
| src/main/java/de/theidler/create_mobile_packages/robo/VirtualRobo.java | Introduces persisted “virtual” robo state that spawns/despawns entities |
| src/main/java/de/theidler/create_mobile_packages/robo/RoboTarget.java | Adds target abstraction for robos |
| src/main/java/de/theidler/create_mobile_packages/robo/RoboManager.java | Adds SavedData-backed robo manager + request handling |
| src/main/java/de/theidler/create_mobile_packages/robo/PlayerTarget.java | Adds player target implementation + ETA toast sender |
| src/main/java/de/theidler/create_mobile_packages/robo/BlockPosTarget.java | Adds blockpos target implementation |
| src/main/java/de/theidler/create_mobile_packages/robo/BeePortBlockEntityTarget.java | Adds Bee Port target implementation |
| src/main/java/de/theidler/create_mobile_packages/network_settings/SetNetworkNamePackage.java | Adds packet to rename logistics network |
| src/main/java/de/theidler/create_mobile_packages/network_settings/RemovePlayerFromNetworkPackage.java | Adds packet to remove a player from a network |
| src/main/java/de/theidler/create_mobile_packages/network_settings/PlayerNetworksScreen.java | Adds client UI to list networks the player is in |
| src/main/java/de/theidler/create_mobile_packages/network_settings/NetworkSettingsHelper.java | Adds helper to open the network settings UI |
| src/main/java/de/theidler/create_mobile_packages/network_settings/NetworkHelper.java | Adds helper to access extended logistics network info |
| src/main/java/de/theidler/create_mobile_packages/network_settings/ModifyNetworkLockStatePackage.java | Adds packet to toggle network lock state |
| src/main/java/de/theidler/create_mobile_packages/network_settings/AddPlayerToNetworkPackage.java | Adds packet to add a player to a network |
| src/main/java/de/theidler/create_mobile_packages/mixin/LogisticsNetworkMixin.java | Mixes into Create LogisticsNetwork to persist name + player set |
| src/main/java/de/theidler/create_mobile_packages/items/robo_bee/RoboBeeItem.java | Reworks Robo Bee item to integrate with network/tuning + virtual robos |
| src/main/java/de/theidler/create_mobile_packages/items/portable_stock_ticker/StockCheckingItem.java | Refactors to use shared LogisticallyLinkedItem + updated request API |
| src/main/java/de/theidler/create_mobile_packages/items/portable_stock_ticker/SendPackage.java | Updates callsite to pass the stack into broadcast request |
| src/main/java/de/theidler/create_mobile_packages/items/portable_stock_ticker/RequestStockUpdate.java | Adds chunked responses for large stock summaries |
| src/main/java/de/theidler/create_mobile_packages/items/portable_stock_ticker/PortableStockTickerMenu.java | Adds off-screen inventory slots for JEI/EMI integration |
| src/main/java/de/theidler/create_mobile_packages/items/portable_stock_ticker/PortableStockTicker.java | Adds Curios support + minor safety tweaks |
| src/main/java/de/theidler/create_mobile_packages/items/portable_stock_ticker/LogisticallyLinkedItem.java | Adds shared tuning/tooltip behavior (Create-inspired) |
| src/main/java/de/theidler/create_mobile_packages/items/portable_stock_ticker/HiddenCategoriesPacket.java | Makes indices field final |
| src/main/java/de/theidler/create_mobile_packages/items/portable_stock_ticker/GenericStackListPacket.java | Adds isLast flag to support chunk assembly |
| src/main/java/de/theidler/create_mobile_packages/items/portable_stock_ticker/ClientScreenStorage.java | Adds chunk assembly buffer + configurable refresh tick interval |
| src/main/java/de/theidler/create_mobile_packages/items/mobile_packager/OpenEditMenuPacket.java | Adds packet to open edit UI flow for Mobile Packager |
| src/main/java/de/theidler/create_mobile_packages/items/mobile_packager/MobilePackagerScreen.java | Adds “insert package” screen for Mobile Packager |
| src/main/java/de/theidler/create_mobile_packages/items/mobile_packager/MobilePackagerMenu.java | Adds menu logic for selecting a package to edit |
| src/main/java/de/theidler/create_mobile_packages/items/mobile_packager/MobilePackagerEditScreen.java | Adds edit/create UI with address input and slots |
| src/main/java/de/theidler/create_mobile_packages/items/mobile_packager/MobilePackagerEditMenu.java | Adds server-side menu for editing package contents/address |
| src/main/java/de/theidler/create_mobile_packages/items/mobile_packager/MobilePackagerEdit.java | Adds data holder to read/write packages |
| src/main/java/de/theidler/create_mobile_packages/items/mobile_packager/MobilePackager.java | Adds the Mobile Packager item behavior |
| src/main/java/de/theidler/create_mobile_packages/items/mobile_packager/ConfirmEditMenuPacket.java | Adds packet to confirm edited address |
| src/main/java/de/theidler/create_mobile_packages/index/CMPToasts.java | Registers toast factories into Toast registry |
| src/main/java/de/theidler/create_mobile_packages/index/CMPPackets.java | Adds new packet registrations (toasts, network settings, menus) |
| src/main/java/de/theidler/create_mobile_packages/index/CMPMenuTypes.java | Registers new Mobile Packager menus |
| src/main/java/de/theidler/create_mobile_packages/index/CMPKeys.java | Adds keybind for opening player networks screen |
| src/main/java/de/theidler/create_mobile_packages/index/CMPItems.java | Adds Mobile Packager item registration; removes legacy controller |
| src/main/java/de/theidler/create_mobile_packages/index/CMPGuiTextures.java | Adds GUI texture definitions for network screens |
| src/main/java/de/theidler/create_mobile_packages/index/CMPCommands.java | Adds /cmp toast … and /cmp robos clear commands |
| src/main/java/de/theidler/create_mobile_packages/index/CMPBlocks.java | Updates Bee Port item to be logistically linkable; removes legacy block |
| src/main/java/de/theidler/create_mobile_packages/index/CMPBlockEntities.java | Removes legacy block entity registration |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/states/ShutdownState.java | Removes old state implementation |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/states/LaunchPrepareState.java | Removes old state implementation |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/states/LaunchFinishState.java | Removes old state implementation |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/states/LaunchAscendState.java | Removes old state implementation |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/states/LandingPrepareState.java | Removes old state implementation |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/states/LandingDescendStartState.java | Removes old state implementation |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/states/LandingDescendFinishState.java | Removes old state implementation |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/states/InteractWithPlayerState.java | Removes old state implementation |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/states/FlyToTargetState.java | Removes old state implementation |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/states/DeliveryDecisionState.java | Removes old state implementation |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/states/AdjustRotationToTarget.java | Removes old state implementation |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/RoboEntityState.java | Removes old state interface |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/RoboBeeState.java | Adds enum-based state model |
| src/main/java/de/theidler/create_mobile_packages/entities/robo_entity/RoboBeeBehaviorController.java | Adds new consolidated behavior controller |
| src/main/java/de/theidler/create_mobile_packages/entities/render/DroneEntityRenderer.java | Nullability tweaks + minor render cleanup |
| src/main/java/de/theidler/create_mobile_packages/entities/RoboBeeEntity.java | Reworks entity construction to link to VirtualRobo |
| src/main/java/de/theidler/create_mobile_packages/compat/jei/DroneControllerTransferHandler.java | Tightens nullability + makes helpers final |
| src/main/java/de/theidler/create_mobile_packages/compat/jei/CMPJEIGuiHandler.java | Adds JEI GUI handler for extra areas/clickable ingredients |
| src/main/java/de/theidler/create_mobile_packages/compat/jei/CMPJEI.java | Registers JEI GUI handlers + runtime hook updates |
| src/main/java/de/theidler/create_mobile_packages/compat/jade/JadePlugin.java | Adds Jade plugin registration |
| src/main/java/de/theidler/create_mobile_packages/compat/jade/BeePortComponentProvider.java | Adds Jade tooltip provider for Bee Port network info |
| src/main/java/de/theidler/create_mobile_packages/compat/emi/CMPEMI.java | Adds EMI exclusion areas integration |
| src/main/java/de/theidler/create_mobile_packages/compat/curios/Curios.java | Adds Curios integration and PST lookup |
| src/main/java/de/theidler/create_mobile_packages/compat/Mods.java | Expands compat enum (JEI/CURIOS/JADE/EMI) |
| src/main/java/de/theidler/create_mobile_packages/blocks/bee_port/RoboRequest.java | Adds Bee Port robo request model |
| src/main/java/de/theidler/create_mobile_packages/blocks/bee_port/IBeePortEntityTracker.java | Adds query-by-network API |
| src/main/java/de/theidler/create_mobile_packages/blocks/bee_port/BeePortScreen.java | Adds network settings button to Bee Port screen |
| src/main/java/de/theidler/create_mobile_packages/blocks/bee_port/BeePortMenu.java | Client-null safety + ETA semantics update |
| src/main/java/de/theidler/create_mobile_packages/blocks/bee_port/BeePortEntityTracker.java | Implements getAllByNetwork + updates return to copy |
| src/main/java/de/theidler/create_mobile_packages/blocks/bee_port/BeePortBlock.java | Avoids GUI intercept when holding link item; records placer UUID |
| src/main/java/de/theidler/create_mobile_packages/RoboManagerSavedData.java | Removes legacy robo saved data |
| src/main/java/de/theidler/create_mobile_packages/RoboManager.java | Removes legacy robo manager implementation |
| src/main/java/de/theidler/create_mobile_packages/InputEvents.java | Adds keybind to open PlayerNetworksScreen |
| src/main/java/de/theidler/create_mobile_packages/IExtendedLogisticsNetwork.java | Adds interface for extended network data |
| src/main/java/de/theidler/create_mobile_packages/CreateMobilePackages.java | Registers toasts, commands, Curios init, removes legacy robo manager |
| src/main/java/de/theidler/create_mobile_packages/CommonEvents.java | Switches robo ticking to SavedData manager; blocks dimension travel |
| src/main/java/de/theidler/create_mobile_packages/CMPHelper.java | Adds network-aware Bee Port resolution + ETA/address helpers |
| models/mobile_packager.bbmodel | Adds Blockbench model source for Mobile Packager |
| gradle.properties | Bumps mod + dependency versions; adds EMI/Curios/Jade versions |
| crowdin.yml | Updates Crowdin language mapping |
| build.gradle | Adds mixin config/refmap setup + new dependency repos/artifacts |
| README.md | Updates requirements, translation workflow, and documents Mobile Packager |
| Jenkinsfile | Removes Jenkins CI pipeline |
| CHANGELOG.md | Adds 0.6.0 unreleased changelog section |
| .github/workflows/build-and-deploy.yml | Adds GitHub Actions build + publish workflow |
| .github/ISSUE_TEMPLATE/bug_report.md | Improves crash log instructions |
Comments suppressed due to low confidence (1)
src/main/java/de/theidler/create_mobile_packages/index/CMPPackets.java:54
NETWORK_VERSIONis still3even though the wire format and packet set changed (e.g.GenericStackListPacketnow appendsisLast, and multiple new packets were added). An older client/server with version 3 would pass the protocol check but decode packets incorrectly.
Bump NETWORK_VERSION (and keep server/client acceptance tied to it) whenever any packet payload format changes.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
.../java/de/theidler/create_mobile_packages/entities/robo_entity/RoboBeeBehaviorController.java
Show resolved
Hide resolved
src/main/java/de/theidler/create_mobile_packages/items/robo_bee/RoboBeeItem.java
Outdated
Show resolved
Hide resolved
...ain/java/de/theidler/create_mobile_packages/items/mobile_packager/ConfirmEditMenuPacket.java
Outdated
Show resolved
Hide resolved
...a/de/theidler/create_mobile_packages/items/portable_stock_ticker/LogisticallyLinkedItem.java
Show resolved
Hide resolved
...main/java/de/theidler/create_mobile_packages/network_settings/AddPlayerToNetworkPackage.java
Show resolved
Hide resolved
...java/de/theidler/create_mobile_packages/network_settings/RemovePlayerFromNetworkPackage.java
Show resolved
Hide resolved
src/main/java/de/theidler/create_mobile_packages/network_settings/SetNetworkNamePackage.java
Outdated
Show resolved
Hide resolved
.../java/de/theidler/create_mobile_packages/items/portable_stock_ticker/RequestStockUpdate.java
Show resolved
Hide resolved
…ing on text change
…tent entity behavior and type usage.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 119 out of 124 changed files in this pull request and generated 5 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
src/main/java/de/theidler/create_mobile_packages/network_settings/SetNetworkNamePackage.java
Show resolved
Hide resolved
.../java/de/theidler/create_mobile_packages/items/mobile_packager/MobilePackagerEditScreen.java
Show resolved
Hide resolved
src/main/java/de/theidler/create_mobile_packages/network_settings/NetworkHelper.java
Show resolved
Hide resolved
…ork ownership checks in NetworkDataPacket
No description provided.