Módulo de almacenamiento

Módulo de almacenamiento

alaindustrial:storage_module
UtilidadesImplementadostoragemultiblockautomationutility

Resumen

El Módulo de almacenamiento es un bloque de 27 huecos cuya única razón de ser es que se fusiona con sus vecinos. Coloca dos módulos uno contra otro y tienes un almacén de 54 huecos tras una sola ventana. Tres hacen 81. Cuatro hacen 108, y ese es el techo.

Haz clic derecho en cualquier módulo y la ventana muestra el almacén entero, no solo los 27 huecos del bloque que has tocado.

Sin energía, sin redstone, la forma que quieras — un muro, una columna, una L. La única regla: los módulos deben tocarse cara a cara, no por un borde ni por una esquina.

Ejemplo rápido: colocaste un módulo, lo llenaste, se te acabó el sitio. Pega un segundo contra él: abre cualquiera de los dos y estarás viendo 54 huecos como una sola lista.

Energía

CampoValor
Papelninguno
Búfer (EU/FE)0
Entrada máx. (EU/FE/tick)n/d
Salida máx. (EU/FE/tick)n/d
EU/FE/tick0

El módulo no participa en la red de energía: ni transporta EU/FE ni se conecta a cables.

Inventario

HuecoAceptaCantidad
Almacenamiento del módulocualquier objeto27 (3 filas de 9)

Los objetos están físicamente en el módulo donde los metiste. No existe un inventario maestro: la ventana del almacén es una vista sobre el inventario de todos los módulos a la vez, no un depósito aparte. Todo lo demás se deriva de eso — qué cae al romper uno y qué pasa cuando un chunk se descarga.

Cómo suma el almacén

Módulos adyacentesHuecos del almacénFilas totalesFilas visiblesDesplazamiento
12733ninguno
25466ninguno (barra inactiva)
381963 filas
41081266 filas
5 o más108 (tope)1266 filas

Los huecos y las filas no cambian — solo cambia la ventana: muestra como máximo seis filas y el resto se alcanza con la barra de desplazamiento de la derecha.

Reglas de fusión

Un módulo se une al almacén si toca otro miembro cara a cara. El contacto por borde o esquina no cuenta — así puedes construir dos almacenes distintos pegados entre sí. El conjunto se recalcula desde cero cada vez que se abre la ventana, expandiéndose desde el módulo que has tocado. No se recuerda nada, así que colocar o romper un módulo no requiere reconstrucción. Si una construcción tiene más de cuatro módulos, los cuatro primeros en orden de recorrido forman el almacén. Tocar un módulo distinto de la misma construcción puede dar un cuatro diferente — la ventana muestra cuántos están conectados, así que esto se ve.

Interfaz

Dos tamaños de ventana: 3 filas (176x166) para un módulo solitario y 6 filas (195x220) para cualquier cosa mayor. Una barra de desplazamiento está a la derecha de la rejilla, en los 19 px añadidos al ancho del panel para ella. La rueda del ratón, arrastrar el pulgar y hacer clic en la pista funcionan. Un almacén de dos módulos no tiene adónde desplazarse, y la barra se dibuja en su tono inactivo en vez de desaparecer: un control que va y viene se lee peor que uno visiblemente apagado. Mayús + clic también llena las filas fuera de pantalla. No es un detalle: el mayús + clic vainilla mueve entre huecos del menú, y la ventana solo tiene seis filas de ellos, así que la implementación obvia se detendría a mitad sin decir nada e informaría de almacén lleno con la mitad vacía. Sin buscador — 108 huecos son demasiado pocos para necesitarlo.

Qué se sincroniza. Dos números en ContainerData: cuántas filas tiene el almacén en total y en qué fila está la ventana. El cliente necesita el primero para dibujar la barra y el segundo para colocar el pulgar; el servidor es dueño de ambos. El desplazamiento viaja en el vainilla, donde el id del botón ES la fila superior solicitada; el servidor la acota, así que un paquete que pida la fila 500 no puede leer más allá del almacén.

Por qué una vista y no mover los huecos. Slot.x/Slot.y son public final, y la lista de huecos de un menú es parte del contrato de red: los índices en ClientboundContainerSetSlot son posiciones en ella, así que reconstruir la lista bajo un menú vivo desincroniza el cliente. La única pantalla con desplazamiento del juego (el inventario creativo) hace lo mismo: los huecos nunca se mueven; lo que se mueve es la respuesta que da el contenedor tras ellos.

Propiedades del bloque

CampoValor
Formacubo completo 16³
Dureza3.0
Resistencia a explosiones6.0
Herramientapico
Se suelta con NBTfalse — el contenido no se conserva en el objeto

Apariencia: un almacén se lee como un solo armario

El módulo es un armario de acero con tres cajones — uno por cada fila de nueve huecos que añade a la ventana. Arriba y abajo no hay cajones sino una placa del cuerpo con un panel de servicio embutido.

Los módulos adyacentes también se fusionan visualmente. En la cara que comparten dos módulos, el marco desaparece: los frentes de los cajones continúan a través de la junta, las tapas se vuelven una encimera continua, y el borde solo sobrevive alrededor del exterior del almacén. Un muro de 2×2 se lee como un armario de seis cajones, una fila de cuatro como uno largo.

El aspecto fusionado significa exactamente una cosa: este es un almacén. En cuanto una construcción supera los cuatro módulos, los marcos vuelven en todos a la vez, y la construcción parece de nuevo armarios separados. Eso no es cosmético sino una señal honesta: en una construcción así el almacén depende del módulo que toques (véase «Reglas de fusión»), y ninguna junta podría prometer que dos bloques son un solo depósito. Quita el módulo extra y el aspecto fusionado regresa.

Tocarse por un borde o una esquina no fusiona ni la mecánica ni la imagen: dos almacenes pueden quedar pegados y seguir pareciendo separados.

Cómo se dibuja. La conexión está integrada en el modelo del bloque, no superpuesta. Cada cara está cortada en rectángulos sin solaparse — una banda por borde, cuatro esquinas de un píxel en las caras de la tapa y el centro — y cada rectángulo se dibuja exactamente una vez, con la textura con marco o con la abierta. Nada sobresale hacia fuera y nada se solapa, así que una junta no puede acumular su propia iluminación ni mostrar un escalón. La primera versión en cambio ponía parches sobre el cubo, salientes 0.1 bloques, y el jugador veía una banda elevada atravesando la encimera y una línea negra corta donde terminaba un parche.

Una esquina del borde en la cara de la tapa pertenece a dos bordes a la vez, así que solo se abre cuando ambos vecinos están. Dársela a un solo borde perfora un agujero de dos píxeles en el borde este/oeste en cada junta norte-sur.

El blockstate y sus 21 modelos están generados (python tools/gen_storage_module_models.py) y solo se editan a través del generador. --check (integrado en y el hook de pre-commit) compara los ficheros contra el generador y demuestra aparte que la junta es perfecta: cada píxel de cada cara se dibuja exactamente una vez, ningún elemento sale del volumen del bloque, y el muro y la encimera compuestos desde los modelos son idénticos píxel a píxel a una referencia de «un gran armario» construida solo con la textura con marco.

Romper un módulo derrama su propio contenido y nada más. Los módulos vecinos quedan intactos: sus objetos son suyos y nunca se mueven.

Romper un módulo en medio de una construcción simplemente la divide — cada parte se convierte en su propio almacén. Los objetos de los módulos separados no caen: se quedan en su sitio y vuelven a la ventana compartida en cuanto se restaura la conexión.

Romper el ensamblador junto a un almacén devuelve al jugador solo lo que la propia máquina tenía — la cola de planos y la zona de salida — y deja los módulos en paz (TC-ASM-026 cuenta las gotas exactamente, así que tanto una pérdida como una doble caída se ven). Desmontar el almacén recorre la capacidad hasta cero y nunca más allá (TC-STOR-010; un recuento que se volviera negativo es lo que rompió Functional Storage).

Las tuberías quedan fijadas por el transporte, no por la presencia de un puerto. TC-STOR-012 mueve dieciséis lingotes cofre -> tubería -> almacén y de vuelta, y comprueba aparte que una pasada en seco no mueve nada y promete exactamente lo que el movimiento confirmado luego traslada — un desajuste entre esos dos números es el clásico bug de duplicación (XNet #173).

El contenido sobrevive a una recarga. TC-STOR-013 lleva un módulo por NBT — el mismo camino que sigue guardar y cargar un chunk — y comprueba, entre otras cosas, que los huecos no se desplacen: un hueco vacío dejado deliberadamente entre dos ocupados tiene que volver vacío.

Recetas

Fabricación — 4 placas de hierro en cruz alrededor de un cofre vainilla.

La receta es barata a propósito: hacer crecer el almacén es un consumible, no un hito.

Progresión

Nivel: ninguno — no requiere energía, disponible en cuanto tengas placas. Dónde se sitúa en la línea de almacenamiento: Cofre de hierro 36 → Plata 45 → Oro 54 → Electro 81 → un almacén de módulos 108. Los cofres conservan su valor: dan toda su capacidad en un bloque, el almacén necesita cuatro. Más adelante: el Ensamblador sacará sus materiales directamente de un almacén como este.

Relacionado

Cofre de oro — el paso anterior de almacenamiento Formas de los materiales — las placas para la receta Marco indicador de existencias — la referencia de seguridad con chunks descargados Ensamblador — el futuro consumidor del almacén Tubería de objetos — llena el almacén desde fuera

Fabricación

Shaped Crafting
Any Iron Plate
Any Iron Plate
Chest
Any Iron Plate
Any Iron Plate
Crafting Table
Módulo de almacenamiento
Módulo de almacenamiento

Se usa en

Shaped Crafting
Engranaje de hierro
Crafting Table
Engranaje de hierro
Circuito electrónico
Carcasa de máquina avanzada
Circuito electrónico
Engranaje de hierro
Módulo de almacenamiento
Engranaje de hierro
Crafting Table
Ensamblador
Ensamblador