particle accelerator QMAW

This commit is contained in:
Boblet 2025-10-23 15:12:10 +02:00
parent d6f957f975
commit 75adc232f7
13 changed files with 104 additions and 1 deletions

View File

@ -21,6 +21,7 @@ public class ItemCircuit extends ItemEnumMulti {
@SideOnly(Side.CLIENT)
public void getSubItems(Item item, CreativeTabs tab, List list) {
list.add(new ItemStack(item, 1, EnumCircuitType.VACUUM_TUBE.ordinal()));
list.add(new ItemStack(item, 1, EnumCircuitType.NUMITRON.ordinal()));
list.add(new ItemStack(item, 1, EnumCircuitType.CAPACITOR.ordinal()));
list.add(new ItemStack(item, 1, EnumCircuitType.CAPACITOR_TANTALIUM.ordinal()));
list.add(new ItemStack(item, 1, EnumCircuitType.ATOMIC_CLOCK.ordinal()));
@ -61,6 +62,7 @@ public class ItemCircuit extends ItemEnumMulti {
CHIP_QUANTUM,
CONTROLLER_QUANTUM,
ATOMIC_CLOCK,
NUMITRON,
}
@Override

View File

@ -84,7 +84,7 @@ public class TileEntityPADipole extends TileEntityCooledBase implements IGUIProv
if(particle.invalid) return;
if (isInline) {
if(isInline) {
particle.addDistance(3);
} else {
particle.resetDistance();

View File

@ -1656,6 +1656,7 @@ item.circuit.controller.name=Steuereinheit
item.circuit.controller_advanced.name=Erweiterte Steuereinheit
item.circuit.controller_chassis.name=Steuereinheitsgehäuse
item.circuit.controller_quantum.name=Quantencomputer
item.circuit.numitron.name=7-Segment Glühfadenröhre
item.circuit.pcb.name=Leiterplatte
item.circuit.quantum.name=Quantenprozessoreinheit
item.circuit.silicon.name=Bedrucker Siliziumwafer

View File

@ -2461,6 +2461,7 @@ item.circuit.controller.name=Control Unit
item.circuit.controller_advanced.name=Advanced Control Unit
item.circuit.controller_chassis.name=Control Unit Casing
item.circuit.controller_quantum.name=Quantum Computer
item.circuit.numitron.name=Incandescent Seven Segment Display
item.circuit.pcb.name=Printed Circuit Board
item.circuit.quantum.name=Quantum Processing Unit
item.circuit.silicon.name=Printed Silicon Wafer

View File

@ -0,0 +1,11 @@
{
"name": "Beamline",
"icon": ["hbm:tile.pa_beamline", 1, 0],
"trigger": [["hbm:tile.pa_beamline"]],
"title": {
"en_US": "Beamline"
},
"content": {
"en_US": "Passive component of the [[particle accelerator|Particle Accelerator]]. Does not need cooling or electricity, simply allows the particle to travel. mainly used for cosmetic reasons, or to fulfill the side length requirement of higher [[coil tiers|Large Coil]].<br><br>This component is one-way only, make sure the particle follows the red arrows!"
}
}

View File

@ -0,0 +1,11 @@
{
"name": "Large Coil",
"icon": ["hbm:item.pa_coil", 1, 0],
"trigger": [["hbm:item.pa_coil", 1, 32767]],
"title": {
"en_US": "Large Coil"
},
"content": {
"en_US": "Part of the [[particle accelerator|Particle Accelerator]], required for [[quadrupole|Quadrupole Magnets]] and [[dipole magnets|Dipole Magnets]]. Coils have various attributes and restrictions to them, they determine how fast a particle needs to be to enter a ring and how fast it can be once it leaves.<br><br>The operational range determines how fast a particle needs to be when it passes a component with a coil. If the particle is slower than the lower bound, the component is hit with a 10x increase in energy consumption. If the particle exceeds the upper bound, it will crash. It is therefore important to configure dipoles to cause particles to leave before becoming too fast.<br><br>The dipole minimum side length is the minimum distance a particle needs to travel from one dipole to the next. Two dipoles connected by a single beamline for example creates a side length of 3. If the minimum side length is not met, the power consumption will once again be tenfolded. Dipoles that do not change the particle's direction, i.e. let it pass straight through, do not factor into this limit, instead adding 3 to the side length, just like how a beamline would. In fact, such a dipole is not affected by any power penalties (underspeed or side length).<br><br>If both x10 power penalties apply, the total power draw exceeds the dipole's power buffer, causing the particle to crash. It is therefore important to either build accelerators that are large enough to use high tier coils, or ones that use lower coil tiers that prevent the underspeed penalty."
}
}

View File

@ -0,0 +1,11 @@
{
"name": "Particle Detector",
"icon": ["hbm:tile.pa_detector", 1, 0],
"trigger": [["hbm:tile.pa_detector"]],
"title": {
"en_US": "Particle Detector"
},
"content": {
"en_US": "Final component of the [[particle accelerator|Particle Accelerator]], ends the simulation and tries to perform the recipe. Requires empty capsules to catch the resulting particles, inputs are simply voided if the particle cannot be collected. Particle detection requires a defocus of 0, ensure that the accelerator has sufficient [[quadrupoles|Quadrupole Magnets]].<br><br>This component requires cooling through [[cold perfluoromethyl|Perfluoromethyl]]. The returned room temperature fluid can be cooled again using [[compressors|Compressor]]."
}
}

View File

@ -0,0 +1,11 @@
{
"name": "Dipole Magnets",
"icon": ["hbm:tile.pa_dipole", 1, 0],
"trigger": [["hbm:tile.pa_dipole"]],
"title": {
"en_US": "Dipole Magnets"
},
"content": {
"en_US": "Active component of the [[particle accelerator|Particle Accelerator]]. Used to direct particles around corners, which enables loops and branches.<br><br>Dipoles need to be configured to be usable. The first output setting determines the direction of the particle when it does not meet the speed threshold, the second determines the direction if it does, and the third determines the direction if the threshold is met AND a redstone signal is applied to one of the dipole's ports. Below the direction settings is a text field for configuring the threshold speed. <br><br>Ideally, the threshold should be set below the upper limit of the coils used in the same accelerator ring. This causes the particle to leave the ring before it can exceed the coil's maximum speed and crash.<br><br>This component uses [[large coils|Large Coil]], keep coil restrictions in mind when building the accelerator!<br><br>This component requires cooling through [[cold perfluoromethyl|Perfluoromethyl]]. The returned room temperature fluid can be cooled again using [[compressors|Compressor]]."
}
}

View File

@ -0,0 +1,11 @@
{
"name": "Particle Accelerator",
"icon": ["hbm:tile.pa_detector", 1, 0],
"trigger": [["hbm:tile.pa_detector"]],
"title": {
"en_US": "Particle Accelerator"
},
"content": {
"en_US": "A particle accelerator is a large dynamic structure made from multiple components. In short, particles are fired from [[particle sources|Particle Source]] along [[beamlines|Beamline]], accelerated via [[RF cavities|RF Cavity]], refocussed with [[quadrupoles|Quadrupole Magnets]], redirected with [[dipoles|Dipole Magnets]] and finally received by a [[particle detector|Particle Detector]].<br><br>In order for a recipe to complete, a particle, using the correct ingredients, needs to reach the detector with at least the required speed. Particles gain 100 points of momentum when passing an RF cavity, but this also creates 100 points of defocus. Defocus can be reduced with quadrupoles, 100 points at a time. If the defocus exceeds 1000, the particle crashes. Most components are linear, however dipoles can be used to change the particle's path depending on its speed, allowing turns, branches and loops to be made.<br><br>The most simple accelerator is a particle source connected to several RFCs, then quadrupoles for refocusssing and finally the detector, forming a linear accelerator. This however limits the final momentum to the amount of RFCs x100. By using dipoles to form a ring, particles can follow the loop and make use of the same RFCs and quadrupoles multiple times. However, the [[coils|Large Coil]] used by both quadrupoles and dipoles have limits on how fast the particle can be, meaning that once the particle becomes too fast, it needs to leave the ring. One ring however can lead into another, with better coils, which have a higher speed limit. Starting off with higher tier coils right away is not advised, since coils also have a minimum speed, although this doesn't immediately cause the particle to crash. An ideal accelerator that is not subject to any coil penalties and can perform any recipe is one with multiple rings, each using higher tier coils. Dipoles can be configured with redstone so that rings that add more speed than necessary can be skipped, ending the particle's path early.<br><br>In addition to power, most accelerator parts require cooling. [[Cold perfluoromethyl|Perfluoromethyl]] needs to be pumped into the components, which returns room temperature PFM that can be cooled down again. Creating cold PFM requires two sets of [[compressors|Compressor]], one compressing PFM to a pressure of 1 PU and one to compress it further, yielding cold PFM.<br><br>Most parts of the accelerator have a fixed direction that the particle needs to follow. Mind the red arrows on the components.<br><br>A step-by-step guide on how to build a very basic single ring accelerator can be found [[here|PA Guide]]"
}
}

View File

@ -0,0 +1,11 @@
{
"name": "PA Guide",
"icon": ["hbm:tile.pa_detector", 1, 0],
"trigger": [["hbm:tile.pa_detector"]],
"title": {
"en_US": "Particle Accelerator Starter Guide"
},
"content": {
"en_US": "Place a [[particle source|Particle Source]] and connect the front end to a [[beamline|Beamline]]. The front of the source is the part that also looks like a beamline. Ensure that the beamline's orientation, indicated by the red arrows, points away from the source, as this is the direction the particle follows. Place a [[dipole|Dipole Magnets]] fitted with a [[large gold coil|Large Coil]], and configure the top two options (below and above the threshold) to point away from the particle source. In that direction, place another beamline connecting to the dipole, then an [[RF cavity|RF Cavity]], another beamline, a [[quadrupole|Quadrupole Magnets]] fitted with another large gold coil, another beamline, and finally another dipole, again with gold coils. Configure the dipole to do a 90° turn. Not counting the initial source, you should now have one side of the accelerator ring, dipole -> RFC -> quadrupole -> dipole. In the direction that the second dipole turns, repeat that pattern three times, always doing another 90° turn, until the ring is complete. Finally, in the dipole opposite to the source, the one at the end of the first side we built, change the direction of the second setting (direction if the particle meets the threshold) to go straight instead of doing a turn, then set the threshold to 2000. The particle will do five full circles, then the first side again, accumulating a total of 2100 momentum, which is less than the maximum of the gold coils, and then leave the accelerator. In the direction that the particle leaves in, place one last beamline and finally the detector. Connect all parts to electricity and to a source of [[cold perfluoromethyl|Perfluoromethyl]], pipe back the resulting warm perfluoromethyl into a [[compressor|Compressor]], then pipe that into a second compressor, this should create cold PFM again, closing the cooling cycle.<br><br>This setup should be able to perform some of the more basic recipes, and forms the basis on which all accelerators are built. Once you understand the system, it should be trivial to remove the detector and replace it with a larger secondary ring with stronger coils, which allows particles to go even faster. Single ring accelerators are still possible though, as particles that are slower than the coil minimum won't crash immediately, however this means that the accelerator is hit with a hefty penalty, requiring 10x more power, and the ring size needs to match the minimum of the coil, otherwise both penalties stack up and the particle crashes instantly.<br><br>Return to the [[particle accelerator overview page|Particle Accelerator]] and check out all the components individually, understanding the components is crucial in understanding the full accelerator."
}
}

View File

@ -0,0 +1,11 @@
{
"name": "Quadrupole Magnets",
"icon": ["hbm:tile.pa_quadrupole", 1, 0],
"trigger": [["hbm:tile.pa_quadrupole"]],
"title": {
"en_US": "Quadrupole Magnets"
},
"content": {
"en_US": "Active component of the [[particle accelerator|Particle Accelerator]]. Removes 100 points of defocus per pass, which accumulates by passing [[RF cavities|RF Cavity]].<br><br>This component uses [[large coils|Large Coil]], keep coil restrictions in mind when building the accelerator!<br><br>This component requires cooling through [[cold perfluoromethyl|Perfluoromethyl]]. The returned room temperature fluid can be cooled again using [[compressors|Compressor]].<br><br>This component is one-way only, make sure the particle follows the red arrows!"
}
}

View File

@ -0,0 +1,11 @@
{
"name": "RF Cavity",
"icon": ["hbm:tile.pa_rfc", 1, 0],
"trigger": [["hbm:tile.pa_rfc"]],
"title": {
"en_US": "RF Cavity"
},
"content": {
"en_US": "Active component of the [[particle accelerator|Particle Accelerator]]. Accelerates particles by 100 points of momentum each pass, but also adds 100 points of defocus. Particles exceeding 1000 points of defocus will crash, so refocussing using [[quadrupole magnets|Quadrupole Magnets]] is necessary.<br><br>This component requires cooling through [[cold perfluoromethyl|Perfluoromethyl]]. The returned room temperature fluid can be cooled again using [[compressors|Compressor]].<br><br>This component is one-way only, make sure the particle follows the red arrows!"
}
}

View File

@ -0,0 +1,11 @@
{
"name": "Particle Source",
"icon": ["hbm:tile.pa_source", 1, 0],
"trigger": [["hbm:tile.pa_source"]],
"title": {
"en_US": "Particle Source"
},
"content": {
"en_US": "Initial component of the [[particle accelerator|Particle Accelerator]], starts particles and runs the simulation. Will begin a recipe if there is at least one item in each input slots.<br><br>The blue info button will dispay the accelerator's previous stats when hovered over. It also shows various messages depending on the previous result or error. The red button cancels an operation, which is useful if a particle is stuck in an infinite loop due to an incorrectly constructed accelerator ring.<br><br>List of messages:<br>* Paused: The particle has reached an unloaded chunk. Chunks need to be loaded for particles to be simulated.<br>* Defocus: The particle has exceeded 1000 points of defocus, indicating that there's not enough quadrupoles in the current ring. May also happen if a particle enters a [[detector|Particle Detector]] while having more than 0 defocus.<br>* Derail: The particle has left the accelerator, either because a part is not connected or because it is oriented incorrectly.<br>* Denied: The particle tried to enter a part of the accelerator it can't, that part may be oriented incorrectly.<br>* No cooling: The particle tried to enter part of the accelerator that doesn't receive necessary cooling.<br>* No power: Part of the accelerator may not be sufficiently powered, including various penalties for not meeting [[coil requirements|Large Coil]]. Also happens if mutliple coil penalties are active at once, due to the power draw exceeding the part's buffer.<br>* Overspeed: The particle has crashed because it has exceeded the maximum operating speed of a coil it passed.<br>* No recipe: The particle has completed an operation, but the ingredients do not create a result.<br>* Underspeed: he particle has completed an operation with valid ingredients, but the final speed was not enough to complete the recipe.<br><br>This component requires cooling through [[cold perfluoromethyl|Perfluoromethyl]]. The returned room temperature fluid can be cooled again using [[compressors|Compressor]].<br><br>This component is one-way only, make sure the particle follows the red arrows!"
}
}