-
-
Notifications
You must be signed in to change notification settings - Fork 3
Incubators
Incubators are items used to incubate and hatch eggs. Each incubator has a capacity and a hatch rate; the capacity determines how many eggs the incubator can store and the hatch rate is how many eggs the incubator can process at once.
Eggs hatch over time, not steps, and the progress is visible via the egg's durability bar. An incubator will be active so long as it is in the player's inventory, but only one may be active at a time.
Incubators act similarly to Ender Chests, each incubator is connected to a named storage and will process eggs from that storage. All default incubators, except gold, connect to a storage called "main". The Gold Incubator instead connects to a separate storage called "gold". This means that if you put eggs inside a Copper Incubator, you will still see them inside an Iron Incubator but not a Gold Incubator.
Additionally the strongest incubator you've ever opened will determine the properties of your egg storage for that type. If your "main" storage currently has copper properties, then opening an Iron Incubator for the first time will upgrade it to iron's properties. If you ever lose your Iron Incubator and are back on Copper again, your "main" storage (and thus the Copper Incubator) will still act as iron.
To prevent players from sharing incubators, the first player to use an incubator binds it to themselves. You cannot open an incubator owned by another player.
The recipes should all be visible with EMI. Players should be able to see any Polymer recipe in EMI if they have the following installed:
Otherwise the default recipes are:





Incubators can be configured for the server, custom incubator types are also supported via item data components.
The default incubator config is as follows:
{
"gold": {
"capacity": 32,
"eggs_to_tick_simultaneously": 32
},
"diamond": {
"capacity": 96,
"eggs_to_tick_simultaneously": 4
},
"copper": {
"capacity": 8,
"eggs_to_tick_simultaneously": 1
},
"iron": {
"capacity": 64,
"eggs_to_tick_simultaneously": 2
},
"netherite": {
"capacity": 128,
"eggs_to_tick_simultaneously": 8
}
}These settings can be edited to change the parameters of each incubator. New incubator tiers can also be created by adding additional JSON objects to the config.
A new "super" incubator can be added by adding this object the config. It won't receive an item in-game, but the /give command can be used to create an incubator that uses the "super" tier.
"super": {
"capacity": 1024,
"eggs_to_tick_simultaneously": 32
}Incubators use the following data components:
Details who owns the incubator.
| Field | Type | Description |
|---|---|---|
| name | String | The name of the player, used in the tooltip. |
| uuid | String | The UUID of the player, used for validating ownership. |
Details the properties of the incubator.
| Field | Type | Description |
|---|---|---|
| tier | String | Determines the name of the incubator tier to use. The incubator will look this name up in the config. |
| type | String | The storage type to use, such as "main". |
A simple integer. The incubator tracks the number of eggs it holds so the texture can dynamically change.
Using the "super" example from before, you can give it to a player with the command:
/give @s daycareplus:copper_incubator[daycareplus:incubator_type={"tier": "super", "type": "main"}]