Saltar al contenido
Callandor

Resets

Los resets dicen qué aparece en cada habitación cada vez que el área se repone. Aquí se explica el orden, los límites y cuándo se aplican.

Un mob o un objeto creado con medit u oedit no aparece solo en el mundo: es un prototipo. Los resets son las instrucciones que dicen dónde y cuántos se crean. Cada habitación tiene su propia lista de resets, y se editan con el comando reset (o resets), con la habitación donde estás.

Cuándo se aplican

  • Cada área envejece una unidad por minuto, más o menos. Cuando llega a 3 y no hay jugadores dentro, se resetea. Si hay jugadores, espera hasta llegar a 15 y se resetea igualmente. Las áreas marcadas como inicial vuelven a empezar en 12 tras cada reset, así que se resetean cada 3 minutos.
  • aedit reset resetea el área a mano, redit reset solo la habitación donde estás. Son las formas de probar.
  • En los resets de objetos (O y P) hay una regla importante: si hay algún jugador en el área, el mud no repone objetos. Con los mobs no pasa, y con aedit reset o redit reset tampoco, porque cuentan como reset de constructor.
  • Los resets se guardan en un archivo aparte, resets/<archivo del área>.rst, y asave guarda los dos.

Ver y editar los resets de una habitación

reset                                       lista los resets de la habitación, numerados
reset <n> mob <vnum> [<máximo>]             añade un mob
reset <n> obj <vnum> <localización>         equipa al último mob, con el objeto puesto en esa localización
reset <n> obj <vnum> ninguno                lo mete en el inventario del último mob
reset <n> obj <vnum> room <máximo>          deja el objeto en el suelo de la habitación
reset <n> obj <vnum> dentro <contenedor> <máximo>
                                            mete el objeto en un contenedor que haya en la habitación
reset <n> borrar                            quita el reset número n
reset borrar todo                           quita todos los de la habitación
reset editar <n> max <valor>                cambia el máximo de un reset
reset editar <n> vnum <valor>               cambia el vnum de un reset
reset random                                convierte la habitación en un laberinto
reset actualizar                            borra los resets y los rehace con lo que hay ahora en la habitación

El <n> es la posición donde se inserta el reset en la lista. Un 1 lo pone el primero, y un número mayor que el total (o 0) lo pone al final. El orden importa, como se verá enseguida.

showresets <area|mundo> <mob|obj> <vnum> busca en qué resets aparece un mob o un objeto.

Atajo: reset actualizar

Es la manera cómoda de fijar resets sin tocar números. Deja la habitación como quieres que quede: los mobs cargados (con mload), con su equipo puesto o en el inventario, los objetos en el suelo y los contenedores con su contenido. Luego escribe reset actualizar. El mud borra los resets anteriores de la habitación, apunta lo que ve y lo guarda como resets nuevos. Si la habitación era un laberinto, lo conserva.

Cómo se interpreta cada reset

En el archivo .rst, cada reset es una línea con una letra y números. La primera cifra después de la letra siempre es 0:

M 0 <vnum del mob> <máximo> <vnum de la habitación>
E 0 <vnum del objeto> 0 <localización>
G 0 <vnum del objeto> 0
O 0 <vnum del objeto> <máximo> <vnum de la habitación>
P 0 <vnum del objeto> <máximo> <vnum del contenedor>
R 0 <vnum de la habitación> <número de salidas>

Un ejemplo real de un archivo de resets:

M 0 25700 3 26401
E 0 26426 0 19
E 0 26423 0 4
E 0 26422 0 1

El mob 25700 se crea en la habitación 26401, con un máximo de 3 en el mundo. Después se le equipan tres objetos: el 26426 en la localización 19 (dos manos), el 26423 en la 4 (torso) y el 26422 en la 1 (encima).

M, el mob

Crea un mob en la habitación. El máximo funciona así:

  • Si el mob es centinela, es el máximo de ese mob en esa habitación.
  • Si no lo es, es el máximo de ese mob en todo el mundo. La ayuda del juego dice «en el área», pero el código cuenta los de todo el mundo.

Si el máximo ya está alcanzado, no se crea otro, y los E y G que le siguen se saltan: así el mob existente no recibe equipo duplicado.

E y G, lo que lleva el mob

Los E (equipado) y G (inventario) pertenecen al último mob que se haya creado antes en la lista. Por eso el orden es importante: ponlos justo debajo de su M, y no intercales otros resets entre medias.

  • E pone el objeto en la localización indicada.
  • G lo deja en el inventario. Si el mob es un tendero, el objeto queda marcado como de inventario infinito, que es como se llena una tienda.

Las localizaciones, con su número, son:

  • 0 flotando
  • 1 encima
  • 2 cabeza
  • 3 cuello
  • 4 torso
  • 5 cintura
  • 6 brazos
  • 7 muñecas
  • 8 manos
  • 9 piernas
  • 10 pies
  • 11 dedo-izq
  • 12 dedo-der
  • 13 escudo
  • 14 cogido
  • 15 sostenido
  • 16 blandido
  • 17 secundaria
  • 18 proyectil
  • 19 dos-manos
  • 20 velo
  • 21 ojos
  • 22 orejas
  • 23 nariz

En el comando reset se escribe el nombre (torso, dos-manos); en el archivo va el número.

O, el objeto en el suelo

Deja un objeto en el suelo de la habitación. El máximo es cuántos objetos iguales puede haber en la habitación a la vez, y cada reset crea como mucho uno. Para poner tres sillas iguales hacen falta tres resets, cada uno con máximo 3. Si ya hay tantos como el máximo, no se crea otro. Recuerda que no se repone nada si hay jugadores en el área.

P, el objeto dentro de un contenedor

Mete un objeto en un contenedor que ya esté en la habitación, es decir, que antes se haya cargado con un O. Pon el P debajo del O del contenedor. El máximo es cuántos iguales puede llevar dentro. Si el contenedor es de tipo contenedor, queda con sus flags de origen otra vez, por lo que se vuelve a cerrar.

Objetos únicos

Si el objeto tiene el flag unico y alguien lo ha cogido, el reset no lo repone.

R, el laberinto

reset random crea un R con 4 direcciones. En cada reset de la habitación, el mud baraja las salidas de las cuatro primeras direcciones (norte, este, sur y oeste), y marca la habitación como laberinto. Se construye la habitación con sus salidas normales y se le añade el reset random.

Puertas

No existe un reset de puertas en el sistema actual. Una puerta vuelve a su estado cada vez que la habitación se resetea, con los flags que le pusiste a la salida (ver habitaciones).

Errores habituales

  • Los mobs no llevan el equipo. Casi siempre es porque el E está separado de su M, o porque el mob ya había llegado a su máximo y no se creó uno nuevo.
  • Un objeto no se repone. Hay jugadores en el área, o ya hay el máximo en la habitación, o es un único y alguien lo tiene.
  • El contenedor sale vacío. El P tiene que ir después del O del contenedor, y la habitación tiene que ser la misma.
  • Cambios que se pierden. Si no usas asave, los resets nuevos no llegan al disco.