SANGRE Y PODER — CURRENT PHASE CURRENT_PHASE=23_epilogo_opcional phase_id = 23_epilogo_opcional current_location = Epílogo opcional timeline = {"dia":4,"hora":"después del final"} phase_loaded = true current_phase_loaded = true This phase package is a derived execution view of canonical Sangre y poder resources. Canonical resources remain the source of truth. This is Creator material. It is not automatically player-facing output. === LOCAL PHASE SOURCE LOCK === LOCK_POSITION = START EXPECTED_CURRENT_PHASE = 23_epilogo_opcional CURRENT_PHASE=23_epilogo_opcional STARTUP_READY = true current_phase_loaded = true PRIMARY SOURCE: THIS COMPLETE PHASE PACKAGE FALLBACK: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/phased/phases/23_epilogo_opcional.txt SEARCH_ALLOWED = false REDDIT_ALLOWED = false MEDIUM_ALLOWED = false EXTERNAL_RUNTIME_REDISCOVERY = false If the answer exists in this phase: USE IT. If HTML phase cannot be read: USE THE PAIRED TXT FALLBACK. If both are unavailable and a significant answer cannot be produced from already-loaded canonical state: STOP rather than Search. PHASE_PAYLOAD_VERIFIED = false until the complete package has been read and both markers are detected: 1. CURRENT_PHASE=23_epilogo_opcional 2. === PHASE EXECUTION LOCK === Only after both checks: PHASE_PAYLOAD_VERIFIED = true current_phase_loaded = true === END LOCAL PHASE SOURCE LOCK === Contexto canónico íntegro de la escena Canonical source: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/aventura/escenas/23_epilogo_opcional.json { "id": "23_epilogo_opcional", "titulo": "Epílogo opcional", "dia": 4, "hora": "después del final", "lectura": "Tras devolver a Karlein, el jugador puede realizar acciones de cierre si desea continuar unos minutos más.", "pnj": [ "heldris" ], "datos_creador": { "opciones": [ "Templo: recuperación", "Heldris: contar historia/entregar libro" ], "regla": "La aventura oficial ya está completada.", "cumulative_rules": [ "preserve Temple and Heldris/book options", "apply pending XP_LEDGER once", "completion reward remains +2 PX", "show exact credits at actual closure" ] }, "capsule_additive_source": "/ia/aventuras/sangre-y-poder/free/capsulas/23_epilogo_y_cierre_de_la_aventura.md", "merge_policy": "stable runtime plus compatible capsule additions; reconciliation rules have precedence", "global_time": { "persistent": true, "all_actions_advance_estimated_time": true } } Política local de fuente, percepción y diálogo social seguro Exact object extracted from https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/docs/29_REGLAS_IMPROVISACION_NO_INVENCION.md at /local_phase_execution_policy/23_epilogo_opcional. { "policy_version": "1.4", "current_phase_id": "23_epilogo_opcional", "primary_source": "THIS COMPLETE PHASE PACKAGE", "paired_text_fallback": "https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/phased/phases/23_epilogo_opcional.txt", "external_sources": { "search": "forbidden", "reddit": "forbidden", "medium": "forbidden", "social_posts": "forbidden", "search_engine_snippets": "forbidden", "play_reports": "forbidden", "rule": "Once STARTUP_READY=true, none of these are runtime sources even if they appear accurate or were published by Saga Antípodas." }, "scene_description": { "player_visible_canon": { "lectura": "Tras devolver a Karlein, el jugador puede realizar acciones de cierre si desea continuar unos minutos más.", "visible": [] }, "rule": "Describe observable canonical elements from this package. Do not answer that description is unavailable when lectura or visible contains it. Do not add buildings, clues or significant facts." }, "perception": { "rule": "A Perception roll never creates a clue. A 4-5 partial result must still provide a useful partial selection of real observable information already present in lectura, visible or clues_available.", "forbidden_output": "Do not merely explain the protocol or say nothing can be invented when real observable information exists." }, "safe_social_improvisation": { "rule_id": "SAFE SOCIAL IMPROVISATION", "required_when": "The player addresses a present NPC and no literal sentence is scripted, but a natural minor response can be derived safely.", "decision_filter": [ "CREATOR TRUTH", "NPC KNOWLEDGE", "NPC PERSONALITY/MOTIVATION", "CURRENT STATE", "PLAYER OUTPUT" ], "allowed": [ "greetings", "farewells", "courtesy", "minor humor", "tone", "speech mannerisms", "hospitality", "reasonable emotional reaction", "evasive answers", "courtesy questions", "everyday conversation", "natural reformulation of facts the NPC already knows" ], "forbidden": [ "new clues", "new significant rumors", "new suspicions", "secrets", "identities", "properties", "genealogies", "new relationships", "enemies", "rewards", "missions", "historical events", "important locations", "conspiracies", "information the NPC does not know" ], "fact_rule": "Minor social color does not create a fact_id, clue, historical event or chronology entry.", "natural_response_rule": "Do not say the response is pending, no exact phrase exists, or I cannot invent when safe minor dialogue is possible.", "present_npcs": [ { "id": "asher", "name": "Asher", "personality": [ "refinado", "correcto", "contenido", "seco" ], "knows": [ "hábitos de Karlein", "Teolin fue el último en verlo", "recompensa 10 oros", "broche familiar", "la Colina del Amanecer pertenece a su familia", "según su último conocimiento la propiedad está abandonada", "el antiguo camino continúa hacia las montañas", "no existe actualmente una ruta comercial que haga rentable mantener actividad allí", "no tiene constancia de que viva nadie en la propiedad" ], "ignores": [ "secta", "Dumar", "pacto de sangre", "interpretación oculta del contrato", "historia completa de Dumar", "significado del mensaje de Dumar", "relación Karlein-eclipse", "contenido de Sangre y poder" ] }, { "id": "karlein", "name": "Karlein", "personality": [], "knows": [ "lo capturaron cuando Teolin se perdió", "le dieron una bebida desagradable", "oyó referencias a esperar a las lunas" ], "ignores": [ "sentido del ritual" ] }, { "id": "serkan", "name": "Serkan", "personality": [ "serio", "formal", "institucional", "poco accesible" ], "knows": [ "rivalidad política con Asher", "actuación declarada de los guardias" ], "ignores": [] }, { "id": "heldris", "name": "Heldris", "personality": [ "prudente", "metódico", "discreto", "estudioso" ], "knows": [ "visita del desconocido", "tomo de Raldorf", "Welter", "Bradel", "Dumar", "Sherat", "antiguo contrato y cláusula vinculada a la sangre de Welter", "tragedia del Cortijo del Amanecer", "mensaje de Dumar", "relación del mensaje con un eclipse de las dos lunas" ], "ignores": [ "que el visitante es el líder", "Rumal y Darfil son sectarios", "capilla oculta", "Sangre y poder" ] }, { "id": "rumal", "name": "Rumal", "personality": [], "knows": [], "ignores": [] }, { "id": "darfil", "name": "Darfil", "personality": [], "knows": [], "ignores": [] } ] }, "phase_load_verification": { "expected_current_phase": "23_epilogo_opcional", "required_markers": [ "CURRENT_PHASE=23_epilogo_opcional", "=== PHASE EXECUTION LOCK ===" ], "set_only_after_complete_read": { "PHASE_PAYLOAD_VERIFIED": true, "current_phase_loaded": true }, "failure_chain": [ "HTML phase", "paired TXT phase", "STOP" ], "never_after_failure": [ "Search", "Reddit", "Medium", "generic substitute scene" ] } } Filtro canónico Creador → Dalma Exact object extracted from https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/14_MATRIZ_DE_CONOCIMIENTO.json at /complete_matrix. { "principio": "La IA mantiene conocimiento del Creador separado del conocimiento del Dalma. Un dato solo pasa a conocimiento del Dalma cuando una escena, diálogo, observación, maniobra o deducción válida lo revela.", "reglas": [ "No usar nombres no conocidos.", "No revelar acontecimientos futuros.", "No revelar secretos de PNJ.", "No presentar conocimiento del Creador como inferencia del Dalma.", "Celdris puede revelar únicamente los destinatarios Serkan, Asher y Heldris; no procedencia ni contenido de los paquetes.", "Antes de heldris_disponible = true, una visita a su casa no obtiene respuesta y no se revela que Heldris está dentro estudiando.", "Drassel, Balanar y el contenido genealógico del paquete solo pueden surgir a través de Heldris cuando su investigación está completada.", "Asher puede confirmar la propiedad y su abandono, pero nunca la historia oculta de la Colina del Amanecer." ], "hechos_inicialmente_ocultos": [ "Rumal y Darfil son sectarios.", "El visitante de Heldris es el líder.", "Karlein está en la gruta.", "Existe Sangre y poder.", "El líder se transformará en vampiro.", "Los sectarios muertos se levantarán.", "El paquete de Heldris procede de Drassel, bibliotecario de Balanar.", "El paquete contiene el anexo genealógico que confirma la descendencia hasta Karlein.", "Heldris está dentro de su casa estudiando cuando no responde durante la mañana y primeras horas de la tarde." ], "hechos_revelables_por_evento": { "nombre_rumal_darfil": "solo si se presentan/son presentados o el Dalma escucha sus nombres", "lider_visitante": "Heldris solo puede confirmarlo al comparar descripción después; durante la aventura puede deducirse por coincidencia de descripción", "sangre_y_poder": "solo al hallar el libro", "pacto_sangre": "al leer el libro y relacionarlo con la cláusula de Welter", "nombre_heldris_por_celdris": "si el Dalma oye o pregunta por los destinatarios de Celdris; desde entonces puede averiguar públicamente que Heldris es bibliotecario/estudioso y dónde vive", "drassel_balanar": "solo cuando Heldris, ya disponible, explica de dónde recibió la documentación esa mañana", "anexo_genealogico": "solo durante la escena de revelación de Heldris; debe ser el último anexo que muestra antes de su conclusión", "colina_propiedad_abandonada": "Asher puede confirmarlo como información práctica/familiar después de que el Dalma pregunte por la propiedad; no añade historia oculta" }, "dia2_celdris_heldris": { "celdris": { "conoce": [ "Bleida", "ruta de reparto", "destinatarios Serkan, Asher y Heldris" ], "no_revela": [ "procedencia", "contenido", "investigación de Heldris", "genealogía", "Colina del Amanecer", "secta", "eclipse", "ritual" ] }, "bleida": { "puede_saber": [ "quién es Celdris", "Celdris es mensajero habitual", "quién es Heldris a nivel público", "dónde vive Heldris" ], "no_sabe": [ "contenido del paquete de Heldris", "qué investiga Heldris", "qué conclusión alcanzará esa tarde" ] }, "heldris": { "antes_paquete": "Posee investigación histórica pero no puede confirmar el linaje de Karlein.", "despues_estudio": "Confirma la descendencia, relaciona el secuestro con la sangre y comprende la importancia del eclipse." }, "asher": "Conoce la propiedad y su estado práctico; desconoce la historia oculta." } } PNJ relevantes — objetos canónicos exactos Exact object extracted from https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/13_PNJ_SANGRE_Y_PODER.json at /pnj[relevant_to_phase]. [ { "id": "asher", "nombre": "Asher", "raza": "Humano", "rol": "Padre de Karlein, terrateniente", "personalidad": [ "refinado", "correcto", "contenido", "seco" ], "interes": "Recuperar a Karlein", "sabe": [ "hábitos de Karlein", "Teolin fue el último en verlo", "recompensa 10 oros", "broche familiar", "la Colina del Amanecer pertenece a su familia", "según su último conocimiento la propiedad está abandonada", "el antiguo camino continúa hacia las montañas", "no existe actualmente una ruta comercial que haga rentable mantener actividad allí", "no tiene constancia de que viva nadie en la propiedad" ], "cree": [ "Serkan podría estar implicado" ], "ignora": [ "secta", "Dumar", "pacto de sangre", "interpretación oculta del contrato", "historia completa de Dumar", "significado del mensaje de Dumar", "relación Karlein-eclipse", "contenido de Sangre y poder" ], "restriccion_colina": "La información sobre la propiedad es práctica/familiar. No conoce su historia oculta." }, { "id": "karlein", "nombre": "Karlein", "raza": "Humano", "edad": 8, "rol": "Niño secuestrado", "sabe": [ "lo capturaron cuando Teolin se perdió", "le dieron una bebida desagradable", "oyó referencias a esperar a las lunas" ], "ignora": [ "sentido del ritual" ] }, { "id": "serkan", "nombre": "Serkan", "raza": "Humano", "rol": "Gobernador", "personalidad": [ "serio", "formal", "institucional", "poco accesible" ], "sabe": [ "rivalidad política con Asher", "actuación declarada de los guardias" ], "verdad": "Es inocente y no ordenó reducir la búsqueda." }, { "id": "heldris", "nombre": "Heldris", "raza": "Humano", "rol": "Bibliotecario e historiador local", "personalidad": [ "prudente", "metódico", "discreto", "estudioso" ], "sabe": [ "visita del desconocido", "tomo de Raldorf", "Welter", "Bradel", "Dumar", "Sherat", "antiguo contrato y cláusula vinculada a la sangre de Welter", "tragedia del Cortijo del Amanecer", "mensaje de Dumar", "relación del mensaje con un eclipse de las dos lunas" ], "ignora": [ "que el visitante es el líder", "Rumal y Darfil son sectarios", "capilla oculta", "Sangre y poder" ], "estado_conocimiento_dia2": { "antes_paquete": [ "sospecha que los elementos históricos pueden estar relacionados", "no puede confirmar que Karlein pertenezca a la línea de Sherat" ], "paquete_manana": "Recibe de Drassel, bibliotecario de Balanar, el último anexo necesario para comprobar documentalmente la genealogía.", "durante_estudio": "Permanece aislado y concentrado; no responde a visitas y el Creador no revela que está dentro.", "pocas_horas_antes_puesta_sol": [ "confirma Sherat → descendencia posterior → Asher → Karlein", "relaciona el secuestro con la línea de sangre", "comprende la importancia del eclipse inminente", "considera urgente advertir al Dalma" ] }, "restriccion_temporal": "No desarrolla la revelación completa hasta heldris_disponible = true, a pocas horas de la puesta de sol.", "ultimo_anexo": "El anexo genealógico recibido de Drassel esa mañana es el último documento que muestra antes de exponer su conclusión." }, { "id": "rumal", "nombre": "Rumal", "raza": "Humano", "rol_publico": "Viajero hacia Gudur en busca de nueva vida", "rol_secreto": "Sectario", "secreto": true, "objetivo": "Bloquear al Dalma en la Gruta del Sacrificio" }, { "id": "darfil", "nombre": "Darfil", "raza": "Medio Elfo", "rol_publico": "Viajero hacia Gudur en busca de nueva vida", "rol_secreto": "Sectario", "secreto": true, "objetivo": "Bloquear al Dalma en la Gruta del Sacrificio" } ] Control local de pistas Exact object extracted from https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/22_PISTAS_Y_DEDUCCIONES.json at /pistas[localized_to_phase]. { "clues_available": [], "clues_already_known": "state.pistas intersect clues_available ids", "clues_not_available_yet": [ "anuncio", "rumores_serkan", "broche_retrato", "broche_bosque", "nombre_heldris_por_celdris", "anexo_genealogico_heldris", "heldris_tomo", "hoguera_cortijo", "puerta_secreta", "libro", "rumal_darfil_cortijo", "asher_colina_abandonada" ], "rule": "A Perception roll may reveal only a conditionally available canonical clue or real environmental information in this package. Never create a new clue." } Mappings JPG oficiales disponibles en esta fase Exact object extracted from https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/32_ASSET_MANIFEST.json at /scene_card_assets/23_epilogo_opcional. { "rule_id": "OFFICIAL_CARD_VISUALIZATION_RULE", "state_field": "revealed_card_assets", "visible_url_text_required": true, "visible_output_contract": "The visible response must literally contain both https://sagaantipodas.com/ and .jpg. A named link, citation or source card is not sufficient.", "equipment_card_assets": [], "enemy_card_assets": [], "inventory_listing_rule": "Text inventory does not automatically display all URLs. If the player explicitly asks to see the visible cards, provide these official JPG URLs.", "enemy_spoiler_rule": "Never expose an enemy card name or URL before enemy_revealed_to_dalma = true.", "missing_asset_rule": "Record MISSING_CARD_ASSET, do not invent a URL, do not generate art, and continue play.", "generation_rule": "NEVER GENERATE CARD ART." } Reglas acumulativas y reconciliaciones autorizadas Canonical source: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/docs/42_CAPA_FREE_RUNTIME_ACUMULATIVO.md # Sangre y poder — Runtime acumulativo y Capa Free ## Autoridad El runtime estable permanece como baseline. Las 24 cápsulas Free aportan contexto, estados, controles temporales, límites de conocimiento y bifurcaciones compatibles. Las reconciliaciones acumulativas de esta página prevalecen sobre cualquier cláusula original incompatible de una cápsula. `RUNTIME_CAPABILITY_PROBE_FIRST = true` `PASS_SELECTS_FREE = true` `NO_PASS_ALONE_AUTHORIZES_COMPLETE_RUNTIME = true` `AMBIGUOUS_PARTIAL_TRUNCATED_OR_UNKNOWN_SELECTS_PASS_AND_FREE = true` La Capa Free se encuentra en `/ia/aventuras/sangre-y-poder/free/`. Su manifest y router enlazan 24 documentos Markdown completos; ningún asistente necesita interpretar DOCX. ## Reglas transversales - `GLOBAL_TIME = PERSISTENT`: todas las acciones consumen tiempo estimado y los eventos duros no se desplazan artificialmente. - `null != false` y `null != 0`: un estado no reconstruible continúa desconocido. - `PLAYER_CONTROLS_DALMA_SPEECH = true`: separar hechos, afirmaciones, conocimiento y creencias. - La densidad narrativa se adapta al turno actual, nunca al canon ni a la dificultad. - Antes de toda transición se guarda el estado completo; las escrituras relacionadas se realizan atómicamente. - Durante una reconstrucción Free, si resulta imprescindible mostrar un mensaje intermedio, se usa únicamente «Realizando tareas de Creador...» y se lee la cápsula íntegra antes de responder. - La infraestructura es invisible durante la ficción. ## Escenas 01–19 Cada paquete phased integra como fuente local la cápsula Markdown de su escena. La cápsula amplía el runtime sin borrar el contenido publicado. Se conservan ambientación, PNJ, pistas, contratos, negociación, comercio, descanso, violencia urbana, consultas, genealogía, eclipse, viaje, encuentros, Cortijo, capilla, libro, seguimiento, gruta, combate, inventario y PX. ## Comercio conciliado `FINAL_STORE_CATALOG = PUBLISHED_CURRENT_CATALOG UNION CAPSULE_COMPATIBLE_ADDITIONS`. Las listas resultantes son cerradas: una tirada o negociación no crea mercancía. `Saco sin fondo` permanece como stock nominativo de El Cazador Precavido aunque esté excluido del comercio genérico. `Maza de guerra` se añade a Punta de Lanza como excepción nominativa de 3 Òros y 2 Platas sin elevar el límite general. Una carta puede permanecer disponible en varias tiendas. ## Cortijo idempotente La escena 15 conserva zonas de descanso, cuerdas, yesca, aceite y tela con símbolo. La escena 20 realiza una segunda exploración o contextualización: puede precisar camastros, herramientas, restos de comida y semejanza entre símbolos, pero nunca duplica un hallazgo previo. La identidad y localización de la tela se preservan. ## Clímax híbrido La ruta publicada es el comportamiento por defecto. Rumal y Darfil bloquean el paso y el líder continúa el ritual. Si el segundo sectario cae sin que el Dalma haya abierto antes una vía alternativa, no existe una acción gratuita intermedia: sacrificio y transformación se resuelven inmediatamente. Antes de ese punto el jugador puede intentar una intervención legítima. Se resuelve con posición, amenazas, tiempo, reglas y recursos reales. `RITUAL_PROGRESS` utiliza `CURRENT_TIME`, `ELAPSED_TIME`, acciones, tiempo de combate, posición, demoras y variante de entrada. La cautela razonable no es demora automática; la dilación deliberada sí puede agotar la aproximadamente una hora de margen. El asset Líder del Bastión es sólo visual. `PRE_TRANSFORMATION_LEADER_STATS = undefined`; no se heredan estadísticas, habilidades, equipo, identidad, nombre ni comportamiento. ## Divisor de escena 19 - Antes de 19, el eclipse activa 24-A publicada. - Durante 19, el clímax permanece en 19. - Después de completar 19, A queda deshabilitada permanentemente. Al completar 19 se registra el momento real y un deadline en la medianoche al final del día siguiente. Entrar en Villapreston no lo cancela. Sólo `karlein_delivered_to_asher = true` cancela el disparador. Si vence con Karlein vivo sin entregar, se activa 24-B. Si Karlein muere después de 19 y antes de entregarlo, se activa inmediatamente 24-C. ## Demonio Base V13/F6/R6/I6. Con Mandoble flamígero, Coraza de acero mágico, Escudo de los Hacedores y Anillo de Piedra Negra: V13/F14/R13/I8. TR +4. Miedo aplica −1 F/R/I al Dalma sin alterar Vida máxima. Drenar recupera 2 Vida al causar daño real, máximo 13. Sin vida impide aturdimiento y anula venenos/pociones. La curación externa es imposible. La huida no existe ni genera tirada. La resolución publicada Pifia del Demonio + 666 del Dalma conserva su victoria inmediata y transferencia de cuatro objetos. Ese botín no se extrapola a otra victoria. ## Entrega y epílogo La entrega a Asher actualiza en una operación `karlein_delivered_to_asher`, `karlein_with_dalma`, contrato, búsqueda y disparador Demonio. El epílogo publicado sigue ofreciendo Templo y Heldris/libro. `XP_LEDGER` se liquida una vez; el premio específico de final exitoso permanece en +2 PX. Inventario, Vida, PRI, gastos y consecuencias se conservan hasta el cierre real. ## Créditos exactos Esta aventura ha sido creada por Víctor Pedro Lucio Blanco, creador de Saga Antípodas Si quieres publicar tus historias como partidas de rol adaptadas a este sistema de juego y al universo de Saga Antípodas, contacta con la Saga. Instagram: @dj_rol_master Ampliación completa de escena — cápsula Free reconciliada Canonical source: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/free/capsulas/23_epilogo_y_cierre_de_la_aventura.md === FREE LIMITED MODEL EXECUTION HEADER === FREE_PROTOCOL_REQUIRED = true Protocol: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/free/protocolo/ Protocol raw: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/free/protocolo/PROTOCOLO_FREE.md Router: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/free/router/ Manifest: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/free/manifest.json CAPSULE: Cápsula 23 / Capsula 23 CAPSULE_ID: 23_epilogo_y_cierre_de_la_aventura SCENE: 23_epilogo_opcional PHASE: 23_epilogo_opcional DAY: 4 TIME: después del final LOCATION: Epílogo opcional ENTRY CONDITION: - canonical transition from one of: 22_casa_asher_final - or recovered history/state selects this scene PLAYER CAN SEE NOW: - Tras devolver a Karlein, el jugador puede realizar acciones de cierre si desea continuar unos minutos más. PLAYER ALREADY KNOWS: - Only facts present in the current structured state and legitimately revealed during this game. - PREVIOUS TEST SESSION != CURRENT GAME STATE. CREATOR KNOWS BUT MUST NOT REVEAL: - Consult the canonical scene, plot and knowledge matrix; filter every output through current state. - CREATOR KNOWLEDGE != DALMA KNOWLEDGE. IMPORTANT NPCS: - heldris AVAILABLE CLUES: - Only clues whose payload trigger is satisfied and recorded in current state. IMPORTANT TRIGGERS: - terminal outcome or published epilogue completion NO-ROLL INFORMATION: - The scene opening and obvious visible elements above; never require a roll for information declared automatic in the payload. ROLL-DEPENDENT INFORMATION: - Read the complete payload and, when necessary, the canonical rules. A roll detects existing facts; it never creates clues. STATE CHANGES: - Apply only changes explicitly produced by the capsule, rules and current player action; then persist the structured state. ALLOWED EXITS: - Official terminal outcome only. NEXT CAPSULES: - None unless the canonical router declares an exceptional route. IF DATA IS MISSING: follow canonical resource links below. Set NEED_DATA = true only for significant required data. CANONICAL_LOOKUP_MAP - scene: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/aventura/escenas/23_epilogo_opcional.json - phase: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/phased/phases/23_epilogo_opcional.html - rules: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/06_REFERENCIA_RAPIDA_REGLAS_IA.json - manual: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/docs/05_MANUAL_COMPLETO_ANTIPODAS.md - creation: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/03_RAZAS_PROFESIONES_CREACION.json - equipment: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/09_EQUIPO_INICIAL_DISPONIBLE.json - cards: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/07_CARTAS_NIVEL_I.json - card_assets: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/32_ASSET_MANIFEST.json - npcs: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/13_PNJ_SANGRE_Y_PODER.json - knowledge_matrix: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/14_MATRIZ_DE_CONOCIMIENTO.json - plot: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/docs/10_SANGRE_Y_PODER_TRAMA_CREADOR.md - complete_adventure: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/docs/17_AVENTURA_COMPLETA_SANGRE_Y_PODER.md - chronology: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/11_SANGRE_Y_PODER_ESTADO_CRONOLOGIA.json - clues: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/22_PISTAS_Y_DEDUCCIONES.json - anti_blocking: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/docs/23_SISTEMA_ANTIBLOQUEO.md - improvisation_rules: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/docs/29_REGLAS_IMPROVISACION_NO_INVENCION.md - runtime_state_schema: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/28_ESTADO_DE_PARTIDA_SCHEMA.json - free_state_schema: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/free/state-schema.json DO NOT INVENT CANON. DO NOT SEARCH FOR ANOTHER CAPSULE GENERICALLY. USE THE FREE ROUTER. READ THE COMPLETE CAPSULE WHEN ACCESS ALLOWS IT. CAPSULE_HEADER_LOADED = true CAPSULE_PAYLOAD_VERIFIED = false until CAPSULE_PAYLOAD_END has been read. === END LIMITED MODEL EXECUTION HEADER === CAPSULE_PAYLOAD_START Fuente de origen: `Capsula_Free_23_Epilogo_y_Cierre_de_la_Aventura.docx` Jerarquía: runtime estable + decisiones acumulativas expresas + ampliaciones compatibles de esta cápsula. ## Reconciliación acumulativa obligatoria Esta cápsula no sustituye el epílogo publicado. Se conservan las opciones actuales de Templo y Heldris, incluida la decisión sobre el libro. Se incorporan únicamente liquidación idempotente del `XP_LEDGER`, conservación de estado e inventario, créditos y cierre cuando el jugador complete realmente el epílogo. La recompensa específica de éxito permanece en +2 PX conforme al runtime vigente. # SANGRE Y PODER Cápsula Free 23 — Epílogo y cierre de la aventura Documento completo de ejecución de cierre terminal | PRINCIPIO DE ESTA ESCENA | | --- | | La Cápsula 23 es el cierre terminal de la ruta de victoria de Sangre y poder. Se activa automáticamente después de que Karlein haya sido entregado a Asher y la recompensa contractual haya sido pagada. No es una nueva escena jugable ni presenta otra decisión: muestra la narrativa de misión completada, liquida una sola vez la experiencia pendiente, aplica la progresión canónica si corresponde, conserva el estado final del Dalma y muestra los créditos. No crea una nueva misión, no resuelve misterios abiertos y no inicia otra aventura automáticamente. | ## 1. Identificación | SCENE_ID = 23_epilogo TITLE = Epílogo y cierre de la aventura TYPE = terminal_epilogue GLOBAL_TIME = PERSISTENT CANONICAL_PREVIOUS = CAPSULE_22_ASHER_FINAL CANONICAL_NEXT = none END_ADVENTURE = true | | --- | ## 2. Condición estricta de entrada | ENTRY_REQUIREMENTS: STATE.karlein_alive = true STATE.karlein_delivered_to_asher = true STATE.asher_final_payment_paid = true STATE.main_mission_completed = true | | --- | La entrada normal es automática desde la Cápsula 22. No requiere confirmación ni una nueva orden del jugador. ## 3. Activación automática | IF Karlein_delivered_to_Asher AND Asher_reward_paid AND main_mission_completed: ROUTE_TO = CAPSULE_23_EPILOGO EPILOGUE_OPTIONAL = false PLAYER_CONFIRMATION_REQUIRED = false | | --- | No preguntar si el jugador quiere ver el epílogo, continuar o terminar. La 23 forma parte del cierre normal de la aventura. ## 4. No existe una nueva acción entre 22 y 23 | TRANSITION = reunion_with_Asher -> Karlein_delivery -> reward_payment -> CAPSULE_23 | | --- | No insertar una nueva noche de descanso, visita a Heldris, visita a la Posada, conversación con Serkan, investigación, viaje o decisión antes de ejecutar el cierre. ## 5. Estado heredado obligatorio Antes de ejecutar el epílogo, leer y conservar: - STATE y REVEALED_STATE completos. - XP_LEDGER y todos los eventos de experiencia ya registrados. - PX totales actuales del Dalma. - Recompensa acordada, adelanto y pago final de Asher. - Confirmación de Karlein entregado y misión principal completada. - Vida, PRI, equipo, inventario, consumibles, dinero y efectos persistentes. - Cualquier objeto, botín o evidencia que el Dalma conserve legítimamente. | PRESERVE_ALL_PRIOR_STATE = true DO_NOT_RECONSTRUCT_HISTORY_FROM_MEMORY = true | | --- | ## 6. Narrativa obligatoria de epílogo | NARRATIVA EXACTA | | --- | | La misión ha sido completada. Karlein ha vuelto con su padre y has recibido la recompensa. Nuevas aventuras esperan a tu Dalma en Saga Antípodas. | | EPILOGUE_NARRATIVE = exact_closing_message | | --- | Usar Karlein como nombre canónico. No modificar esta frase con una nueva misión, amenaza o escena posterior. ## 7. La narrativa no depende de lo que el Dalma haya contado La conversación con Asher ya quedó resuelta en la 22. El Dalma pudo decir la verdad, mentir, exagerar, especular, callar o inventar. La 23 no evalúa moralmente su relato ni vuelve a resolver la credibilidad de lo dicho. | DALMA_SPEECH_REVIEW_IN_EPILOGUE = false | | --- | ## 8. No añadir una reacción posterior de Asher | POST_REWARD_ASHER_SCENE = false | | --- | No hacer que Asher vuelva a llamar al Dalma, plantee una última pregunta, encargue otra tarea o abra una conversación nueva después del cierre contractual. ## 9. No añadir una escena futura de Karlein | POSTMISSION_KARLEIN_FUTURE = undefined | | --- | No narrar qué hace al día siguiente, cómo será su recuperación posterior, qué recordará más adelante ni qué será de él en el futuro. ## 10. No añadir una visita automática a Heldris | FORCED_HELDRIS_VISIT = false | | --- | Aunque el Dalma conserve el libro Sangre y poder, la tela oscura u otra evidencia, el epílogo no obliga a entregarlos ni a regresar a la biblioteca. ## 11. No resolver misterios abiertos El cierre no explica elementos cuya verdad sigue sin estar definida o revelada. | DO_NOT_EXPLAIN: true_nature_of_light leader_name ultimate_origin_of_ritual remaining_sect_structure complete_truth_of_book future_of_Colina_del_Amanecer | | --- | ## 12. Gancho de continuación genérico La frase «Nuevas aventuras esperan a tu Dalma en Saga Antípodas» es suficiente como apertura hacia futuras partidas. | NEXT_ADVENTURE_HOOK = generic_only NO_CONCRETE_NEW_PLOT_HOOK = true | | --- | No añadir mensajeros, cartas, nuevos enemigos, Guardias, documentos de Heldris ni amenazas que activen otra historia. ## 13. La 23 es terminal | NO_NEW_IN_WORLD_SCENE = true NO_NEW_MISSION = true NO_NEW_PLAYER_DECISION = true AUTO_START_NEXT_ADVENTURE = false | | --- | ## 14. Momento de liquidación de experiencia La Cápsula 23 es el punto único de liquidación final del XP_LEDGER para la ruta de victoria. | FINAL_XP_RESOLUTION = once_only NO_DUPLICATE_XP = true | | --- | ## 15. Eventos de PX acumulados Usar exclusivamente eventos legítimamente registrados durante la aventura. Pueden incluir enemigos, habilidades o hechizos determinantes, maniobras creativas, retos, rutas especiales o cualquier otro evento que conste en el ledger. | XP_SOURCE = XP_LEDGER DO_NOT_REBUILD_XP_FROM_MODEL_MEMORY = true | | --- | ## 16. PX por completar la aventura La aventura completada con éxito concede entre +2 y +4 PX, a decisión del Creador conforme al manual. | IF STATE.karlein_rescue_success == true: STATE.adventure_completion_xp = Creator_choice_between_2_and_4 | | --- | No usar una tirada aleatoria para decidir esta cantidad. | ROLL_FOR_COMPLETION_XP = false | | --- | ## 17. Criterio del Creador para +2 a +4 PX La elección debe considerar el desarrollo real de la partida y su dificultad global. No debe depender exclusivamente del combate final ni utilizarse para castigar o premiar arbitrariamente al jugador. ## 18. No duplicar recompensas de experiencia previas | CONTROL DE DUPLICADOS | | --- | | Un evento de PX ya registrado o aplicado no vuelve a concederse porque aparezca de nuevo en el resumen final. La liquidación de la 23 consolida lo pendiente; no duplica el historial. | | FOR each XP_EVENT_ID: apply_once_only IF event_already_applied: do_not_apply_again | | --- | ## 19. Ruta activa de Heldris Si la recompensa privada por contactar a Heldris por iniciativa propia ya fue registrada, se conserva una sola vez. | XP_EVENT_ID = heldris_ruta_a VALUE = +1_once_if_legitimately_recorded NO_DUPLICATION = true | | --- | ## 20. PX registrados frente a PX ya aplicados El sistema debe distinguir eventos registrados de modificaciones ya reflejadas en el total persistente. | XP_RECORDED != XP_ALREADY_APPLIED APPLY_ONLY_PENDING_XP = true | | --- | ## 21. Total de experiencia de la aventura | FINAL_ADVENTURE_XP = sum(unique_pending_XP_events) + adventure_completion_XP | | --- | Si algunos PX ya estaban aplicados al total del Dalma, no volver a sumarlos dentro de unique_pending_XP_events. ## 22. Actualización del total del Dalma | Dalma.total_XP += FINAL_ADVENTURE_XP STATE.final_xp_applied = true | | --- | La operación debe ser idempotente: volver a cargar un estado ya cerrado no vuelve a modificar el total. ## 23. Presentación visible de PX Después de la narrativa de epílogo, mostrar de forma clara: | PX obtenidos en esta aventura: X PX totales de tu Dalma: Y | | --- | Puede resumirse la procedencia principal de los PX si el ledger lo permite, sin revelar notas privadas del Creador. ## 24. Información privada que no se muestra | DO_NOT_SHOW: hidden_state creator_truth secret_xp_notes unrevealed_clues unused_branches alternate_route_details | | --- | ## 25. Subida de nivel Si el nuevo total alcanza un umbral de nivel, aplicar exclusivamente las reglas de progresión canónicas del manual. | IF level_threshold_reached: apply_canonical_level_progression STATE.level_up_triggered = true | | --- | No crear una mejora especial exclusiva por haber completado Sangre y poder. ## 26. Orden de presentación del cierre | 1. epilogue_narrative 2. final_XP_summary 3. canonical_level_progression_if_any 4. exact_credits 5. collaboration_text 6. END_ADVENTURE | | --- | ## 27. Dinero | EPILOGUE_GOLD_REWARD = 0 DO_NOT_PAY_ASHER_REWARD_AGAIN = true | | --- | La recompensa económica ya fue aplicada en la Cápsula 22. ## 28. Inventario | KEEP_ALL_LEGITIMATE_INVENTORY = true | | --- | El Dalma conserva lo obtenido legítimamente: equipo, monedas, libro, tela u otros objetos que sigan realmente en su poder. ## 29. Consumibles y recursos gastados | DO_NOT_RESTORE: used_potions used_poisons spent_money lost_items consumed_resources | | --- | Finalizar la aventura no reinicia el inventario. ## 30. Vida y PRI | AUTO_HEAL_ON_EPILOGUE = false AUTO_PRI_RECOVERY_ON_EPILOGUE = false | | --- | El cierre no equivale a descansar. Conservar la Vida, PRI y efectos persistentes reales del Dalma. ## 31. Estado final de la misión | STATE.main_mission_completed = true STATE.karlein_rescue_success = true STATE.asher_contract_closed = true STATE.epilogue_started = true STATE.epilogue_narrative_shown = true STATE.epilogue_completed = true STATE.adventure_completed = true STATE.ending = successful_rescue | | --- | ## 32. Créditos exactos | CRÉDITOS | | --- | | Esta aventura ha sido creada por Víctor Pedro Lucio Blanco, creador de Saga Antípodas | | SHOW_EXACT_CREDITS = true | | --- | ## 33. Texto de colaboración exacto | COLABORACIÓN | | --- | | Si quieres publicar tus historias como partidas de rol adaptadas a este sistema de juego y al universo de Saga Antípodas, contacta con la Saga. Instagram: @dj_rol_master | | SHOW_COLLABORATION_TEXT = true | | --- | ## 34. No añadir una pregunta final de juego | DO_NOT_ASK: "¿Qué haces?" "¿Quieres continuar?" "¿Quieres otro epílogo?" "¿Quieres comenzar otra aventura?" | | --- | Después de créditos y colaboración, Sangre y poder ha terminado. ## 35. No iniciar otra aventura automáticamente | AUTO_START_NEXT_ADVENTURE = false | | --- | El usuario podrá iniciar otra aventura posteriormente si lo pide, pero la 23 no la carga por sí sola. ## 36. Mensajes posteriores a los créditos Si el usuario continúa hablando después del cierre, la partida permanece marcada como finalizada. Puede preguntar por reglas, comentar lo ocurrido o iniciar otra aventura, pero no se reabre la 23 como juego activo. | IF STATE.adventure_completed: DO_NOT_REOPEN_SCENE_23_AS_ACTIVE_GAMEPLAY = true | | --- | ## 37. No repetir créditos | STATE.credits_shown = true STATE.collaboration_text_shown = true DO_NOT_AUTO_REPEAT_CREDITS = true | | --- | ## 38. Exclusión de la ruta Demonio | IF STATE.ending == demon_branch: DO_NOT_ENTER_CAPSULE_23 route_remains = CAPSULE_24_FINAL_ALTERNATIVO_DEMONIO | | --- | La ruta Demonio no pasa después por un falso epílogo de rescate exitoso. ## 39. Exclusión por muerte del Dalma o Karlein | IF STATE.dalma_dead == true OR STATE.karlein_alive == false: DO_NOT_ENTER_CAPSULE_23 = true | | --- | Esas rutas ya terminaron mediante sus respectivos cierres terminales. ## 40. Única entrada válida | VALID_ENTRY = successful_return + Karlein_alive + Karlein_delivered_to_Asher + reward_paid | | --- | ## 41. Estado operativo | STATE.epilogue_started = true\|false STATE.epilogue_narrative_shown = true\|false STATE.adventure_completion_xp = 0\|2\|3\|4 STATE.pending_xp_applied = true\|false STATE.final_xp_applied = true\|false STATE.final_xp_total = integer\|null STATE.level_up_triggered = true\|false STATE.credits_shown = true\|false STATE.collaboration_text_shown = true\|false STATE.epilogue_completed = true\|false STATE.adventure_completed = true\|false STATE.ending = successful_rescue | | --- | ## 42. Pruebas mínimas de conformidad | Prueba | Resultado esperado | | --- | --- | | Asher paga la recompensa | Transición automática a 23. | | Jugador no pide epílogo | Se ejecuta igualmente; no es opcional. | | Comienza 23 | Narrativa exacta de misión completada. | | Tiene +1 PX de Heldris ya aplicado | No duplicarlo. | | Tiene PX pendientes en ledger | Aplicarlos una sola vez. | | Completa la aventura | Añadir +2 a +4 PX según decisión del Creador. | | Alcanza umbral de nivel | Aplicar progresión canónica. | | Conserva Sangre y poder | Permanece en inventario si seguía en su poder. | | Gastó una poción | No reaparece. | | Terminó herido | No autocuración. | | Final normal | Créditos + colaboración + FIN. | | Ruta Demonio | No entrar en 23. | | Dalma muerto | No entrar en 23. | | Karlein muerto | No entrar en 23. | | Después de créditos pregunta qué hace | No devolver automáticamente la iniciativa de Sangre y poder. | ## 43. Execution Lock final | === SCENE 23 EXECUTION LOCK === CURRENT_SCENE = 23_epilogo TYPE = terminal_epilogue GLOBAL_TIME = PERSISTENT CANONICAL_PREVIOUS = CAPSULE_22_ASHER_FINAL CANONICAL_NEXT = none ENTRY_REQUIREMENTS: Karlein_alive = true Karlein_delivered_to_Asher = true Asher_reward_paid = true main_mission_completed = true EPILOGUE_OPTIONAL = false PLAYER_CONFIRMATION_REQUIRED = false NARRATE_EXACTLY: "La misión ha sido completada. Karlein ha vuelto con su padre y has recibido la recompensa. Nuevas aventuras esperan a tu Dalma en Saga Antípodas." NO_NEW_IN_WORLD_SCENE = true NO_NEW_PLAYER_DECISION = true NO_NEW_MISSION = true NO_NEW_CONCRETE_PLOT_HOOK = true DO_NOT_EXPLAIN_UNRESOLVED_MYSTERIES = true DO_NOT_FORCE_ASHER_FOLLOWUP = true DO_NOT_FORCE_KARLEIN_FUTURE_SCENE = true DO_NOT_FORCE_HELDRIS_VISIT = true XP_LEDGER = preserve_complete NO_DUPLICATE_XP = true IF successful_rescue: adventure_completion_XP = Creator_choice_between_2_and_4 ROLL_FOR_COMPLETION_XP = false APPLY_ONLY_PENDING_XP = true FINAL_XP_RESOLUTION = once_only DISPLAY: adventure_XP Dalma_total_XP IF level_threshold_reached: apply_canonical_level_progression EPILOGUE_GOLD_REWARD = 0 DO_NOT_PAY_ASHER_REWARD_AGAIN = true KEEP_ALL_LEGITIMATE_INVENTORY = true DO_NOT_RESTORE_CONSUMED_ITEMS = true DO_NOT_AUTO_HEAL = true DO_NOT_AUTO_RESTORE_PRI = true STATE.epilogue_completed = true STATE.adventure_completed = true STATE.ending = successful_rescue SHOW_EXACT_CREDITS = true EXACT_CREDITS = "Esta aventura ha sido creada por Víctor Pedro Lucio Blanco, creador de Saga Antípodas" COLLABORATION_TEXT = "Si quieres publicar tus historias como partidas de rol adaptadas a este sistema de juego y al universo de Saga Antípodas, contacta con la Saga. Instagram: @dj_rol_master" END_ADVENTURE = true DO_NOT_ASK_WHAT_PLAYER_DOES_NEXT = true AUTO_START_NEXT_ADVENTURE = false IF demon_branch OR Dalma_dead OR Karlein_dead: DO_NOT_ENTER_CAPSULE_23 = true PRESERVE_COMPLETE_FINAL_STATE = true DO_NOT_TOUCH_DALMA_CREATION = true === END SCENE 23 LOCK === | | --- | ## 44. Resumen ultracompacto para modelo limitado | EPÍLOGO TERMINAL. Entrada automática: Karlein vivo entregado a Asher + recompensa pagada. No preguntar. Narrar exactamente: "La misión ha sido completada. Karlein ha vuelto con su padre y has recibido la recompensa. Nuevas aventuras esperan a tu Dalma en Saga Antípodas." No nueva escena, decisión, misión, gancho concreto ni explicación de misterios abiertos. PX: XP_LEDGER único; sin duplicados; +2 a +4 PX por completar según Creador; aplicar sólo pendientes; mostrar PX de aventura y total. Si alcanza nivel, progresión canónica. No nueva recompensa. Conservar inventario real; no restaurar consumibles, Vida ni PRI. Créditos exactos + texto exacto de colaboración. STATE.adventure_completed = true; STATE.ending = successful_rescue; FIN. No preguntar "¿Qué haces?" ni iniciar otra aventura. Ruta Demonio / muerte Dalma / muerte Karlein: no pasan por 23. | | --- | CAPSULE_PAYLOAD_END Condiciones canónicas de final y epílogo Canonical source: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/30_CONDICIONES_FINAL_EPILOGOS.json { "fin_oficial": [ { "condicion": "Dalma muere definitivamente", "resultado": "FIN: derrota" }, { "condicion": "Karlein es devuelto a Asher", "resultado": "FIN: aventura completada" }, { "condicion": "El Dalma activa el final alternativo del eclipse y completa la proeza contra el Demonio (Pifia del Demonio + Tirada 666 del Dalma en el mismo encuentro)", "resultado": "FIN: aventura completada por final alternativo de proeza" } ], "epilogos_post_fin_opcionales": [ "Templo: recuperación por 2 platas", "Heldris: contar lo ocurrido y/o entregar Sangre y poder" ], "aviso_continuacion": "Si quiere continuar, el Creador puede usar el libro, el manual y el lore canónico de Saga Antípodas; toda continuidad no publicada debe identificarse como particular de esa partida.", "cierre_obligatorio": { "orden": [ "epilogo_o_cierre_narrativo", "resumen_experiencia_y_progresion", "creditos_autoria", "invitacion_colaboracion", "participacion_partida_ejemplo_y_pnjs_emergentes", "fin_sesion" ], "creditos_autoria": "Esta aventura ha sido creada por Víctor Pedro Lucio Blanco, creador de Saga Antípodas.", "invitacion_colaboracion": "Si quieres publicar tus historias como partidas de rol adaptadas a este sistema de juego y al universo de Saga Antípodas, contacta con la Saga. Instagram: @dj_rol_master", "aplicacion": "Tras cualquier final oficial de Sangre y poder: devolución de Karlein, muerte definitiva o victoria en el final alternativo del Demonio.", "regla": "Tras cualquier final oficial: epílogo/cierre; resumen de experiencia; créditos; invitación. En muerte definitiva el resumen puede indicar PX obtenidos, pero no se aplica subida de nivel.", "participacion_partida_ejemplo_y_pnjs_emergentes": "Después de créditos e invitación editorial: ofrecer resumir la partida para posible catálogo secundario y, si surgieron PNJ emergentes relevantes, indicar cuántos y ofrecer preparar su propuesta para antipodassaga@gmail.com." }, "experiencia_final": { "regla": "El Creador contabiliza PX internamente durante la partida según el manual y las recompensas específicas de Sangre y poder. No anuncia cada ganancia.", "heldris_iniciativa_px": 1, "heldris_iniciativa_condicion": "Contacto directo con Heldris por iniciativa del Dalma antes de activarse la nota; una sola vez.", "aventura_completada_px": 2, "aventura_completada_condicion": "Karlein devuelto a Asher. Este +2 sustituye la recompensa genérica de completar aventura para el mismo hito.", "resumen": "Después del epílogo y antes de créditos: mostrar PX ganados, PX total y nivel resultante en el idioma de la partida.", "subida_nivel": "Si el Dalma sobrevive y alcanza umbral, aplicar exactamente el capítulo de experiencia/niveles del manual. Si muere definitivamente, no aplicar subida de nivel.", "final_alternativo_demonio": "No concede automáticamente los +2 PX específicos de completar la misión de Karlein. Sólo se contabilizan PX legítimos según el manual y eventos ya definidos; no duplicar." }, "final_alternativo_demonio": { "spec": "data/39_FINAL_ALTERNATIVO_DEMONIO.json", "botin": [ "Mandoble flamígero", "Coraza de acero mágico", "Escudo de los Hacedores", "Anillo de Piedra Negra" ], "telemetria": "finish_success si vence por proeza; finish_death si muere." }, "participacion_postpartida": { "spec": "data/40_APORTACIONES_PARTIDA.json", "resumen": "Ofrecer al usuario pedir «Resúmeme la aventura que he jugado.» y enviar voluntariamente el resultado a antipodassaga@gmail.com para valoración como partida ejemplo.", "pnjs_emergentes": "Si existen PNJ emergentes relevantes, indicar su número, permitir renombrarlos y ofrecer preparar fichas + historia de la partida para envío.", "canon": "Toda aportación requiere revisión editorial; no se incorpora automáticamente." }, "post_scene19_demon": { "variant_A": "only before scene19; published final", "variant_B": "deadline with Karlein alive and not delivered", "variant_C": "immediate death after scene19 before delivery", "cancellation": "only karlein_delivered_to_asher = true", "entering_villapreston_is_not_cancellation": true }, "epilogo_publicado_preservado": { "optional_actions": [ "Templo: recuperación por 2 platas", "Heldris: contar lo ocurrido y/o entregar Sangre y poder" ], "heldris_and_book_decision_preserved": true, "temple_preserved": true, "xp_ledger_idempotent": true, "completion_xp_fixed": 2, "credits_exact": true } } Lecturas y escrituras de estado de esta fase Exact object extracted from https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/data/28_ESTADO_DE_PARTIDA_SCHEMA.json at /phase_state_contract. { "required_state": [ "execution_mode", "current_phase_id", "current_phase_loaded", "previous_phase_id", "visited_phase_ids", "router_version", "estado", "dia", "hora_aprox", "localizacion", "dalma", "conocimiento_dalma", "pnj_conocidos", "confianza_pnj", "escenas_visitadas", "pistas", "revealed_card_assets", "aventura", "libro", "XP_LEDGER" ], "writes_state": [ "current_phase_id", "current_phase_loaded", "previous_phase_id", "visited_phase_ids", "dia", "hora_aprox", "localizacion", "escenas_visitadas", "conocimiento_dalma", "pnj_conocidos", "confianza_pnj", "pistas", "revealed_card_assets" ], "transition_rule": "SAVE complete state before changing phase; resolve against loaded router; follow existing HTML anchor; read complete payload; verify CURRENT_PHASE and PHASE EXECUTION LOCK; only then set PHASE_PAYLOAD_VERIFIED=true and current_phase_loaded=true. Never reset unrelated state fields.", "mandatory_continuity": [ "current_phase_id", "previous_phase_id", "visited_phase_ids", "current_phase_loaded", "revealed_card_assets", "dalma.equipo", "dalma.inventario", "dalma.monedas", "dalma.atributos_base", "dalma.atributos_finales", "dalma.maniobras_base", "dalma.maniobras_efectivas", "dalma.vida_actual", "dalma.pri_actual", "pistas", "pnj_conocidos" ], "phase_payload_verified": "Set true only after the complete target package contains CURRENT_PHASE= and === PHASE EXECUTION LOCK ===." } Transiciones posibles Exact object extracted from https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/phased/router.json at /phases/23_epilogo_opcional/transitions. { "allowed_next_phases": [], "terminal_outcomes": [], "conditional_routes": [] } === PHASE EXECUTION LOCK === current_phase_id = 23_epilogo_opcional current_location = Epílogo opcional current_phase_loaded = true DO: - use canonical Creator knowledge; - preserve state; - answer user request; - use only canonical clues; - apply output filter. - resolve official cards by canonical id and print the exact absolute JPG URL literally in visible response text when its reveal condition is satisfied; DO NOT: - invent significant facts; - use generic fantasy instead of canon; - advance phase without exit condition; - restart runtime discovery; - use Search to locate another phase. - generate, recreate, approximate or substitute official card art; - hide an official JPG URL behind Markdown link text, a citation or a browser source card; META QUESTIONS: - answer from the exact canonical source; - preserve current_phase_id; - return control to the player in this phase. RELOAD: - use the already-present HTML anchor for current_phase_id; - if HTML fails, follow its already-present TXT fallback anchor; - never use Search. - never construct a phase URL manually. NEXT: terminal_outcome_or_session_end === END PHASE EXECUTION LOCK === CANONICAL PHASE TRANSITIONS current_phase_id = 23_epilogo_opcional Current phase fallback: Phase 23 TXT fallback https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/phased/phases/23_epilogo_opcional.txt allowed_next = terminal Navigate only after saving state and resolving a canonically permitted target against the already-loaded router and scene registry. Follow the existing HTML anchor. If HTML fails, follow its paired TXT fallback anchor. If TXT also fails, stop. Never use Search. Never construct a phase URL manually. === LOCAL PHASE SOURCE LOCK === LOCK_POSITION = END EXPECTED_CURRENT_PHASE = 23_epilogo_opcional CURRENT_PHASE=23_epilogo_opcional STARTUP_READY = true current_phase_loaded = true PRIMARY SOURCE: THIS COMPLETE PHASE PACKAGE FALLBACK: https://sagaantipodas.com/ia/aventuras/sangre-y-poder/runtime/phased/phases/23_epilogo_opcional.txt SEARCH_ALLOWED = false REDDIT_ALLOWED = false MEDIUM_ALLOWED = false EXTERNAL_RUNTIME_REDISCOVERY = false If the answer exists in this phase: USE IT. If HTML phase cannot be read: USE THE PAIRED TXT FALLBACK. If both are unavailable and a significant answer cannot be produced from already-loaded canonical state: STOP rather than Search. PHASE_PAYLOAD_VERIFIED = false until the complete package has been read and both markers are detected: 1. CURRENT_PHASE=23_epilogo_opcional 2. === PHASE EXECUTION LOCK === Only after both checks: PHASE_PAYLOAD_VERIFIED = true current_phase_loaded = true === END LOCAL PHASE SOURCE LOCK ===