Skip to content

Fix AE2 crafting requests from computers being cancelled on reload - #239

Open
Maselkov wants to merge 2 commits into
GTNewHorizons:masterfrom
Maselkov:ae2-relink-requests
Open

Maselkov wants to merge 2 commits into
GTNewHorizons:masterfrom
Maselkov:ae2-relink-requests

Conversation

@Maselkov

Copy link
Copy Markdown

Summary

Crafting jobs requested from a computer were cancelled whenever their network reloaded, like on a server restart or chunk unload. AE2 only re-ties a job to a requester that's a block on the network, and a computer's request isn't one.

The server now keeps these jobs, with the controller or interface acting as the requester, and re-ties each job once the controller and the CPU are both loaded again.

tested in devenv as well as my base in fullpack, in both cases computer-requested crafts now survive restarts and chunk unloads

Checklist

  • I have tested this PR in DevEnv
  • I have tested this PR in Fullpack
  • This PR is in compliance with the GTNH AI Policy
  • This PR requires another PR in order to merge

@Maselkov

Copy link
Copy Markdown
Author

aw shucks, right after I opened this I realized #204 does a similar thing. totally missed it in the PR list, my bad

Though I'll still mention that the approaches differ - primarily, with this PR, jobs survive even if nothing in Lua still references the status, so fire and forget craftable.request(n) keeps working across reloads. it also relinks after grid rebuilds and doesn't drop the job if the computer loads more than 3s after the CPU

happy to close this if you'd rather go with the other one

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.

1 participant