[Guía Factorio] Guía para iniciados y koalas

Subforo general para todos esos otros juegos que no son Wargames, pero que tienen aceptación en PdL

Moderador: Moderadores Wargames

Avatar de Usuario
bmbalboa
Conscript - Obergefreiter
Conscript - Obergefreiter
Mensajes: 206
Registrado: 23 Dic 2016, 12:29
STEAM: Jugador

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por bmbalboa »

Haplo_Patryn escribió:Caid, ayer estuve probando de hacer algo parecido, una cinta que tuviera en cuenta el material que transcurre en ella para que la caja almacene la cantidad justa, sin excedente. Es algo complejo porque eso requiere un contador y que envíe la información actualizada y al detalle. Y luego, lo más importante, que ese contador se resetee a cero cada vez que se detiene el proceso.

No veo que sea algo fácil de implementar, es bastante complejo.

Hacer un contador sé hacerlo pero no sé cómo resetearlo. Una cosa es hacer un temporizador que vuelve al valor inicial y otra un contador que se resetee a cero siempre que el proceso de envío de material a la cinta se pare por llegar al cupo.
Justo a lo que he llegado yo.

He conseguido que lleve la cuenta de un tipo de material que pase por la cinta (cuenta solo la piedra aunque pase otra cosa, por ejemplo)

Y me quedo en poner a cero el contador.


B.M.Balboa
Avatar de Usuario
Haplo_Patryn
Moderador
Moderador
Mensajes: 19003
Registrado: 13 May 2003, 13:08
STEAM: Jugador
Ubicación: En mi casa
Contactar:

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Haplo_Patryn »

Creo que ya sé cómo hacerlo pero tengo que ponerme a hacer pruebas con el pc. Luego lo pruebo a ver qué tal.

Es la leche, ayer estuve hasta las tantas jugando y probando con los combinadores. No es que sea un cerebrito pero estos temas me atraen y acaban por llamarme la curiosidad. Hasta que no comprendo las mecánicas y la lógica que hay en todo esto no paro, soy insaciable :mrgreen:

Como reflexión, voy a sintetizar por dónde van los tiros. Supongamos que queremos controlar la producción y que en una caja no se meta más de 50 placas de hierro. Hay que conectarlo todo con el mismo color de cable, pongamos que cable rojo:

1) Necesitamos una célula de memoria que no es más que un combinador que tiene conectado su input con su output para crear un bucle. Usamos un combinador aritmético. Hay que configurarlo como POR CADA + 0. El output hay que ponerlo en contabilizar entrada. Así si entra, por ejemplo, una unidad de placa de hierro el contador va sumando y dando una señal idéntica que se va sumando. Es un contador o célula de memoria que permite registrar lo que va entrando en la cinta.

2) Conectamos el brazo insertador que mete el material en la cinta con el input y el output de la célula de memoria. Que lea por pulsos y que su condición sea placas < 50 (entiendo que este brazo debería estar conectado a la caja donde se registra el material de hierro que hay en stock) para activar su condición.

3) Ahora conectamos el brazo que coge el material de esa cinta y la mete en la caja (que no tiene que tener > 50 de placas de hierro) y lo conectamos a otro combinador aritmético en su input/entrada y que haga la operación POR CADA *-1. Y que saque el output POR CADA. Eso da el valor en negativo. El output de este combinador lo metemos en la entrada del primer combinador (el que hace de célula de memoria, punto 1)).

Creo que con esto ya tenemos todo. El brazo que coge las placas y las mete en la cinta irá sumando la cantidad en la célula de memoria pero el que saca las placas de la cinta hará el proceso inverso, haciendo que el contador se resetee (está dando un valor negativo).

Confirmadme si os sale y os cuadra esto.

PD: Eso no obstante no hará que el material que entre en la caja sea el exacto (50 unidades) ya que si la cinta es larga tardará mucho en entrar en la célula la info de que están siendo recogidas las placas. Siempre habrá desfase sobre todo si la cinta es larga.
Avatar de Usuario
Renki111
Regular - Feldwebel
Regular - Feldwebel
Mensajes: 518
Registrado: 27 Dic 2016, 21:13
STEAM: Jugador
Ubicación: Vía Láctea
Contactar:

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Renki111 »

Si se me permite entrometerme... ¡alucino con las posibilidades de Factorio! :shock:
"El arte supremo de la guerra es someter al enemigo sin luchar." -Sun Tzu-
Avatar de Usuario
Caid
Veteran - Leutnant
Veteran - Leutnant
Mensajes: 932
Registrado: 21 Dic 2003, 13:52
STEAM: No Jugador
Ubicación: Madrid

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Caid »

Perdonad, pero, ¿para qué queréis reiniciar los contadores?

Tenéis un contador a la entrada de la cinta, y otro a la salida. Lo que os interesa es la resta de ambos. Si un contador marca medio millón y otro marca medio millón, la resta es cero, así que no hay objetos en la cinta. Igual que si lo habéis reiniciado y marcan los dos cero.

Lo más que puede pasar es que den error de "overflow". Da igual, lo normal es que vuelvan a cero, ¿no? Primero dará error el de entrada y se pondrá a cero. Cuando los objetos salgan de la cinta , dará error el de salida y se pondrá a cero. Hablamos de un error de (como mucho) un item cada varias horas.

Si aún así queréis reiniciarlos (sólo paro hacer un circuito más elegante) , yo lo haría cuando la resta de ambos sea cero. Ahora no puedo mirarlo, esta noche intentaré hacer alguna prueba.
Hoka Hey
Avatar de Usuario
Haplo_Patryn
Moderador
Moderador
Mensajes: 19003
Registrado: 13 May 2003, 13:08
STEAM: Jugador
Ubicación: En mi casa
Contactar:

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Haplo_Patryn »

Caid, he probado de hacer un sistema con un combinador aritmético que haga POR CADA*-1 conectado a un combinador constante que contiene el output real que deseo para mis cajas. El proceso da una señal que resta y te dice si hay sobrante o hay demanda pero eso no garantiza que la caja se llene con el material exacto. Por eso si buscamos un sistema para leer el material de la cinta y que se tenga en cuenta a la hora de calcular el material que hay ya en la caja + el que está en tránsito, es necesario un contador del material que hay en la cinta.

Saludos
Avatar de Usuario
Caid
Veteran - Leutnant
Veteran - Leutnant
Mensajes: 932
Registrado: 21 Dic 2003, 13:52
STEAM: No Jugador
Ubicación: Madrid

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Caid »

Sí, sí, estamos de acuerdo.

Para saber lo que hay en la cinta sumas uno cuando un objeto entra en un contador, y sumas uno cuando un objeto sale en otro contador. El contenido de la cinta es la resta de ambas cantidades.

Y a eso es a lo que voy, que no hace falta reiniciar los contadores. Da igual las cantidades que marquen, el número de objetos en la cinta es siempre la resta de las dos cantidades.

Tengo la sensación de que no me explico muy bien. A ver si por la noche puedo hacer un prototipo y subir un par de imagenes.
Hoka Hey
Avatar de Usuario
Caid
Veteran - Leutnant
Veteran - Leutnant
Mensajes: 932
Registrado: 21 Dic 2003, 13:52
STEAM: No Jugador
Ubicación: Madrid

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Caid »

Al final reconozco que me he picado y he tenido que mirarlo ahora. A ver si me explico.

- Vista general del circuito:

Imagen

1 - Contador de entrada
2- Contador de salida
3- Inversor del contador de salida. Como vamos a restar esta cantidad, la multiplicamos por -1 y se la sumamos a la salida del contador 1.
4- Sumador de los valores de los contadores.

- Configuración de los insertadores de entrada y salida

Imagen

- Configuración de los contadores. Fijaros que hay un cable de la salida a la entrada.

Imagen

- Inversor. Fijaos que saco la salida por el canal A, para evitar que en la siguiente operación se mezclen las señales.

Imagen

- Sumador

Imagen

- El circuito funcionando

Imagen

El cursor está sobre el sumador (4). Está recibiendo dos señales, la del contador de entrada que es 25 y la de salida que es -21. Al sumarlas, da cuatro, exactamente el número de items sobre la cinta.

El circuito se puede simplificar quitando el inversor y usando un comparador lógico en lugar de un sumador. Lo he puesto así para que se vean claramente las dos señales.

Saludos.
Hoka Hey
Avatar de Usuario
Haplo_Patryn
Moderador
Moderador
Mensajes: 19003
Registrado: 13 May 2003, 13:08
STEAM: Jugador
Ubicación: En mi casa
Contactar:

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Haplo_Patryn »

Ok, ahora me queda claro. Es que hay diversos modos de hacer las cosas. Al final creo que tenemos todos la misma idea sólo que nos explicamos como el culo :mrgreen:
Avatar de Usuario
bmbalboa
Conscript - Obergefreiter
Conscript - Obergefreiter
Mensajes: 206
Registrado: 23 Dic 2016, 12:29
STEAM: Jugador

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por bmbalboa »

Tomo nota!

Voy a analizar la info y a ver que saco. Yo estaba utilizando la señal en la cinta. No en el insertador. Cuando pones el cable a la cinta crea una especie de detector de paso de material.

Offtopic, cual es la forma mas facil de insertar imágenes en el foro? que lo he intentado otras veces y no me ha salido correctamente. Asi cuando tenga mi solución la presento... 8)
Avatar de Usuario
Caid
Veteran - Leutnant
Veteran - Leutnant
Mensajes: 932
Registrado: 21 Dic 2003, 13:52
STEAM: No Jugador
Ubicación: Madrid

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Caid »

Sí, con la cinta también se puede hacer, lo importante es que esté marcado Read belt contents y en modo "Pulse"

En cuanto a las imagenes, yo las subo a imgur.com y luego pego los links en el mensaje. Es un poco pesado, pero salen bien.

Ya que estamos, os pongo un ejemplo de contador con reset muy sencillo

Imagen

Aquí estoy usando un combinador aritmético que funciona mientras la señal K sea 1. Si K es cero, el contador se pone a cero. Cuando K vuelve a ser uno, el contador vuelve a funcionar.

Imagen

Para el ejemplo estoy usando un combinador constante para generar la señal K = 1. Poniendo el combinador en off,, se reinicia el contador.

Imagen

La señal K puede generarse usando otro tipo de lógica. Por ejemplo, aprovechar cuando no haya items sobre la cinta para reiniciar el contador.

Saludos.
Última edición por Caid el 16 May 2017, 18:44, editado 1 vez en total.
Hoka Hey
Avatar de Usuario
Haplo_Patryn
Moderador
Moderador
Mensajes: 19003
Registrado: 13 May 2003, 13:08
STEAM: Jugador
Ubicación: En mi casa
Contactar:

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Haplo_Patryn »

Ok. Imaginad ahora que, teniendo ya creado el diseño de Caid, queremos que esto entre en consideración para un cofre que hay al final de la cinta. Queremos que ese cofre no tenga más de 50 unidades del item que sea. Supongamos que de pronto un brazo coge el material del cofre y este se queda en 45, así que los brazos que meten el material en la cinta para cubrir esa demanda empiezan a trabajar.

Supongamos que esa info del cofre con 50 items se transmite desde un combinador aritmético que tiene POR CADA* -1 y va conectado a un combinador constante que contiene el item en cuestión y el número exacto de 50 (por ejemplo, 50 cintas amarillas). Como el constante suma el dato del combinador aritmético, al final está haciendo una resta (el combinador aritmético está multiplicando el valor del cofre por -1) y eso nos permite saber si hay exceso (número negativo) o demanda (número positivo).

En nuestro ejemplo significa que cuando hay 45 unidades saldrá un +5 en la señal, lo que significa que hace falta 5 unidades de ese item. En ese momento queremos que el brazo que deja en la cinta transportadora el item demandado empieza a funcionar y que entre en juego el diseño de Caid (hacen falta 5 items pero si no tenemos el diseño bien hecho las fábricas sacarán output a saco paco y sólo queremos que saquen 5 unidades o al final en el cofre destino habrá mucho más de 50 ítems).

El sistema tiene que reconocer que cuando ya hay 5 unidades en la cinta los brazos que dejan el material en la misma deben pararse.

Entiendo que habría que enlazar el diseño de Caid con ese combinador constante que marca la cantidad realmente demandada que falta en el cofre.
Avatar de Usuario
Caid
Veteran - Leutnant
Veteran - Leutnant
Mensajes: 932
Registrado: 21 Dic 2003, 13:52
STEAM: No Jugador
Ubicación: Madrid

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Caid »

Haplo, suma las unidades que hay en la cinta con las unidades que tienes en en el cofre.

Compara el resultado con el combinador constante (o pon la condición a pelo)

Si el resultado es negativo, enciende el insertador de salida de la fábrica.

En el ejemplo que has puesto hay varias situaciones:

a) 50 unidades en la caja + cero en la cinta = 50 unidades = fábrica parada
b) 45 unidades en la caja + cero en la cinta = 45 unidades = fábrica funcionando, empiezan a entrar items en la cinta
b) 45 unidades en la caja + 3 en la cinta = 48 unidades = fábrica funcionando
c) 45 unidades en la caja + 5 en la cinta = 50 unidades = paramos la fábrica
d) 50 unidades en la caja + 0 en la cinta = 50 unidades = los items han llegado a la caja, pero el total es el mismo y la fábrica sigue parada
Hoka Hey
Avatar de Usuario
Haplo_Patryn
Moderador
Moderador
Mensajes: 19003
Registrado: 13 May 2003, 13:08
STEAM: Jugador
Ubicación: En mi casa
Contactar:

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Haplo_Patryn »

Sí, ok. Voy a probar a ver.
Avatar de Usuario
bmbalboa
Conscript - Obergefreiter
Conscript - Obergefreiter
Mensajes: 206
Registrado: 23 Dic 2016, 12:29
STEAM: Jugador

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por bmbalboa »

Bueno... yo sigo con mi idea...

Estoy emperrado en hacerlo solo con un contador. :bang:

Consigo hacer el contador, cuenta perfecto. Consigo hacer que el brazo se active cuando no hay material en la caja. (esto es muy facil, ya esta mas q explicado)

Mi avance ahora ha sido el siguiente, con la orden "AND" le digo al brazo q este activado "si hay menos de x en la caja" AND "el contador es menor del numero que quiero de objetos" De esta forma el brazo se para exactamente cuando saca el número que le pido, ya que se cumple la primera condición pero no la segunda. Pero solo me vale una vez, porque el contador marca el número de objetos que ya ha contado

Entiendo vuestra logica de decrementar el contador con pulsos a la salida de la cinta, pero esto no sería válido si durante la cinta tienes varias cajas. Quiero una señal que ponga el contador a "0" y estoy convencido que hay una manera!!!

De la caja objetivo saco una señal que dice, "ok, ya han llegado los objetos q has mandado" mi objetivo es que esta señal sea la que reinicie el contador.

Ni intento poner una foto porque el lio que tengo de cables es increible :roll:

y ya lo dejo por hoy que mañana madrugo.
Avatar de Usuario
Caid
Veteran - Leutnant
Veteran - Leutnant
Mensajes: 932
Registrado: 21 Dic 2003, 13:52
STEAM: No Jugador
Ubicación: Madrid

Re: [Guía Factorio] Guía para iniciados y koalas

Mensaje por Caid »

Un poco más arriba puse un ejemplo de contador con reset. Está justo debajo del circuito de ejemplo con los dos contadores, en un mensaje aparte.
Hoka Hey
Responder