Skip to content

improvements from fork#1

Open
def9a2a4 wants to merge 50 commits into
def9a2a4:mainfrom
xiaozhangup:main
Open

improvements from fork#1
def9a2a4 wants to merge 50 commits into
def9a2a4:mainfrom
xiaozhangup:main

Conversation

@def9a2a4
Copy link
Copy Markdown
Owner

needs review, and need to either revert localization or add a localization system

xiaozhangup and others added 30 commits February 27, 2026 01:52
…s, randomize pipe task offsets to reduce lag
…er and RecipeUnlockListener initialization, registration, and usage
… for rechecking container presence at pipe ends
… CachedPath and implement precise cache eviction by member
Co-authored-by: xiaozhangup <68374769+xiaozhangup@users.noreply.github.com>
Fix three cache-consistency bugs in PipeManager
…lla-hopper-compatible behavior

Co-authored-by: xiaozhangup <68374769+xiaozhangup@users.noreply.github.com>
Agent-Logs-Url: https://github.com/xiaozhangup/Pipes/sessions/2802d3a8-0aba-4396-aed4-0015a5cabe84
…id-brew extraction guard

Co-authored-by: xiaozhangup <68374769+xiaozhangup@users.noreply.github.com>
Agent-Logs-Url: https://github.com/xiaozhangup/Pipes/sessions/313d0900-255c-4113-b332-cfe18b6081da
…adapter

Add vanilla-hopper-compatible adapters for Furnace and Brewing Stand
- Add ContainerAdapter.requestedItem() default method: containers can
  declare what item they currently need; null = use default behavior
- Add ContainerAdapter.peekExtractMatching() default method: filtered
  extraction that only returns items matching the destination's request;
  default checks the result of peekExtract() for similarity
- Override peekExtractMatching() in VanillaContainerAdapter to scan the
  full inventory for the first matching item instead of just slot 0
- Override requestedItem() in FurnaceContainerAdapter: returns smelting
  slot item when present, then fuel slot item as fallback
- Override requestedItem() in BrewingStandContainerAdapter: returns
  ingredient slot item when present, then fuel slot item as fallback
- Modify PipeManager.transferItems() to get path before extraction so
  the destination's requested item is known; use peekExtractMatching()
  when destination has a request, skipping (without sleeping) when
  source lacks the requested item type

Co-authored-by: xiaozhangup <68374769+xiaozhangup@users.noreply.github.com>
Agent-Logs-Url: https://github.com/xiaozhangup/Pipes/sessions/e02fea73-a3ff-44a8-a334-3299c8b170b1
…uest

feat: smart item-request system — destination containers declare what they need
Copilot AI and others added 20 commits March 22, 2026 15:13
Co-authored-by: xiaozhangup <68374769+xiaozhangup@users.noreply.github.com>
Agent-Logs-Url: https://github.com/xiaozhangup/Pipes/sessions/6928beb2-c4b5-4ef8-9559-2df78bccc7f7
…ne-operations

Remove unnecessary ItemStack.clone() calls
Fix item duplication on partial insert and furnace item drops
…tation

Fix pipe under-extraction: collect matching items across multiple slots
…rong item type

Co-authored-by: xiaozhangup <68374769+xiaozhangup@users.noreply.github.com>
Agent-Logs-Url: https://github.com/xiaozhangup/Pipes/sessions/e13f3266-aac9-4106-b7e6-9644f670de7c
…ch routing, fix shutdown clearing sleepUntil

Co-authored-by: xiaozhangup <68374769+xiaozhangup@users.noreply.github.com>
Agent-Logs-Url: https://github.com/xiaozhangup/Pipes/sessions/10cfae50-90f4-4cb4-9cc7-b1614083a18e
fix: items of mismatched type stuck when pipe's cached destination has requestedItem
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants