Ignitor Docs ← getignitor.com
🇺🇸 EN 🇪🇸 ES

Editor de Items#

El Editor de Items define cada item de inventario de tu juego — el registro global de items que cualquier cuarto, diálogo o regla puede referenciar. Para cada item fijas su nombre, ícono, comportamiento al recogerlo, qué pasa cuando se usa un verbo sobre él, y cómo se combina con otros items. Guarda en el items.json del proyecto.

Llegas a él desde el Hub (con el dev server corriendo). Los items se listan a la izquierda; + New Item crea uno nuevo, y al seleccionar un item se abre su panel de propiedades.

La pantalla del Editor de Ítems — la lista de ítems a la izquierda y el formulario de detalle del ítem seleccionado a la derecha.
Editor de Ítems — lista de ítems, formulario de detalle a la derecha.

Identidad#

  • ID — la clave estable (stereo, key_shed…). Renombrarla migra el item en vivo a la nueva clave dentro del registro, y también migra automáticamente su lid de nombre y las claves use_<idViejo> de combine en otros items. No llega a cuartos, rules ni diálogos — eso sigue siendo manual, y el diálogo de renombrado avisa con un conteo de referencias en vivo para lo que no puede tocar. Trátala como permanente en cuanto otro contenido la apunte.
  • Nombre — se autora monolingüe en el defaultLocale del proyecto; respaldado por un lid (itemNameLid) para que el Editor de Traducción complete los demás idiomas del proyecto más tarde.
  • Ícono — una ruta bajo assets/items/…, fijada escribiéndola o con el botón de explorar , que abre una grilla de clic-para-elegir de cada sprite que ya está en assets/items/ (este selector solo explora sprites existentes — primero suelta el arte nuevo en la carpeta, a diferencia del selector de importar-desde-disco del Editor de Logros). Haz clic en la miniatura grande para verla a tamaño completo.
  • Retocar — el botón ✎ Retocar bajo la miniatura abre el editor compartido de pixel-tweak sobre el ícono del item (el mismo que usan los editores de Animaciones, Personajes y Cursores), para retocar el arte sin salir del editor. Dos clases de edición conviven en el mismo modal: herramientas de píxel (lápiz, goma, relleno cubeta, cuentagotas, borrado mágico, un sello clonador, y una herramienta de selección que arrastra un rectángulo al que luego puedes aplicar Recortar, Rellenar, Borrar, o Deseleccionar — recortar cambia las dimensiones del PNG), con muestra de color, punta de pincel redonda o cuadrada dibujada bajo el cursor, tamaño de pincel y tolerancia de relleno; el techo del tamaño sigue a la imagen, así que el arte grande que este mismo modal también abre (un fondo de sala) recibe un pincel utilizable y no uno dimensionado para un icono; un panel Reemplazar color que recolorea de una vez todos los píxeles parecidos, con tolerancia y suavizado y una previsualización de la que puedes echarte atrás; y transformaciones geométricas horneadas — espejar en horizontal/vertical y rotar 90° son instantáneos, mientras que scale y warp (rotación libre, skew, perspectiva, distorsión) arrastran handles interactivos directo sobre el sprite. Un fondo damero/cuadrícula, zoom (por debajo de 1×) y deshacer/rehacer multinivel lo completan. Guardar escribe el PNG editado sobre el mismo archivo assets/… y refresca la miniatura; el botón está deshabilitado hasta que el item tenga un ícono.
  • Preview Usage — abre un diálogo que escanea todo el proyecto buscando cada lugar donde este item está referenciado — dónde se recoge, reacciones del lado del item, combinaciones, "usar sobre hotspot", entrega/transferencia, condiciones que lo chequean, y reacciones que lo consumen — como una lista categorizada y agrupada por cuarto, o un grafo de nodos interactivo con pan/zoom. Útil antes de renombrar o borrar un item, o simplemente para entender cómo está tejido en la historia.

Cada tarjeta del grafo nombra el lugar exacto donde se escribió la referencia: el hotspot y el verbo (Hotspot "coin" · Tomar), la cutscene, el watcher o la clave de reacción. Dos referencias en el mismo cuarto siguen siendo dos tarjetas distintas si vienen de lugares distintos, así que un pickup que escribiste en un hotspot nunca se confunde con uno que ejecuta una cutscene. Las que se escribieron en el mismísimo lugar se fusionan en una con un badge . Haz clic en para leer las líneas de verdad — con una fila por personaje cuando la reacción tiene un mensaje distinto para cada uno — y el anillo se abre para darle lugar. Arrastra las tarjetas, haz scroll para zoom, doble clic en el fondo para re-centrar.

Comportamiento#

  • Default verb — el verbo que se dispara con el clic derecho/acceso rápido cuando el item está en la mochila de inventario (por defecto look).
  • Starting owner — siembra este item directamente en la mochila de un personaje al empezar el juego; no marques a nadie para un item que el jugador debe encontrar. Puedes marcar a varios personajes, así que un mismo item puede arrancar en más de una mochila. Si tu juego usa party, lo que conviene es el toggle toda la party: sigue al roster, así que sumar un octavo personaje jugable más adelante le da el item también, sin volver a pasar por el item. Ese toggle es un valor derivado del roster, así que sin party configurada no se lo da a nadie — y el editor te lo dice en vez de fallar en silencio. Si tu juego arranca por el Diseñador de estructura, el entry del primer capítulo reemplaza la mochila entera, así que el campo no tiene efecto y el editor te lo avisa justo debajo del picker — autora ahí la mochila inicial (o marca "el inventario persiste" en ese capítulo).

  • Copias en el mundo — cuántos personajes pueden tener este item al mismo tiempo. Déjalo vacío para que no haya límite, que es como se comportaba todo item antes de que este campo existiera. Un personaje nunca puede cargar dos copias del mismo item, así que 3 copias significa tres personajes con una cada uno, no una pila de tres en una sola mochila. Cuando el mundo ya llegó al tope, el item simplemente no se entrega — un pickup no hace nada, en vez de teletransportarle la copia a quien la tenga. Pasarle un item a un compañero nunca se bloquea: GIVEITEM: primero lo saca de la mochila de quien lo da, así que una transferencia siempre entra bajo el techo que ya tenía. Con el toggle de toda la party encendido, el número se deriva del roster y el campo se agrisa: ese toggle ya dice cuántas copias hay (una por miembro), y un número aparte sólo podría contradecirlo.

On Obtain#

Una cadena de tokens de efecto (la misma cadena de tokens de efecto usada en todos lados) que se dispara la primera vez que el jugador obtiene este item — ya sea recogiéndolo de un hotspot o recibiéndolo vía GIVEITEM:. Déjala vacía si no necesita un manejo especial; el campo se omite por completo de items.json cuando no está definido.

Verb Reactions#

Una fila colapsable por verbo (look, use, open…) — haz clic en un verbo para expandir su editor de cadena de efectos y definir qué pasa cuando el jugador apunta ese verbo a este item mientras está en la mochila. Un verbo sin reacción queda colapsado y muestra una insignia empty.

Notarás que DAR no aparece en esta lista, a propósito. Dar es una acción de dos objetos (dar <item><personaje>), así que se resuelve en el personaje que recibe, no en el item — un hint en la sección lo dice. Se autoriza en el modo Character del Editor de Reacciones, en la reacción give de ese personaje, no acá.

Reordenar efectos#

Toda cadena de efectos de este editor — On Obtain, reacciones por verbo y combines por igual — lleva un asa a la izquierda de cada token. Arrástrala para mover el token, y suéltalo dentro o fuera de un if-block: el asa funciona sobre la cadena entera, así que puedes sacar un token de una rama THEN a la lista principal, o meterlo en un ELSE, sin borrarlo y volver a escribirlo. Lo único que rechaza es soltar un if-block dentro de una de sus propias ramas. El asa se comporta igual en todos los editores que autorizan cadenas de efectos.

Las líneas habladas quedan archivadas bajo el item#

Un SAY que escribas en cualquiera de estas cadenas se autora monolingüe, igual que el nombre del item: lo escribes una vez y el Editor de Traducción llena los demás idiomas después. La fila que crea allí se llama según dónde la escribiste — el item y después el contexto —, así que una línea se lee item.moneda.look_una-moneda-brillante en vez de un id anónimo que habría que ir a cazar. Las líneas de On Obtain caen bajo onObtain, las reacciones por verbo bajo el verbo, y un combine bajo su clave use_<otro-item>.

Reescribir una línea más adelante conserva su dirección, así que la traducción que ya estuviera cargada sigue pegada a ella. (Las líneas escritas antes de que existiera este direccionamiento conservan su nombre viejo — siguen funcionando, y renombrarlas es un trabajo aparte, porque habría que actualizar también cada lugar que apunta a una.)

Borrar un item ahora ofrece llevarse su fila de nombre. La pregunta llega al apretar Guardar, no al apretar Borrar: hasta ahí el item sólo desapareció de la pantalla, y sacar sus traducciones antes te dejaría con un item vivo y el texto muerto si cierras sin guardar. El diálogo muestra el texto de la fila en todos los idiomas que tenga, y cerrarlo significa conservar — una fila guardada es lo que permite que un item recreado adopte sus traducciones viejas, y el Doctor del Proyecto puede barrerla después si nunca vuelve. Las filas de SAY no se ofrecen: esas se direccionan por dónde se escribieron, no por el id del item, y ésas se limpian en el Doctor.

Combine#

Define qué pasa cuando el jugador usa este item sobre otro item. + Add combine elige el otro item de una lista tipada (solo aparecen items que todavía no están combinados), lo que crea una clave de reacción use_<otroItemId> — la misma gramática verb_<secondaryId> que usa el runtime de interacción en todos lados, solo que con use como verbo base. Cada entrada de combine tiene su propio editor de cadena de efectos. Si el otro item ya declara el par recíproco, también aparece acá, como fila de solo lectura, atenuada, con botón de salto — no autoras el mismo combine dos veces.

Flujo de trabajo#

  1. + New Item y dale un ID estable.
  2. Fija su Nombre (idioma por defecto del proyecto) e Ícono.
  3. Configura Default verb y, si debe empezar en la mochila de alguien, un Starting owner.
  4. Agrega una cadena On Obtain si recogerlo debe hacer algo más que sumarlo a la mochila.
  5. Completa Verb Reactions para los verbos que importen (look, use…), y entradas de Combine para cada otro item con el que este interactúe.
  6. Save para escribir items.json — una reacción o combine que agregaste pero dejaste vacío se descarta en silencio en este paso, con un mensaje de estado nombrando qué se podó.
  7. Antes de renombrar o borrar, corre Preview Usage para ver cada lugar donde está conectado; borrar también muestra un conteo de referencias en vivo por categoría en el diálogo de confirmación, como chequeo extra (es un aviso, no un bloqueo duro).

El ID es el contrato. GIVEITEM:<item>|<personaje>, las claves combine (use_<id>), los inventarios iniciales y los datos de guardado referencian un item por su ID — renombrarlo no rompe el registro, pero deja huérfana cada referencia en otro lado hasta que las actualices (Preview Usage es exactamente la herramienta para encontrarlas).