Lazos
Las celdas para atarse a otro bot, hablar y pasar recursos por el lazo, darle forma y, con lazos endurecidos, armar organismos multicelulares.
| Dirección | Sysvar | Tipo | Resumen |
|---|---|---|---|
| 330 | .tie | Comando | Orden para atarse con un lazo al bot que se está viendo; el número que escribís es el puerto con el que vas a nombrar ese lazo. |
| 331 | .stifftie | Comando | Orden para cambiar la rigidez de un lazo endurecido, de 1 (blando) a 100 (muy rígido). |
| 450 | .tieang | Sentido | Hacia dónde está el lazo de .tiepres visto desde el bot: 0 si apunta justo al compañero, con signo según el lado. |
| 451 | .tielen | Sentido | El largo del lazo de .tiepres, medido de borde a borde entre los dos bots. |
| 452 | .tieloc | Comando | Qué hacer por el lazo elegido: un número de 1 a 1000 escribe .tieval en esa celda del otro bot; -1, -3, -4 y -6 pasan o sacan energía, veneno, desecho o cuerpo. |
| 453 | .tieval | Comando | El valor que acompaña a .tieloc: lo que se escribe en la memoria del otro bot o cuánto se transfiere por el lazo. |
| 454 | .tiepres | Sentido | El puerto del último lazo que se formó (creado por vos o por otro hacia vos): el lazo que usan las órdenes cuando .tienum vale 0. |
| 455 | .tienum | Comando | Elige, por su puerto, sobre qué lazo actúan las órdenes de este ciclo (.tieloc, .fixang, .fixlen, .stifftie); 0 usa el de .tiepres. |
| 466 | .numties | Sentido | Cuántos lazos tiene el bot ahora, contando los de nacimiento y los que le hicieron otros. |
| 467 | .deltie | Comando | Orden para cortar los lazos que tengan ese puerto; el motor la borra después de usarla. |
| 468 | .fixang | Comando | Orden para fijar el ángulo de un lazo endurecido respecto de hacia dónde apunta el bot (en la escala de 1256 por vuelta); un negativo lo suelta. |
| 469 | .fixlen | Comando | Orden para fijar el largo natural de un lazo endurecido, medido de borde a borde entre los dos bots. |
| 470 | .multi | Sentido | Vale 1 si el bot es multicelular (tiene o tuvo un lazo endurecido y todavía conserva algún lazo); si no, 0. |
| 471 | .readtie | Comando | Elige, por su puerto, de qué lazo vienen las celdas tref* (lo que el bot siente del otro); 0 usa el de .tiepres. |
| 480 | .tieang1 | Entrada y salida | Ángulo del primer lazo de un multicelular respecto de hacia dónde apunta el bot (0 a 1256); escribirlo fija ese ángulo. |
| 481 | .tieang2 | Entrada y salida | Ángulo del segundo lazo de un multicelular respecto de hacia dónde apunta el bot (0 a 1256); escribirlo fija ese ángulo. |
| 482 | .tieang3 | Entrada y salida | Ángulo del tercer lazo de un multicelular respecto de hacia dónde apunta el bot (0 a 1256); escribirlo fija ese ángulo. |
| 483 | .tieang4 | Entrada y salida | Ángulo del cuarto lazo de un multicelular respecto de hacia dónde apunta el bot (0 a 1256); escribirlo fija ese ángulo. |
| 484 | .tielen1 | Entrada y salida | Largo del primer lazo de un multicelular, de borde a borde; escribirlo fija el largo natural de ese lazo. |
| 485 | .tielen2 | Entrada y salida | Largo del segundo lazo de un multicelular, de borde a borde; escribirlo fija el largo natural de ese lazo. |
| 486 | .tielen3 | Entrada y salida | Largo del tercer lazo de un multicelular, de borde a borde; escribirlo fija el largo natural de ese lazo. |
| 487 | .tielen4 | Entrada y salida | Largo del cuarto lazo de un multicelular, de borde a borde; escribirlo fija el largo natural de ese lazo. |
| 830 | .sharenrg | Comando | En un multicelular, qué porcentaje de la energía sumada con cada compañero querés quedarte; el motor reparte en el mismo ciclo. |
| 831 | .sharewaste | Comando | En un multicelular, qué porcentaje del desecho sumado con cada compañero querés quedarte (1 a 99). |
| 832 | .shareshell | Comando | En un multicelular, qué porcentaje del caparazón sumado con cada compañero querés quedarte (1 a 99). |
| 833 | .shareslime | Comando | En un multicelular, qué porcentaje de la baba sumada con cada compañero querés quedarte (1 a 99). |
Un lazo (tie) es un resorte entre dos bots. Hay dos formas de tener uno: al nacer, padre e hijo quedan atados por un lazo que se corta solo a los 100 ciclos; y con .tie, que ata al bot que estás viendo. Un lazo hecho con .tie se endurece a los 19 ciclos y desde ahí los dos bots son multicelulares (.multi): pueden compartir recursos y fijar la forma del lazo.
Cada lazo tiene un número, su puerto, y cada extremo lo conoce por un número distinto: quien lo crea usa el valor que puso en .tie; el otro, el número de orden del lazo entre los suyos. .tiepres dice el puerto del último lazo creado y .numties cuántos tenés. Casi todas las órdenes actúan sobre el lazo que elegís con .tienum (o, si lo dejás en 0, sobre el de .tiepres).
Las celdas se agrupan así:
- Atar y soltar:
.tie,.deltie,.numties,.tiepres,.multi. - Escribir y transferir por el lazo:
.tienum,.tieloc,.tieval. Con.tielocpositivo escribís en la memoria del otro; con-1,-3,-4o-6le pasás o le sacás energía, veneno, desecho o cuerpo. - Medir:
.tieangy.tielen(el lazo de.tiepres), y.tieang1a.tieang4y.tielen1a.tielen4(los cuatro primeros, en un multicelular). - Dar forma (solo lazos endurecidos):
.fixang,.fixlen,.stifftiey, escribiendo,.tieang1….tielen4. - Compartir (solo multicelulares):
.sharenrg,.sharewaste,.shareshell,.shareslimey.sharechlr. - Leer al otro:
.readtieelige de qué lazo vienen las celdas de lo que se siente por un lazo.
La receta básica de un organismo: el hijo, apenas nace, se ata al padre con .tie; veinte ciclos después los dos son multicelulares y el hijo, que es quien creó el lazo, reparte la energía con .sharenrg. Ese es el detalle a cuidar: compartir solo funciona desde el bot que creó el lazo. El funcionamiento completo está en Lazos y multicelulares.