- Added lectern component
- Can be cycled through page 1-15
- Outputs that page as a signal strength to comparators
- Added copper bulb component
- Added tooltip to the component palette
- Increased sound volume of circuit sounds
- Changed component palette in circuit screen to two columns
- Screen related assets were split, moved and renamed
- Added translations for all component names
- Updated to MC 1.21
⚠️ Warning: Worlds from 1.20.4 and below will not be updated properly and may crash (see note below)
I already spent weeks writing datafixers to migrate old circuit data to the new one (which already worked).
Unfortunately, when Minecraft introduced structured components on items to replace NBT,
they chose to use components
as the tag name where they are saved.
This happens to be the same tag that circuit items and block entities used for storing their circuit data.
This causes very annoying problems with DataFixerUpper,
since it would expect the list of integers to be a map of components.
When trying to load a 1.20.4 world with circuits, it will error with something like this in the console and crash:
Not a map: [I;0,0,0,.....
I tried a lot of things to fix this, and it partially almost worked (with some exceptions). However, I don't feel comfortable including this fix in a release, because I don't know the possible side effects it might have to worlds. So if you need your world upgraded, feel free to get in touch, so I know there is demand for it. I might still find a good solution (unlikely) or help you update the world with my (as of now) crude solution.
My datafixing attempts can be found at https://github.com/replaceitem/integrated-circuit/tree/datafixing-pain
If you are a datafixing wizard, I would really appreciate any help.
⚠️ Warning: Worlds from 1.20.4 and below will not be updated properly and may crash (see note below)
- Updated to MC 1.20.6
- Fixed placing a circuit not updating output/input signals
- Reworked the circuit serialization heavily:
- Circuits are now saved using paletted containers (like minecraft chunks are saved)
- Component states now use the same state system as block states, allowing more states than the previous 256 limit
- Renamed block entity name to integrated_circuit:integrated_circuit
About updating from 1.20.4 or below:
I already spent weeks writing datafixers to migrate old circuit data to the new one (which already worked).
Unfortunately, when Minecraft introduced structured components on items to replace NBT,
they chose to use components
as the tag name where they are saved.
This happens to be the same tag that circuit items and block entities used for storing their circuit data.
This causes very annoying problems with DataFixerUpper,
since it would expect the list of integers to be a map of components.
When trying to load a 1.20.4 world with circuits, it will error with something like this in the console and crash:
Not a map: [I;0,0,0,.....
I tried a lot of things to fix this, and it partially almost worked (with some exceptions). However, I don't feel comfortable including this fix in a release, because I don't know the possible side effects it might have to worlds. So if you need your world upgraded, feel free to get in touch, so I know there is demand for it. I might still find a good solution (unlikely) or help you update the world with my (as of now) crude solution.
My datafixing attempts can be found at https://github.com/replaceitem/integrated-circuit/tree/datafixing-pain
If you are a datafixing wizard, I would really appreciate any help.
- Only tick the circuits on the server + added some safety checks (Fixes #21)
- Optimized the circuit block entity on the client to no longer waste memory by storing an empty circuit
- Fixed crash when game options are not available (#20)
- Added cloth-config and ModMenu as an optional dependency for accessing the config
- The keybindings for placing, breaking and picking components can now be configured in cloth-config
- Added a keybind for rotating the component (default
r
) - Added config for changing scroll behaviour (Rotating component or scrolling through component palette)
- Added config for inversing scroll direction for the above
- Added a redstone lamp component #9
- Fixed circuits not being stored in the item when breaking the integrated circuit block #18
- Fixed adjacent blocks not being updated when placing ICs after the circuit data has been loaded
- Fixed a crash when scrolling in the circuit editor without a component selected
- Added the lever, wooden button and stone button.
- Added sounds to the circuit screen. These match the vanilla placing/breaking/interaction sounds, but are higher pitched (since circuits are smaller).
- Multiple players can now edit a circuit simultaneously.
- Fixed an issue where the circuit content would not save properly.
- Reworked the whole internal state system for circuits.
- Added the crossover component, which can be used to cross two redstone lines to work around that limitation of 2 dimensional redstone. (#7)
- It is now possible to hold down the attack or use button and drag to place multiple components faster (#5)
- Redstone torch placement now snaps to a placeable position, if the placement rotation has no supported block (#15)
- Made the transparently rendered component under the cursor snap to the circuit grid (#6)