Repository navigation
Research: como editan mapas los otros proyectos de Argentum Online #14
Copy link
Copy link
Open
Labels
GrantFox OSSIssue tracked in GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardIssue may be eligible for a GrantFox rewardThird CampaignCampaign: Third CampaignCampaign: Third CampaignbountyIssue con recompensa asignadaIssue con recompensa asignadadocumentationImprovements or additions to documentationImprovements or additions to documentationgood first issueGood for newcomersGood for newcomersgrantfoxPublicada en la campana de GrantFoxPublicada en la campana de GrantFoxhelp wantedExtra attention is neededExtra attention is neededmodo-construccionModo construccion in-game: editor de mapas en el navegadorModo construccion in-game: editor de mapas en el navegadorreward-20-usdRecompensa 20 USD - alcance chico y bien definidoRecompensa 20 USD - alcance chico y bien definido
Description
Parte de #2 (modo construcción). Sin dependencias, se puede hacer en paralelo con todo lo demás.
Buena primera issue para alguien que quiera entrar al proyecto sin escribir código todavía.
Objetivo
Documentar cómo edita mapas el resto del ecosistema de Argentum Online, para no repetir errores que otros ya cometieron y para justificar las decisiones de diseño del modo construcción.
Proyectos a revisar
| Proyecto | Qué es |
|---|---|
| ao-org/argentum-online-worldeditor | Editor oficial, VB6, escritorio, AGPL-3.0 |
| lambdaclass/argentum | Cliente web: Vite + TypeScript + React + Pixi.js |
| ao-libre/ao-cliente | Cliente de la comunidad |
Preguntas a responder
- ¿Qué formato de mapa usa cada uno? ¿Es compatible con el nuestro (
meta/terrain/npcs/specials)? - ¿Cómo modela el editor oficial las capas, el bloqueo y los triggers? ¿Hay decisiones que valga la pena copiar?
- ¿Alguno intentó edición en vivo o colaborativa? Si lo abandonaron, ¿por qué?
- ¿Existe alguna herramienta de import y export entre formatos? Poder importar mapas hechos con el editor oficial sería una ventaja concreta.
- ¿Qué licencia tiene cada uno y qué implica para reutilizar ideas o código? El editor oficial es AGPL-3.0, lo cual importa.
Entregable
Un documento en el repo (docs/ o similar) con:
- Tabla comparativa de formatos de mapa
- Qué se puede reutilizar y bajo qué licencia
- Recomendación explícita sobre si vale la pena soportar import desde el formato del editor oficial
- Lista de errores conocidos o limitaciones que otros ya encontraron
Por qué importa para el proyecto
La hipótesis central del modo construcción es que nadie tiene edición in-game en el navegador. Esta issue es la que confirma o refuta esa hipótesis con evidencia, y de paso puede ahorrar semanas de trabajo si encuentra que alguien ya resolvió parte del problema.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
GrantFox OSSIssue tracked in GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardIssue may be eligible for a GrantFox rewardThird CampaignCampaign: Third CampaignCampaign: Third CampaignbountyIssue con recompensa asignadaIssue con recompensa asignadadocumentationImprovements or additions to documentationImprovements or additions to documentationgood first issueGood for newcomersGood for newcomersgrantfoxPublicada en la campana de GrantFoxPublicada en la campana de GrantFoxhelp wantedExtra attention is neededExtra attention is neededmodo-construccionModo construccion in-game: editor de mapas en el navegadorModo construccion in-game: editor de mapas en el navegadorreward-20-usdRecompensa 20 USD - alcance chico y bien definidoRecompensa 20 USD - alcance chico y bien definido
Activity
angelTomo9 commentedon Aug 17, 2026
🗺️ Entrega de Investigación: Arquitectura de Editores y Formatos de Mapa en Argentum Online
Resolviendo #14 para el Modo Construcción.
🗺️ Investigación Técnica: Arquitectura de Editores y Formatos de Mapa en el Ecosistema Argentum Online
1. Tabla Comparativa de Formatos de Mapa
.map+.inf/.datGrhIndex), Bloqueo booleano, Trigger (1 byte), Obj/NPC Index.json(meta,terrain,npcs,specials).map(v0.13)2. Respuestas a las Preguntas Clave
1. ¿Qué formato de mapa usa cada uno y qué tan compatible es con el nuestro?
Bloqueo(Byte / Booleano: 0 o 1)Capa 1(Integer 16-bit: ID de gráfico de suelo)Capa 2(Integer 16-bit: ID de objeto o maleza)Capa 3(Integer 16-bit: Techo / Estructura intermedia)Capa 4(Integer 16-bit: Copa de árbol / Gráfico superior)Trigger(Byte / Integer: ID de disparador)NPCIndex/ObjIndexmeta+terrain+npcs+specials) es una evolución directa que desacopla la representación visual de la lógica del servidor. Se mapea 1:1 de forma trivial:terrain.layer1terrain.layer2,terrain.layer3,terrain.layer4specials.blockedyspecials.triggers2. ¿Cómo modela el editor oficial las capas, el bloqueo y los triggers? ¿Qué conviene adoptar?
1: Zona Segura (desactiva PvP y robo).2: Zona de Combate / Arena.3: Daño continuo (Lava / Pantano).4: Teleport / Transición entre mapas (targetMap,targetX,targetY).5: Disparador de scripts / misiones.3. ¿Alguno intentó edición en vivo o colaborativa? ¿Por qué se abandonó?
/REINICIAR) y volver a conectar a los clientes.OP_SET_TILE(x, y, layer, grhIndex)) con latencia < 20 ms entre múltiples usuarios simultáneos en el navegador.4. ¿Existe herramienta de import/export y vale la pena soportar
.mapbinario?.mapa JSON..map.server/src/scripts/importMap.tsrequiere menos de 70 líneas de código utilizandoBuffer.readInt16LE().Ejemplo de implementación del Parser (Clean-room en TypeScript):
5. Análisis Legal y Licencias
6. Conclusiones y Hoja de Ruta para el Modo Construcción
.map→.jsonpara disponer del mapa del mundo completo de inmediato.Investigación técnica y análisis clean-room realizado para OpenAO.
ghzhost commentedon Aug 21, 2026
Entregué el documento de investigación en PR #115.
El documento cubre todos los puntos del entregable pedido en esta issue:
terrain.jsonde OpenAO. Los conceptos de capas, bloqueo y triggers son equivalentes entre todos; la diferencia es la serialización.saphid commentedon Sep 8, 2026
Revisé el alcance,
CONTRIBUTING.mdy los PR abiertos #41, #115, #128, #208 y #222. No propongo duplicar el panorama general de #41, que es el trabajo más sólido y trazable hasta ahora. Sí queda un hueco pequeño de precisión que puede evitar que se consoliden datos contradictorios:.map+.inf+.dat;modMapIO.basmuestra capas 1–4 y separa terreno/trigger de salidas/NPCs/objetos, así que no usaría offsets sin un fixture de la versión exacta;lambdaclass/argentumal crearse la issue (ef32c63), el README documenta ingestión de.csmy la licencia es Apache-2.0, no JSON/Tiled/MIT;ao-libre/ao-clientees VB6/AGPL-3.0, define cuatro gráficos y un byteBlocked, y su árbol contiene.map, no C#/.csmapni evidencia de bloqueo direccional.Si este hueco les resulta útil, mi plan es añadir únicamente
docs/argentum-map-editor-evidence.md: una matriz breve con permalinks a commits, separación explícita entre formato de autoría y representación de runtime/transporte, límites de lo que la evidencia pública permite afirmar sobre edición en vivo, y una recomendación de import offline con reporte de pérdidas sobre el conjunto de archivos, sin parser especulativo ni conclusiones legales. Verificaré todos los enlaces y el Markdown.Trabajo asistido por IA; verificaré manualmente cada afirmación contra la fuente y lo declararé también en el PR.
¿Me asignarían #14 para esta corrección acotada si la consideran útil? Además, como la etiqueta dice
Maybe Rewardedy la Third Campaign parece estar ya en revisión/cerrada, ¿la plataforma oficial todavía puede aceptar una entrega nueva que sea asignada ahora? No abriré PR sin asignación y ruta de campaña confirmada.ranjeet150 commentedon Sep 14, 2026
Hello! I would like to work on this issue.
I would love to take this on. My planned approach:
Research: como editan mapas los otros proyectos de Argentum Onlinewith modular design, clear documentation, and clean commit history.I can start working on this right away. Please assign!
owenc1122 commentedon Sep 18, 2026
I will add
docs/argentum-map-editor-evidence.md. This is documentation-only: no OpenAO application function will change; the source functions examined are Worldeditor'sMapaV2_Guardar,MapaV2_Cargar,MapaV3_Cargar, and lambdaclass'sArena.Map.CsmParser.parse/parse_sections. It will link pinned source revisions for the Worldeditor, lambdaclass/argentum, and AO Libre; distinguish authoring files from runtime packs; and recommend importing the official.map/.inf/.datbundle into OpenAO'smeta/terrain/npcs/specialsschema with an explicit loss report, while evaluating.csmas a separate secondary importer. The complete evidence-backed document is prepared locally. I will verify every factual format claim against its pinned source link and rungit diff --checkon the Markdown change. Please assign #14 if this scope is still useful.docs: research report on Argentum Online map editors (Bitcoindefi#14)
docs: research Argentum map-editor ecosystem for Bitcoindefi#14
docs: research Argentum map-editor ecosystem for Bitcoindefi#14
prodccnostalgia2-sys commentedon Sep 30, 2026
Hola @Bitcoindefi! Me gustaría tomar esta issue. Ya tengo preparado el análisis técnico completo para el entregable en
docs/map-editors-ecosystem.md.Plan de entrega y hallazgos clave:
docs/map-editors-ecosystem.mdrespondiendo a los 6 puntos planteados.lambdaclass/argentum(web con Pixi + backend Elixir sin editor in-game), niao-libre/ao-clientedisponen de edición colaborativa o in-game en el navegador. El Modo Construcción de OpenAO es pionero en el ecosistema..map(100x100 tiles, 4 capas, bloqueo booleano y triggers 1..6) y la arquitectura modular de OpenAO (meta,terrain,npcs,specials)..mapbinarios a los JSON/overrides de OpenAO.docs/modo-construccion-guide.mdy los JSONs enfrontend/public/maps/mapa_1.json.¿Me lo asignan para abrir el Pull Request inmediatamente? Gracias!
docs: add research on argentum online map editors (Closes Bitcoindefi#14
yhpop commentedon Oct 13, 2026
I am using AI-assisted public-source research on behalf of the GitHub account
yhpop.For #14, the proposed scope is documentation only:
docs/argentum-map-editor-evidence.md, comparing the three named projects with pinned source links, explicit unknowns, and a bounded import-feasibility recommendation. No application code changes or copied third-party implementation.One checked sample:
ao-libre/ao-clientehas a Visual Basic project and AGPL v3 root license, not a C++/C# client under GPL v3. Map-format claims would be checked separately.Before applying or duplicating the existing PRs: is this issue still eligible for a new assignment in the current GrantFox campaign, with the labelled $20 reward available for accepted work? If so, which specific evidence gap remains useful?
I will wait for assignment and use the official campaign process; this is not a payment claim or a completed delivery.
Source-scope update (2026-10-13): the pinned current Argentum README describes an Elixir server and Rust/Bevy client; the older TypeScript/Pixi client is retained as frozen reference material. A current-state comparison may therefore differ from the issue's original stack description. If the research is still needed, should it cover the original issue-date revisions or the current revisions? This documentation check does not establish that map editing is absent.
dongwei-polyred commentedon Oct 17, 2026
Investigación entregada en PR #414 — doc
docs/map-editors-ecosystem-research.md(tabla de formatos, licencias, recomendación de import oficial offline, limitaciones). Fuentes: clones de WorldEditor / lambdaclass/argentum / ao-libre + scripts OpenAO.Reggiebro commentedon Oct 17, 2026
I'm researching how other Argentum Online projects edit maps. Will submit documentation shortly.