TDPlanter Changelog
Mit BuildUp ausgelieferte Version: 3.12.0
3.12.0 · 3.11.0 · 3.10.0 · 3.9.0 · 3.8.0 · 3.7.0 · 3.6.0 · 3.5.0 · 3.4.0 · 3.3.0 · 3.2.0 · 3.1.2 · 3.1.1 · 3.1.0 · 3.0.0 · 2.7.4 · 2.7.3 · 2.7.2 · 2.7.1 · 2.7.0 · 2.6.0 · 2.5.2 · 2.5.1 · 2.5.0 · 2.4.5 · 2.4.4 · 2.4.3 · 2.4.2 · 2.4.1 · 2.4.0 · 2.3.2 · 2.3.1 · 2.3.0 · 2.2.0 · 2.1.0 · 2.0.1 · 2.0.0 · 1.11.3 · 1.11.2 · 1.11.1 · 1.11.0 · 1.10.0 · 1.9.0 · 1.8.1 · 1.8.0 · 1.7.0 · 1.6.2 · 1.6.1 · 1.6.0 · 1.5.0 · 1.4.0 · 1.3.0 · 1.2.0 · 1.1.7 · 1.1.6 · 1.1.5 · 1.1.4 · 1.1.3 · 1.1.2 · 1.1.1 · 1.1.0 · 1.0.4 · 1.0.3 · 1.0.2 · 1.0.1 · 1.0.0 · 0.9.2 · 0.9.1 · 0.9.0 · 0.8.2 · 0.8.1 · 0.8.0 · 0.7.4 · 0.7.3 · 0.7.2 · 0.7.1 · 0.7.0 · 0.6.0 · 0.5.0 · 0.4.2 · 0.4.1 · 0.4.0 · 0.3.3 · 0.3.2 · 0.3.1 · 0.3.0 · 0.2.4 · 0.2.3 · 0.2.2 · 0.2.1 · 0.2.0 · 0.1.4 · 0.1.2 · 0.1.1 · 0.1.0
3.12.0
- Apply incoming lamp energy without rebuilding harvest-input comparisons or render-state checks. Keep chunk persistence, FE input and capacity limits, simulation, cached capability checks and paid harvest validation unchanged.
- Compare immutable, owned display contents directly during other state updates instead of copying soil and both seed stacks for equality checks. Component changes, growth-stage changes and empty-water transitions still update the display.
3.11.0
- Send only crop, soil, material and module display data in block-entity updates instead of encoding output queues, compost buffers, filters and machine progress for every observing player. Open menus retain their separately synchronized slots; saved machines and planter items keep their complete existing data.
3.10.0
- Requires TDLibrary 0.19.0 or newer.
/tdplanter configprovides level-2 administration of automation.outputIntervalTicks, filter.maxEntries and growth.minimumCycleTicks using shared commands and a locked settings menu. Changes refresh the server snapshot; selected-value reload validates all selected values before assignment. Inventory, paid output and packet formats are retained.
3.9.0
Fixed
- Reserve exported items before calling destination inventories, preventing duplicate transfers through inventory callbacks and retaining rejected output.
- Preserve replacement blocks when an installed glass hood is replaced by world editing or another mod.
- Update the shared Ultra Planter lamp state once per tick when only one crop uses the lamp.
- Include active Booster growth and yield factors in the Planter's effective production values.
- Resolve custom seed, soil and interaction ingredients even when their display stacks do not list every accepted item.
Changed
- Restrict full modpack coverage diagnostics to operators, matching the existing export permission.
- Limit Booster and Planter range searches to nearby chunks so distant loaded farms no longer add full-dimension scans to each growth tick.
3.8.0
Added
- Allow Herbs & Harvest Thistle in the vanilla Minecraft composter with a 65% chance to increase its compost level. Herbs & Harvest remains optional.
3.7.0
Added
- Clear a Settings Card's saved configuration with Shift + right-click while aiming into the air. Hold Shift over a saved card to inspect its tier, modules, harvest tool, production toggle, complete filter rules, compost fertilizer destination and overflow setting.
3.6.0
Changed
- Merge TDPlanter's Tree Bark recipes into Farm & Charm's Log Stripping category in EMI when both features are available. Show stripped wood and bark together in compact rows, with crafting and axe-durability instructions in tooltips, instead of a separate Tree Bark tab. Keep the standalone display when Farm & Charm is absent.
3.5.0
Changed
- Increase default Booster growth/yield multipliers to Basic 1.5/1.25, Advanced 2/1.5, Elite 2.5/1.75 and Ultra 3.5/2.5 without changing recipes, FE costs or plant-remains consumption. Raise optional stacking caps to 3.5 growth and 2.5 yield. Existing server configurations retain their saved values and need their Booster settings updated to adopt the new balance.
3.4.0
Changed
- Unify all distributed TDPlanter code and assets under All Rights Reserved, including adapted Farmer's Delight resources with the authors' permission, and include the unified license in the JAR.
3.3.0
Added
- Dismantle Pots and individual Booster blocks with Shift-right-click using a Create Wrench, a Mekanism Configurator in Wrench or Rotate mode, or any wrench tagged
c:tools/wrench, retaining normal player-break drops and protection checks even when sneaking skips block interaction.
Fixed
- Let ordinary wrench right-clicks rotate Pots before tools such as the Mekanism Configurator can consume the click; Shift-right-click continues to dismantle them.
- Harvest both regular Brimwood Logs and Magma Brimwood Logs from Regions Unexplored Brimwood saplings.
Changed
- Reduce temporary allocations during automatic tree detection and recipe index loading by replacing repeated regular-expression matching with direct tree-name suffix checks.
3.2.0
Changed
- Reduce repeated work during automatic plant and tree detection by reusing compiled name patterns and grouping crop and woody-plant candidates by mod namespace during recipe index construction.
- Split EMI growth registration timings into fertilizer preparation, recipe index lookup and construction, and EMI recipe registration to help diagnose slow loading runs.
3.1.2
Fixed
- Illuminate the assembled Booster's interior at light level 15 even while idle or out of resources, and render its crystal with an emissive shader so it stays visibly luminous behind the glass.
3.1.1
Fixed
- Rotate and bob the Booster crystal only while the Booster is running, preserving its position when stopped. Use a local animation clock to avoid jumps from multiplayer world-time corrections and loss of smoothness in older worlds.
- Keep the crystal inside an assembled Booster visibly lit even while the Booster is inactive or its surroundings are dark.
- Show saved Settings Card setups with an enchantment glint instead of the green tooltip line. When application is incomplete, name missing items, the next required upgrade, blocked hood space, occupied harvest-tool slots or a redstone start lock; list additional problems in chat instead of only showing a component count.
3.1.0
Added
- Add a craftable Settings Card: Shift + right-click copies a modular planter's modules, tier, filter rules, harvest tool, production toggle and compost settings. Right-click applies the setup using available inventory items, skips missing or blocked components, and can be repeated after restocking. Lamps still require a hood, upgrades follow loaded recipes, and existing modules and occupied harvest-tool slots are retained. Soil, seeds, hoes, fertilizer and stored resources are excluded; waxed and rustic planters reject application.
3.0.0
Added
- Toggle a translucent white range boundary from the Booster screen. The boundary remains visible after closing the screen and is inset slightly from block faces to prevent flickering.
- Show both assembled and unassembled Booster structures in the English and German GuideME handbook.
Changed
- Build the Booster base from seven sockets and two side ports, replacing its four corner frames with sockets. Existing boosters require those four blocks to be replaced; stored core resources are retained. GuideME, EMI/JEI and Ponder now show the updated assembly.
2.7.4
Fixed
- Increase Herbs & Harvest Thistle's base harvest from one to 2–4 items and allow it as compost input for the booster and Compost Module. Herbs & Harvest remains optional.
2.7.3
Improved
- Reduce planter tick overhead by reusing unchanged harvest recipe preparation and serialized recipe keys, and by retaining the resolved hood requirement during growth. World conditions and custom ingredient checks retain their existing timing.
- Avoid copying rolled crop outputs while output is blocked, repeating failed compost merges against an unchanged buffer, and copying the overflow compost buffer when no items are added. Harvest rolls, item components, costs, transfer intervals and saved pending harvests remain unchanged.
2.7.2
Improved
- Reduce compost harvest overhead by skipping the full prefix of the compost buffer during merging and avoiding a second copy of the merged list. Existing snapshots and atomic retries of blocked harvests remain protected.
2.7.1
Improved
- Reduce harvest allocations when adding filtered crops to the compost buffer by copying only changed stacks. Blocked harvests preserve existing compost, crop outputs and input costs, and successful retries add compost only once.
2.7.0
Added
- Add a saved, opt-in overflow compost setting for planters with Compost and Hopper Modules: export crops first, then compost suitable items rejected by the inventory below, routing fertilizer to the selected output buffer or fertilizer slot. Missing destination inventories preserve crops, and full fertilizer destinations retain compost inputs.
2.6.0
Changed
- Remove the upper version limits from the optional Jade and Ponder dependencies, retaining Jade 15.10.6 and Ponder 1.0.82 as the minimum versions.
2.5.2
Improved
- Share redstone checks across growth, Multi-Crop, harvesting, composting and menu state, refreshing immediately on neighbor notifications and within 20 ticks after silent world edits.
- Avoid rebuilding or copying unchanged compost buffers during irrigation and Multi-Crop updates, item-count displays and unsuccessful composting attempts, while keeping stored items isolated from external changes.
2.5.1
Fixed
- Apply accepted custom fertilizers consistently during growth, harvest, and yield display, including ingredients whose display items omit valid inputs.
- Preserve item components and component-defined stack sizes from automatically detected fruit loot through harvest output and compost buffering.
- Use the harvest-tool slot consistently for tool-gated filter previews, so hoe-slot tools cannot show unavailable drops or hide available ones.
- Keep imported filter groups longer than the editor's 128-character input limit intact and transferable, so their modules remain editable; reject groups beyond the shared persistence and network limit.
- Render field plants with their recipe's display block and update sweet berry bushes to match their growth stage.
- Report full output buffers correctly when ripe crops wait with a required Growth Lamp, without consuming lamp energy during the wait.
- Correct the installation requirements for NeoForge and TDLibrary and describe composting against its selected output destination.
Improved
-
Reduce nearby block and entity searches during growth to once per second per crop, while checking harvest requirements and yield bonuses against the current world state. Neighbor changes can take up to 20 ticks to affect growth; light, water and hood conditions still react immediately.
-
Validate automated fertilizer input through the reload-aware recipe index, retaining full component checks and a fallback for non-simple custom ingredients.
-
Avoid copying compost buffers and rebuilding output inventories when a harvest cannot enter the output slots, while retaining its exact pending roll and costs.
-
Reduce repeated state construction, crop input copies and compost comparisons during unchanged ticks and Multi-Crop processing, while still invalidating crop resolution after recipe reloads.
-
Keep pending harvests and statistics in saved data without serializing them for planter display updates, and avoid defensive ItemStack copies during read-only state encoding.
2.5.0
Added
- Change modular planter materials using vanilla wood and solid stone building blocks, all concrete colors, and colored or glazed terracotta, through right-clicking or crafting while retaining planter contents and upgrades.
Improved
- Reduce recipe-viewer loading work by narrowing bark recipe searches, sharing automatic growth detection between EMI, JEI and planter rendering, and reusing module crafting inputs and EMI ingredients without removing recipe variants.
- Refresh cached fertilizer choices after recipe and tag updates, including reloads that reuse the same recipe manager.
2.4.5
Fixed
- Close planter, Booster Core and filter module screens with the configured inventory key, while keeping text entry available in focused filter search fields and saving pending filter changes on close.
- Keep the mouse position when Done returns from the filter editor to the planter screen.
- Show the underlying planter's complete Jade tooltip when looking at its Glass Hood.
2.4.4
Fixed
- Allow Herbs & Harvest Thistle to grow on natural soils in both planter variants, producing one Thistle every 1,200 base ticks without a separate modpack recipe.
2.4.3
Fixed
- Allow fluid automation, including ME Export Buses, to access the irrigation tank from the top of an installed Glass Hood. The Irrigation Module is required and waxed planters remain inaccessible.
2.4.2
Improved
- Reuse each environment observation within a growth tick when the same condition both gates growth and grants a speed bonus, avoiding duplicate nearby block or entity scans without delaying growth or reactions to world changes.
2.4.1
Fixed
- Support green, red, yellow and blue Oh The Biomes We've Gone Glowcane shoots in both planter variants on natural and sandy soils, harvesting shoots of the same color.
2.4.0
- Require TDLibrary 0.1.0 for shared technical helpers; its runtime requires NeoForge 21.1.250 or newer.
- Write coverage diagnostics through unique temporary files before replacing the report, keeping the previous report intact when writing fails.
- Use shared installed-JAR discovery that reports missing or ambiguous dependencies rather than selecting one silently.
- Allow Oh The Biomes We've Gone Winter Rose and Black Rose to grow on natural soils in both planter variants.
2.3.2
Fixed
- Make the Booster Core crystal's 64 x 64 emerald facet texture tile seamlessly in both directions, preventing visible texture borders across repeated UV mappings.
2.3.1
Changed
- Rename the Booster Compost Port to Plant Remains Port in block names, status displays, assembly viewers, Ponder and the handbook. Describe its fuel as plant remains, such as seeds and crops, to distinguish it from Organic Compost. Change its registry ID to
tdplanter:booster_plant_remains_portwithout migration; existing ports under the old ID are not retained. Accepted items and consumption remain unchanged.
2.3.0
Changed
- Move the modular planter's production switch into the tab header with a compact On/Off button, keeping it accessible from both tabs.
- Refine the Booster Core's six 64 x 64 textures with shaded metal fittings, richer emerald crystal facets and clearer active and inactive energy rings. Energy and Compost Port textures remain unchanged.
Added
- Add a saved Compost Module output toggle in the tab header between the hopper output buffer (default) and the fertilizer slot. Users can switch in either direction. Full destinations retain compost ingredients; downward export requires a Hopper Module.
- Add crafting recipes for every Booster Core construction part. Frames, glass and basic sockets are crafted in batches; higher-tier sockets combine the previous socket tier with the corresponding planter upgrade.
Fixed
- Open the Booster Core status screen when right-clicking any part of its formed multiblock, including the glass, frames and ports. The enclosed core no longer needs to be targeted directly. Unformed structures still cannot open the screen.
2.2.0
Added
- Add a live LDLib2 Booster Core status screen matching the planter interfaces, with tier, activity and shortage reasons, range, planter count, growth and yield factors, stacking rules, FE storage and billing, and read-only compost contents and consumption. Only formed cores open the screen; breaking the structure or moving out of reach closes it.
Fixed
- Booster Compost Ports no longer show a solid pale square over the port opening; the port light frame now renders with its transparent areas.
2.1.0
Added
- Add an optional Ponder tutorial to all Booster Core construction parts. The animated scene builds the three layers, reveals the formed model and explains socket tiers, FE and compost supply, and the default range in English and German. TDPlanter continues to load without Ponder.
Changed
- Redraw all Booster Core part textures as cleaner 64 x 64 pixel art with fixed material palettes. The formed base is now one continuous brick plinth with a metal cap, and the Compost and Energy Ports use the same brick look with a raised 3D port fitting. The tier band runs around the whole base in the color of the structure's lowest socket tier. Formed parts no longer show shifted, stretched, or wavy textures at block seams.
Fixed
- Restore the Booster Core model in GuideME by using Minecraft's packed SNBT structure format. Structure verification now uses the same converter as GuideME so an empty scene is caught before packaging.
2.0.1
Added
- Explain the Booster Core's complete three-layer construction in the English and German GuideME handbook, including a rotatable 3D example, required parts, socket tiers and resource supply.
- Show Booster Assembly pages in EMI and JEI for all four socket tiers, with item lookup and aligned top-down diagrams of every layer.
Changed
- Replace all eleven standalone item icons with coordinated 64 x 64 pixel artwork, including tier upgrades, planter modules, tree bark, and straw. Irrigation and Compost Modules now have their own item icons instead of vanilla water-bucket and composter visuals; placed blocks retain their existing appearance.
Fixed
- Give the Rustic Planter Pot's production button its own wider row so it no longer crowds the pot title or squeezes its text.
- Use the same stone sounds for the Rustic Planter Pot as the modular Planter Pot instead of dirt/gravel sounds.
2.0.0
Changed
- Require matching client and server updates using network protocol 4 for the additional Ultra seed slot and expanded menu data. Older clients are rejected during connection. Existing saved planters remain readable and start with empty expansion fields; no world-data migration is required.
Added
- Add an automatically forming 3×3×3 Booster Core multiblock with Basic through Ultra sockets. Powered and compost-fed cores boost full planters within ten blocks; server settings control tier values and optional stacking capped at 3× growth and 2× yield. Ports accept FE and recipe-defined compost only while formed. Breaking a part disables the structure; replacing sockets updates its lowest tier. The core displays resource and operating status on right-click and in Jade, planters show their booster bonus in Jade, and the formed core renders a floating crystal with green particles.
- Living aquatic plants now require a Glass Hood to grow and harvest. Hooded aquatic planters display translucent water with a visible surface; removing the hood hides the water and pauses production without losing the plant or its progress. Missing hoods are explained in the planter status and diagnosis.
- Add an Irrigation Module with a 4,000 mB water tank, bucket/container filling, and pipe access. Water boosts growth by 25% and successful irrigated harvests consume 100 mB. Living aquatic plants, rice, and Cattail Sprout require stored water instead of a reusable fertilizer-slot bucket; their hooded aquarium appears while water is present. Dead coral remains dry.
- Add a Compost Module that saves compostable crops rejected by a blacklist and converts eight units into one bone meal per second when the fertilizer slot has room. Fertilizer recipes can define other compost inputs and conversion costs. Paused production and full fertilizer slots preserve the stored crops.
- Add Harvest comparator mode: successful harvests emit a four-tick pulse through the comparator and the planter's front. Simultaneous harvests share one pulse.
- Ultra planters accept a second manually inserted seed with independent growth and fertilizer cycles, two plant displays, and shared soil, tools, energy, filters, and output. Existing saved planters load with an empty second slot.
- Add optional growth recipes for 52 built-in Mystical Agriculture crops, 16 Botania mystical flowers, and Immersive Engineering hemp. Existing Farmer's Delight tomato/rice recipes and automatic cabbage/onion detection remain available.
- Farmer's Delight wheat yields straw only with a knife in the harvest-tool slot. Knives can be inserted manually, through the menu, or by existing tool automation, and receive the configured harvest-tool wear. Shears-required plants still require actual shears.
- Add opt-in datapack conditions for nearby entity IDs, entity tags, and tagged blocks, with growth and yield modifiers. By default, only the strongest modifier per group and effect applies; servers can enable
environment.stackNeighborBonusesto multiply all matching modifiers. Both modes use a configurable combined cap of 25% by default. Built-in flowers receive no automatic neighbor bonuses; the greenhouse core tag is empty. EMI and JEI explain water requirements and environment bonuses.
Fixed
-
Prevent cached irrigation handlers from filling or draining removed planters, preserving the water retained by the dropped planter item.
-
Recheck neighbor yield bonuses when retrying a harvest blocked by full output, so arriving or departing neighbors update the yield while unchanged retries retain the same rolled harvest.
-
Ready plants now respect their recipe's environment conditions before harvesting, including when retrying a harvest blocked by full output slots.
-
Restore headless test execution with verified JUnit dependency metadata and a single GameTest resource directory. The straw test now accepts the existing farmland yield bonus instead of failing randomly.
1.11.3
Changed
- The glass hood has updated textures: clear glass panes with an iron-style frame and roof, plus a closed top cap. Both textures are bundled with TDPlanter, so resource packs that retexture vanilla glass or iron blocks do not change the hood.
1.11.2
Changed
- Growing planters no longer send a comparator update to their neighbours every tick when only growth progress or stored energy changes. Progress is still saved with the chunk, and comparators still update whenever the output buffer or the status signal changes. This lowers the per-tick server cost of large planter farms.
- The planter body, rim, soil floor, glass hood, hood cap, growth lamp and hopper module now use TDPlanter's own textures instead of vanilla block textures. Resource packs that retexture vanilla blocks such as coal blocks, glass or terracotta no longer change how planters look, so all players see the same planter regardless of their resource packs.
1.11.1
Fixed
- Blue, green, pink, and yellow Regions Unexplored bioshrooms now grow as small bioshroom trees in the planter and yield their stems, caps, occasional glowing caps, and replacement bioshrooms instead of only the mushroom itself. Tall bioshrooms remain decorative plants.
- Automatic tree detection now recognizes modded saplings that grow giant mushrooms, so their stems and caps are harvested like logs and leaves even without a dedicated recipe.
1.11.0
Added
- Give modpack authors a ready-to-copy Minecraft 1.21.1 datapack with working examples for all five TDPlanter recipe types, plus a focused guide for balancing, optional mod recipes, and in-game diagnosis.
- Provide an offline datapack check that catches malformed JSON, misplaced recipes, and missing required fields before a pack is loaded.
- Let players open Choose harvest without a Filter Module to inspect possible drops, while clearly reserving harvest selection and rule editing for an installed module.
- Add an optional server-configured chance bonus when a Filter Module excludes a possible drop. Datapacks can exempt individual rare drops, and TDPlanter's built-in rare special drops retain their original chances.
Changed
- Make fruit trees from Biomes We've Gone, Regions Unexplored, and Quark yield one or two fruits per harvest instead of rarely producing a single fruit.
1.10.0
Added
- Grow 89 additional flowers, bushes, grasses, mushrooms, cacti, and decorative plants from Oh The Biomes We've Gone, Regions Unexplored, Some More Blocks, and Candlelight.
- Use sand for the new cacti and Aloe Vera, and natural soils or sand for Sandy Grass, Small Desert Shrub, and Dune Grass. Grass and shrub harvests retain their shears requirements or seed alternatives; Cattail Sprout uses a reusable water bucket on natural soils or sand.
1.9.0
Added
- Reset a planter’s persistent harvest and output-blocked statistics from its Details tab.
Changed
- Give the Details statistics two readable lines and a distinct icon-only diagnosis-copy button.
1.8.1
Changed
- Rotate either planter by right-clicking with any wrench in
c:tools/wrench; shift-right-click with the same wrench still dismantles it. - Allow blank Filter Modules and Filter Modules with identical settings to stack normally.
- Add persistent production statistics and a compact diagnostic-copy action to the Details tab.
- Add a selectable comparator status mode alongside the existing output-fill signal.
- Add a short vanilla advancement path from the first planter through the first harvest, Glass Hood, Growth Lamp, and Ultra tier.
- Remove obsolete manual release checklists and historical verification reports.
1.8.0
Added
- Dismantle either planter through the normal block-breaking and drop path by shift-right-clicking it, or its installed Glass Hood, with a Create Wrench, a Mekanism Configurator in Rotate mode, or a tool in
c:tools/wrench. - Document that a Hopper on the Glass Hood tip can insert hoes, shears, and fertilizer while soil and seeds remain manual inputs.
- Show a planter item's tier, material, installed modules, stored lamp energy, and wax state directly in its tooltip.
- Insert a supported seed or sapling into an empty seed slot by right-clicking either planter while holding it.
1.7.0
Added
- The growth recipe page in EMI and JEI now shows a fertilizer slot. Plants with a requirement show exactly what they take, so tag-based and special requirements such as the water bucket for kelp and other aquatic plants are visible. Plants without a requirement cycle through every loaded fertilizer, labelled as optional.
1.6.2
Changed
- Filter modules no longer open the filter editor when right-clicked; configure them inside a modular Planter Pot.
- The filter module tooltip now lists the stored rules with item display names, marking each rule as allowed or blocked, and shows the mode only while Shift is held.
1.6.1
Fixed
- Replace the compost viewer's internal stage count with average maturation times, accelerator guidance, and a reminder to stay nearby in JEI, EMI, and REI.
- Removed Organic Compost from Rotten Flesh Recipe
1.6.0
Added
- Show tree bark production with axes, logs, and stripped wood, and organic compost maturation into rich soil in JEI, EMI, and REI when Farmer's Delight is absent.
1.5.0
Added
- Provide organic compost, rich soil, rich soil farmland, tree bark, and straw when Farmer's Delight is absent; defer to its native content when installed.
- Mature placed compost through eight stages with water, skylight, and nearby compost activators affecting its speed.
- Obtain bark by stripping placed logs or crafting an axe with a log, returning stripped wood and wearing the axe.
- Produce straw from mature wheat and planter wheat harvests without a tool requirement, and harvest grass straw with shears.
- Retain the original compost and bark-to-paper recipes, soil growth boosts, textures, models, and scoped data with MIT attribution.
Fixed
- Include optional Farmer's Delight wheat harvesting with straw and Some More Blocks tall/tiny cactus growth recipes previously supplied by the modpack.
- Support blue, green, pink, and yellow Regions Unexplored bioshrooms, including their tall variants.
1.4.0
Added
- Add the datapack-extensible
tdplanter:natural_soilsboundary for ordinary plants and automatic trees.
Fixed
- Keep trees off farmland, sand, End Stone, Nether substrates, and decorative blocks that only inherit broad dirt tags.
- Preserve Rich Soil and Fertilized Soil bonuses for trees through their full-block soil recipes.
- Allow sugar cane on curated natural soils as well as the supported sand family.
1.3.0
Added
- Add a structured coverage diagnosis with stable JSON exports under
logs/tdplanter, runtime and loaded-mod versions, reload warnings, classified plant and soil candidates, expanded compatibility maps, namespace summaries, and all five effective TDPlanter recipe families.
1.2.0
Added
- Add a persistent manual production switch to both planter interfaces; redstone remains authoritative and already paid output keeps draining.
- Add reusable substrate-family tags and datapack-extensible coverage-ignore tags.
Fixed
- Prevent Farmer's Delight mushroom-colony recipes from conflicting with the vanilla mushroom definitions.
- Keep pristine broken planters stack-compatible with freshly crafted planters.
- Restrict drop-level tool tags to the shears slot so hoe tags cannot trigger incorrect shears accounting.
- Keep the Alex's Caves and Mekanism compatibility tests aligned with the current detector and soil contracts.
- Centralize dependency versions, metadata compatibility policy, and installed-mod test patterns in
gradle.properties; one mods-directory property can exercise all supported optional integrations after updates. - Match special plants to compatible sand, aquatic, Nether, sculk, and End substrate families.
- Preserve native tool-gated harvest behavior for reviewed special plants.
- Keep prepaid fertilizer yield visible in the Details tab after the input slot empties.
- Commit fertilizer and hoe wear when a growth cycle starts, retain that fertilizer for the cycle, and show its native item tooltip in Details; shears remain a harvest-time cost.
1.1.7
Added
- Add annotated planter, module, and filter screenshots to the English and German GuideME handbook.
1.1.6
Added
- Add explicit planter support for the remaining reviewed vanilla plants, clear third-party crop gaps, and reported special soils.
Fixed
- Restrict ordinary field crops to farmland-class soils while retaining dirt for trees, special plants, and tilling.
1.1.5
Added
- Add a concise English and German GuideME handbook with separate pages for setup, upgrades, modules, filters, automation, and troubleshooting.
Fixed
- Exclude recipe displays, harvest drops, and decorative name matches from loaded-registry plant and soil coverage gaps.
1.1.4
Added
- Add built-in growth definitions for vanilla plants whose growth mechanics cannot be inferred from ordinary crop or sapling conventions.
- Add a read-only loaded-registry coverage command that reports supported seeds and soils plus candidates requiring review.
Fixed
- Allow fresh planters and planters with identical stored state to stack up to 64 while keeping different configurations separate.
- Detect berry and grape bushes from conventional registry names, including irregular
berriesplurals. - Match Biomes We've Gone Yucca trees to their native sand substrate and oak-log trunk.
1.1.3
Fixed
- Match native harvest products for supported Herbs & Harvest, Farmer's Delight, YUNG's Cave Biomes, Alex's Caves, Quark, Regions Unexplored, and Oh The Biomes We've Gone plants and fruit trees.
1.1.2
Added
- Allow growth recipes to require a specific fertilizer ingredient.
- Add a kelp recipe that requires a reusable water bucket fertilizer.
- Allow drops to select native alternatives based on an installed tool tag.
Fixed
- Match HerbalBrews lavender, hibiscus, coffee, and tea-family harvest products and shears behavior.
1.1.1
Fixed
- Match filter editor buttons to the planter's dark textured controls and group harvest choices in inset panels.
- Give the harvest editor button room below the input slots and keep progress indicators clear of it.
- Recalculate harvest choices from installed tools when opening the filter, including leaves unlocked by shears; retain saved rules when tools change.
1.1.0
Added
- Edit an installed Filter Module directly from the planter with item pictures, individual harvest choices, an outcome summary, undo, and a separate advanced rule editor.
- Copy a configured Filter Module onto one new module in a crafting grid while retaining the original. Persistent item components carry all rules, including individual exceptions and temporarily missing item IDs.
- Preserve stored rules when changing plants or moving a filter to a server with a lower entry limit. The limit restricts new rules instead of deleting existing data.
- Reject stale filter editors after source, crop, soil, recipe, distance, or wax changes. Filter menu opening and individual choices use network protocol 3; clients and servers must update together.
- Pause growth and new harvests in both planter variants while the lower block receives a redstone signal, retaining progress and stopping lamp energy consumption. Already harvested output continues draining.
- Expose output-buffer fullness to comparators, including immediate updates when items enter or leave the buffer.
- Add optional Alex's Caves growth recipes for Cycad, Curly Fern, and Flytrap, each yielding its own plant item on supported crop soils.
1.0.4
Fixed
- Harvest HerbalBrews coffee plants as coffee beans instead of producing brewed coffee directly.
- Allow sugar cane to grow only on normal sand, and support Farm & Charm wild nettle and ribwort plus HerbalBrews hibiscus and lavender with their native harvest drops.
- Harvest HerbalBrews tea blossoms as green tea leaves plus a replacement blossom, and give Rooibos and Yerba Mate their native leaf yields.
Changed
- Set farmland to 1.25x growth and 1.1x yield, Farm & Charm Fertilized Soil to 1.25x growth, Farmer's Delight Rich Soil to 1.5x growth, and Rich Soil Farmland to 2.1x growth and 1.5x yield. Existing Farm & Charm Fertilized Farmland remains at 1.5x growth and 1.25x yield.
- Allow Create Wrenches and Mekanism Configurators in Rotate mode to rotate both planter variants, including through an installed glass hood.
1.0.3
Fixed
- Drain large harvests through the two output slots in batches instead of permanently blocking recipes with more output stacks, including Pewen trees.
- Charge tools and fertilizer once when the first batch fits, retain the paid remainder through saves and input changes, and pause growth until that remainder reaches the output slots. Breaking the planter drops all remaining harvested items.
- Report blocked output while harvest items are waiting for buffer space.
1.0.2
Fixed
- Return ejected modules to the player's inventory instead of dropping them. Keep all affected modules installed when inventory space is insufficient.
1.0.1
Fixed
- Keep planter and filter labels within their bounds with full-text tooltips, and improve gold text contrast.
- Explain invalid and duplicate filter entries, show the configured server limit, and preserve text input when the filter is full. Report server-adjusted filter edits.
- Fix clients disconnecting when opening planter menus by reading the server layout without rejecting LDLib's appended UI initialization data. Truncated layouts and invalid layout flags remain rejected.
- Cover modular and Simple Planter opening packets through the server menu-opening path and registered menu factory, and use the current opening format in the module-ejection test.
- Preserve items when merging into occupied menu slots, including shift-click and partial-stack transfers.
- Restore farmland support for wheat, carrots, potatoes, and beetroot, and prevent component alternatives from indexing the same recipe more than once.
- Retain the active fertilizer effect through all prepaid cycles, including save/load, and enforce configured hoe requirements when committing ready harvests.
- Reject cached automation handlers after module removal or block-entity removal.
- Serialize filter edits and acknowledgments so delayed responses and closing the editor do not discard newer changes.
- Persist blocked harvest rolls and their costs until buffer space is available; relevant input, recipe, or effective configuration changes invalidate the pending result.
- Reject malformed hood-condition values and correct the documented interaction support.
Performance
- Avoid allocating default tier profiles when the configured tier already exists.
1.0.0
Performance
- Reuse server configuration snapshots until a config lifecycle event, and reset them when the config unloads.
- Skip adjacent inventory lookups for empty output buffers, reuse stateless harvest/export services, and commit the already-checked output merge without calculating it twice.
- Remove the obsolete Hopper argument from menu slot counting.
Removed
- Removed manual harvesting, its button and network request, the player-inventory/world-drop output setting, and the
harvestinteraction action. Automatic buffer harvesting now uses the sharedHarvestService.
Changed
- Require the server's menu layout and reject missing or malformed opening data without a client-state fallback. Network protocol 2 requires matching client and server updates and rejects older protocol versions during connection.
- Give every planter two permanent output buffer slots and automatic harvesting into the buffer. The Hopper Module enables downward export on modular planters; the rustic Simple Planter retains its built-in export. Removing a Hopper Module preserves buffered items and open menus, and cached automation handlers can no longer extract after removal.
Fixed
- Accept Farm & Charm's Fertilized Soil in both planter variants and allow hoes to turn it into Fertilized Farmland, retaining the existing farmland growth and yield bonuses.
- Send the server's slot layout when opening planter menus so delayed client block-entity updates cannot misalign output and player inventory slots.
Added
- Add an optional
tilled_soilblock item ID to soil recipes for datapack-controlled hoe transformations; recipes without this field continue to use NeoForge's normal hoe transformation.
0.9.2
Fixed
- Register existing menu slots with LDLib so items render only once and inventory clicks follow the scaled UI at high GUI scales; keep space below the interface for recipe viewer search.
- Render bonsai trunks and foliage from the resolved growth recipe instead of always using oak blocks; show the seed model when tree materials cannot be resolved.
- Give Pewen and eucalyptus distinct compact tree silhouettes and prevent overlapping trunk and foliage blocks.
- Add an optional Alex's Caves Pewen growth recipe yielding Pewen logs and pines, overriding the unused oak grower inherited by its sapling.
- Correct the same inherited oak-grower problem for Ancient, Thornwood, and Licoroot with optional growth recipes. Ancient yields jungle logs and Ancient leaves; Thornwood and Licoroot yield their own materials and render as leafless, branching bonsais.
0.9.1
Fixed
- Show module installation and retrofit crafting recipes in EMI, including combined module installation and usage lookup on the module items. Displays are generated from loaded transform recipes and checked against the actual crafting logic.
0.9.0
Added
- Install Hopper Modules, Glass Hoods, and Growth Lamps on planter items through shapeless crafting, individually or together. A lamp requires an existing hood or a hood in the same recipe. Existing modules and all other item state are preserved; duplicate or already installed modules are rejected.
- Add the optional
target.install_modulefield to crafting-only transform recipes so datapacks can customize module catalysts.
Fixed
- Preserve additional planter item components, such as custom names, during crafting transformations, and validate cached crafting results against the current inputs.
0.8.2
Fixed
- Restrict the missing-hood message and menu suppression to right-clicks with a Growth Lamp on a modular planter without a Glass Hood. Restore normal menu access without a hood for all other interactions, including waxed read-only access.
- Clarify that the missing Glass Hood is required to install the Growth Lamp, not to open the planter menu.
0.8.1
Changed
- Play the glass-breaking sound when successfully ejecting a Glass Hood.
- Require an installed Glass Hood to open the modular planter menu by right-clicking, with a translated message explaining the missing upgrade. Direct item interactions and the Simple Planter menu remain available.
Fixed
- Keep the Hopper Module status visible in the Overview tab when no hopper is installed, using the same muted appearance as other missing modules. Its eject button remains hidden until a hopper is installed.
0.8.0
Changed
- Mining the upper glass hood or lamp now breaks the entire planter and preserves installed modules in its dropped item, just like mining the lower pot. The lower block's break protection is checked as well.
Added
- Added module eject buttons to the Overview tab. Eject the hood together with its lamp, the lamp alone, or the hopper together with buffered output. Waxed planters reject module ejection.
- Added survival pickaxe, item persistence, replacement, module ejection, and duplicate-drop regression coverage.
0.7.4
Fixed
- Automatically scale down the Planter, Simple Planter, and Filter Module interfaces to fit the available screen space, preventing clipping at larger GUI scales or smaller window sizes without changing the player's GUI scale setting.
0.7.3
Fixed
- Prefer direct seed-to-plant relationships over name-based automatic crop matches, preventing Farmer's Delight tomato seeds from being blocked by competing juvenile and mature plant definitions.
- Resolve mature produce through the seed's crop name when a juvenile plant block has a different name, so budding tomatoes yield tomatoes instead of tomato seeds.
- Replace generic recipe errors with server-supplied explanations for missing inputs, unsupported seeds, unsuitable soil, disabled cultivation, and recipe conflicts in both planter menus. Tooltips identify usable alternative soils or conflicting recipe IDs and provide English and German guidance.
- Use declared status translation keys instead of constructing them with locale-dependent lowercasing.
- Add optional compatibility tests using a local Farmer's Delight JAR, including farmland growth and harvesting checks for tomatoes, cabbage, onions, and rice in both planter variants.
0.7.2
Added
- Added direct tag and logical drop-group entry fields to the Filter Module screen.
- Added dependency checksum verification metadata and regression coverage for waxed automation, persisted filters, legacy output draining, datapack hood actions, structure cleanup, component-sensitive seeds, bounded harvest planning, and both Jade planter variants.
Fixed
- Made wax mode freeze automatic harvesting, item transfer, and FE input, including capabilities cached before waxing.
- Reset growth progress when the seed item or its components change, and made growth recipe caching component-aware.
- Prevented combined tier, soil, and fertilizer yield multipliers from exceeding the supported effective limit, and bounded individual drop counts and planned output stacks before allocation.
- Removed ghost hood and lamp state when the upper proxy is removed outside the normal player-break path, while retaining proxy repair behavior.
- Made datapack
install_hoodactions use their declared recipe catalyst, preflighted multi-action recipes before mutation, and rejected ambiguous or predictably partial sequences. - Validated persisted and item-carried state at load and placement boundaries, clamped stored energy, and kept oversized legacy output buffers visible and drainable until production can resume.
- Preserved unknown exact filter item IDs across data round trips while continuing to reject new unknown IDs submitted by clients.
- Registered Jade information for the Simple Planter as well as the modular Planter.
0.7.1
Changed
- The tier bands now use a dedicated gradient texture per tier: edge-dark, centre-bright horizontal sheen in the tier colour instead of a flat concrete tone. The textures are regenerated by
tools/gen_band_textures.py.
0.7.0
Added
- Added the Simple Planter (
tdplanter:simple_planter): a rustic single-tier pot with a soil slot, a seed slot, and two output slots that always push the harvest into the container below. It takes no tool, fertilizer, or filter slots, accepts no modules or tier upgrades, and has no energy. It supports wax mode and the sharedtdplanter:growthrecipes at the Basic rate, and comes with a default crafting recipe (eight terracotta around a hopper) that packs can override.
Changed
- The hoe requirement mode
automation_requiredno longer blocks the Simple Planter, which has no tool automation;always_requiredstill blocks hoe-gated crops on it.
0.6.0
Added
- Added optional yield recipes for Farm & Charm and Alex's Caves fertilizers, with increasing bonuses above Bone Meal.
- Added boosted Farm & Charm fertilized farmland and a Cocoa Beans recipe that requires jungle logs.
- Added work-per-tick breakdowns and estimated cycle times to the planter details.
- Added an optional JEI growth category so seed usages show compatible planter soils, configured drops, and base work.
Fixed
- Moved the planter base-work text onto its own line below the drops label in both EMI and JEI so the recipe details no longer overlap.
- Read JEI growth recipes from the active client level recipe manager so the category is populated after recipe synchronization.
- Added a native EMI growth category with seed, soil, drops, and base-work information because JEMI intentionally skips JEI categories for mods that already provide an EMI plugin.
- Register planter growth recipes with JEI after the client recipe manager becomes available, including recipe reloads, so seed usages show the TDPlanter category.
- Place the two planter output slots directly beside the player inventory and align both sections as one compact bottom layout.
- Reset growth work and the rendered crop stage whenever the inserted soil changes.
- Disabled seed insertion by right-click so seeds are inserted through the dedicated UI slot.
- Detected planted block items as seeds, including crops whose planting items use names such as roots, kernels, cloves, oats, hops, or peanuts.
- Prevented automatic crop fallbacks from overriding explicit crop-specific soil requirements.
- Prevented the overview work text from overlapping the inserted soil slot.
- Made automatically detected stem crops harvest the detected fruit block's loot table instead of producing arbitrary fruit-block stacks.
- Made melons produce melon slices while preserving normal pumpkin drops and equivalent loot behavior from modded stem fruits.
- Kept saplings out of generic crop detection so age-bearing saplings such as Mangrove Propagules resolve only through tree detection.
- Included the active soil yield factor in the planter details and effective yield total.
- Kept
yield_factoroptional in the KubeJS soil schema to preserve existing scripts. - Ordered required KubeJS soil schema keys before the optional
yield_factorkey so datapack loading no longer aborts during schema registration. - Added a regression test for KubeJS's required-before-optional schema ordering contract.
Changed
- Planter items now retain their tier, material, installed hood, lamp, hopper, filter module and configuration, wax state, and stored FE when broken.
- Soil, seeds, tools, fertilizer, and buffered outputs now drop separately when a planter is broken, while transient growth progress is reset.
- Standardized every Hopper Module on a compact two-slot output buffer instead of tier-dependent rows of output slots.
- Centered the smaller output panel below the planter controls.
- Shortened large work values in the overview while retaining exact current and required work in the tooltip and details tab.
0.5.0
Added
- Added runtime fallback definitions for conventional crops, melon- and pumpkin-style stems, saplings, dirt-tagged blocks, and farmland blocks.
- Rendered the inserted soil inside the planter using its own block model and texture.
- Added hoe right-click tilling for inserted soil through NeoForge's
HOE_TILLcompatibility contract, including transformations supplied by other mods.
Changed
- Rendered planted field crops and stems with their block models instead of upright seed-item models.
- Removed the implicit plant-area right-click harvest; ordinary right-clicks now open the planter menu.
- Gave farmland and automatically detected modded farmland a 1.25x soil growth factor while regular dirt remains at 1.0x.
- Reworked the planter overview and details layout to show current and required work plus the active soil speed.
- Replaced technical detail-page fields with live growth and yield totals plus their tier, soil, hoe, glass hood, growth lamp, and fertilizer multipliers.
- Marked inactive optional modifiers separately so the configured benefit remains visible without being included in the effective total.
Fixed
- Allowed automatically detected seeds such as Melon Seeds to enter the seed slot and participate in growth resolution.
- Synchronized soil and seed changes to clients so the planter display updates immediately.
- Kept explicit growth definitions authoritative without reporting their automatic fallbacks as ambiguities.
- Made the Hopper Module automatically harvest ready crops into its output buffer and export them to inventories below.
- Allowed Hopper Module exports to move the portion that fits instead of blocking the complete transfer.
- Calculated the work bar from current work divided by required work instead of treating raw work units as a percentage.
- Advanced field-crop and stem render stages from the actual growth progress and synchronized stage changes to clients.
- Kept the first visible crop stage above the rendered soil surface so newly planted crops are not hidden by the planter rim.
- Kept input item stacks off the details tab instead of allowing hidden overview slots to collapse into its upper-left corner.
0.4.2
Changed
- Moved the Energy Port upward to align it with the updated rear housing.
- Updated the Energy Port resource test for its custom housing and connector textures.
Documentation
- Added a datapack guide covering all recipe formats, KubeJS and generated recipes, reload behavior, and troubleshooting.
0.4.1
Fixed
- Added the missing recessed Energy Port to the functional rear FE input while the Hood and Growth Lamp are installed.
- Prevented local vanilla asset exports under
assets/minecraftfrom entering production JARs.
0.4.0
Added
- Added Jade as an optional dependency with a planter tooltip that lists the tier and installed Hopper, Hood, Growth Lamp, and Filter Module components.
- Added stored and maximum FE to the Jade tooltip only while a Growth Lamp is installed.
Changed
- Displayed the Basic, Advanced, Elite, or Ultra tier in planter menu and Jade titles.
- Replaced the planter FE indicator with a framed, segmented vertical gauge.
Fixed
- Corrected the soil-slot pictogram so it represents soil instead of a module.
- Prevented the planter status area from producing an unrelated tooltip over the soil slot.
- Kept the complete FE gauge hidden while no Growth Lamp is installed.
0.3.3
Fixed
- Hid every nested FE-bar element when no Growth Lamp is installed, including the previously visible empty background.
- Prevented the absent Filter Module status from rendering across nearby input slots and moved the installed filter status beside its slot.
- Replaced unreliable item-stack ghost overlays with six clear white pictograms for the shears, hoe, seed, fertilizer, soil, and Filter Module slots.
0.3.2
Fixed
- Hid the FE bar unless a Growth Lamp is installed.
- Restored compact empty-slot hints with LDLib2 item overlays and prevented the absent Filter Module label from overlapping nearby input slots.
- Added LDLib2 event-driven tooltips for input slots, the Filter Module, installed modules, planter status, work progress, and stored energy.
0.3.1
Fixed
- Centered the LDLib2 planter and Filter Module interfaces through the library's relative-root layout contract instead of anchoring them to the top-left corner.
- Expanded and rebalanced the LDLib2 layout so module labels, the energy bar, controls, and inventory slots no longer overlap or clip.
0.3.0
Added
- Added an exact runtime dependency on LDLib2 2.2.37 for Minecraft 1.21.1 and NeoForge.
- Added LDLib2 tab, slot, button, progress, and dynamic-label components for the planter and Filter Module workflows.
Changed
- Rebuilt the complete planter interface as a server-synchronized LDLib2
ModularUIwhile retaining the existing server-authoritative menu, inventory, and payload contracts. - Rebuilt the complete Filter Module interface with LDLib2 components while preserving direct inventory selection and JEI, EMI, and REI drag-and-drop integration.
- Replaced the separate custom-rendered details window with an LDLib2 Details tab.
0.2.4
Fixed
- Rebuilt the production JAR from the complete source output so runtime planter interactions include
TransformResolverand no longer crash before opening the interface.
0.2.3
Fixed
- Replaced the unintended dark upper hood body and hood-only crown with glass.
- Kept the black material exclusive to the optional Growth Lamp housing.
- Updated the Blockbench source to use the same glass texture across the complete hood.
0.2.2
Changed
- Refined the glass hood geometry and its dark crown so the optional Growth Lamp no longer overlaps the hood.
- Hid the FE interface and disabled external energy access unless a Growth Lamp is installed.
- Added the editable Blockbench source for the glass hood.
0.2.1
Changed
- Rebuilt the glass hood with continuous panes and a finer, closed dome profile.
- Reduced the Growth Lamp housing and changed it to a black finish around the downward-facing purple panel.
- Removed the visible FE heading while retaining the energy bar tooltip.
0.2.0
Added
- Added a configurable Filter Module item with a server-authoritative right-click interface.
- Added a dedicated planter module slot that activates the configuration stored on the inserted Filter Module.
- Added factory-style whitelist and blocklist indicators to the filter interfaces.
Changed
- Moved filter editing out of the planter interface and into the held Filter Module.
- Migrated existing persisted planter filters into installed Filter Modules when their state is loaded.
- Extended the glass hood to the full two-block structure and reshaped its upper section around the Growth Lamp.
- Limited the Growth Lamp's purple surface to its downward-facing light panel.
0.1.4
Added
- Added distinct item icons for planter modules and tier upgrades.
0.1.2
Changed
- Redesigned the planter interface with clearer slot placement, status colors, input hints, and tooltips.
- Added dedicated visual indicators for installed modules, stored energy, and planter progress.
- Improved the planter base, tier band, glass hood, and Growth Lamp models.
- Made the active Growth Lamp illuminate its surroundings.
0.1.1
Changed
- Added project, release-verification, and development documentation.
- Updated the release candidate version metadata.
0.1.0
Added
- Added the initial modular planter with server-authoritative growth, harvesting, inventory handling, and persistence.
- Added reloadable
growth,soil,fertilizer,interaction, andtransformrecipe types. - Added Basic, Advanced, Elite, and Ultra tiers with state-preserving material transformations.
- Added the glass hood, Growth Lamp, Hopper Module, wax mode, and configurable item filters.
- Added optional KubeJS, JEI, EMI, REI, Jade, and GameTest integrations.
- Added English and German localization, diagnostic commands, and automated release checks.