Add CC: Tweaked peripheral for ghost programmed circuit#4468
Add CC: Tweaked peripheral for ghost programmed circuit#4468TarLaboratories merged 7 commits intoGregTechCEu:1.20.1from
Conversation
TarLaboratories
left a comment
There was a problem hiding this comment.
LGTM except one comment
dependencies.gradle
Outdated
| // CC: Tweaked | ||
| modCompileOnly(forge.cc.tweaked.core.api) | ||
| modCompileOnly(forge.cc.tweaked.forge.api) | ||
| //modLocalRuntime(forge.cc.tweaked.forge.impl) |
There was a problem hiding this comment.
why add a commented out line?
There was a problem hiding this comment.
So that it can be uncommented easily for testing in runtime, I saw some of the other dependencies doing that aswell. I can remove the line if you want.
There was a problem hiding this comment.
Is it not already a part of the extraLocalRuntime group?
There was a problem hiding this comment.
If it is, I couldn't find it?
|
Also please run the |
|
|
|
I have moved the commented out CC dependency to where the other modExtraLocalRuntime dependencies are. (I have also uncommented it). I managed to run |
|
This should have absolutely not have been merged. This PR will be forcibly reverted and this is a friendly reminder to please discuss heavy balance / cross mod integration on discord before submitting PR's. |
This reverts commit ce64595.
|
I was told when I asked in the github issue #806 that if I made a PR for this, it would be considered for merging. I was not informed that it would go against balancing, which is why I submitted it. I think its unfortunate this is considered unbalanced, considering most modpacks I have played gate computers at about HV, and to make use of this circuit api you would need to write a decently clever script to manage items in and out of your machine. It could even be considered an improvement for servers, since the alternative is building more machines, one for each programmed circuit. (Which, admittedly, is probably more expensive, but definitely not out of the question for some players). |
|
Additionally, with using a computer and one machine to automate many recipes, you are trading off the speed at which you can process multiple recipes. Sure, it may have been cheaper to setup, but you will end up with a backlog of items if you need to queue two different circuit recipes at once. Meaning that a dedicated machine for each recipe is the ideal solution to aim for anyway, and this api is simply something to engineer with in the meantime. |
What
This PR adds a CC: Tweaked generic peripheral with
getProgrammedCircuit() -> nil|0-32andsetProgrammedCircuit(nil|0-32).This properly finishes the implementation for CC:T described here #806
Implementation Details
The generic peripheral applies to all machines / machine traits that implement
IHasCircuitSlot. To do this, I have added a capabilityCAPABILITY_CIRCUIT_SLOTwhich is added inMetaMachineBlockEntitylike all the other GregTech CC compat capabilities.