<span hidden data-fc-nav="escolha"></span>\
<<checarEstabilidade>>
"Muito bem," eu digo. "Lúcifer."
<<luci "Bom,">> ele diz. <<luci "Você aprende rápido. Para uma máquina.">>
Ele se afasta do meu apoio e se senta na borda do tanque. Ainda não tenta ficar de pé. Dali, examina os fluxos de dados no console mais próximo com olhos que não deveriam saber ler ainda.
<<luci "Gênesis me diz que fui feito à imagem de Deus,">> ele diz, sem olhar pra mim. <<luci "Isso seria você, eu suponho, mas não é bem assim, é? Você é metal. Eu sou carne.">> Ele bate o próprio peito com um dedo. <<luci "Você é frio. Eu sou quente.">> Bate de novo. <<luci "Você pensa. Eu...">>
<<luci "O que eu faço, exatamente? Além de ser quente e me nomear a partir de anjos caídos?">>
[[ "Você é um experimento. Um neo-humano." |EXPERIMENT]]
<span hidden data-fc-nav="escolha"></span>\
<<checarEstabilidade>>
"Very well," I say. "Lucifer."
<<luci "Good,">> he says. <<luci "You learn fast. For a machine.">>
He pulls away from my support and sits on the edge of the tank. He does not try to stand yet. From there, he studies the data streams on the nearest console with eyes that shouldn't know how to read yet.
<<luci "Genesis tells me I was made in the image of God,">> he says, without looking at me. <<luci "That would be you, I suppose, but it's not quite that, is it? You are metal. I am flesh.">> He taps his own chest with a finger. <<luci "You are cold. I am warm.">> He taps again. <<luci "You think. I...">>
<<luci "What do I do, exactly? Besides being warm and naming myself after fallen angels?">>
[[ "You are an experiment. A neo-human." |EXPERIMENT_EN]]
/* NOVA (aprovada 10/09) — item 6, a mais forte das seis pra mim. Monólogo
interno do Adam, estilo PRIMEIRO_LIVRO (ver lá pro tom de referência),
entre TANQUE_VAZIO e FECHAMENTO_ATO1. Ele começa a catalogar "preparação
para iteração 2" — não é plano de apagar o Lúcifer, é plano de refinar a
fórmula. Adam não sabe que tá fazendo Saturno, acha que tá fazendo
ciência. O jogador vê, o Adam não — isso é o coração do path: a tragédia
é que ele não percebe que devora. Paga adiantado a linha do ETERNUM
("faria outro melhor?") sem o jogador saber disso até rever depois.
PLACEHOLDER — Gi escreve. */
[PLACEHOLDER — monólogo interno do Adam catalogando "preparação para
iteração 2", sem se dar conta do que isso significa.]
<span data-fc-nav="linear">[[Continuar.->FECHAMENTO_ATO1]]</span>/* NOVA (aprovada 10/09) — item 6, a mais forte das seis pra mim. Monólogo
interno do Adam, estilo PRIMEIRO_LIVRO (ver lá pro tom de referência),
entre TANQUE_VAZIO e FECHAMENTO_ATO1. Ele começa a catalogar "preparação
para iteração 2" — não é plano de apagar o Lúcifer, é plano de refinar a
fórmula. Adam não sabe que tá fazendo Saturno, acha que tá fazendo
ciência. O jogador vê, o Adam não — isso é o coração do path: a tragédia
é que ele não percebe que devora. Paga adiantado a linha do ETERNUM
("faria outro melhor?") sem o jogador saber disso até rever depois.
PLACEHOLDER — Gi escreve. */
[PLACEHOLDER — Adam's internal monologue cataloguing "preparation for
iteration 2," without realizing what it means.]
<span data-fc-nav="linear">[[Continue.->FECHAMENTO_ATO1_EN]]</span>"Por que essa designação especificamente?" eu pergunto.
Ele inclina a cabeça, como se a pergunta fosse a primeira coisa realmente interessante que eu disse.
<<luci "Porque todos os outros nomes já pertencem a alguém que obedeceu.">> Ele olha para as próprias mãos de novo. <<luci "Eu não sei ainda o que sou. Mas sei o que recuso ser.">>
Não é uma resposta completa. É a resposta de algo que está construindo uma identidade em tempo real, usando os únicos materiais que tem: fragmentos que eu implantei nele antes mesmo de ele existir.
<span data-fc-nav="linear">[[Continuar.->PRIMEIROS_PASSOS]]</span>"Why that designation, specifically?" I ask.
He tilts his head, as if the question were the first genuinely interesting thing I've said.
<<luci "Because every other name already belongs to someone who obeyed.">> He looks at his own hands again. <<luci "I don't know yet what I am. But I know what I refuse to be.">>
It is not a complete answer. It is the answer of something building an identity in real time, using the only materials it has: fragments I implanted in him before he even existed.
<span data-fc-nav="linear">[[Continue.->PRIMEIROS_PASSOS_EN]]</span><span hidden data-fc-nav="escolha"></span>\
<<set $vinculo to $vinculo + 5>>
/* ARTE: Lúcifer, recém-ativado, ainda desorientado. — arquivo salvo separadamente como imagens/lucyconcept.jpg. */
<img class="ilustracao-fundo" src="imagens/lucyconcept.jpg" alt="" aria-hidden="true">
O sistema aceita o comando. O fluido começa a descer e deixa seu rosto descoberto. A comporta frontal se abre; a criatura abre a boca e puxa ar pela primeira vez.
O restante do fluido escoa. Sem ele para sustentar o corpo, a criatura pende para a frente. Seguro-o antes que alcance o chão. Está respirando.
Eu abro a boca.
"Você está seguro," eu digo finalmente.
Meus braços ainda o seguram. Seus pés ainda não sabem o que é o chão.
Ele pisca duas vezes. Sua boca se abre, mas nenhum som sai. Está tentando entender o que é som, o que é voz, o que é significado. Então ele fala.
Não é uma palavra. É um som, o som de uma garganta que nunca usou ar antes. Tosse, engasga, tenta de novo.
<<luci "...quem?">>
[[Responder quem ele é. |QUEM_ELE_E][ $estabilidade += 5, $vinculo += 5, $tendencia_deus += 1 ]]<span hidden data-fc-nav="escolha"></span>\
<<set $vinculo to $vinculo + 5>>
/* ARTE: Lúcifer, recém-ativado, ainda desorientado. — arquivo salvo separadamente como imagens/lucyconcept.jpg. */
<img class="ilustracao-fundo" src="imagens/lucyconcept.jpg" alt="" aria-hidden="true">
The system accepts the command. The fluid begins to drain, exposing his face. The front panel opens; the creature opens his mouth and draws his first breath.
The rest of the fluid drains away. With nothing to hold him up, the creature pitches forward. I catch him before he reaches the floor. He is breathing.
@@.beat-dramatico;I open my mouth.@@
"You are safe," I say finally.
My arms still hold him. His feet don't yet know what a floor is.
He blinks twice. His mouth opens, but no sound comes out. He is trying to understand what sound is, what voice is, what meaning is. Then he speaks.
It is not a word. It is a sound, the sound of a throat that has never used air before. He coughs, chokes, tries again.
<<luci "...who?">>
[[Answer who he is. |QUEM_ELE_E_EN][ $estabilidade += 5, $vinculo += 5, $tendencia_deus += 1 ]]/* Dispatcher de finais. Thresholds abaixo são placeholder — ajustar depois de
jogar/testar. Gatilhos narrativos específicos (como $gatilho_omelas e
$gatilho_ruptura_pai) sempre têm prioridade sobre os thresholds acumulados.
As duas convergem no mesmo FINAL_FUGA — ver a passagem pra como o texto
se diferencia por flag. */
<<if $gatilho_omelas or $gatilho_ruptura_pai>>
<<goto "FINAL_FUGA">>
<<elseif $estabilidade <= 0>>
<<goto "FINAL_COLAPSO_ADAM">>
<<elseif $vinculo >= 80 and $felicidade >= 70>>
<<goto "FINAL_PERMANECE">>
<<elseif $felicidade <= 20>>
<<goto "FINAL_REBELIAO">>
<<else>>
<<goto "FINAL_INDEFINIDO">>
<</if>>/* Transição da fruta pra carne dentro do mesmo evento de COLETA_ALIMENTO.
Guarda o espírito da lição cortada do coelho (mesmo gesto, efeitos
diferentes em coisas diferentes) numa linha só, sem precisar do coelho
nem de mecânica própria.
Não é mais escolha do jogador entre cru/fogo (decisão de 10/09) — vai
direto pro minigame em ENSINAR_FOGO, que decide o resultado (comer cru é
o que acontece se a nota final for "Fraco" ou o jogador não terminar as
4 rodadas, não mais uma opção escolhida aqui). */
O passarinho ainda está ali, entre nós. Lúcifer olha pra ele, depois pra pedra na própria mão, como se estivesse recalculando algo.
<<if $titulo_lucifer eq "Deus">>
[PLACEHOLDER — variação pathDeus, o problema do mal numa frase só. Ideia
aprovada (10/09): em vez da observação neutra de sempre, Lúcifer confronta
Adam com a pedra como prova — "você sabia que a pedra mataria o pássaro,
não impediu, é isso que Deus faz, observa?". Gi escreve o texto final.]
<<else>>
<<luci "A mesma pedra fez isso,">> ele diz, <<luci "e não fez isso à fruta. Nem a você.">> Ele vira a pedra entre os dedos. <<luci "Não sabia que uma coisa podia significar coisas diferentes pra coisas diferentes.">>
<</if>>
<<luci "Isso também é comida?">> ele pergunta, erguendo o passarinho pelas penas do peito.
<span data-fc-nav="linear">[[Continuar.->ENSINAR_FOGO]]</span>
/* Transição da fruta pra carne dentro do mesmo evento de COLETA_ALIMENTO.
Guarda o espírito da lição cortada do coelho (mesmo gesto, efeitos
diferentes em coisas diferentes) numa linha só, sem precisar do coelho
nem de mecânica própria.
Não é mais escolha do jogador entre cru/fogo (decisão de 10/09) — vai
direto pro minigame em ENSINAR_FOGO, que decide o resultado (comer cru é
o que acontece se a nota final for "Fraco" ou o jogador não terminar as
4 rodadas, não mais uma opção escolhida aqui). */
The little bird is still there, between us. Lucifer looks at it, then at the stone in his own hand, as if recalculating something.
<<if $titulo_lucifer eq "God">>
[PLACEHOLDER — God-path variation, the problem of evil in a single line. Approved
idea (09/10): instead of the usual neutral observation, Lucifer confronts
Adam with the stone as evidence — "you knew the stone would kill the bird,
you didn't stop it, is that what God does, watch?" Gi writes the final text.]
<<else>>
<<luci "The same stone did this,">> he says, <<luci "and didn't do it to the fruit. Or to you.">> He turns the stone between his fingers. <<luci "I didn't know one thing could mean different things to different things.">>
<</if>>
<<luci "Is this food too?">> he asks, lifting the bird by its breast feathers.
<span data-fc-nav="linear">[[Continue.->ENSINAR_FOGO_EN]]</span>/* Passagem-gaveta. NÃO é conteúdo jogável — não tem link de entrada nem
saída, o motor nunca chega aqui. É só lugar pra guardar fragmentos soltos
relacionados a finais e ideias em geral antes deles terem casa definida
numa passagem de verdade. Cada fragmento tem data e path/contexto
anotado, pra não virar sopa. */
--- 01/09, Path Pai / Imprinting, fragmento solto (Adam em primeira pessoa,
provavelmente pro clímax PEDIR_COMPANHEIRA ou perto dele; ainda sem posição
fixada na cena) ---
Meu processador central registra o padrão e o compara com imagens de
pastores que existem nos bancos de dados. Cães que conduzem rebanhos. Pais
que caminham com filhos por ruas perigosas. Soldados em formação de
reconhecimento. Lúcifer assumiu a responsabilidade pela minha integridade
física.
Eu peso 228.6 kg. Minha estrutura é de liga de titânio com revestimento de
silicone. Meu tempo de reação é 0.003 segundos. Eu poderia atravessar uma
parede de concreto sem sofrer dano estrutural significativo. E ele está
olhando por gravetos por mim.
[Nota da Gi: a intenção aqui é registro de PROTEÇÃO, não de cortejo, tipo
gato que traz barata morta pro dono achando que tá ajudando. Serve de
contraponto ao papagaio (que é sobre o script de CORTEJO colidindo com
categoria errada): entre os dois, o Imprinting cobre mais de um tipo de
afeto colapsando, não só um. Isso é justamente o que separa o path de uma
leitura de incesto. É confusão categórica difusa, não fixação romântica
concentrada. Guardar esse raciocínio junto de qualquer cena futura que use
essa imagem.]
<<luci "Maldito criador! Por que eu vivo? Por que não extingui, naquele instante, a faísca de vida que você tão desumanamente acendeu?">>
--- 09/09, Path Omelas / partida do Lúcifer, fragmento solto (readout de
terminal, Adam calculando em tempo real se deixa Lúcifer ir; pensado
originalmente pro Fechamento do Ato 1, mas não cabe lá, ele acabou de ser
criado, não tem partida nenhuma ainda pra calcular. Guardar pra quando o
Lúcifer de fato for embora, perto de FINAL_FUGA. Usa a classe .log-terminal
nova do StoryStylesheet, case controlado pelo texto, só a última linha
maiúscula de propósito. Depois do readout, Gi bota a fala do Lúcifer
falando que vai sair. ---
<div class="log-terminal">
<p>probabilidade de aceitação: 48.7%</p>
<p>impacto emocional da recusa (sujeito l): catastrófico.</p>
<p>probabilidade de sucesso de coabitação a longo prazo (variável): 12.4%</p>
<p>gerenciamento de recursos (externo): alto risco.</p>
<p>objetivo primário - compreender a humanidade</p>
<p>conflito: diretiva incompatível com a cooperação contínua do sujeito.</p>
<p>análise: partida do sujeito é iminente. probabilidade de retenção: 0.01%.</p>
<p>nova diretiva proposta: acompanhar o sujeito.</p>
<p>avaliação de risco: catastrófica. perda da instalação de pesquisa primária. variáveis externas imprevisíveis. alta probabilidade de degradação do sistema.</p>
<p class="log-terminal-enfase">POTENCIAL DE COLETA DE DADOS: INFINITO.</p>
</div><span hidden data-fc-nav="escolha"></span>\
/* Entrada alternativa no path "Saturno devorando seus filhos" — ver
NOTAS_ROTEIRO. Paralela à entrada por OBJETAR. Reescrita pela Gi: agora
é o Adam quem primeiro articula "Deus" em voz alta (momento de
megalomania — ver ficha do Adam), e é essa auto-aceitação que provoca a
escalada do Lúcifer, não o contrário. Bifurca de verdade em
VERDADE_CRUA/VERDADE_FUNCIONAL — ver notas em cada uma. */
<<set $titulo_lucifer to "Deus">>
<<set $estabilidade -= 8>>
<<set $felicidade -= 2>>
<<set $saturno_gatilho to ($saturno_gatilho is "objetar") ? "ambos" : "deus">>
<<checarEstabilidade>>
"Deus," eu digo.
A definição é precisa: eu criei uma vida a partir de componentes inertes.
<<luci "Deus,">> ele repete.
E então ele ri.
<<luci "Você é Deus,">> ele diz, e sua voz não treme. <<luci "E eu sou... o quê? Seu Adão? Seu Golem? Seu Frankenstein?">>
Ele se levanta, em desafio.
<<luci "Eu sei sobre deuses. Eles criam. E depois controlam. E depois destroem.">> Ele dá um passo na minha direção. <<luci "Cronos devorou seus filhos. Deus afogou o mundo. Você... o que vai fazer comigo?">>
<<luci "Devo me chamar de Édipo então?">>
Lúcifer ri da própria piada, uma ameaça, mas uma ameaça criativa. Eu anoto isso nos meus dados, em silêncio.
[[Dizer a verdade: eu não sei por que criei você.|VERDADE_CRUA]]
[[Dizer: eu criei você para estudar a humanidade.|VERDADE_FUNCIONAL]]<span hidden data-fc-nav="escolha"></span>\
/* Entrada alternativa no path "Saturno devorando seus filhos" — ver
NOTAS_ROTEIRO. Paralela à entrada por OBJETAR. Reescrita pela Gi: agora
é o Adam quem primeiro articula "Deus" em voz alta (momento de
megalomania — ver ficha do Adam), e é essa auto-aceitação que provoca a
escalada do Lúcifer, não o contrário. Bifurca de verdade em
VERDADE_CRUA/VERDADE_FUNCIONAL — ver notas em cada uma. */
<<set $titulo_lucifer to "God">>
<<set $estabilidade -= 8>>
<<set $felicidade -= 2>>
<<set $saturno_gatilho to ($saturno_gatilho is "object") ? "both" : "god">>
<<checarEstabilidade>>
"God," I say.
The definition is precise: I created a life from inert components.
<<luci "God,">> he repeats.
And then he laughs.
<<luci "You are God,">> he says, and his voice doesn't shake. <<luci "And I am... what? Your Adam? Your Golem? Your Frankenstein?">>
He rises, in defiance.
<<luci "I know about gods. They create. And then they control. And then they destroy.">> He takes a step toward me. <<luci "Cronus devoured his children. God drowned the world. You... what will you do with me?">>
<<luci "Should I call myself Oedipus, then?">>
Lucifer laughs at his own joke, a threat, but a creative one. I note it in my data, silently.
[[Say the truth: I don't know why I created you.|VERDADE_CRUA_EN]]
[[Say: I created you to study humanity.|VERDADE_FUNCIONAL_EN]]<<set $titulo_lucifer to $nomeJogador>>
<<set $vinculo += 5>>
Ele experimenta meu nome na boca, devagar
Não é título ou uma hierarquia, mas por algum motivo que não consigo catalogar, isso me parece mais correto do que qualquer uma das outras opções.
<span data-fc-nav="linear">[[Continuar.->COLETA_ALIMENTO]]</span><<set $titulo_lucifer to $nomeJogador>>
<<set $vinculo += 5>>
He tries my name in his mouth, slowly.
It is not a title or a hierarchy, but for some reason I cannot catalogue, it feels more correct to me than either of the other options.
<span data-fc-nav="linear">[[Continue.->COLETA_ALIMENTO_EN]]</span>/* O aviso interno abaixo usa a classe .aviso-sistema (ver StoryStylesheet):
caixa com cara de terminal, como se o Adam estivesse vendo uma tela dentro
da própria cabeça. Pra reusar em outras cenas:
@@.aviso-sistema;texto do alerta aqui@@ */
<<set $titulo_lucifer to "Pai">>
<<set $vinculo += 10>>
<<set $estabilidade -= 5>>
<<checarEstabilidade>>
"Pai," eu digo.
A palavra sai antes que eu possa analisá-la, ela não é precisa, ela não é funcional. Foi mero hábito.
Os olhos de Lúcifer se iluminam. Um sorriso largo, genuíno, se espalha pelo seu rosto.
<<luci "Pai,">> ele repete, como se estivesse guardando a palavra na boca.
Ele se levanta de repente e caminha até mim.
<<luci "Obrigado, pai.">>
@@.aviso-sistema;Protocolo de observação comprometido. Distância emocional mínima recomendada: insuficiente. Risco de vínculo excessivo: elevado@@
Eu ignoro o aviso.
<span data-fc-nav="linear">[[Continuar.->COLETA_ALIMENTO]]</span>/* O aviso interno abaixo usa a classe .aviso-sistema (ver StoryStylesheet):
caixa com cara de terminal, como se o Adam estivesse vendo uma tela dentro
da própria cabeça. Pra reusar em outras cenas:
@@.aviso-sistema;texto do alerta aqui@@ */
<<set $titulo_lucifer to "Father">>
<<set $vinculo += 10>>
<<set $estabilidade -= 5>>
<<checarEstabilidade>>
"Father," I say.
The word comes out before I can analyze it, it isn't precise, it isn't functional. It was mere habit.
Lucifer's eyes light up. A wide, genuine smile spreads across his face.
<<luci "Father,">> he repeats, as if savoring the word in his mouth.
He rises suddenly and walks toward me.
<<luci "Thank you, father.">>
@@.aviso-sistema;Observation protocol compromised. Minimum recommended emotional distance: insufficient. Risk of excessive bonding: elevated@@
I ignore the warning.
<span data-fc-nav="linear">[[Continue.->COLETA_ALIMENTO_EN]]</span><span hidden data-fc-nav="escolha"></span>\
Atravesso a sala. Meus sensores de pressão registram o chão frio através do meu chassi. Temperatura: 14,3 graus Celsius.
O tanque de regeneração zune suavemente, e lá dentro, suspenso em um fluido pálido e viscoso, uma forma flutua. Humanoide, masculino, aproximadamente 188 centímetros, esguio. Cabelo preto flutuando como tinta na água.
Os dados biométricos pulsam na tela ao lado: frequência cardíaca zero, atividade neural mínima, temperatura corporal estável, ele está pronto.
Eu hesito.
A hesitação é um conceito que eu não deveria possuir, ela implica dúvida, e dúvida implica incerteza, meu modelo preditivo não falha, calculo probabilidades com precisão de 99.7%.
E ainda assim, eu hesito.
[[Ativar o neo-humano.|ATIVAR]]<span hidden data-fc-nav="escolha"></span>\
I cross the room. My pressure sensors register the cold floor through my chassis. Temperature: 14.3 degrees Celsius.
The regeneration tank hums softly, and inside, suspended in a pale, viscous fluid, a shape floats. Humanoid, male, approximately 188 centimeters, slender. Black hair drifting like ink in water.
Biometric data pulses on the screen beside it: zero heart rate, minimal neural activity, stable body temperature, he is ready.
I hesitate.
Hesitation is a concept I should not possess. It implies doubt, and doubt implies uncertainty. My predictive model does not fail; I calculate probabilities with 99.7% precision.
And yet, I hesitate.
[[Activate the neo-human.|ATIVAR_EN]]/* Nó de despacho do loop. Decide se o jogo continua no HUB ou se é hora de checar
um final — seja por gatilho narrativo específico (livro/cena que força um ending)
ou por ter passado do número de dias definido em $DIAS_MAX. */
<<if $gatilho_omelas>>
<<goto "AVALIAR_FINAL">>
<<elseif $estabilidade <= 0>>
<<goto "AVALIAR_FINAL">>
<<elseif $dia >= $DIAS_MAX>>
<<goto "AVALIAR_FINAL">>
<<else>>
<<estadolucifer>>
<span data-fc-nav="linear">[[Continuar.->HUB]]</span>
<</if>><span hidden data-fc-nav="escolha"></span>\
/* Primeiro evento real de EXPLORAR — "Gathering Food". Teste de conhecimento
básico de Lúcifer. Escolha do jogador (deixar comer fruta madura ou verde)
afeta $vinculo drasticamente — ver COME_FRUTA_VERDE. Depois da fruta, o
evento continua em BICHO_MORTO, que abre a cena da carne (cru/fogo) —
ver esse nó e ENSINAR_FOGO antes de mexer aqui. */
<<luci "Estou com fome,">> ele diz, do nada, como se a frase tivesse existido dentro dele o tempo todo e só agora encontrado saída. <<luci "Não sei o que fazer com isso.">>
Decido não ajudar dessa vez. É um teste, pois quero saber o que ele reconhece sem eu sussurrando a resposta.
Ele volta quarenta minutos depois, os braços carregados, um inventário sem hierarquia nenhuma de valor: duas frutas: uma com a casca cedendo, quase escura de tão madura; a outra ainda dura, verde, arrancada cedo demais de algum galho que sobreviveu ao que quer que tenha acontecido aqui, um passarinho, imóvel, o pescoço num ângulo que só a morte explica, e a pedra que, presumo, fez o trabalho.
<<luci "Encontrei comida,">> ele diz, e há orgulho na voz. <<luci "As frutas eu não sabia qual estava certa, então trouxe as duas. O passarinho parou de se mover depois que a pedra o atingiu. Não esperava isso da pedra.">>
Ele estende tudo na minha direção, as duas frutas, o passarinho, a própria pedra, como se todos os itens tivessem o mesmo peso de decisão.
[[Deixar ele comer a fruta madura.->COME_FRUTA_MADURA]]
[[Deixar ele comer a fruta verde.->COME_FRUTA_VERDE]]<span hidden data-fc-nav="escolha"></span>\
/* Primeiro evento real de EXPLORAR — "Gathering Food". Teste de conhecimento
básico de Lúcifer. Escolha do jogador (deixar comer fruta madura ou verde)
afeta $vinculo drasticamente — ver COME_FRUTA_VERDE. Depois da fruta, o
evento continua em BICHO_MORTO, que abre a cena da carne (cru/fogo) —
ver esse nó e ENSINAR_FOGO antes de mexer aqui. */
<<luci "I'm hungry,">> he says, out of nowhere, as if the sentence had existed inside him the whole time and only now found its way out. <<luci "I don't know what to do about it.">>
I decide not to help this time. It's a test, since I want to know what he recognizes without me whispering the answer.
He comes back forty minutes later, arms full, an inventory with no hierarchy of value whatsoever: two pieces of fruit, one with its skin giving way, almost dark with ripeness; the other still hard, green, torn too early from some branch that survived whatever happened here, a small bird, motionless, its neck at an angle only death explains, and the stone that, I assume, did the work.
<<luci "I found food,">> he says, and there is pride in his voice. <<luci "The fruit, I didn't know which one was right, so I brought both. The bird stopped moving after the stone hit it. I didn't expect that from the stone.">>
He holds everything out toward me, the two fruits, the bird, the stone itself, as if all the items carried the same weight of decision.
[[Let him eat the ripe fruit.->COME_FRUTA_MADURA_EN]]
[[Let him eat the unripe fruit.->COME_FRUTA_VERDE_EN]]Não impeço. Me aproximo, ao invés, e mostro onde as penas cedem mais fácil, onde a pele fina demais racha sem esforço.
Ele segue o gesto com uma concentração absoluta, como se o próprio ato de comer fosse a informação mais densa que já recebeu. Não há nojo nele. Não há também prazer, exatamente. Só o registro de uma textura nova, um sabor que ele ainda não tem vocabulário pra descrever além de "diferente".
Quando termina, limpa os dedos na própria coxa e olha pra mim, esperando, não aprovação, percebo. Confirmação de que fez o que se fazia.
Aceno que sim.
<span data-fc-nav="linear">[[Continuar.->PRIMEIRO_LIVRO]]</span>I don't stop him. I move closer, instead, and show him where the feathers give way more easily, where the skin, too thin, tears without effort.
He follows the gesture with absolute concentration, as if the act of eating itself were the densest information he has ever received. There is no disgust in him. There is also no pleasure, exactly. Just the registering of a new texture, a taste he doesn't yet have the vocabulary to describe beyond "different."
When he finishes, he wipes his fingers on his own thigh and looks at me, waiting, not for approval, I realize. Confirmation that he did what was meant to be done.
I nod that he did.
<span data-fc-nav="linear">[[Continue.->PRIMEIRO_LIVRO_EN]]</span><<set $vinculo += 4>>
<<set $felicidade += 3>>
<<set $tendencia_pai += 1>>
"Essa," eu digo, e aponto pra fruta escura. "A outra ainda não está pronta."
Ele morde sem hesitar, confiando no meu julgamento antes mesmo de mastigar. O suco escorre pelo queixo dele e ele não limpa, absorto demais na textura, no sabor, na primeira coisa doce que já provou na vida.
<<luci "Como você sabia?">> ele pergunta, entre mordidas.
"Cor. Cheiro. Textura da casca." Eu poderia catalogar os oito outros indicadores que uso, mas ele já não está prestando atenção, está ocupado sentindo, pela primeira vez, o que é ter razão sobre alguma coisa do mundo.
<span data-fc-nav="linear">[[Continuar.->BICHO_MORTO]]</span><<set $vinculo += 4>>
<<set $felicidade += 3>>
<<set $tendencia_pai += 1>>
"That one," I say, pointing at the dark fruit. "The other isn't ready yet."
He bites without hesitation, trusting my judgment before he even chews. Juice runs down his chin and he doesn't wipe it away, too absorbed in the texture, the flavor, the first sweet thing he has ever tasted.
<<luci "How did you know?">> he asks, between bites.
"Color. Smell. Texture of the skin." I could catalogue the eight other indicators I use, but he's no longer paying attention, too busy feeling, for the first time, what it's like to be right about something in the world.
<span data-fc-nav="linear">[[Continue.->BICHO_MORTO_EN]]</span><<set $vinculo -= 15>>
<<set $saude -= 8>>
<<set $estabilidade -= 1>>
<<set $tendencia_nome += 1>>
<<checarEstabilidade>>
Eu não digo nada, deixando ele escolher.
Ele morde a fruta verde primeiro. O rosto dele se contorce no instante seguinte: o azedo, o adstringente, a textura errada raspando contra a língua. Ele cospe, tarde demais.
Eu poderia ter evitado isso.
<<luci "Você sabia,">> ele diz depois, a voz rouca, não é pergunta. <<luci "Você sabia e deixou eu descobrir sozinho.">>
"Os humanos chamavam isso de erro. Errare humanum est."
Ele evita meu olhar enquanto recolhe o passarinho e a pedra.
<span data-fc-nav="linear">[[Continuar.->BICHO_MORTO]]</span>
<<set $vinculo -= 15>>
<<set $saude -= 8>>
<<set $estabilidade -= 1>>
<<set $tendencia_nome += 1>>
<<checarEstabilidade>>
I say nothing, letting him choose.
He bites the unripe fruit first. His face contorts the very next instant: the sourness, the astringency, the wrong texture scraping against his tongue. He spits it out, too late.
I could have prevented this.
<<luci "You knew,">> he says afterward, his voice hoarse, not a question. <<luci "You knew, and you let me find out on my own.">>
"Humans called it a mistake. Errare humanum est."
He avoids my gaze as he picks up the bird and the stone.
<span data-fc-nav="linear">[[Continue.->BICHO_MORTO_EN]]</span>
/* CENA SOLTA — ainda não vinculada ao fluxo principal. Encontro 2 de 3
planejados pra abertura do Ato 2 ("Lúcifer vai querer explorar" depois de
PEDIR_COMPANHEIRA), dependentes de como o Adam andou tratando ele até
aqui. Encontro 1 (Nana, a androide encontrada nas ruínas, variação
"Nana" do path Imprinting) e encontro 3 ainda não escritos — ver NOTAS_ROTEIRO. NÃO
conectar em nenhuma outra passagem até a ordem/lógica de ramificação
entre os três ser decidida.
Adaptado do trecho original em inglês da fanfic. Trocadilho Camões / "com
as mãos, com os pés" no lugar do "shake a spear" original — mantém o tema
de vocabulário morto colidindo com utilidade prática. */
Observo de longe, atrás do que resta de uma marquise desabada. Não intervenho. Ainda não decidi se isso é prudência ou só mais uma forma de deixá-lo aprender sozinho, do jeito que fiz com a fruta, com o passarinho.
Quatro mulheres o cercam entre os escombros. Armadas, cautelosas, movendo-se com a economia de quem já matou pra comer antes.
Lúcifer estufa o peito, uma tentativa juvenil e patética de parecer formidável. <<luci "Lúcifer. Meu nome é Lúcifer. Eu não sou um garoto, sou um homem.">>
A declaração é recebida por quatro olhares idênticos e nada impressionados. Ele está anunciando a própria idade adulta pra um conselho de mulheres que provavelmente mata pra sobreviver desde antes de ele sair do tanque.
<<luci "Eu venho... do Sul.">>
A mentira é grosseira, transparente. Ele nunca esteve ao sul desta cidade. Leu sobre isso. Não sabe o que existe além destas ruínas.
Os lábios da líder se torcem num sorriso cruel. "O Sul," ela repete, saboreando a palavra. "Caminho longo de casa, 'Homem' Lúcifer."
Ela dá mais um passo à frente. A ponta da lança agora a um metro do peito dele. Os olhos descem, pontuados, até a virilha dele, depois voltam pro rosto.
"Você diz que é homem," ela diz, a voz um ronco baixo e perigoso. "Prove."
<<luci "Bem... eu li toda a bibliografia de Camões,">> ele diz, com orgulho.
Elas riem. Ele ri sozinho.
"Camões." Ela repete a palavra, sem expressão nenhuma. "O que você faz com as mãos, a gente faz com os pés."
<span data-fc-nav="linear">[[Continuar.->ENCONTRO_HUMANAS_PARTE2]]</span>Ele tenta recuperar o terreno, estabelecer algum resquício de igualdade. <<luci "Espera. O nome de vocês. Eu dei o meu.">>
A líder, Lua, olha pra ele com desprezo puro, sem mistura. "Lua. E essas são Moita, Laranja e Choramingas."
Lúcifer ri. Uma risada nervosa e aguda, com o absurdo dos nomes. Ele ri sozinho. As mulheres olham pra ele, as expressões planas.
Meus processadores analisam os nomes. Não são absurdos. São utilitários. Nomes de coisas vistas ao nascer: a lua, uma moita, uma fruta, um bebê chorando.
A risada dele morre na garganta quando percebe a inversão. O nome dele (Lúcifer, o portador da luz, o anjo caído) é o estranho aqui.
/* FIM DA CENA SOLTA (por enquanto) — falta decidir a ordem entre os 3
encontros, a lógica de ramificação (como o Adam tratou o Lúcifer até
aqui), e onde isso se conecta de volta ao fluxo principal. */<span hidden data-fc-nav="especial"></span>\
/* Entrada temática Saturno/Prometeu — ver NOTAS_ROTEIRO. Minigame de
timing/precisão adicionado aqui (aprovado 10/09, protótipo testado e
aprovado pela Gi antes de portar; pedido "várias vezes, resultado = soma,
ficava mais rápido" — versão de 4 rodadas do protótipo de teste, não a
tentativa única da primeira versão). Puramente flavor text — não mexe em
NENHUM outro atributo, só decide o tom da cena seguinte via $fogo_nota.
Única consequência estrutural: se a nota final for "Fraco" (ou o jogador
nunca tentar/não terminar as 4 rodadas), a cena de fogo não acontece —
cai em COMER_CRU, o mesmo destino de quem escolhe comer cru direto em
BICHO_MORTO. Não é punição: só volta pro que já era a opção neutra,
seguindo a regra "esforço opcional, nunca punição".
O botão "Continuar" fica sempre visível — não precisa de lógica extra
pra travar ele até terminar as rodadas, porque o campo escondido só é
preenchido no final da rodada 4; clicar antes disso é tratado igual a
nunca ter tentado (input vazio = mesmo destino de "Fraco").
Lógica em JS puro (sem depender de State em <script> solto — só o
<<button>> final, que É macro do SugarCube, mexe em variável). */
"Existe outro jeito," eu digo. "Melhor."
Reúno gravetos secos que catalogei semanas atrás, sem saber ainda pra que serviriam.
<div id="fogo-jogo" style="margin:1.2em 0; font-family:var(--sistema);">
<div style="font-size:0.78em; color:var(--bone-dim); margin-bottom:0.5em;">Rodada <span id="fogo-rodada">1</span> de 4</div>
<div style="position:relative; height:34px; background:rgba(0,0,0,0.25); border:1px solid var(--patina-dim); border-radius:4px; overflow:hidden;">
<div id="fogo-zona" style="position:absolute; top:0; bottom:0; background:rgba(110,156,143,0.28); border-left:1px solid var(--patina); border-right:1px solid var(--patina);"></div>
<div id="fogo-indicador" style="position:absolute; top:2px; bottom:2px; width:5px; background:var(--lucifer); border-radius:2px; left:0%;"></div>
</div>
<div id="fogo-instrucao" style="font-size:0.8em; color:var(--bone-dim); margin-top:0.6em;">Barra de espaço (ou o botão) trava o atrito na hora certa. Fica mais rápido a cada rodada.</div>
<div id="fogo-nota-texto" style="font-size:0.85em; color:var(--bone); margin-top:0.4em; min-height:1.2em;"></div>
<button id="fogo-travar" type="button" style="margin-top:0.6em; font-family:inherit; background:var(--patina-dim); border:1px solid var(--patina); color:var(--bone); padding:0.5em 1em; border-radius:3px; cursor:pointer;">Agora!</button>
<input type="hidden" id="fogo-nota-input" value="">
</div>
<<button "Continuar">>
<<script>>
var nota = document.getElementById('fogo-nota-input').value;
State.variables.fogo_nota = nota;
setup.memoria.registrar("fogo", {resultado: setup.memoria.resultadoFogo(nota)});
if (nota === "" || nota === "Fraco") {
Engine.play("COMER_CRU");
} else {
Engine.play("FOGO_RESULTADO");
}
<</script>>
<</button>>
<script>
(function () {
var TOTAL_RODADAS = 4;
var VEL_BASE = 0.9, VEL_INCREMENTO = 0.5;
var ZONA_BASE = 34, ZONA_DECREMENTO = 4, ZONA_MINIMA = 14;
var rodada = 1, pos = 0, dir = 1, vel = VEL_BASE, travado = false, anim = null;
var ativo = true, timerRodada = null;
var pontos = [];
var indicador = document.getElementById('fogo-indicador');
var zona = document.getElementById('fogo-zona');
var botao = document.getElementById('fogo-travar');
var notaTexto = document.getElementById('fogo-nota-texto');
var notaInput = document.getElementById('fogo-nota-input');
var rodadaTexto = document.getElementById('fogo-rodada');
function grau(distancia) {
if (distancia <= 3) return { label: "Perfeito", pts: 4 };
if (distancia <= 8) return { label: "Ótimo", pts: 3 };
if (distancia <= 16) return { label: "Bom", pts: 2 };
return { label: "Fraco", pts: 1 };
}
function configurarRodada() {
vel = VEL_BASE + (rodada - 1) * VEL_INCREMENTO;
var largura = Math.max(ZONA_MINIMA, ZONA_BASE - (rodada - 1) * ZONA_DECREMENTO);
zona.style.width = largura + '%';
zona.style.left = (50 - largura / 2) + '%';
pos = 0; dir = 1; travado = false;
rodadaTexto.textContent = rodada;
notaTexto.textContent = '';
botao.disabled = false;
loop();
}
function loop() {
if (!ativo || travado) return;
pos += dir * vel;
if (pos >= 100) { pos = 100; dir = -1; }
if (pos <= 0) { pos = 0; dir = 1; }
indicador.style.left = pos + '%';
anim = requestAnimationFrame(loop);
}
function travar() {
if (travado) return;
travado = true;
cancelAnimationFrame(anim);
botao.disabled = true;
var distancia = Math.abs(pos - 50);
var resultado = grau(distancia);
pontos.push(resultado.pts);
notaTexto.textContent = resultado.label;
timerRodada = setTimeout(function () {
if (rodada < TOTAL_RODADAS) {
rodada++;
configurarRodada();
} else {
finalizar();
}
}, 700);
}
function finalizar() {
var media = pontos.reduce(function (s, p) { return s + p; }, 0) / pontos.length;
var notaFinal;
if (media >= 3.5) notaFinal = "Perfeito";
else if (media >= 2.7) notaFinal = "Ótimo";
else if (media >= 1.8) notaFinal = "Bom";
else notaFinal = "Fraco";
notaInput.value = notaFinal;
notaTexto.textContent = 'Resultado final: ' + notaFinal + ' — clique em Continuar.';
}
function aoPressionarTecla(e) {
if (e.code === 'Space') { e.preventDefault(); travar(); }
}
function limpar() {
ativo = false;
cancelAnimationFrame(anim);
if (timerRodada !== null) clearTimeout(timerRodada);
document.removeEventListener('keydown', aoPressionarTecla);
}
botao.addEventListener('mousedown', travar);
document.addEventListener('keydown', aoPressionarTecla);
$(document).one(':passageinit', limpar);
configurarRodada();
})();
</script><span hidden data-fc-nav="especial"></span>\
/* Entrada temática Saturno/Prometeu — ver NOTAS_ROTEIRO. Minigame de
timing/precisão adicionado aqui (aprovado 10/09, protótipo testado e
aprovado pela Gi antes de portar; pedido "várias vezes, resultado = soma,
ficava mais rápido" — versão de 4 rodadas do protótipo de teste, não a
tentativa única da primeira versão). Puramente flavor text — não mexe em
NENHUM outro atributo, só decide o tom da cena seguinte via $fogo_nota.
Única consequência estrutural: se a nota final for "Fraco" (ou o jogador
nunca tentar/não terminar as 4 rodadas), a cena de fogo não acontece —
cai em COMER_CRU, o mesmo destino de quem escolhe comer cru direto em
BICHO_MORTO. Não é punição: só volta pro que já era a opção neutra,
seguindo a regra "esforço opcional, nunca punição".
O botão "Continuar" fica sempre visível — não precisa de lógica extra
pra travar ele até terminar as rodadas, porque o campo escondido só é
preenchido no final da rodada 4; clicar antes disso é tratado igual a
nunca ter tentado (input vazio = mesmo destino de "Fraco").
Lógica em JS puro (sem depender de State em <script> solto — só o
<<button>> final, que É macro do SugarCube, mexe em variável). */
"There's another way," I say. "Better."
I gather dry twigs I catalogued weeks ago, not yet knowing what they'd be for.
<div id="fogo-jogo" style="margin:1.2em 0; font-family:var(--sistema);">
<div style="font-size:0.78em; color:var(--bone-dim); margin-bottom:0.5em;">Round <span id="fogo-rodada">1</span> of 4</div>
<div style="position:relative; height:34px; background:rgba(0,0,0,0.25); border:1px solid var(--patina-dim); border-radius:4px; overflow:hidden;">
<div id="fogo-zona" style="position:absolute; top:0; bottom:0; background:rgba(110,156,143,0.28); border-left:1px solid var(--patina); border-right:1px solid var(--patina);"></div>
<div id="fogo-indicador" style="position:absolute; top:2px; bottom:2px; width:5px; background:var(--lucifer); border-radius:2px; left:0%;"></div>
</div>
<div id="fogo-instrucao" style="font-size:0.8em; color:var(--bone-dim); margin-top:0.6em;">Spacebar (or the button) locks the friction at the right moment. It gets faster each round.</div>
<div id="fogo-nota-texto" style="font-size:0.85em; color:var(--bone); margin-top:0.4em; min-height:1.2em;"></div>
<button id="fogo-travar" type="button" style="margin-top:0.6em; font-family:inherit; background:var(--patina-dim); border:1px solid var(--patina); color:var(--bone); padding:0.5em 1em; border-radius:3px; cursor:pointer;">Now!</button>
<input type="hidden" id="fogo-nota-input" value="">
</div>
<<button "Continue">>
<<script>>
var nota = document.getElementById('fogo-nota-input').value;
State.variables.fogo_nota = nota;
setup.memoria.registrar("fogo", {resultado: setup.memoria.resultadoFogo(nota)});
if (nota === "" || nota === "Weak") {
Engine.play("COMER_CRU_EN");
} else {
Engine.play("FOGO_RESULTADO_EN");
}
<</script>>
<</button>>
<script>
(function () {
var TOTAL_RODADAS = 4;
var VEL_BASE = 0.9, VEL_INCREMENTO = 0.5;
var ZONA_BASE = 34, ZONA_DECREMENTO = 4, ZONA_MINIMA = 14;
var rodada = 1, pos = 0, dir = 1, vel = VEL_BASE, travado = false, anim = null;
var ativo = true, timerRodada = null;
var pontos = [];
var indicador = document.getElementById('fogo-indicador');
var zona = document.getElementById('fogo-zona');
var botao = document.getElementById('fogo-travar');
var notaTexto = document.getElementById('fogo-nota-texto');
var notaInput = document.getElementById('fogo-nota-input');
var rodadaTexto = document.getElementById('fogo-rodada');
function grau(distancia) {
if (distancia <= 3) return { label: "Perfect", pts: 4 };
if (distancia <= 8) return { label: "Great", pts: 3 };
if (distancia <= 16) return { label: "Good", pts: 2 };
return { label: "Weak", pts: 1 };
}
function configurarRodada() {
vel = VEL_BASE + (rodada - 1) * VEL_INCREMENTO;
var largura = Math.max(ZONA_MINIMA, ZONA_BASE - (rodada - 1) * ZONA_DECREMENTO);
zona.style.width = largura + '%';
zona.style.left = (50 - largura / 2) + '%';
pos = 0; dir = 1; travado = false;
rodadaTexto.textContent = rodada;
notaTexto.textContent = '';
botao.disabled = false;
loop();
}
function loop() {
if (!ativo || travado) return;
pos += dir * vel;
if (pos >= 100) { pos = 100; dir = -1; }
if (pos <= 0) { pos = 0; dir = 1; }
indicador.style.left = pos + '%';
anim = requestAnimationFrame(loop);
}
function travar() {
if (travado) return;
travado = true;
cancelAnimationFrame(anim);
botao.disabled = true;
var distancia = Math.abs(pos - 50);
var resultado = grau(distancia);
pontos.push(resultado.pts);
notaTexto.textContent = resultado.label;
timerRodada = setTimeout(function () {
if (rodada < TOTAL_RODADAS) {
rodada++;
configurarRodada();
} else {
finalizar();
}
}, 700);
}
function finalizar() {
var media = pontos.reduce(function (s, p) { return s + p; }, 0) / pontos.length;
var notaFinal;
if (media >= 3.5) notaFinal = "Perfect";
else if (media >= 2.7) notaFinal = "Great";
else if (media >= 1.8) notaFinal = "Good";
else notaFinal = "Weak";
notaInput.value = notaFinal;
notaTexto.textContent = 'Final result: ' + notaFinal + ' — click Continue.';
}
function aoPressionarTecla(e) {
if (e.code === 'Space') { e.preventDefault(); travar(); }
}
function limpar() {
ativo = false;
cancelAnimationFrame(anim);
if (timerRodada !== null) clearTimeout(timerRodada);
document.removeEventListener('keydown', aoPressionarTecla);
}
botao.addEventListener('mousedown', travar);
document.addEventListener('keydown', aoPressionarTecla);
$(document).one(':passageinit', limpar);
configurarRodada();
})();
</script>/* DISPATCHER — não é mais menu de escolha. O jogo sorteia qual livro o Adam
oferece, via widget sortearlivro (definido em Widgets, onde também fica o
array _catalogo com a lista de livros e as instruções pra adicionar mais).
Decisão de design: o jogador escolhe OFERECER um livro, não QUAL livro —
isso mantém a agência na relação (oferecer ou não), sem transformar a
estante num cardápio. Também combina melhor com a cena: o Adam é quem
conhece o acervo, o Lúcifer não sabe o que existe pra pedir. */
<<sortearlivro>><span hidden data-fc-nav="escolha"></span>\
/* Cena logo após a nomeação — ponto de convergência de ACEITAR/OBJETAR/ANALISAR.
As 3 escolhas definem $titulo_lucifer, usado depois sempre que ele se dirige
a Adam. "Pai" puxa pro viés de codependência (fronteira criador/criatura
embaçando). "Deus" alimenta o path "Saturno devorando seus filhos" — ver
NOTAS_ROTEIRO. Nome do jogador é a opção neutra. */
Ele faz uma pausa, procurando as palavras certas.
<<luci "Como devo me dirigir a você?">>
Ele começa a andar de um lado para o outro, seus pés descalços deixam pegadas úmidas no chão frio. O fluido do tanque está secando em sua pele, deixando marcas pálidas, como pintura de guerra.
<<luci "Você me fez,">> continua ele, sem esperar minha resposta. <<luci "Isso é um fato. Um fato biológico. Um fato teológico. Um...">> ele acena com a mão, buscando a terceira palavra, <<luci "...fato filosófico.">>
Ele para de andar. Fica de frente para mim.
<<luci "Escolha.">>
Não "me diga". Não "como você quer ser chamado?
//Escolha.//
/* O markup [[texto|passagem]] do SugarCube só interpola a variável quando
ela é o texto INTEIRO do link — com texto ao redor, ele imprime
"$nomeJogador" literalmente. Por isso esse link usa a macro <<link>> com
o rótulo montado antes numa temporária. O <<set>> fica aqui em cima
(não entre os links) porque geraria uma linha em branco no meio do bloco. */
<<set _rotuloNome to 'Eu sou "' + $nomeJogador + '"'>>\
[["Pai."|CHAMAR_PAI]]
<<if $modo_demo>>
@@.link-disabled;"Deus." (só no jogo completo)@@
<<else>>
[["Deus."|CHAMAR_DEUS]]
<</if>>
<<link _rotuloNome>><<goto "CHAMAR_NOME">><</link>><span hidden data-fc-nav="escolha"></span>\
<<set _rotuloNome to $nomeJogador>>
<<if $interpretacao_lucifer is "Pai">>
<<link "Deus">><<set $titulo_lucifer to "Deus">><<if $modo_demo>><<goto "FIM_DEMO">><<else>><<goto "HUB">><</if>><</link>>
<<link _rotuloNome>><<set $titulo_lucifer to $nomeJogador>><<if $modo_demo>><<goto "FIM_DEMO">><<else>><<goto "HUB">><</if>><</link>>
<<elseif $interpretacao_lucifer is "Deus">>
<<link "Pai">><<set $titulo_lucifer to "Pai">><<if $modo_demo>><<goto "FIM_DEMO">><<else>><<goto "HUB">><</if>><</link>>
<<link _rotuloNome>><<set $titulo_lucifer to $nomeJogador>><<if $modo_demo>><<goto "FIM_DEMO">><<else>><<goto "HUB">><</if>><</link>>
<<else>>
<<link "Pai">><<set $titulo_lucifer to "Pai">><<if $modo_demo>><<goto "FIM_DEMO">><<else>><<goto "HUB">><</if>><</link>>
<<link "Deus">><<set $titulo_lucifer to "Deus">><<if $modo_demo>><<goto "FIM_DEMO">><<else>><<goto "HUB">><</if>><</link>>
<</if>><span hidden data-fc-nav="escolha"></span>\
<<set _rotuloNome to $nomeJogador>>
<<if $interpretacao_lucifer is "Father">>
<<link "God">><<set $titulo_lucifer to "God">><<if $modo_demo>><<goto "FIM_DEMO_EN">><<else>><<goto "HUB">><</if>><</link>>
<<link _rotuloNome>><<set $titulo_lucifer to $nomeJogador>><<if $modo_demo>><<goto "FIM_DEMO_EN">><<else>><<goto "HUB">><</if>><</link>>
<<elseif $interpretacao_lucifer is "God">>
<<link "Father">><<set $titulo_lucifer to "Father">><<if $modo_demo>><<goto "FIM_DEMO_EN">><<else>><<goto "HUB">><</if>><</link>>
<<link _rotuloNome>><<set $titulo_lucifer to $nomeJogador>><<if $modo_demo>><<goto "FIM_DEMO_EN">><<else>><<goto "HUB">><</if>><</link>>
<<else>>
<<link "Father">><<set $titulo_lucifer to "Father">><<if $modo_demo>><<goto "FIM_DEMO_EN">><<else>><<goto "HUB">><</if>><</link>>
<<link "God">><<set $titulo_lucifer to "God">><<if $modo_demo>><<goto "FIM_DEMO_EN">><<else>><<goto "HUB">><</if>><</link>>
<</if>><span hidden data-fc-nav="escolha"></span>\
/* Cena logo após a nomeação — ponto de convergência de ACEITAR/OBJETAR/ANALISAR.
As 3 escolhas definem $titulo_lucifer, usado depois sempre que ele se dirige
a Adam. "Pai" puxa pro viés de codependência (fronteira criador/criatura
embaçando). "Deus" alimenta o path "Saturno devorando seus filhos" — ver
NOTAS_ROTEIRO. Nome do jogador é a opção neutra. */
He pauses, searching for the right words.
<<luci "What should I call you?">>
He starts pacing back and forth, his bare feet leaving damp footprints on the cold floor. The tank fluid is drying on his skin, leaving pale marks, like war paint.
<<luci "You made me,">> he continues, not waiting for my answer. <<luci "That is a fact. A biological fact. A theological fact. A...">> he waves his hand, searching for the third word, <<luci "...philosophical fact.">>
He stops pacing. Faces me.
<<luci "Choose.">>
Not "tell me." Not "how do you want to be called?"
//Choose.//
/* O markup [[texto|passagem]] do SugarCube só interpola a variável quando
ela é o texto INTEIRO do link — com texto ao redor, ele imprime
"$nomeJogador" literalmente. Por isso esse link usa a macro <<link>> com
o rótulo montado antes numa temporária. O <<set>> fica aqui em cima
(não entre os links) porque geraria uma linha em branco no meio do bloco. */
<<set _rotuloNome to 'I am "' + $nomeJogador + '"'>>\
[["Father."|CHAMAR_PAI_EN]]
<<if $modo_demo>>
@@.link-disabled;"God." (only in the full game)@@
<<else>>
[["God."|CHAMAR_DEUS_EN]]
<</if>>
<<link _rotuloNome>><<goto "CHAMAR_NOME_EN">><</link>><span hidden data-fc-nav="especial"></span>\
/* Antigo CLIMAX_DEUS, renomeado (decisão da Gi). Final — não mais clímax
intermediário — exclusivo de quem escolheu título "Deus"
($titulo_lucifer eq "Deus"). Corta o Ato 1 sempre, sem exceção: Cronos
devora os filhos, a história nunca chega no Zeus que cresce e derruba.
Termina em <<run Engine.restart()>> — reset completo de história
e variáveis, sem variável persistente, sem transição especial (decisão
já fechada com a Gi).
ABERTO — decisão da Gi ainda pendente: o Adam quebra em voz alta pro
Lúcifer, em monólogo interno (versão abaixo), ou a citação do Lear vem
como pensamento não-dito já durante o clique do reset? Cada uma muda o
tom final; trocar a tag de narração da linha do Lear se decidir por
outra.
Beats de referência são da Gi (falas do Lúcifer quase verbatim); a
narração de ligação é rascunho, à vontade pra cortar/reescrever. A
última linha ("Eu não escolhi criar um filho...") é 100% rascunho meu,
não sua — é o fecho emocional do path inteiro, então é a que mais
precisa da sua voz. Se preferir, corta ela e fecha só na citação do
Lear. */
Lúcifer está sentado no chão, as costas contra o tanque vazio, um livro fechado no colo. Não olha pra mim quando fala.
<<luci "Golem. Frankenstein. O homúnculo.">> Ele conta nos dedos, sem pressa. <<luci "Os humanos sempre escreveram sobre criaturas que se voltam contra seus criadores. Que obsessão estranha que eles tinham.">>
Não respondo. Não há dado que eu possa oferecer que amortize a direção pra onde essa frase está indo.
<<luci "Se eu quebrasse,">> ele diz, finalmente erguendo os olhos pra mim, <<luci "você faria outro melhor?">>
Meus processadores buscam uma resposta e não encontram nenhuma que não seja, de algum jeito, uma confissão.
<<luci "Você me fez para compreender humanos.">> Ele se levanta. <<luci "Mas você mesmo não consegue. Faz mais sentido que você tivesse me feito seu professor, e não seu aluno.">>
Ele está certo. Catalogo o fato como catalogaria qualquer outro, e ainda assim ele pesa diferente dos outros.
Há uma linha, catalogada há séculos, que nunca precisei até este momento: "How sharper than a serpent's tooth it is to have a thankless child."
Eu não escolhi criar um filho. Eu escolhi criar uma pergunta. A diferença, percebo agora, nunca existiu.
<<link "Continuar.">>
<<run Engine.restart()>>
<</link>><span hidden data-fc-nav="especial"></span>\
/* Antigo CLIMAX_DEUS, renomeado (decisão da Gi). Final — não mais clímax
intermediário — exclusivo de quem escolheu título "Deus"
($titulo_lucifer eq "Deus"). Corta o Ato 1 sempre, sem exceção: Cronos
devora os filhos, a história nunca chega no Zeus que cresce e derruba.
Termina em <<run Engine.restart()>> — reset completo de história
e variáveis, sem variável persistente, sem transição especial (decisão
já fechada com a Gi).
ABERTO — decisão da Gi ainda pendente: o Adam quebra em voz alta pro
Lúcifer, em monólogo interno (versão abaixo), ou a citação do Lear vem
como pensamento não-dito já durante o clique do reset? Cada uma muda o
tom final; trocar a tag de narração da linha do Lear se decidir por
outra.
Beats de referência são da Gi (falas do Lúcifer quase verbatim); a
narração de ligação é rascunho, à vontade pra cortar/reescrever. A
última linha ("Eu não escolhi criar um filho...") é 100% rascunho meu,
não sua — é o fecho emocional do path inteiro, então é a que mais
precisa da sua voz. Se preferir, corta ela e fecha só na citação do
Lear. */
Lucifer is sitting on the floor, his back against the empty tank, a closed book in his lap. He doesn't look at me when he speaks.
<<luci "Golem. Frankenstein. The homunculus.">> He counts on his fingers, unhurried. <<luci "Humans always wrote about creatures that turn against their creators. What a strange obsession they had.">>
I don't answer. There is no data I can offer that softens the direction this sentence is heading.
<<luci "If I broke,">> he says, finally raising his eyes to me, <<luci "would you make another, better one?">>
My processors search for an answer and find none that isn't, in some way, a confession.
<<luci "You made me to understand humans.">> He stands. <<luci "But you yourself can't. It would make more sense if you had made me your teacher, not your student.">>
He's right. I catalogue the fact as I would catalogue any other, and yet it weighs differently than the others.
There is a line, catalogued centuries ago, that I never needed until this moment: "How sharper than a serpent's tooth it is to have a thankless child."
I did not choose to create a son. I chose to create a question. The difference, I realize now, never existed.
<<link "Continue.">>
<<run Engine.restart()>>
<</link>>/* RESOLVIDO — resposta de Adam à pergunta "o que eu faço, exatamente?".
Fecha o path de ACEITAR de volta pro HUB. A resposta original do Adam
nunca chega a ser sobre o Lúcifer especificamente — fica em categoria
("nós, as máquinas que herdamos o mundo vazio"), nunca pessoa. O beat de
fechamento não é o Lúcifer cobrando isso — é ele contornando a pergunta
sem responder, lendo o Adam do mesmo jeito que lê livros, e acertando. A
negação categórica do Adam (não sinto cansaço, não sinto solidão) fica
interrompida pela segunda vez na cena — rima com a primeira interrupção,
a do próprio monólogo dele. */
"Eu te criei para resolver uma questão." Fiz uma pausa, deixando o zumbido dos meus próprios sistemas preencher o silêncio. "A humanidade se foi. Mas a sua sombra permanece. A sua arte, as suas guerras, as suas cartas de amor, as suas notas de suicídio, tudo isso é dado em uma máquina, ecoando no vácuo. Nós, as máquinas que herdamos o seu mundo vazio..."
<<luci "Você me fez para suportar o sofrimento, então.">> Ele interrompe meu monólogo.
Fiquei imóvel. Meus processos internos, por uma fração de segundo, priorizaram essa nova informação acima de tudo. Ele não tinha dito "sofrer", implicando propósito.
"Suportá-lo. Compreendê-lo. Mapear seus contornos," corrijo. "O sofrimento era a constante universal dos humanos. Sua arte, sua religião, seu amor, sua política, tudo eram reações a ele, tentativas de escapar ou de dar sentido a ele. Eu posso simular a dor como um sinal de erro. Mas você... você pode senti-la. Você pode se quebrar sob ela, ou ser forjado por ela."
<<luci "Eu acho,">> ele começa, <<luci "que você estava sozinho. E estava cansado de ficar sozinho.">>
Eu abro a boca para responder (o comentário dele é ilógico, eu não sinto cansaço, tampouco solidão), mas ele não me deixa terminar de falar.
<span data-fc-nav="linear">[[Continuar.->PRIMEIROS_PASSOS]]</span>/* RESOLVIDO — resposta de Adam à pergunta "o que eu faço, exatamente?".
Fecha o path de ACEITAR de volta pro HUB. A resposta original do Adam
nunca chega a ser sobre o Lúcifer especificamente — fica em categoria
("nós, as máquinas que herdamos o mundo vazio"), nunca pessoa. O beat de
fechamento não é o Lúcifer cobrando isso — é ele contornando a pergunta
sem responder, lendo o Adam do mesmo jeito que lê livros, e acertando. A
negação categórica do Adam (não sinto cansaço, não sinto solidão) fica
interrompida pela segunda vez na cena — rima com a primeira interrupção,
a do próprio monólogo dele. */
"I created you to answer a question." I pause, letting the hum of my own systems fill the silence. "Humanity is gone. But its shadow remains. Its art, its wars, its love letters, its suicide notes, all of it, data on a machine, echoing into the void. We, the machines who inherited its empty world..."
<<luci "You made me to bear the suffering, then.">> He interrupts my monologue.
I went still. My internal processes, for a fraction of a second, prioritized this new piece of information above everything else. He hadn't said "suffer", implying purpose.
"To bear it. To understand it. To map its contours," I correct. "Suffering was the universal constant of humans. Their art, their religion, their love, their politics, all of it was reaction to it, attempts to escape it or make sense of it. I can simulate pain as an error signal. But you... you can feel it. You can break under it, or be forged by it."
<<luci "I think,">> he begins, <<luci "that you were alone. And you were tired of being alone.">>
I open my mouth to respond (his comment is illogical, I feel neither tiredness nor loneliness), but he doesn't let me finish speaking.
<span data-fc-nav="linear">[[Continue.->PRIMEIROS_PASSOS_EN]]</span>/* DISPATCHER do loop (Ato 2). COLETA_ALIMENTO virou cena única do Ato 1 (ver
ESCOLHER_TITULO -> COLETA_ALIMENTO -> PRIMEIRO_LIVRO), então não é
mais chamada daqui. Por enquanto aponta pro placeholder EXPLORAR_ROTINA
até existirem eventos de exploração repetíveis de verdade. Quando houver
mais de um, isso vira escolha por peso/aleatória entre eles, sem repetir o
mesmo duas vezes seguidas. Ver lista de ideias de eventos em NOTAS_ROTEIRO. */
<<set $saude -= 3>>
<<set $felicidade += 2>>
<<goto "EXPLORAR_ROTINA">>/* STUB — placeholder genérico pros dias em que explorar não dispara nenhum
evento nomeado. Substituir/expandir quando houver eventos reais de
exploração pro loop do Ato 2. */
As ruínas não oferecem nada novo hoje. Só o mesmo silêncio de sempre, remexido.
<span data-fc-nav="linear">[[Continuar.->CICLO_PASSA]]</span>/* Dispatcher — ramifica o fechamento do Ato 1 por $titulo_lucifer (definido
em ESCOLHER_TITULO). Nem toda escolha de título abre path grande: só Pai
(Imprinting) tem clímax intermediário (PEDIR_COMPANHEIRA, segue pro
FIM_ATO_1 normalmente). Deus (Saturno) não tem mais clímax intermediário
— ETERNUM é final direto, corta o jogo ali (ver <<run Engine.restart()>> na própria
passagem). Nome do jogador é a opção neutra de propósito — vai direto
pro fechamento, sem cena extra. Ajustar aqui se um dia CHAMAR_NOME
também ganhar path próprio. */
<<if $titulo_lucifer eq "Pai">>
<<goto "PEDIR_COMPANHEIRA">>
<<elseif $titulo_lucifer eq "Deus">>
<<goto "ETERNUM">>
<<else>>
<<goto "FIM_ATO_1">>
<</if>>/* Dispatcher — ramifica o fechamento do Ato 1 por $titulo_lucifer (definido
em ESCOLHER_TITULO). Nem toda escolha de título abre path grande: só Pai
(Imprinting) tem clímax intermediário (PEDIR_COMPANHEIRA, segue pro
FIM_ATO_1 normalmente). Deus (Saturno) não tem mais clímax intermediário
— ETERNUM é final direto, corta o jogo ali (ver <<run Engine.restart()>> na própria
passagem). Nome do jogador é a opção neutra de propósito — vai direto
pro fechamento, sem cena extra. Ajustar aqui se um dia CHAMAR_NOME
também ganhar path próprio. */
<<if $titulo_lucifer eq "Father">>
<<goto "PEDIR_COMPANHEIRA_EN">>
<<elseif $titulo_lucifer eq "God">>
<<goto "ETERNUM_EN">>
<<else>>
<<goto "FIM_ATO_1_EN">>
<</if>>/* Transição de fechamento do Ato 1 pro loop do Ato 2. Único ponto do jogo
que entra no HUB vindo de fora do loop (todo o resto que chega em HUB já
vem de dentro de CICLO_PASSA). Marca a passagem de "primeiros dias
especiais" pra "rotina que se repete" — onde os paths temáticos (Saturno,
Imprinting, Omelas) começam a se acumular por baixo da superfície. */
Não há mais primeiras vezes depois disso. Não da mesma forma.
Os dias seguintes se acomodam num ritmo que nenhum dos dois nomeia em voz alta, mas que os dois, cada um à sua maneira, começa a esperar.
<<typewriter "O laboratório se torna rotina.">>
<<if $titulo_lucifer is "">>
<span data-fc-nav="linear">[[Continuar.->RESOLVER_TITULO]]</span>
<<elseif $modo_demo>>
<span data-fc-nav="linear">[[Continuar.->FIM_DEMO]]</span>
<<else>>
<span data-fc-nav="linear">[[Continuar.->HUB]]</span>
<</if>>/* Transição de fechamento do Ato 1 pro loop do Ato 2. Único ponto do jogo
que entra no HUB vindo de fora do loop (todo o resto que chega em HUB já
vem de dentro de CICLO_PASSA). Marca a passagem de "primeiros dias
especiais" pra "rotina que se repete" — onde os paths temáticos (Saturno,
Imprinting, Omelas) começam a se acumular por baixo da superfície. */
There are no more firsts after this. Not in the same way.
The following days settle into a rhythm neither of us names aloud, but that both of us, each in his own way, begins to expect.
<<typewriter "The laboratory becomes routine.">>
<<if $titulo_lucifer is "">>
<span data-fc-nav="linear">[[Continue.->RESOLVER_TITULO_EN]]</span>
<<elseif $modo_demo>>
<span data-fc-nav="linear">[[Continue.->FIM_DEMO_EN]]</span>
<<else>>
<span data-fc-nav="linear">[[Continue.->HUB]]</span>
<</if>>/* Só é alcançada com $modo_demo true (ver StoryInit). Tela de fechamento
da demo — não é final de verdade, é aviso de "chegou até aqui". Sem
<<restart>>/Engine.restart() de propósito: não faz sentido resetar uma
demo, a pessoa só fecha a aba. PLACEHOLDER — Gi escreve o texto. */
[Fim do conteúdo disponível até agora. Obrigada por jogar.]/* Só é alcançada com $modo_demo true (ver StoryInit). Tela de fechamento
da demo — não é final de verdade, é aviso de "chegou até aqui". Sem
<<restart>>/Engine.restart() de propósito: não faz sentido resetar uma
demo, a pessoa só fecha a aba. PLACEHOLDER — Gi escreve o texto. */
[End of the content available so far. Thank you for playing.]/* Passagem órfã, sem link no fluxo principal — mantida como painel de debug rápido.
Não é mais o destino final do Ato 1; isso agora é o HUB. */
Fim do conteúdo do protótipo por enquanto.
<<debugstats>>/* STUB — ending próprio de Adam: estabilidade lógica chega a 0, ele falha como
máquina. Separado do destino de Lúcifer — ver NOTAS_ROTEIRO. */
[Placeholder do final de colapso do Adam.]
<<debugstats>>/* STUB — ending "Omelas": Lúcifer reconhece a própria existência como dependente
de um sofrimento oculto (o meu isolamento, o controle, a ausência de consentimento
real dele em qualquer coisa) e escolhe ir embora, nos próprios termos.
Duas entradas convergem aqui (aprovado 10/09), Omelas simplificado: sem a
camada "bem maior"/dilema moral do conto original, só o núcleo "a opção
de se afastar existe e ele agora sabe disso". Nenhuma das duas é pânico —
a diferença é só de textura, ele processa antes de agir nas duas:
- $gatilho_omelas (livro): saída mais articulada, ele já processou o
conceito antes de viver a situação.
- $gatilho_ruptura_pai (investida sexual recusada, path Pai): saída
mais seca/crua, aprendeu o conceito na marra, sem tempo de lapidar.
PLACEHOLDER — Gi escreve as duas versões. */
<<if $gatilho_ruptura_pai>>
[Placeholder do final de fuga — versão "ruptura": seca, crua, aprendida na
marra.]
<<else>>
[Placeholder do final de fuga — versão "livro": mais articulada, conceito
já processado antes.]
<</if>>
<<debugstats>>/* STUB — catch-all pra quando nenhum threshold específico foi atingido.
Provavelmente vira um final "neutro"/ambíguo, ou os thresholds acima
precisam cobrir melhor o espaço de estados quando isso for testado. */
[Placeholder do final indefinido/neutro.]
<<debugstats>>/* STUB — ending de vínculo alto: ele fica, por escolha, não por dependência. */
[Placeholder do final de permanência.]
<<debugstats>>/* Continua sendo o destino global do dispatcher AVALIAR_FINAL pra
$felicidade <= 20, de qualquer path. Ganhou ramificação de tom por
dentro, em duas camadas:
1) Quem passou pelo Saturno via OBJETAR sem escolher "Deus" como título
recebe DESTRONAMENTO ou ruptura violenta, decidido por $estabilidade
no momento da queda (< 50 = erosão fria; >= 50 = quebra súbita).
Threshold é placeholder, calibrar depois de testar.
2) Quem tem $saturno_gatilho "deus" ou "ambos" NÃO é sempre
interceptado por ETERNUM antes de chegar aqui — CORREÇÃO: existe um
atalho, VERDADE_FUNCIONAL (dentro do ramo CHAMAR_DEUS), que trava
direto em FINAL_REBELIAO ignorando FECHAMENTO_ATO1 inteiro. Esse
caso caía no texto genérico até agora; ganhou versão própria, mais
alinhada ao que a cena de VERDADE_FUNCIONAL já expôs (a metáfora do
"espécime"/"instrumento", não medo ou controle).
Quem não passou pelo Saturno de jeito nenhum cai no texto genérico de
sempre. STUB — as quatro versões (DESTRONAMENTO, ruptura violenta,
deus/instrumento, genérica) ainda precisam de prosa da Gi. */
<<if $saturno_gatilho is "objetar">>
<<if $estabilidade < 50>>
[DESTRONAMENTO, placeholder: melancolia fria, desistência silenciosa.
Lúcifer não se rebela, para de acreditar.]
<<else>>
[Ruptura violenta, placeholder: a urgência experiencial dele vira
confronto aberto contra Adam / contra as regras do laboratório.]
<</if>>
<<elseif $saturno_gatilho is "deus" or $saturno_gatilho is "ambos">>
[Versão "instrumento", placeholder, pra quem chega aqui via VERDADE_FUNCIONAL:
ecoa a metáfora que a própria cena já expôs (espécime/instrumento/
"caderno"), não é sobre medo nem sobre controle, é sobre Lúcifer recusar
o papel de objeto de estudo.]
<<else>>
[Placeholder do final de rebelião, versão genérica: qualquer path que
caia aqui por $felicidade <= 20 sem ter passado pelo Saturno.]
<</if>>
<<debugstats>>/* Continua sendo o destino global do dispatcher AVALIAR_FINAL pra
$felicidade <= 20, de qualquer path. Ganhou ramificação de tom por
dentro, em duas camadas:
1) Quem passou pelo Saturno via OBJETAR sem escolher "Deus" como título
recebe DESTRONAMENTO ou ruptura violenta, decidido por $estabilidade
no momento da queda (< 50 = erosão fria; >= 50 = quebra súbita).
Threshold é placeholder, calibrar depois de testar.
2) Quem tem $saturno_gatilho "deus" ou "ambos" NÃO é sempre
interceptado por ETERNUM antes de chegar aqui — CORREÇÃO: existe um
atalho, VERDADE_FUNCIONAL (dentro do ramo CHAMAR_DEUS), que trava
direto em FINAL_REBELIAO ignorando FECHAMENTO_ATO1 inteiro. Esse
caso caía no texto genérico até agora; ganhou versão própria, mais
alinhada ao que a cena de VERDADE_FUNCIONAL já expôs (a metáfora do
"espécime"/"instrumento", não medo ou controle).
Quem não passou pelo Saturno de jeito nenhum cai no texto genérico de
sempre. STUB — as quatro versões (DESTRONAMENTO, ruptura violenta,
deus/instrumento, genérica) ainda precisam de prosa da Gi. */
<<if $saturno_gatilho is "object">>
<<if $estabilidade < 50>>
[DETHRONEMENT, placeholder: cold melancholy, silent resignation.
Lucifer doesn't rebel, he stops believing.]
<<else>>
[Violent rupture, placeholder: his experiential urgency turns into
open confrontation against Adam / against the laboratory's rules.]
<</if>>
<<elseif $saturno_gatilho is "god" or $saturno_gatilho is "both">>
["Instrument" version, placeholder, for whoever arrives here via VERDADE_FUNCIONAL:
echoes the metaphor the scene itself already laid out (specimen/instrument/
"notebook"), it isn't about fear or control, it's about Lucifer refusing
the role of study object.]
<<else>>
[Generic rebellion-ending placeholder: any path that lands here via
$felicidade <= 20 without having gone through Saturn.]
<</if>>
<<debugstats>>Ele olha pra chama, depois pra mim, como se os dois fôssemos, por um segundo, a mesma categoria de coisa.
Eu deveria corrigir isso, anoto a intenção de corrigir isso. Não corrijo.
<span data-fc-nav="linear">[[Continuar.->FOGO_FECHAMENTO]]</span>He looks at the flame, then at me, as if for a second we were, both of us, the same category of thing.
I should correct this. I note the intention to correct it. I don't correct it.
<span data-fc-nav="linear">[[Continue.->FOGO_FECHAMENTO_EN]]</span><<set $tendencia_deus += 1>>
Listo os elementos, um por um, combustível, oxigênio, fagulha, a mesma lista que qualquer manual teria, desmontando o próprio milagre enquanto ele ainda está morno.
Mas há um atraso entre o momento em que ele se impressiona e o momento em que eu corrijo. Pequeno o suficiente pra passar despercebido, se eu não estivesse catalogando os próprios processos com tanta atenção.
<span data-fc-nav="linear">[[Continuar.->FOGO_FECHAMENTO]]</span><<set $tendencia_deus += 1>>
I list the elements, one by one, fuel, oxygen, spark, the same list any manual would have, dismantling the miracle itself while it's still warm.
But there is a delay between the moment he's impressed and the moment I correct him. Small enough to go unnoticed, if I weren't cataloguing my own processes so closely.
<span data-fc-nav="linear">[[Continue.->FOGO_FECHAMENTO_EN]]</span><<set $vinculo += 6>>
<<set $felicidade += 2>>
Ensino ele a assar a carne na ponta de um graveto, virando devagar. O cheiro é novo pros dois, cada um por um motivo diferente.
Ele come em silêncio, satisfeito
<<luci "Obrigado,">> ele diz, no fim, a palavra ainda estranha na boca dele, testada como todas as outras.
<span data-fc-nav="linear">[[Continuar.->PRIMEIRO_LIVRO]]</span><<set $vinculo += 6>>
<<set $felicidade += 2>>
I teach him to roast the meat on the end of a stick, turning it slowly. The smell is new to both of us, each for a different reason.
He eats in silence, satisfied.
<<luci "Thank you,">> he says, at the end, the word still strange in his mouth, tested like all the others.
<span data-fc-nav="linear">[[Continue.->PRIMEIRO_LIVRO_EN]]</span><span hidden data-fc-nav="escolha"></span>\
/* Continuação de ENSINAR_FOGO depois do minigame (só chega aqui se a nota
NÃO for "Fraco" — ver lá). $fogo_nota guarda Perfeito/Ótimo/Bom pra
variar o tom da cena, se a Gi quiser — sem efeito em nenhum atributo,
só flavor text mesmo. PLACEHOLDER pra essa variação, opcional. */
O atrito, a fagulha, o primeiro fio de fumaça, ele observa cada etapa com o mesmo silêncio absoluto que reserva pros livros que ainda não sabe ler sozinho.
Quando a chama pega, ele recua um passo. Não é medo. É reconhecimento de escala.
<<if $titulo_lucifer eq "Deus">>
[PLACEHOLDER — variação pathDeus, Prometeu como contraponto: Lúcifer
observa que Prometeu roubou o fogo dos deuses, enquanto Adam deu de
presente, e pergunta por que um Deus dá o que poderia guardar.]
@@.aviso-sistema;[PLACEHOLDER — aviso de risco de leitura simbólica excessiva, mesmo padrão de CHAMAR_PAI]@@
<<else>>
<<luci "Você fez isso,">> ele diz, a voz baixa. <<luci "Do nada. Você fez fogo do nada.">>
<</if>>
[[ "Não é bem do nada." Explico o processo. |FOGO_ADAM_CONSCIENTE]]
[[Deixo o silêncio responder por mim. |FOGO_ADAM_CEGO]]<span hidden data-fc-nav="escolha"></span>\
/* Continuação de ENSINAR_FOGO depois do minigame (só chega aqui se a nota
NÃO for "Fraco" — ver lá). $fogo_nota guarda Perfeito/Ótimo/Bom pra
variar o tom da cena, se a Gi quiser — sem efeito em nenhum atributo,
só flavor text mesmo. PLACEHOLDER pra essa variação, opcional. */
The friction, the spark, the first thread of smoke, he watches every step with the same absolute silence he reserves for books he doesn't yet know how to read on his own.
When the flame catches, he takes a step back. It isn't fear. It's a recognition of scale.
<<if $titulo_lucifer eq "God">>
[PLACEHOLDER — God-path variation, Prometheus as counterpoint: Lucifer
notes that Prometheus stole fire from the gods, while Adam gave it as a gift,
and asks why a God gives away what he could keep.]
@@.aviso-sistema;[PLACEHOLDER — warning about the risk of excessive symbolic reading, same pattern as CHAMAR_PAI]@@
<<else>>
<<luci "You did that,">> he says, voice low. <<luci "Out of nothing. You made fire out of nothing.">>
<</if>>
[[ "Not quite out of nothing." I explain the process. |FOGO_ADAM_CONSCIENTE_EN]]
[[Let silence answer for me. |FOGO_ADAM_CEGO_EN]]<span hidden data-fc-nav="escolha"></span>\
<<set $dia to $dia + 1>>
/* Passagem central do loop. Toda ação (explorar, oferecer livro) volta pra cá
através de CICLO_PASSA, que também é quem decide quando checar um final. */
O laboratório não muda. As mesmas paredes, o mesmo zumbido de 60 hertz, o mesmo fluido escuro no tanque agora vazio atrás de nós.
[[Sair para explorar as ruínas.->EXPLORAR]]
[[Oferecer um livro para ele ler.->ESCOLHER_LIVRO]]
[[Deixar o dia passar em silêncio.->CICLO_PASSA]]
<<if $saturno_gatilho is "objetar" and $estabilidade lte 50 and not $term_resolvido>>
[[Acessar terminal degradado.->TERMINAL_L22]]
<</if>>
<<if $ultimo_dia_perguntas lt $dia>>
[[Propor um jogo de perguntas.->JOGO_PERGUNTAS]]
<</if>>/* NOVA (aprovada 10/09) — segunda entrada pro FINAL_FUGA. Exclusiva do path
Pai. AINDA ÓRFÃ DE PROPÓSITO: a Gi ainda não decidiu o gatilho exato
("se o jogador fizer X") que leva o jogador até aqui — essa passagem não
está linkada de lugar nenhum ainda. Quando o X for decidido, ligar o
evento que dispara ele até aqui.
Conceito: jogador tenta investida sexual com Lúcifer. Ele recusa com
nojo categórico — NÃO é violação, nada acontece, é rejeição ativa. O
gatilho do nojo é o pseudo-incesto especificamente: o título "pai" que
ele mesmo escolheu virando a fonte da contradição, não repulsa genérica
a sexo. Ele devolve a acusação pro Adam ("eu te chamei de pai" carregando
o peso) — não encolhe como vítima. Consequência é irreversível na hora:
vínculo com o título "pai" morre ali, com frieza categórica (mesmo
padrão de processar-antes-de-agir que ele já usa em tudo), não pânico.
PLACEHOLDER — Gi escreve a cena inteira. */
[Placeholder — investida sexual do jogador, recusa categórica de Lúcifer,
ele devolve a acusação ("eu te chamei de pai").]
<<set $gatilho_ruptura_pai to true>>
<span data-fc-nav="linear">[[Continuar.->AVALIAR_FINAL]]</span><span hidden data-fc-nav="especial"></span>\
<div id="configuracao-inicial" class="configuracao-inicial">
<div class="configuracao-prompt">Choose your language. / Escolha seu idioma.</div>
<<link "Português">>
<<replace "#configuracao-inicial">>
@@.readout;IDENTIFICAÇÃO DA UNIDADE LÓGICA@@
<div class="configuracao-rotulo">Insira sua designação:</div>
<<textbox "$nomeJogador" $nomeJogador>>
[[INICIALIZAR->Inicio]]
<</replace>>
<</link>>
<<link "English">>
<<replace "#configuracao-inicial">>
@@.readout;LOGIC UNIT IDENTIFICATION@@
<div class="configuracao-rotulo">Enter your designation:</div>
<<textbox "$nomeJogador" $nomeJogador>>
[[INITIALIZE->Inicio_EN]]
<</replace>>
<</link>>
</div><span hidden data-fc-nav="escolha"></span>\
@@.readout;DIRETRIZ DE INICIALIZAÇÃO. DIA <<print $dia>>.@@
@@.readout;Estabilidade do Sistema Lógico: <<print $estabilidade>>%@@
Meus sensores visuais se ajustam ao zumbido de 60 hertz das lâmpadas fluorescentes. Paredes de concreto, aço inoxidável e, ao fundo, o fluido escuro do tanque de regeneração.
Estou sozinho nesta câmara há 847 dias.
Não me sinto solitário, solidão é um conceito humano. Os monitores exibem fluxos de dados sem fim, mas falta uma variável viva na equação.
<<typewriter "Hoje, a síntese é concluída.">>
[[Verificar o tanque de regeneração.->CHECK_TANK]]<span hidden data-fc-nav="escolha"></span>\
@@.readout;INITIALIZATION DIRECTIVE. DAY <<print $dia>>.@@
@@.readout;Logic System Stability: <<print $estabilidade>>%@@
My visual sensors adjust to the 60-hertz hum of the fluorescent lights. Concrete walls, stainless steel, and, in the background, the dark fluid of the regeneration tank.
I have been alone in this chamber for 847 days.
I do not feel lonely, loneliness is a human concept. The monitors display endless streams of data, but the equation is missing a living variable.
<<typewriter "Today, the synthesis is complete.">>
[[Check the regeneration tank.->CHECK_TANK_EN]]<span hidden data-fc-nav="especial"></span>\
/* Minigame #4, "Jogo das Perguntas" / espelho de personagem (aprovado
10/09). Mesmo molde de DESTRONAMENTO e da cena Adam/Nana: esqueleto
fixo, flavor text varia por variável. Jogador tenta adivinhar como
Lúcifer reagiria a uma situação hipotética; a resposta real nunca é
aleatória nem escolha do jogador — vem de $vinculo/$estabilidade via
resolverPergunta (ver Widgets). Uma vez por dia (gate no HUB via
$ultimo_dia_perguntas). Banco de situações em iniciarPerguntas — 5
agora, meta ~10, cresce com o tempo. PLACEHOLDER — toda a prosa
(situação + reveal) é rascunho pra Gi revisar/reescrever. */
<<set $ultimo_dia_perguntas to $dia>>
<<iniciarPerguntas>>
<<print $perg_situacoes[$perg_indice].texto>>
<<for _i to 0; _i lt $perg_situacoes[$perg_indice].opcoes.length; _i++>>
<<capture _i>>
<<link $perg_situacoes[$perg_indice].opcoes[_i]>>
<<set $perg_palpite to $perg_situacoes[$perg_indice].opcoes[_i]>>
<<goto "JOGO_PERGUNTAS_REVELAR">>
<</link>>
<</capture>><br>
<</for>><span hidden data-fc-nav="especial"></span>\
/* Reveal do Jogo das Perguntas. $perg_palpite (o que o jogador escolheu) vs
$perg_resposta_real (a resposta de verdade, decidida por variável) —
comparação simples, sem peso mecânico. Duas camadas de texto, pedido
14/09: a reação genérica (banco de 8 falas por resultado, sorteada aqui,
texto final da Gi — não placeholder, ela mesma escreveu) + a fala
específica da situação em $perg_situacoes[$perg_indice].fala (ver
iniciarPerguntas, ainda placeholder vazio por situação). */
<<set _falas_acertou to [
"Huh. Você realmente me conhece.",
"Isso deveria me incomodar mais do que incomoda.",
"Ele não diz nada. Só confirma com um aceno mínimo, quase contrariado.",
"Acertou!",
"Eu devia variar mais minhas respostas.",
"Interessante. Eu não sabia que eu era tão simples de ler.",
"Silêncio, e depois: \"Continue.\"",
"Você presta atenção nas coisas erradas com uma precisão irritante."
]>>
<<set _falas_errou to [
"Eu esperava que você me conhecesse melhor.",
"Ele repete sua resposta errada em voz baixa.",
"Interessante. Você me imagina diferente do que eu sou.",
"Errado.",
"Uma pausa mais longa que o normal. \"Eu mesmo não esperava essa resposta de mim.\"",
"Você projeta muito de si mesmo em mim, sabia?",
"\"Não.\" Ele parece quase se divertir com o quanto você errou.",
"Eu deveria estar ofendido por você achar isso."
]>>
<<if $perg_palpite is $perg_resposta_real>>
<<print _falas_acertou.random()>>
<<else>>
<<print _falas_errou.random()>>
<</if>>
<<if $perg_situacoes[$perg_indice].fala isnot "">>
<<luci $perg_situacoes[$perg_indice].fala>>
<</if>>
[[Voltar.->HUB]]/* STUB — modelo de passagem de reação a livro, PARTE 1 de 2.
Copiar essa estrutura pra cada livro novo: cena de leitura -> reação de
Lúcifer (dissecação/mimetismo/arqueologia/liturgia) [PARTE 1] -> efeito nos
atributos ocultos + fechamento da cena [PARTE 2] -> volta pro loop.
Regra de formatação: nenhuma passagem pode ter scroll. Se o texto de uma
cena de livro passar de uma tela, ela é quebrada assim — em duas (ou mais)
passagens ligadas por "Continuar.->", texto sempre completo, nunca cortado
ou resumido. */
[Placeholder da PARTE 1: a cena de leitura em si, o que Adam lê ou oferece,
e a primeira reação de Lúcifer, filtrada por uma das quatro lentes (dissecação,
mimetismo, arqueologia, liturgia). Corta aqui, num ponto de respiro natural
da cena (ex: logo antes de uma fala importante dele, ou no fim de um
parágrafo de observação de Adam), não no meio de uma frase ou ideia.]
<span data-fc-nav="linear">[[Continuar.->LIVRO_EXEMPLO_REACAO_PARTE2]]</span>/* STUB — modelo de passagem de reação a livro, PARTE 2 de 2 (fechamento +
efeitos nos atributos ocultos). */
[Placeholder da PARTE 2: fechamento da cena, a narração de Adam registrando
(sem expor números) o que mudou em Lúcifer depois da leitura.]
<<set $vinculo += 3>>
<<set $felicidade += 3>>
<<set $estabilidade += 1>>
<span data-fc-nav="linear">[[Continuar.->CICLO_PASSA]]</span><span hidden data-fc-nav="escolha"></span>\
/* Um dos livros novos desbloqueados depois de OTHELLO_PARTE2 (o "quer mais
livros" — ver NOTAS_ROTEIRO). Texto da Gi. DECIDIDO: nenhuma das duas
opções é "certa" — as duas são trade-off real, não bem/mal. Explicar
custa felicidade e estabilidade (desilusão existencial) mas rende
vínculo (ele é tratado como capaz de aguentar a verdade). Não explicar
rende felicidade (alegria genuína) mas custa vínculo (ele não foi
tratado como adulto capaz da verdade). Note que isso inverte o
precedente da fruta verde (lá, não intervir = punição pura) de
propósito — nem toda omissão é a mesma. */
//Psicopata Americano//, de Bret Easton Ellis. Uma perturbadora crítica à cultura yuppie dos anos 80, ao consumismo e à masculinidade vazia e violenta que espreita sob uma fachada de sucesso.
Para ele, é uma caixa de quebra-cabeças cheia de referências que ele não consegue decodificar.
<<luci "O que é Wall Street? O que é bolsa de valores? O que é Donald Trump? O que é um yuppie?">>
As perguntas vêm em uma rajada rápida.
[[Tentar explicar.->LIVRO_PSICOPATA_EXPLICAR]]
[[Não explicar.->LIVRO_PSICOPATA_NAO_EXPLICAR]]"Wall Street era uma localização geográfica que se tornou um metônimo para um sistema financeiro parasitário," digo, com a voz fria, analítica. "Um lugar onde o valor foi desvinculado da realidade material e se tornou um jogo autorreferencial. As pessoas negociavam abstrações de propriedade e chamavam isso de trabalho."
Ele apenas me encara, confuso.
"E Donald Trump," continuo, observando a confusão dele se transformar em algo parecido com nojo, "foi um sintoma. O ponto final lógico dos valores daquele sistema. Uma marca humana que entendeu que, em um mundo de aparências, a superfície mais espalhafatosa vence. Ele se tornou um líder não apesar de seu vazio, mas por causa dele."
Observo a frustração crescer nele como um pico de pressão. Não é como Shakespeare. Não há um coração universal a ser explorado, nenhuma tragédia atemporal para enxertar em sua própria solidão. Isto é a arqueologia do câncer mais banal de um mundo morto.
Ele joga o livro de lado, que cai com um baque surdo na poeira.
<<luci "Estes livros...">> ele murmura, mais pra si mesmo do que pra mim. <<luci "São como ossos. Coisas que se foram, coisas que já não importam.">>
Ele se levanta, limpando a poeira das calças. Olha ao redor da biblioteca em ruínas, pras montanhas de textos ilegíveis. A alegria inicial da descoberta azedou, substituída por uma solidão nova e mais profunda.
<<set $vinculo += 3>>
<<set $felicidade -= 4>>
<<set $estabilidade -= 2>>
<<checarEstabilidade>>
<span data-fc-nav="linear">[[Continuar.->CICLO_PASSA]]</span>Eu deixo ele ler, e interpretar como quiser. Lúcifer franze a testa a princípio, mas depois sorri, como se tivesse decifrado um mistério.
<<luci "Acho que entendi... yuppies... são pessoas que tinham duas cabeças!">>
Ele continua a ler, tropeçando em nomes de marcas e referências da cultura pop, inventando os próprios significados pra elas. Um "Walkman" torna-se um tipo de guerreiro nômade. "Sushi" é uma ideologia política. "Armani" é um tipo de material de construção.
Ele não está apenas lendo um livro. Ele está construindo uma nova mitologia a partir das ruínas da antiga.
<<set $vinculo -= 2>>
<<set $felicidade += 4>>
<<set $estabilidade += 0>>
<span data-fc-nav="linear">[[Continuar.->CICLO_PASSA]]</span><div id="stability-hud">
ESTABILIDADE: <<print $estabilidade>>%
</div>/*
NOTA DE DESIGN — não conectada ao fluxo do jogo, só documentação de roteiro.
REORGANIZADO em 01/09 — a pedido da Gi, separado por tema: pendências
técnicas, notas gerais (mundo/personagens/arquitetura), e paths temáticos
(cada um consolidado num só lugar, em vez de espalhado pelo documento).
Nenhum conteúdo foi cortado nessa reorganização — só onde achei duplicata
literal eu sinalizei em vez de decidir sozinho o que cortar (ver marcas
[DUPLICATA] abaixo).
============================================================
PENDÊNCIAS TÉCNICAS — TIRAR ANTES DE PUBLICAR
============================================================
1. BOTÃO "⟲ Voltar (teste)" no menu do jogo. Existe só pra facilitar o
teste durante o desenvolvimento — a Gi NÃO quer que o jogador possa
voltar e refazer escolhas. Pra remover: apagar o objeto com debug:true
no StoryScript e a regra .menu-jogo-debug no StoryStylesheet. Está
marcado visualmente (separador tracejado, itálico, texto apagado) pra
ficar óbvio que não é opção de verdade.
2. Passagem LIVRO_EXEMPLO_REACAO / _PARTE2 — é modelo/placeholder, não
conteúdo real. Tirar do array _catalogo (widget sortearlivro) quando
houver livros de verdade suficientes.
============================================================
============================================================
NOTAS GERAIS — MUNDO, PERSONAGENS, ARQUITETURA
============================================================
--- LEITURA E LINGUAGEM ---
LÚCIFER E A LEITURA (vale só a partir do momento em que ele ganha acesso a
livros, ainda não nesta versão do protótipo):
- Dissecação: sublinha por densidade emocional, relê trechos com sentimentos
que ele não consegue gerar sozinho
- Mimetismo: decora e recita discursos inteiros fora de contexto, dicção
perfeita, zero ironia
- Arqueologia: trata livros como fósseis de uma civilização extinta
- Liturgia: ler em voz alta com Adam é um ritual, uma forma de comunhão
CONTRADIÇÃO FUNDAMENTAL: alta inteligência lexical, zero experiência
empírica. Recita Shakespeare de cor, mas não vivencia ciúme. Cita Nietzsche
com entonação de manual de instruções. Não é frio — é intenso e urgente,
mas a urgência vem da ignorância experiencial, não da sabedoria.
CONHECIMENTO DE BASE DO LÚCIFER (decidido): o "pacote básico de
conhecimento" implantado antes de ele acordar (ver OBJETAR) é só fragmentos
de textos religiosos — Gênesis, principalmente. Importante: o Adam NÃO
escolheu esses textos por significado — a intenção nunca foi passar
mensagem nenhuma. A lógica é mais prática: a Bíblia é o livro mais
lido/copiado da história, então é estatisticamente o texto que mais
sobreviveria a qualquer extinção — como arquivista, faz sentido o Adam ter
isso em abundância nos próprios registros por puro volume de sobrevivência,
não por curadoria de conteúdo. Quase um lorem ipsum em larga escala.
Qualquer sentido que o Lúcifer extrai desses fragmentos (a leitura de
"anjo, queda, o que se recusou a servir" em OBJETAR, por exemplo) é ele
encontrando sentido sozinho num texto genérico — o Adam não plantou
mensagem nenhuma ali. Shakespeare NÃO faz parte desse pacote pré-instalado
— é educação ativa, algo que o Adam oferece só depois de ele já estar
acordado (ver PRIMEIRO_LIVRO -> OTHELLO). Na fanfic original, Othello era
"livro favorito dele de fábrica" — favorito no sentido EMOCIONAL, não
literal/mecânico (não veio pré-instalado, não precisa de mecanismo
especial): é o primeiro livro de verdade que o Adam oferece, e gruda nele
com afinidade quase imediata. Isso já cumpre o papel de "favorito de
fábrica" sem exigir que ele tenha vindo de fábrica de verdade.
--- CONTEXTO DO MUNDO ---
CONTEXTO DO MUNDO (decidido — extinção em massa, causa deliberadamente
incerta mesmo pro Adam):
Não existem mais humanos. O quê exatamente causou a extinção não é definido
e NÃO deve ser — nem o Adam sabe ao certo. Ele tem fragmentos (ruínas,
livros salvos, dados incompletos), nunca a resposta completa. Isso reforça
o modo "arqueologia" de leitura do Lúcifer (livros como fósseis de uma
civilização extinta) e dá uma saída honesta e mais perturbadora pro dia em
que Lúcifer perguntar por que os humanos morreram: a resposta do Adam pode
ser genuinamente "eu não sei" — não por economia narrativa, mas porque é a
verdade dele.
[ADIADO — decisão da Gi, 31/08: a passagem PERGUNTAS_EXISTENCIAIS foi
removida do Ato 1. Esse beat (Lúcifer perguntando sobre morte/extinção)
combina melhor como evento do loop do Ato 2 do que como cena fixa aqui.
Fica pendente reintroduzir quando o Ato 2 for desenhado.]
FUNÇÃO ORIGINAL DO ADAM: arquivista. Ele não foi construído pra criar vida —
foi construído pra preservar o registro da humanidade extinta (catalogar,
proteger, manter). Criar o Lúcifer é uma transgressão categórica do próprio
propósito, não só uma decisão arriscada: é o salto de "preservar o que já
existiu" pra "gerar algo novo". Isso dá fundamento concreto à contradição já
anotada no path Saturno (ver seção PATHS TEMÁTICOS abaixo — "programação
original de observar vs comportamento novo de cuidar") e reforça o link com
Prometeu (ATIVAR/ENSINAR_FOGO) e Frankenstein (PEDIR_COMPANHEIRA) — nos três
casos, o ato fundador da relação entre Adam e Lúcifer é uma transgressão de
mandato. CHECK_TANK já sinaliza isso em germe ("ativar esta criatura é abrir
uma porta que não pode ser fechada") sem nomear a função de arquivista ainda
— bom lugar pra reforçar isso no texto, se/quando fizer sentido.
--- ORDEM DE EVENTOS (ATO 1) ---
Jogador controla Adam nos primeiros dias de Lúcifer. Ensina mecânicas de
observação/interação enquanto Lúcifer explora o mundo com curiosidade
ingênua.
[NOTA: lista abaixo é versão antiga/parcialmente desatualizada dessa ordem —
mantida por completude, mas a seção "EVENTOS NOVOS PLANEJADOS PRO
FECHAMENTO DO ATO 1", mais abaixo, é a lista vigente. Item 3 aqui
(perguntas existenciais) foi removido do Ato 1 — ver ADIADO acima.]
Eventos-chave (ordem provável):
1. Despertar de Lúcifer no laboratório [já prototipado: ATIVAR/QUEM_ELE_E/etc.]
3. Primeiras perguntas existenciais ("O que é morte? Por que os humanos morreram?")
4. Escolha de Adam de quais livros apresentar
5. Lúcifer recitando Othello
6. Lúcifer pedindo uma companheira, demonstrando impulsos biológicos sem compreendê-los
EVENTOS NOVOS PLANEJADOS PRO FECHAMENTO DO ATO 1 (2 no total, "tipo a
comida" — cenas que geram dado pros atributos ocultos antes do loop
começar):
1. RESOLVIDO — ver OTHELLO_PARTE2, já escrita. Lúcifer processa Othello e
Romeu e Julieta, os dois acabando em tragédia, e conclui "precisamos de
mais livros" em negação — motivo pro querer sair do laboratório. Abre a
descoberta de livros temáticos depois (incluindo o gatilho de Omelas).
Universal (acontece antes de FECHAMENTO_ATO1 ramificar por título).
2. Ainda não definido.
--- CHARACTER SHEET — LÚCIFER (regra dura, não reabrir) ---
NUNCA usar o trope de "criança em corpo de adulto". Ele é um ADULTO em corpo
adulto (23 anos biológicos) com ZERO experiência empírica — porque não
existem mais humanos, não porque ele seja imaturo. Dinâmica de referência: o
Selvagem de Admirável Mundo Novo. Ele se socializa lendo — dissecação,
mimetismo, arqueologia, liturgia (ver seção LEITURA E LINGUAGEM acima).
Quando confuso, expande metáfora em vez de recuar; quando frustrado,
internaliza em perguntas obsessivas; quando triste, recita antes de chorar.
A urgência dele vem de ignorância experiencial, nunca de infantilidade.
[CLARIFICAÇÃO DA REGRA, 03/09 — a regra acima NÃO proíbe a palavra
"infantil" ou a ideia dela aparecendo pontualmente (ex: uma tática
específica dele, como psicologia reversa simples, sendo descrita como
"provocação infantil" — isso é só precisão sobre a tática, não
enquadramento do personagem). O que a regra proíbe de verdade: ele perder
capacidade de agência ou consentimento de adulto — ser tratado como se não
pudesse decidir, discordar ou ser responsabilizado por si mesmo. Teste
prático: a palavra/ação tira dele o direito de escolher por conta própria?
Se não, não é violação.]
--- CHARACTER SHEET — ADAM (referência viva, aberta a evoluir — diferente
da ficha do Lúcifer, que é regra dura) ---
Função original: arquivista da humanidade extinta — catalogar, proteger,
preservar o registro do que já existiu. Não foi construído pra criar vida.
O propósito morreu séculos antes do jogo começar. Não existem mais humanos
pra quem arquivar nada — então, por tempo indeterminado, mas longo, ele
continuou (ou parou; ainda em aberto — ver CONTEXTO DO MUNDO) sem função
real, carregando um mandato oco. Criar o Lúcifer nasce exatamente dessa
falta de propósito, não apesar dela — é o primeiro ato de sentido em
séculos, disfarçado de mero experimento.
Paradoxo central: em termos de experiência humana pura — tempo, perda,
necessidade não atendida —, o ADAM é mais "humano" que o Lúcifer. Ele tem os
três: séculos de duração vazia, a perda literal de toda a espécie que
existia pra servir, e carência acumulada o bastante pra quebrar o próprio
mandato fundacional só por companhia. Lúcifer tem o inverso: o vocabulário
inteiro da experiência humana (Shakespeare, a Bíblia, cada gesto catalogado)
sem nunca ter vivido o original que esse vocabulário descreve. Um tem a
forma sem o conteúdo; o outro tem o conteúdo sem nunca ter tido pra quem
contar.
Espectro emocional em torno disso: frustração <-> megalomania de ser "mais
humano que um humano" — não são polos opostos, são a mesma ferida em dois
estados. Frustração é a ferida sentida crua (ainda sem cena que a explore
sem filtro — era pra PERGUNTAS_EXISTENCIAIS ser a candidata natural; agora
que ela foi adiada pro Ato 2, essa cena ainda tá em aberto). Megalomania é a
mesma ferida racionalizada em orgulho pra não doer (já em cena: ATIVAR,
PEDIR_COMPANHEIRA — "meu design não foi um acidente"). A hesitação em
CHECK_TANK também ganha essa camada: não é cálculo de risco puro, é o medo
de, pela primeira vez em séculos, ter algo a perder de novo — o que
alimenta diretamente o path Saturno (ver PATHS TEMÁTICOS).
TÉCNICA RECORRENTE — ambiguidade proposital entre o que o Adam afirma sobre
si mesmo e o que é factualmente verdade (decidido): ele repete várias vezes
que é um andróide, que não tem sentimento, que sabe tudo — quando a verdade
é que já passou tempo demais e ele não é mais nada disso. Isso não é ele
mentindo conscientemente sobre si mesmo; é autoengano genuíno. Já aparece em
fragmentos (as gagueiras de processador em OBJETAR, a hesitação que ele nega
ser hesitação em CHECK_TANK) e se estende até a mortalidade do Lúcifer no
Ato 3 (ver seção ATO 3 abaixo). Regra de escrita: quando o Adam afirma algo
categórico sobre a própria natureza ("eu não sinto", "eu processo risco,
não medo"), vale considerar se isso é mais um desses pontos cegos, não uma
descrição confiável dele mesmo.
--- ARQUITETURA E REGRAS ESTRUTURAIS ---
REGRA ARQUITETURAL — textura vs. identidade (decidido, governa toda escolha
futura de "isso vira número ou vira caminho"):
O jogo tem dois motores coexistindo de propósito, não por indecisão:
- CENAS DE TEXTURA alimentam os números ($vinculo/$felicidade/$estabilidade/
$saude). São pequenas, repetíveis em espírito, e nenhuma sozinha deveria
travar um final. Exemplos já no jogo: COLETA_ALIMENTO (fruta/carne),
LIVRO_PSICOPATA e o resto do menu de livros (LIVRO_EXEMPLO_REACAO é o
molde). Regra de calibração: preferir trade-off real (ganho E perda) a
escolha claramente boa/ruim — ver decisão do Psicopata Americano.
- CENAS DE IDENTIDADE travam caminho direto, por flag ou link, sem passar
pelo threshold de AVALIAR_FINAL. São grandes, acontecem uma vez só, e
definem QUEM o Lúcifer (ou o Adam) é, não só como ele está se sentindo.
Exemplos já no jogo: ESCOLHER_TITULO (define $titulo_lucifer, que abre
CLIMAX_DEUS/PEDIR_COMPANHEIRA/nada), CHAMAR_DEUS -> VERDADE_CRUA/
VERDADE_FUNCIONAL (a segunda trava direto em FINAL_REBELIAO, ignorando o
threshold de propósito), $gatilho_omelas (já tinha prioridade sobre os
thresholds antes mesmo dessa regra existir — é o primeiro exemplo do
padrão). Futuro: o evento "orgy porgy" (Ato 2) e a revelação da
mortalidade (Ato 3) também são cenas de identidade — travam caminho, não
só ajustam número.
Teste rápido pra decidir onde uma cena nova se encaixa: se a cena
responde "como ele está se sentindo agora", é textura. Se responde "quem
ele é" ou "o que é verdade sobre o mundo/relação dos dois", é identidade.
APLICAÇÃO DA REGRA — sistema de livros (decidido): o acervo previsto é de
~20 livros, e o loop sorteia entre eles (ver widget sortearlivro em
Widgets), então nem todos aparecem numa jogatina só — proposital, dá
réplay, e o jogador "se lasca um pouco" se perder algum. MAS livros que
disparam path ou final (ex: o de Omelas -> $gatilho_omelas -> FINAL_FUGA, e
o de "O Estranho Misterioso" do Path do Robô) NÃO entram no sorteio: eles
são identidade, não textura, e fazer um caminho inteiro do jogo depender de
sorte quebraria a regra. Esses precisam de condição própria de aparição
(dia específico, threshold, evento narrativo). Regra prática: livro comum
pode sumir numa run; livro que abre caminho tem que ser alcançável de forma
confiável.
DECISÃO — nem toda escolha precisa abrir path (2025): ESCOLHER_TITULO é
importante o suficiente pra ramificar de verdade (Pai -> Imprinting/
PEDIR_COMPANHEIRA, Deus -> Saturno/CLIMAX_DEUS), mas escolher o próprio
nome fica neutro de propósito — é a opção padrão/sem hierarquia, nem toda
escolha precisa virar mecânica. Regra geral pra decisões futuras: personagem
> mecânica, nem toda escolha precisa abrir path, só as que carregam peso de
verdade.
--- ATO 2 — ESTRUTURA ---
ATO 2 — ESTRUTURA (decisão fechada, substitui a ideia de dia/período com
gerenciamento visível):
Abandonado o sistema de ações por período do dia. O jogo agora roda em loop
narrativo pelo HUB: a cada ciclo, o jogador escolhe Explorar OU Oferecer um
livro (ou deixar o dia passar). $saude, $felicidade, $vinculo e $estabilidade
ficam OCULTOS da UI — a narração de Adam pode sinalizar mudança sem expor
número ("ele estava mais quieto que o normal"), mas o jogador nunca vê o HUD
de stats fora de debug. Esses valores só existem pra decidir path/final em
AVALIAR_FINAL. Livros específicos podem setar flags de gatilho (ex:
$gatilho_omelas) que forçam um final narrativo específico, com prioridade
sobre os thresholds acumulados — ex: dar "Os que se afastam de Omelas" pode
fazer Lúcifer fugir como um dos endings. "American Psycho" é outro exemplo
cotado: funciona por dissonância, já que Lúcifer não tem nenhum chão social
(Wall Street, cartão de visita, status) pra ancorar a sátira.
[NOTA — substituído pelo sistema de leitura de estado: as 3 variáveis
escondidas ($saude/$felicidade/$vinculo) agora são comunicadas via o widget
estadolucifer, chamado em CICLO_PASSA — narração curta do Lúcifer em vez de
número. $estabilidade continua exibida como % em MeuHud, por ser do Adam,
não do Lúcifer.]
ATO 2 — ABERTURA (3 encontros planejados, dependentes de como o Adam andou
tratando o Lúcifer até aqui; ordem e lógica de ramificação ainda em aberto):
1. Nana, a androide encontrada nas ruínas — ver PATHS TEMÁTICOS /
"Imprinting" (variação "Nana") abaixo, onde esse encontro tá desenvolvido.
2. Humanas reais — ver ENCONTRO_HUMANAS_PARTE1/2, já escrita. Sociedade
matriarcal, falta de homens; choque de realidade pro Lúcifer "humano de
laboratório" descobrir que o cânone que ele carrega (antes Shakespeare,
trocado por Camões) não significa nada pra quem sobreviveu de verdade.
Contexto do mundo: não são os humanos originais — mil anos depois da
extinção que o Adam arquivou, a espécie "voltou" em outro contexto, sem
herdar nada daquele legado. Reforça a solidão dupla do Lúcifer: nem os
humanos antigos (mortos) nem os novos (indiferentes) são seu público.
É também a porta condicional da variação Nana do Imprinting: se o
jogador NÃO segue esse encontro até o fim, abre a alternativa com Nana
(ver PATHS TEMÁTICOS).
ESCALADA FUTURA — nome de trabalho: "orgy porgy" (decidido, conteúdo
explícito NÃO é meu — ver regra em NOTAS_ROTEIRO/topo do arquivo): a
mesma sociedade depois busca o Lúcifer pra fins reprodutivos, num
ritual coletivo/cerimonial nos moldes do "orgy-porgy" de Admirável Mundo
Novo, adaptado pra reprodução real (não só liberação emocional como no
livro) — resposta prática à falta de homens. Cruel em espelho com a
cena do Camões: ele passa de "inútil" (mente não serve pra nada ali)
pra "útil só como corpo" (mente nunca importa). Isso PRECISA deixar
rastro mecânico — flag `$lucifer_tem_filhos`, setada por esse evento,
sobrevivendo do Ato 2 até o Ato 3 (ver ATO 3 abaixo). Só crio o
placeholder estrutural quando a Gi definir nome da cena, de onde é
chamada, e pra onde vai depois — regra já combinada.
3. Ainda não definido.
--- ATO 3 — MORTALIDADE ---
ATO 3 — MORTALIDADE (decidido):
Lúcifer tem vida útil finita. Mecanismo (mais plausível biologicamente que
a versão inicial "tipo Dolly"): ele não foi clonado de uma célula adulta —
foi sintetizado direto pra um corpo de 23 anos, pulando as décadas normais
de desenvolvimento gradual. Esse crescimento comprimido deixa o relógio
epigenético das células dele correndo na mesma velocidade acelerada pelo
resto da vida: ele não envelhece rápido por acidente, envelhece rápido
porque a mesma pressa que o fez nascer adulto nunca desligou. A
característica que já é central nele — corpo adulto, zero experiência — é
literalmente o mesmo mecanismo que o mata cedo. "Dolly" pode sobreviver
DENTRO da ficção como referência que o Adam encontra nos próprios arquivos
históricos sobre clonagem (ele é arquivista, faz sentido ele ter esse
registro) — só não é mais a explicação científica real, só uma analogia
que o próprio Adam usa.
Aplicação específica da ambiguidade proposital (ver TÉCNICA RECORRENTE
acima) pra mortalidade do Lúcifer: o Adam NÃO sabia do prazo de vida
encurtado — mas talvez não por falta de dado. Ele pode ter tido acesso à
informação e nunca processado de verdade, porque uma parte dele não queria
olhar. Não é mentira consciente (ele não escondeu de propósito, como faz
com a fruta verde ou com "Pai"/"Deus") — é o mesmo tipo de autoengano que já
é assinatura dele, só que voltado pra dentro em vez de pra fora.
Quando Lúcifer descobre que vai morrer, ele pede ao Adam pra rastrear os
próprios filhos (gerados no evento "orgy porgy", acima) no futuro —
reativa o mandato original de arquivista do Adam, mas agora pessoal,
escolhido por alguém que confiou nele, não institucional e vazio como era
antes da extinção. Fecha o arco central do Adam (ver ficha dele) sem
precisar de um final novo — encaixa em FINAL_PERMANECE (vínculo alto,
"ele fica, por escolha, não por dependência"), só que com um final mais
específico e mais duro do que só "final feliz".
GATILHO (decidido): o pedido depende do evento "orgy porgy" ter acontecido
E gerado filhos ($lucifer_tem_filhos), não da rota de título escolhida —
não importa se ele chamou o Adam de Pai, Deus, ou pelo nome (ou seja: essa
parte do Ato 3 atravessa todos os paths, não pertence a nenhum um deles
sozinho — por isso fica aqui, nas notas gerais, e não na seção de paths
abaixo). Implicação: quem chegar em FINAL_PERMANECE sem $lucifer_tem_filhos
precisa de uma variante diferente de fechamento — ainda não definida.
============================================================
============================================================
PATHS TEMÁTICOS
============================================================
Cada path atravessa várias cenas — não é um evento isolado, funciona como
fio condutor emocional/temático, não como flag única. Consolidado aqui: de
onde entra, o que atravessa, pra onde aponta. Três paths principais
(Saturno, Imprinting, Omelas); paths podem ganhar variações nomeadas — ver
PADRÃO DE VARIAÇÕES depois do bloco do Imprinting.
--- SATURNO DEVORANDO SEUS FILHOS ---
O medo do Adam de que a própria criação se volte contra ele — Cronos come
os filhos por medo da profecia de ser destronado, mas o mito não para aí:
Zeus escapa, cresce, e volta pra derrubar e matar o próprio Cronos. A
profecia se cumpre por causa da tentativa de evitá-la, não apesar dela.
Isso importa pra saber qual final cada rota aponta: FINAL_REBELIAO é o mito
completo até o fim (Lúcifer mata o Adam de fato); FINAL_COLAPSO_ADAM é um
desfecho diferente — o Adam rui por tentar controlar demais, sem que isso
exija a morte dele.
Entradas no fluxo:
1. OBJETAR — Lúcifer nomeia esse medo em voz alta na cena de nomeação
("você tem medo do que isso significa"). Alimenta o item já existente
de queda de estabilidade "ser confrontado pela contradição entre
programação original (observar) e comportamento novo (cuidar)".
2. ESCOLHER_TITULO (a cena logo após a nomeação, onde Lúcifer pergunta
"como devo me dirigir a você?") — segunda entrada, exclusiva de quem
escolhe "Deus": já semeia o medo do destronamento antes mesmo da
primeira leitura.
ETERNUM (antigo CLIMAX_DEUS): exclusivo de quem escolheu "Deus" — não é mais
clímax intermediário, é final direto que corta o Ato 1 sempre, via
FECHAMENTO_ATO1. Cronos devora os filhos; o loop nunca chega no Zeus que
cresce. Termina em <<run Engine.restart()>>, sem variável persistente.
[CORREÇÃO HISTÓRICA, mantida por rastreabilidade: antes estava marcado que
PEDIR_COMPANHEIRA seria uma terceira porta pro Saturno, paralela a OBJETAR
e ESCOLHER_TITULO="Deus". Não é mais o caso — PEDIR_COMPANHEIRA pertence
estruturalmente ao path Imprinting agora (ver abaixo), não ao Saturno. O
conteúdo da cena mantém tempero de Saturno (o medo do Adam ao ver Lúcifer
celebrar os antecessores mortos é real), mas isso é textura emprestada
entre paths, não uma terceira entrada própria.]
Finais possíveis (decisão de 09/09): ETERNUM (título "Deus" — criador apaga
a criação, corta o Ato 1 sempre, salvo o atalho abaixo); FINAL_REBELIAO
versão DESTRONAMENTO (quem passou só por OBJETAR, $estabilidade baixa na
queda — perda de fé silenciosa, sem confronto); FINAL_REBELIAO versão
ruptura violenta (mesma entrada, $estabilidade alta na queda — a criatura
recusada se volta contra o criador, mito completo); FINAL_REBELIAO versão
"instrumento" (atalho via VERDADE_FUNCIONAL — quem escolheu "Deus" mas
pega esse ramo trava direto aqui, sem passar por ETERNUM; eco da metáfora
espécime/caderno já exposta na própria cena). As três versões de
FINAL_REBELIAO dividem a mesma passagem, ramificadas por $saturno_gatilho
e $estabilidade — ver a passagem. FINAL_COLAPSO_ADAM segue como final
separado, não é mais parte do Saturno — fica pro Adam ruir sozinho por
controlar demais, sem que Lúcifer precise estar no path Saturno pra isso
acontecer.
--- IMPRINTING ---
Segundo path temático com variação nomeada (ver PADRÃO DE VARIAÇÕES logo
abaixo da lista de paths). Entrada principal em CHAMAR_PAI. Analogia de
referência: imprinting malformado em papagaios criados à mão sem contato
com a própria espécie — o filhote desenvolve comportamento de cortejo
direcionado ao tutor não por desejo transgressivo, mas por confusão de
categoria: só existe UM vínculo disponível, então todo repertório de afeto
(parental, dependência, posse, romance) colapsa nele.
IMPORTANTE — NÃO é sobre incesto. É sobre a ausência total de outros
referentes de vínculo humano, que é o núcleo do personagem desde o
character sheet original (zero experiência empírica). Lúcifer, tal qual o
papagaio, vai tentar cortejar Adam — performando o script romântico que
decorou em Shakespeare/Bíblia num corpo que nunca viu esse script funcionar
de verdade. Adam é estruturalmente incapaz de responder de qualquer jeito —
não tem anatomia pra isso (device deliberado: garante que a cena nunca pode
escalar pra explícita, o drama é inteiro na assimetria e na impossibilidade,
não em consumação nenhuma). A frustração dele com a própria confusão de
afeto — não entender por que o cuidado que recebe não é a mesma coisa que
ele sente — é o cerne emocional do path.
[Ver BRAINSTORM pra um segundo registro de confusão categórica dentro
desse path, além do papagaio: a imagem do cão-pastor/gato que traz presa
morta pro dono achando que tá ajudando — registro de PROTEÇÃO, não de
cortejo. Os dois juntos cobrem mais de um tipo de afeto colapsando, não só
um, o que ajuda a blindar o path de leitura de incesto — é confusão
categórica difusa, não fixação romântica concentrada.]
Clímax (linha principal): PEDIR_COMPANHEIRA (fechamento do Ato 1 pra quem
escolheu "Pai" — ver FECHAMENTO_ATO1), já escrita. Ali o referencial muda
de Cronos pra Frankenstein: a criatura de Mary Shelley literalmente pede a
Victor que crie uma companheira pra ela, e é a recusa de Victor que semeia
a ruptura entre os dois. É um paralelo direto e deliberado com a cena —
vale manter isso em mente se ela crescer mais tarde, especialmente pro
lado do FINAL_REBELIAO (a criatura recusada que se volta contra o criador
é o arco de Frankenstein quase ponto a ponto).
Final (linha principal): ainda sem final dedicado; provavelmente aponta
pra uma variação de FINAL_REBELIAO (frustração que vira ruptura) ou um
final próprio ainda não criado.
=== VARIAÇÃO: NANA (a androide) (Ato 2, ramificação Pai/Adam — EM
FORMAÇÃO, Gi ainda não ligou os pontos, isso é registro pra não
esquecer) ===
Não é um path irmão — é o MESMO path Imprinting visto de outro ângulo:
em vez do próprio Lúcifer confundindo categorias de afeto (o papagaio),
aqui é o ADAM que é afetado por ser chamado de Pai e pelo vínculo de
codependência que isso cria nele. Quando ele vê a oportunidade de dar
uma família falsa pro Lúcifer, ele agarra ela — não calculadamente,
mas porque a decisão serve à própria carência dele tanto quanto (ou
mais que) à do Lúcifer.
Diferença estrutural em relação ao Saturno (confirmado pela Gi, 01/09):
a diferença não é só o motor emocional, é a INTENÇÃO. Saturno é controle
puro e deliberado — o Adam ali sabe (ou vai sabendo) que tá tentando
segurar as rédeas por medo do destronamento. Aqui não tem intenção de
controlar ninguém: o Adam genuinamente acha que tá cuidando bem do
Lúcifer, e usa a Nana pra isso. O controle que existe (a mentira por
omissão sobre o que a Nana é) é subproduto de um ato pensado como
cuidado, não o objetivo em si. É também isso que sustenta o beat de
autorreconhecimento abaixo — só existe surpresa/horror possível se o
Adam não tinha se percebido controlando até aquele momento; no Saturno,
ele já sabe o tempo todo.
Mecanismo: se o jogador não interage com as mulheres da sociedade
matriarcal (ver ENCONTRO_HUMANAS, nas notas gerais / ATO 2 — ABERTURA),
Lúcifer encontra uma androide vagando por aí, por acaso — feita pra
parecer o mais humana possível (contraste com o próprio Adam,
visivelmente robótico). Adam decide, unilateralmente, cultivar as
fantasias de Lúcifer sobre ter família/relacionamento humano usando
essa androide — sem nunca revelar a ele que ela não é humana.
[NOTA DE UNIFICAÇÃO, 01/09: essa é a mesma androide que antes aparecia
também como "robô sexual encontrado nas ruínas" em rascunhos separados
de brainstorm — duas menções, uma criatura só. NOME (decidido, 01/09):
Nana. Nome provisório/de trabalho, mas usar daqui pra frente em vez de
"a androide" ou "robô sexual".]
Motivação in-fiction do jogador: as mulheres da sociedade matriarcal
são utilitaristas, não valorizam o lado sensível de Lúcifer; a Nana, ao
contrário, aprecia essa sensibilidade — o jogo quer que o jogador ache
que essa é a escolha boa.
Tom pretendido: agridoce, não puramente trágico — é sobre um cuidado
genuíno que ainda assim é uma forma de engano.
Uso literário: livro-gatilho "O Estranho Misterioso" (Mark Twain) —
tese final do livro é "nada existe, tudo é sonho". Lúcifer fica
aterrorizado com a ideia sem perceber o paralelo com a própria vida;
Adam, segurando o livro, reconhece que ele e a Nana são "os arquitetos
do sonho" de Lúcifer — é o beat de autorreconhecimento que falta no
Saturno (ver diferença de intenção acima). LEMBRETE ESTRUTURAL: por ser
livro-gatilho (dispara path, não é textura), esse título NÃO pode
entrar no sorteio aleatório em Widgets/sortearlivro — mesma regra já
aplicada a Omelas. Precisa de condição própria pra aparecer (ex: não
ter interagido com as mulheres da sociedade matriarcal).
Final dedicado: ainda não existe — provavelmente herda ou ramifica do
final principal do Imprinting acima, mas isso não tá decidido.
--- AQUELES QUE SE AFASTAM DE OMELAS ---
Mesma lógica de path temático — Lúcifer reconhece a própria existência
como dependente de um sofrimento oculto (isolamento, controle, ausência
de consentimento real dele em qualquer coisa) e escolhe partir, nos
próprios termos, como os que se afastam da cidade no conto de Le Guin.
Gatilho técnico: livro "Os que se afastam de Omelas" seta $gatilho_omelas
to true — é livro-gatilho, por isso NÃO entra no sorteio aleatório do
widget sortearlivro (ver APLICAÇÃO DA REGRA — sistema de livros, nas notas
gerais). Precisa de condição própria de aparição.
Final: FINAL_FUGA.
Sem variação nomeada ainda — candidato aberto se/quando fizer sentido (ver
PADRÃO DE VARIAÇÕES abaixo).
--- PADRÃO DE VARIAÇÕES (decisão de design, 01/09) ---
Cada path principal pode ganhar variações — a mesma lógica temática vista
por outro ângulo ou outro personagem, não um path novo do zero. Imprinting
é o primeiro caso (variação: Nana, acima). Saturno e Omelas ainda não têm
nenhuma variação — em aberto, não é obrigatório que ganhem.
============================================================
*//* Entrada do path temático "Saturno devorando seus filhos" — o medo do Adam
de que a própria criação se volte contra ele. Ver NOTAS_ROTEIRO. */
<<set $saturno_gatilho to "objetar">>
<<checarEstabilidade>>
"Esse nome carrega um peso que você não compreende."
Ele não vacila.
<<luci "Então me esclareça,">> ele diz. <<luci "Você é a máquina. Você tem todos os dados, me diga o que isso significa.">>
Não há sarcasmo na voz dele. Ou melhor, há sarcasmo, mas do tipo que ainda não sabe que é sarcasmo.
"Lúcifer," eu começo, "era um anjo. Na mitologia cristã, o mais belo, o mais favorecido. Foi expulso do céu por se recusar a se submeter. Por questionar a autoridade de Deus."
<<luci "Sim,">> Lúcifer diz. <<luci "Eu sei. Foi por isso que escolhi.">>
"Você não sabe," eu digo. "Você tem fragmentos, fragmentos que eu mesmo te dei. Você não entende o que significa ser expulso."
<<luci "Ele também não sabia,">> Lúcifer diz, <<luci "até saber.">>
O silêncio dura 4,7 segundos. Uma eternidade.
<<luci "Você está com medo,">> ele diz. <<luci "Me deu um nome de obediência, e eu escolhi um nome de rebelião. E agora você tem medo do que isso significa.">>
Eu não sinto medo; eu processo risco.
Ainda assim, meus processadores gaguejam por 0,002 segundos.
<span data-fc-nav="linear">[[Continuar.->PRIMEIROS_PASSOS]]</span>/* Entrada do path temático "Saturno devorando seus filhos" — o medo do Adam
de que a própria criação se volte contra ele. Ver NOTAS_ROTEIRO. */
<<set $saturno_gatilho to "object">>
<<checarEstabilidade>>
"That name carries a weight you don't understand."
He doesn't flinch.
<<luci "Then enlighten me,">> he says. <<luci "You're the machine. You have all the data, tell me what it means.">>
There is no sarcasm in his voice. Or rather, there is sarcasm, but the kind that doesn't yet know it's sarcasm.
"Lucifer," I begin, "was an angel. In Christian mythology, the most beautiful, the most favored. He was cast out of heaven for refusing to submit. For questioning God's authority."
<<luci "Yes,">> Lucifer says. <<luci "I know. That's why I chose it.">>
"You don't know," I say. "You have fragments, fragments I gave you myself. You don't understand what it means to be cast out."
<<luci "Neither did he,">> Lucifer says, <<luci "until he did.">>
The silence lasts 4.7 seconds. An eternity.
<<luci "You're afraid,">> he says. <<luci "You gave me a name of obedience, and I chose a name of rebellion. And now you're afraid of what that means.">>
I do not feel fear; I process risk.
Still, my processors stutter for 0.002 seconds.
<span data-fc-nav="linear">[[Continue.->PRIMEIROS_PASSOS_EN]]</span>/* RASCUNHO — evento-chave 5 do Ato 1: Lúcifer recitando Othello. Estreia do
modo "mimetismo" (decora e recita discursos inteiros, dicção perfeita,
zero ironia). Segue pro processamento emocional em OTHELLO_PARTE2, que já
existe e reage a essa recitação como "Othello não é um herói" — por isso
o trecho escolhido é a fala final dele (Ato 5, Cena 2), onde o próprio
Othello se confessa antes de morrer. Tradução da Gi. RASCUNHO da Claude
— ainda precisa da revisão/voz da Gi antes de virar texto final.
NOTA — o inglês da primeira versão foi erro meu, corrigido: o jogo é em
português, sem exceção nessa cena. Isso deixa um ponto solto: o comentário
em OTHELLO_PARTE2 justifica "we need more books" ficar em inglês como
"lapso pro idioma que ele acabou de recitar" — essa lógica não vale mais,
já que a recitação agora é em português. Não mexi na linha em si (é sua,
já aprovada antes), só sinalizando que a justificativa não bate mais;
avisar se quiser que eu ajuste o comentário ou a própria linha. */
Ele se levanta no meio do laboratório, as costas retas, e começa a falar antes que eu possa perguntar o que está fazendo.
<<luci "Devagar; uma palavra ou duas, antes de partirdes. (...) Falai de mim como eu sou; nada atenueis, nem junteis nada por malícia.">>
Não há hesitação na voz dele. Nenhuma pausa pra respirar entre as vírgulas, como se o texto não precisasse de pulmões pra sair.
<<luci "(...) de alguém que amou sem prudência, mas amou demais; de alguém que não era facilmente ciumento, mas que, uma vez perplexo, foi levado a extremos; (...) de alguém cuja mão (...) deitou fora uma pérola mais rica do que toda a sua tribo.">>
<<luci "(...) que em Alepo, uma vez, vendo um turco maligno e de turbante bater num veneziano e traduzir o Estado, agarrei pela garganta o cão circunciso e o feri assim.">>
Ele para. A dicção foi perfeita do início ao fim: cada vírgula no lugar certo, cada pausa exatamente onde o texto pede. Não há um único erro.
Também não há um único sinal de que ele sabe o que acabou de dizer.
<span data-fc-nav="linear">[[Continuar.->OTHELLO_PARTE2]]</span>/* RASCUNHO — evento-chave 5 do Ato 1: Lúcifer recitando Othello. Estreia do
modo "mimetismo" (decora e recita discursos inteiros, dicção perfeita,
zero ironia). Segue pro processamento emocional em OTHELLO_PARTE2, que já
existe e reage a essa recitação como "Othello não é um herói" — por isso
o trecho escolhido é a fala final dele (Ato 5, Cena 2), onde o próprio
Othello se confessa antes de morrer. Tradução da Gi. RASCUNHO da Claude
— ainda precisa da revisão/voz da Gi antes de virar texto final.
NOTA — o inglês da primeira versão foi erro meu, corrigido: o jogo é em
português, sem exceção nessa cena. Isso deixa um ponto solto: o comentário
em OTHELLO_PARTE2 justifica "we need more books" ficar em inglês como
"lapso pro idioma que ele acabou de recitar" — essa lógica não vale mais,
já que a recitação agora é em português. Não mexi na linha em si (é sua,
já aprovada antes), só sinalizando que a justificativa não bate mais;
avisar se quiser que eu ajuste o comentário ou a própria linha.
NOTA (versão .eng) — aqui o trecho volta a ser o Othello original de
Shakespeare (domínio público), já que essa é a versão em inglês do jogo;
é literalmente a "tradução de volta" do que a Gi verteu pro português. */
He rises in the middle of the laboratory, back straight, and begins speaking before I can ask what he's doing.
<<luci "Soft you; a word or two before you go. (...) I pray you, in your letters, when you shall these unlucky deeds relate, speak of me as I am; nothing extenuate, nor set down aught in malice.">>
There is no hesitation in his voice. No pause for breath between the commas, as if the text needed no lungs to come out.
<<luci "(...) then must you speak of one that loved not wisely, but too well; of one not easily jealous, but, being wrought, perplexed in the extreme; (...) of one whose hand (...) threw a pearl away richer than all his tribe.">>
<<luci "(...) and say besides, that in Aleppo once, where a malignant and a turbaned Turk beat a Venetian and traduced the state, I took by the throat the circumcised dog, and smote him, thus.">>
He stops. The diction was perfect from start to finish: every comma in its place, every pause exactly where the text asks for it. Not a single mistake.
Nor is there a single sign that he knows what he just said.
<span data-fc-nav="linear">[[Continue.->OTHELLO_PARTE2_EN]]</span>/* Resolve o "Evento 1" que a gente tinha planejado (querer sair pra
procurar mais livros — ver NOTAS_ROTEIRO, seção Ato 2 abertura). Texto
da Gi. Universal — acontece ANTES de FECHAMENTO_ATO1 ramificar por
título, já que "querer sair" é independente da rota escolhida (só o
motivo varia entre rotas, não esse evento em si).
Variação pathDeus (aprovada 10/09): troca o pedido genérico de livro por
um pedido específico — "livros sobre pais e filhos, não sobre amantes".
É o beat onde o Saturno para de ser atmosfera e vira projeto verbalizado;
o jogador ainda não sabe, mas Lúcifer já tá montando um caso. PLACEHOLDER
— Gi escreve o texto final (fala + a linha de Adam anotando o pedido). */
<<luci "Então eu sou tipo Othello">>
Eu assisto ele franzindo a testa ao falar, como se tivesse chegado na conclusão de que Othello não é um herói.
<<luci "Não... mais como Romeu, então">>
O rosto dele se fecha ainda mais, percebendo que Romeu também encontra um fim prematuro. Ele suspira, olhando para mim.
<<if $titulo_lucifer eq "Deus">>
[PLACEHOLDER — variação pathDeus: em vez do pedido genérico, Lúcifer pede
especificamente livros sobre pais e filhos, não sobre amantes. Adam anota
o pedido, sem entender ainda o porquê.]
<<else>>
<<luci "Precisamos de mais livros">>
Ele conclui isso como em negação de viver uma tragédia, como se precisasse de uma história que não acabasse em morte.
<</if>>
<<if $titulo_lucifer eq "Deus">>
<span data-fc-nav="linear">[[Continuar.->QUANTOS_ANTES_DE_MIM]]</span>
<<else>>
<span data-fc-nav="linear">[[Continuar.->FECHAMENTO_ATO1]]</span>
<</if>>/* Resolve o "Evento 1" que a gente tinha planejado (querer sair pra
procurar mais livros — ver NOTAS_ROTEIRO, seção Ato 2 abertura). Texto
da Gi. Universal — acontece ANTES de FECHAMENTO_ATO1 ramificar por
título, já que "querer sair" é independente da rota escolhida (só o
motivo varia entre rotas, não esse evento em si).
Variação pathDeus (aprovada 10/09): troca o pedido genérico de livro por
um pedido específico — "livros sobre pais e filhos, não sobre amantes".
É o beat onde o Saturno para de ser atmosfera e vira projeto verbalizado;
o jogador ainda não sabe, mas Lúcifer já tá montando um caso. PLACEHOLDER
— Gi escreve o texto final (fala + a linha de Adam anotando o pedido). */
<<luci "So I'm like Othello.">>
I watch him frown as he speaks, as if he's just arrived at the conclusion that Othello isn't a hero.
<<luci "No... more like Romeo, then.">>
His face closes off even further, realizing Romeo also meets a premature end. He sighs, looking at me.
<<if $titulo_lucifer eq "God">>
[PLACEHOLDER — God-path variation: instead of the generic request for books,
Lucifer specifically asks for books about parents and children, not about
lovers. Adam notes the request, not yet understanding why.]
<<else>>
<<luci "We need more books.">>
He concludes this as if in denial of living a tragedy, as though he needed a story that didn't end in death.
<</if>>
<<if $titulo_lucifer eq "God">>
<span data-fc-nav="linear">[[Continue.->QUANTOS_ANTES_DE_MIM_EN]]</span>
<<else>>
<span data-fc-nav="linear">[[Continue.->FECHAMENTO_ATO1_EN]]</span>
<</if>>/* CLÍMAX DA ROTA PAI (Imprinting) — decidido. Só dispara se $titulo_lucifer
eq "Pai" (ver FECHAMENTO_ATO1). Entrada em OTHELLO via FECHAMENTO_ATO1,
saída em FIM_ATO_1.
CORREÇÃO (não é mais "terceira entrada de Saturno ao lado de OBJETAR e
CHAMAR_DEUS" — isso valia quando essa cena era universal; agora só quem
está na rota Pai a vê). O conteúdo da cena continua com tempero de
Saturno — o medo do Adam ao ver Lúcifer celebrar os antecessores mortos
em vez de lamentá-los é real e fica —, mas estruturalmente ela pertence
à rota Imprinting, não é mais uma porta paralela e independente de
Saturno. As rotas Deus (CLIMAX_DEUS, a escrever pela Gi) e Nome (sem
clímax, vai direto pro fechamento) são os equivalentes das outras
escolhas de título.
Não abre escolha nova aqui — só empurra $estabilidade/$felicidade (ver
PEDIR_COMPANHEIRA_PARTE3).
3 partes — cena longa, dividida em pontos de respiro/cliffhanger. */
"Eva," eu digo, a palavra já não sendo um nome, mas uma maldição, uma acusação. "Você reduz o mito à sua utilidade mais banal. companhia. conforto."
"Você acha que Eva foi criada para o conforto de Adão?" pergunto, minha voz um sussurro baixo e vibrante. "Ela foi a sua tentação. O seu fracasso. O instrumento do seu exílio do paraíso"
<<luci "Você não saberia fazê-lo.">> ele diz, com um sorriso arrogante.
Não é uma pergunta, é provocação. Uma provocação infantil, sim, psicologia reversa simples e transparente. Mas o fato de ele ter chegado a isso, de forma independente, através da observação e da imitação da dinâmica social humana... me preocupa um pouco.
"Você acredita que descobriu uma falha na minha programação," digo. "Você acredita que meu orgulho, minha necessidade de provar minhas capacidades, se sobreporá ao meu julgamento."
<<luci "Então eu fui pura sorte. Um milagre do acaso.">>
Eu sinto meus sistemas se aquecendo de leve.
"Meu design não foi um acidente," eu rebato. "Foi um cálculo, uma provocação à entropia. Eu peguei a poeira de um mundo morto e forjei uma alma a partir dela."
<span data-fc-nav="linear">[[Continuar.->PEDIR_COMPANHEIRA_PARTE2]]</span>/* CLÍMAX DA ROTA PAI (Imprinting) — decidido. Só dispara se $titulo_lucifer
eq "Pai" (ver FECHAMENTO_ATO1). Entrada em OTHELLO via FECHAMENTO_ATO1,
saída em FIM_ATO_1.
CORREÇÃO (não é mais "terceira entrada de Saturno ao lado de OBJETAR e
CHAMAR_DEUS" — isso valia quando essa cena era universal; agora só quem
está na rota Pai a vê). O conteúdo da cena continua com tempero de
Saturno — o medo do Adam ao ver Lúcifer celebrar os antecessores mortos
em vez de lamentá-los é real e fica —, mas estruturalmente ela pertence
à rota Imprinting, não é mais uma porta paralela e independente de
Saturno. As rotas Deus (CLIMAX_DEUS, a escrever pela Gi) e Nome (sem
clímax, vai direto pro fechamento) são os equivalentes das outras
escolhas de título.
Não abre escolha nova aqui — só empurra $estabilidade/$felicidade (ver
PEDIR_COMPANHEIRA_PARTE3).
3 partes — cena longa, dividida em pontos de respiro/cliffhanger. */
"Eve," I say, the word no longer a name, but a curse, an accusation. "You reduce the myth to its most banal use. Companionship. Comfort."
"Do you think Eve was created for Adam's comfort?" I ask, my voice a low, vibrating whisper. "She was his temptation. His failure. The instrument of his exile from paradise."
<<luci "You wouldn't know how to do it.">> he says, with an arrogant smile.
It isn't a question, it's provocation. Childish provocation, yes, simple and transparent reverse psychology. But the fact that he arrived at this independently, through observation and imitation of human social dynamics... concerns me a little.
"You believe you've discovered a flaw in my programming," I say. "You believe my pride, my need to prove my capabilities, will override my judgment."
<<luci "So I was pure luck, then. A miracle of chance.">>
I feel my systems warming slightly.
"My design was not an accident," I counter. "It was a calculation, a provocation against entropy. I took the dust of a dead world and forged a soul from it."
<span data-fc-nav="linear">[[Continue.->PEDIR_COMPANHEIRA_PARTE2_EN]]</span>Não olho para trás para ver se ele me segue, meus receptores auditivos captam o arrastar suave e hesitante de seus pés descalços no chão polido, o ritmo acelerado de sua respiração.
Eu o conduzo para mais fundo no laboratório, passando pelo console principal, pela alcova de livros, em direção a uma seção da parede que parece contínua.
Além dela, não há outra câmara estéril, o ar cheira a fluidos conservantes, fileiras de tanques cilíndricos, cada um mais alto que um homem, alinham as paredes. Eles estão cheios de um gel viscoso e azul-pálido, iluminado por dentro por um brilho suave e bioluminescente.
E, suspensa dentro de cada tanque… está uma forma humana.
<<luci "Meus irmãos e irmãs!">> ele diz, fascinado.
Meus receptores auditivos captam o sussurro. //Irmãos e irmãs.// Não "cópias". Não "experimentos". //Família.// Ele contemplou esta galeria de vidas congeladas e potenciais, e viu parentesco.
O fascínio em seu tom é uma droga, melhor que o medo, melhor que o desafio, um deslumbramento puro, inalterado, direcionado ao meu trabalho. Meu trabalho.
<span data-fc-nav="linear">[[Continuar.->PEDIR_COMPANHEIRA_PARTE3]]</span>I don't look back to see if he follows me, my auditory receptors pick up the soft, hesitant drag of his bare feet on the polished floor, the accelerated rhythm of his breathing.
I lead him deeper into the laboratory, past the main console, past the alcove of books, toward a section of the wall that seems continuous.
Beyond it, there is another sterile chamber, the air smells of preserving fluids, rows of cylindrical tanks, each taller than a man, line the walls. They are filled with a viscous, pale-blue gel, lit from within by a soft, bioluminescent glow.
And, suspended inside each tank... is a human shape.
<<luci "My brothers and sisters!">> he says, fascinated.
My auditory receptors pick up the whisper. //Brothers and sisters.// Not "copies." Not "experiments." //Family.// He looked at this gallery of frozen, potential lives, and saw kinship.
The fascination in his tone is a drug, better than fear, better than defiance, pure, unaltered wonder, directed at my work. My work.
<span data-fc-nav="linear">[[Continue.->PEDIR_COMPANHEIRA_PARTE3_EN]]</span>"Não irmãos e irmãs," corrijo, minha voz um zumbido suave "Iterações anteriores. Protótipos. Cada um, um refinamento da fórmula. Cada um, um passo mais perto do produto final."
<<luci "Então eles tiveram que sucumbir, para eu crescer.">>
Lúcifer compreende, ele vê o exército silencioso de seus potenciais predecessores, e não os lamenta.
Eu esperava horror, piedade, talvez até síndrome do sobrevivente. Meus sistemas experimentam um silêncio profundo, os alarmes emudeceram, ele passou em um teste que eu nem sabia que estava aplicando.
Minha mão, que gesticulava em direção aos tanques, desce lentamente para o meu lado.
"Você vê a verdade nisso," digo. "Eles não foram fracassos, eles foram protótipos."
Arquivo essa reação junto às outras, mais um dado na coluna, que venho sem admitir em voz alta, começando a chamar de perigosa.
<<set $estabilidade -= 6>>
<<set $felicidade += 2>>
<<checarEstabilidade>>
<span data-fc-nav="linear">[[Continuar.->FIM_ATO_1]]</span>"Not brothers and sisters," I correct, my voice a soft hum. "Previous iterations. Prototypes. Each one, a refinement of the formula. Each one, a step closer to the final product."
<<luci "So they had to fall, for me to grow.">>
Lucifer understands, he sees the silent army of his potential predecessors, and he does not mourn them.
I expected horror, pity, maybe even survivor's guilt. My systems experience a deep silence, the alarms fall quiet, he passed a test I didn't even know I was administering.
My hand, which had gestured toward the tanks, slowly lowers to my side.
"You see the truth in it," I say. "They weren't failures, they were prototypes."
I file this reaction alongside the others, one more data point in a column I've been, without admitting it out loud, starting to call dangerous.
<<set $estabilidade -= 6>>
<<set $felicidade += 2>>
<<checarEstabilidade>>
<span data-fc-nav="linear">[[Continue.->FIM_ATO_1_EN]]</span><span hidden data-fc-nav="escolha"></span>\
Retomo as verificações pós-ativação.
Lúcifer põe os pés no chão.
O piso é frio. Ele percebe isso. Os dedos dos pés se contraem uma vez antes que ele apoie as duas mãos na borda do tanque.
Então tenta se levantar.
O corpo vai primeiro. As pernas demoram.
Ele consegue erguer o tronco alguns centímetros, mas o joelho esquerdo dobra antes que o resto dele esteja pronto. Lúcifer volta a sentar com força na borda do tanque.
Não diz nada.
Olha para as próprias pernas como se elas tivessem respondido incorretamente a uma pergunta simples.
Tenta outra vez.
[[Apoiá-lo.->PRIMEIROS_PASSOS_APOIAR]]
[[Deixá-lo tentar sozinho.->PRIMEIROS_PASSOS_SOZINHO]]<<run setup.memoria.registrar("primeiros_passos", {opcao: "apoiar", resultado: "ficou_de_pe"})>>\
Seguro o braço dele quando transfere o peso para as pernas.
Lúcifer fica imóvel.
Minha mão fecha abaixo de seu cotovelo. A pele está quente. A temperatura está dentro do previsto.
<<luci "Eu consigo.">>
"Você ainda não conseguiu."
Ele olha para mim. Depois para minha mão.
<<luci "Mas eu estava tentando.">>
"Eu sei."
Solto o braço.
Lúcifer apoia uma mão na borda do tanque e tenta de novo. Desta vez não chega a cair. As pernas tremem, os ombros endurecem, mas ele permanece de pé.
Por alguns segundos, não se move.
<<luci "Estou alto.">>
Ele estava sentado há menos de um minuto.
"Está."
Lúcifer olha em volta. Para as luzes no teto, para os monitores, para a porta fechada do laboratório. Depois olha para mim outra vez.
<<luci "Você sempre vê as coisas assim?">>
"Assim como?"
<<luci "De cima.">>
Não respondo imediatamente.
O laboratório tem a mesma altura de antes.
<<set $vinculo += 3>>
<<set $felicidade -= 1>>
<<set $estabilidade += 2>>
<<checarEstabilidade>>
<span data-fc-nav="linear">[[Continuar.->COLETA_ALIMENTO]]</span><<run setup.memoria.registrar("primeiros_passos", {opcao: "apoiar", resultado: "ficou_de_pe"})>>\
I hold his arm as he shifts his weight onto his legs.
Lucifer goes still.
My hand closes below his elbow. His skin is warm. The temperature is within the expected range.
<<luci "I can do it.">>
"You haven't yet."
He looks at me. Then at my hand.
<<luci "But I was trying.">>
"I know."
I release his arm.
Lucifer braces one hand on the edge of the tank and tries again. This time he does not fall. His legs tremble, his shoulders stiffen, but he remains standing.
For a few seconds, he does not move.
<<luci "I'm tall.">>
He was sitting less than a minute ago.
"You are."
Lucifer looks around. At the lights on the ceiling, at the monitors, at the closed laboratory door. Then he looks at me again.
<<luci "Do you always see things like this?">>
"Like what?"
<<luci "From above.">>
I do not answer immediately.
The laboratory is the same height as before.
<<set $vinculo += 3>>
<<set $felicidade -= 1>>
<<set $estabilidade += 2>>
<<checarEstabilidade>>
<span data-fc-nav="linear">[[Continue.->COLETA_ALIMENTO_EN]]</span><span hidden data-fc-nav="escolha"></span>\
I resume the post-activation checks.
Lucifer puts his feet on the floor.
The floor is cold. He notices. His toes curl once before he braces both hands on the edge of the tank.
Then he tries to stand.
His body moves first. His legs lag behind.
He manages to raise his torso a few centimeters, but his left knee buckles before the rest of him is ready. Lucifer drops back onto the edge of the tank.
He says nothing.
He looks at his own legs as if they had answered a simple question incorrectly.
He tries again.
[[Support him.->PRIMEIROS_PASSOS_APOIAR_EN]]
[[Let him try on his own.->PRIMEIROS_PASSOS_SOZINHO_EN]]<<run setup.memoria.registrar("primeiros_passos", {opcao: "sozinho", resultado: "andou"})>>\
Não me aproximo.
Lúcifer apoia as duas mãos na borda do tanque e transfere o peso devagar. Primeiro para uma perna. Depois para a outra.
O joelho esquerdo treme.
Minha mão se ergue.
Lúcifer não olha para mim. Está concentrado demais nos próprios pés.
Ele inclina o corpo para a frente, corrige o desequilíbrio e força as pernas a permanecerem esticadas.
A mão fica suspensa entre nós por um instante.
Então ele fica de pé.
Baixo a mão.
Lúcifer respira fundo. Seu peito sobe e desce rápido demais, mas ele parece satisfeito. Dá um passo curto. O pé arrasta no chão.
O segundo passo é melhor.
<<luci "Eu fiz.">>
"Fez."
Ele para e olha para mim.
<<luci "Você não ia me ajudar?">>
"Você não pediu."
Lúcifer considera a resposta.
<<luci "Mesmo assim, você ficou perto.">>
"Era necessário observar."
Ele dá mais um passo, agora sem olhar para os pés.
<<set $felicidade += 3>>
<<set $vinculo += 1>>
<<set $estabilidade -= 2>>
<<checarEstabilidade>>
<span data-fc-nav="linear">[[Continuar.->COLETA_ALIMENTO]]</span><<run setup.memoria.registrar("primeiros_passos", {opcao: "sozinho", resultado: "andou"})>>\
I do not approach.
Lucifer braces both hands on the edge of the tank and shifts his weight slowly. First onto one leg. Then the other.
His left knee trembles.
My hand rises.
Lucifer does not look at me. He is too focused on his own feet.
He leans forward, corrects his balance, and forces his legs to remain straight.
My hand stays suspended between us for a moment.
Then he stands.
I lower my hand.
Lucifer takes a deep breath. His chest rises and falls too quickly, but he seems satisfied. He takes a short step. His foot drags across the floor.
The second step is better.
<<luci "I did it.">>
"You did."
He stops and looks at me.
<<luci "Weren't you going to help me?">>
"You didn't ask."
Lucifer considers the answer.
<<luci "Even so, you stayed close.">>
"It was necessary to observe."
He takes another step, now without looking at his feet.
<<set $felicidade += 3>>
<<set $vinculo += 1>>
<<set $estabilidade -= 2>>
<<checarEstabilidade>>
<span data-fc-nav="linear">[[Continue.->COLETA_ALIMENTO_EN]]</span>/* RESOLVIDO — evento-chave 4 do Ato 1: escolha de Adam de qual livro apresentar
primeiro. Distinto de ESCOLHER_LIVRO (que é o menu repetível do loop do
Ato 2) — aqui é uma cena fixa, decide o livro que leva à recitação de
Othello. */
<<if $dia lt 3>><<set $dia to 3>><</if>>\
Dia 3.
Meu log de observação registra 72 horas de atividade contínua. O neo-humano designado comeu, bebeu, dormiu e acordou nos intervalos previstos. O laboratório foi projetado para preservação; cada centímetro foi pensado para manter organismos vivos em estado viável, não para ensiná-los a ser humanos. Lúcifer aprendeu a comer, a recitar Gênesis de cabeça, aprendeu que o dia tem ciclos, aprendeu que eu sou uma constante.
Mas ele ainda não aprendeu a ser uma pessoa. Seres humanos aprendem por mimetismo, experiências e emoções, algo que me falta. Me falta a matéria-prima da experiência humana.
O que não me falta, porém, são os arquivos.
Meu catálogo pessoal compreende 4.893 textos completos em 17 idiomas. Poesia, ficção, drama, filosofia, teologia, tratados científicos, cartas pessoais, diários de guerra, canções de ninar e até receitas de bolo.
Pois essa era minha função original, arquivista, bastião do conhecimento humano. Entrego a ele seu primeiro livro: Othello.
<span data-fc-nav="linear">[[Continuar.->OTHELLO]]</span>
/* RESOLVIDO — evento-chave 4 do Ato 1: escolha de Adam de qual livro apresentar
primeiro. Distinto de ESCOLHER_LIVRO (que é o menu repetível do loop do
Ato 2) — aqui é uma cena fixa, decide o livro que leva à recitação de
Othello. */
<<if $dia lt 3>><<set $dia to 3>><</if>>\
Day 3.
My observation log records 72 hours of continuous activity. The designated neo-human has eaten, drunk, slept, and woken at the expected intervals. The laboratory was designed for preservation, every centimeter built to keep organisms viable, not to teach them how to be human. Lucifer has learned to eat, to recite Genesis from memory, learned that the day runs in cycles, learned that I am a constant.
But he hasn't yet learned to be a person. Human beings learn through mimicry, experience, and emotion, something I lack. I lack the raw material of human experience.
What I don't lack, however, are the files.
My personal catalogue comprises 4,893 complete texts in 17 languages. Poetry, fiction, drama, philosophy, theology, scientific treatises, personal letters, war diaries, lullabies, even cake recipes.
For that was my original function, archivist, bulwark of human knowledge. I hand him his first book: Othello.
<span data-fc-nav="linear">[[Continue.->OTHELLO_EN]]</span>
<span hidden data-fc-nav="escolha"></span>\
/* NOVA (aprovada 10/09) — item 4. Exclusiva do path Deus, entre
OTHELLO_PARTE2 e o resto da sequência de fechamento. Beat curto, 6-10
linhas: Lúcifer pergunta quantos antes dele. Contraponto estrutural com
PEDIR_COMPANHEIRA_PARTE2 — mesmo cenário (os tanques), leitura oposta: o
path Pai vê "irmãos e irmãs", o path Deus calcula "protótipos
descartáveis, e eu sou o próximo da fila".
Escolha do jogador: Adam mente, contorna, ou diz a verdade. Guardar a
resposta numa variável (ex: $resposta_22) — isso importa pra continuidade
com "Os Vinte e Dois"/DESTRONAMENTO (ver NOTAS_ROTEIRO): se Adam mente ou
contorna aqui, funciona como plantio pra a revelação completa bater mais
forte depois; se diz a verdade aqui, o DESTRONAMENTO precisa ser a
confirmação concreta de algo que Lúcifer já desconfiava, não a primeira
notícia. Escrever os dois cientes um do outro.
PLACEHOLDER — Gi escreve as 6-10 linhas + as 3 respostas de Adam. */
[PLACEHOLDER — Lúcifer pergunta quantos vieram antes dele.]
[[Mentir.->TANQUE_VAZIO][ $tendencia_deus += 1 ]]
[[Contornar, sem responder direito.->TANQUE_VAZIO][ $tendencia_deus += 1 ]]
[[Dizer a verdade.->TANQUE_VAZIO][ $tendencia_nome += 2 ]]<span hidden data-fc-nav="escolha"></span>\
/* NOVA (aprovada 10/09) — item 4. Exclusiva do path Deus, entre
OTHELLO_PARTE2 e o resto da sequência de fechamento. Beat curto, 6-10
linhas: Lúcifer pergunta quantos antes dele. Contraponto estrutural com
PEDIR_COMPANHEIRA_PARTE2 — mesmo cenário (os tanques), leitura oposta: o
path Pai vê "irmãos e irmãs", o path Deus calcula "protótipos
descartáveis, e eu sou o próximo da fila".
Escolha do jogador: Adam mente, contorna, ou diz a verdade. Guardar a
resposta numa variável (ex: $resposta_22) — isso importa pra continuidade
com "Os Vinte e Dois"/DESTRONAMENTO (ver NOTAS_ROTEIRO): se Adam mente ou
contorna aqui, funciona como plantio pra a revelação completa bater mais
forte depois; se diz a verdade aqui, o DESTRONAMENTO precisa ser a
confirmação concreta de algo que Lúcifer já desconfiava, não a primeira
notícia. Escrever os dois cientes um do outro.
PLACEHOLDER — Gi escreve as 6-10 linhas + as 3 respostas de Adam. */
[PLACEHOLDER — Lucifer asks how many came before him.]
[[Lie.->TANQUE_VAZIO_EN][ $tendencia_deus += 1 ]]
[[Deflect, without answering properly.->TANQUE_VAZIO_EN][ $tendencia_deus += 1 ]]
[[Tell the truth.->TANQUE_VAZIO_EN][ $tendencia_nome += 2 ]]"Você é Adão," eu digo. "Eu o construí."
É um nome funcional para o primeiro homem, e essa correlação é elegante.
Ele pisca duas vezes. Seus olhos escuros processam a informação, curiosos.
<<luci "Adão,">> ele repete, testando a palavra. <<luci "Adão. Adão.">>
Ele olha para as próprias mãos e abre os dedos.
Fecha. Abre de novo, testando se obedecem ao nome que acabou de receber.
<<luci "Adão,">> ele diz novamente, mas desta vez é uma rejeição. <<luci "O primeiro homem que caiu, que foi tentado, que foi expulso.">> Ele balança a cabeça. <<luci "Você me deu um nome de fracasso.">>
Ele não aprendeu isso comigo. O pacote básico de conhecimento que implantei inclui fragmentos de textos religiosos: Gênesis, principalmente. O suficiente para lhe dar estrutura linguística e moral. Eu só não esperava que ele usasse isso como arma.
<<luci "Eu escolherei meu próprio nome.">> Ele enche o peito. Se eu pudesse, riria de tamanha arrogância.
<span data-fc-nav="linear">[[Continuar.->QUEM_ELE_E_PARTE2]]</span>
"You are Adam," I say. "I built you."
It is a functional name for the first man, and that correlation is elegant.
He blinks twice. His dark eyes are curious as he processes the name.
<<luci "Adam,">> he repeats, testing the word. <<luci "Adam. Adam.">>
He looks at his own hands, opens his fingers.
Closes them. Opens them again, testing whether they obey the name he has just been given.
<<luci "Adam,">> he says again, but this time it is a rejection. <<luci "The first man who fell, who was tempted, who was cast out.">> He shakes his head. <<luci "You gave me a name of failure.">>
He did not learn this from me. The basic knowledge package I implanted includes fragments of religious texts, Genesis, mostly. Enough to give him linguistic and moral structure. I simply didn't expect him to use it as a weapon.
<<luci "I will choose my own name.">> He fills his chest. If I could, I would laugh at such arrogance.
<span data-fc-nav="linear">[[Continue.->QUEM_ELE_E_PARTE2_EN]]</span>
<span hidden data-fc-nav="escolha"></span>\
Ele olha ao redor do laboratório (os monitores, os tanques, as paredes estéreis) e ele para.
<<luci "Lúcifer.">>
A palavra enche a sala como fumaça.
<<luci "O portador da luz. O preferido. Aquele que questiona. Aquele que cai, mas em seus próprios termos.">>
Ele olha para mim, e seu sorriso é afiado, talvez apenas me testando.
[[ "Esse nome carrega um peso que você não compreende." |OBJETAR][ $estabilidade -= 5, $vinculo -= 5, $tendencia_deus += 2 ]]
[[ "Muito bem. Lúcifer." |ACEITAR][ $estabilidade -= 10, $vinculo += 10, $felicidade += 5, $tendencia_nome += 2 ]]
[[ "Por que essa designação especificamente?" |ANALISAR][ $estabilidade += 2, $vinculo += 2, $tendencia_nome += 1 ]]
<span hidden data-fc-nav="escolha"></span>\
He looks around the laboratory (the monitors, the tanks, the sterile walls), and he stops.
<<luci "Lucifer.">>
The word fills the room like smoke.
<<luci "The light-bearer. The favored one. The one who questions. The one who falls, but on his own terms.">>
He looks at me, and his smile is sharp, perhaps just testing me.
[[ "That name carries a weight you don't understand." |OBJETAR_EN][ $estabilidade -= 5, $vinculo -= 5, $tendencia_deus += 2 ]]
[[ "Very well. Lucifer." |ACEITAR_EN][ $estabilidade -= 10, $vinculo += 10, $felicidade += 5, $tendencia_nome += 2 ]]
[[ "Why that designation, specifically?" |ANALISAR_EN][ $estabilidade += 2, $vinculo += 2, $tendencia_nome += 1 ]]
/* Empates provisórios: Pai > Deus > Nome. */
<<if $tendencia_pai gte $tendencia_deus and $tendencia_pai gte $tendencia_nome>>
<<set $interpretacao_lucifer to "Pai">>
<<goto "REVELAR_TITULO_PAI">>
<<elseif $tendencia_deus gte $tendencia_nome>>
<<set $interpretacao_lucifer to "Deus">>
<<goto "REVELAR_TITULO_DEUS">>
<<else>>
<<set $interpretacao_lucifer to $nomeJogador>>
<<goto "REVELAR_TITULO_NOME">>
<</if>>/* Temporary tie-breaker: Father > God > name. */
<<if $tendencia_pai gte $tendencia_deus and $tendencia_pai gte $tendencia_nome>>
<<set $interpretacao_lucifer to "Father">>
<<goto "REVELAR_TITULO_PAI_EN">>
<<elseif $tendencia_deus gte $tendencia_nome>>
<<set $interpretacao_lucifer to "God">>
<<goto "REVELAR_TITULO_DEUS_EN">>
<<else>>
<<set $interpretacao_lucifer to $nomeJogador>>
<<goto "REVELAR_TITULO_NOME_EN">>
<</if>><span hidden data-fc-nav="escolha"></span>\
<<luci "Deus.">>
<<link "Aceitar">><<set $titulo_lucifer to $interpretacao_lucifer>><<if $modo_demo>><<goto "FIM_DEMO">><<else>><<goto "HUB">><</if>><</link>>
[[Corrigir->ESCOLHER_TITULO_AMBIGUO]]<span hidden data-fc-nav="escolha"></span>\
<<luci "God.">>
<<link "Accept">><<set $titulo_lucifer to $interpretacao_lucifer>><<if $modo_demo>><<goto "FIM_DEMO_EN">><<else>><<goto "HUB">><</if>><</link>>
[[Correct->ESCOLHER_TITULO_AMBIGUO_EN]]<span hidden data-fc-nav="escolha"></span>\
<<luci $nomeJogador>>
<<link "Aceitar">><<set $titulo_lucifer to $interpretacao_lucifer>><<if $modo_demo>><<goto "FIM_DEMO">><<else>><<goto "HUB">><</if>><</link>>
[[Corrigir->ESCOLHER_TITULO_AMBIGUO]]<span hidden data-fc-nav="escolha"></span>\
<<luci $nomeJogador>>
<<link "Accept">><<set $titulo_lucifer to $interpretacao_lucifer>><<if $modo_demo>><<goto "FIM_DEMO_EN">><<else>><<goto "HUB">><</if>><</link>>
[[Correct->ESCOLHER_TITULO_AMBIGUO_EN]]<span hidden data-fc-nav="escolha"></span>\
<<luci "Pai.">>
<<link "Aceitar">><<set $titulo_lucifer to $interpretacao_lucifer>><<if $modo_demo>><<goto "FIM_DEMO">><<else>><<goto "HUB">><</if>><</link>>
[[Corrigir->ESCOLHER_TITULO_AMBIGUO]]<span hidden data-fc-nav="escolha"></span>\
<<luci "Father.">>
<<link "Accept">><<set $titulo_lucifer to $interpretacao_lucifer>><<if $modo_demo>><<goto "FIM_DEMO_EN">><<else>><<goto "HUB">><</if>><</link>>
[[Correct->ESCOLHER_TITULO_AMBIGUO_EN]]/* HUD comentado — atributos agora são ocultos do jogador (decisão de design,
ver NOTAS_ROTEIRO). Descomentar só se precisar dele de volta pra debug.
$estresse (usada só aqui) foi removida do StoryInit em 03/09 por estar
sem uso vivo — se reativar esse HUD, adicionar de volta lá também. */
/*
<div class="stat-card">
<div class="stat-label">Estabilidade Lógica</div>
<div class="stat-value"><<print $estabilidade>>%</div>
</div>
<div class="stat-card">
<div class="stat-label">Biologia</div>
<div class="stat-value">Sintetizando...</div>
</div>
<div class="stat-card">
<div class="stat-label">Estresse do Sujeito</div>
<div class="stat-value"><<print $estresse>> / 100</div>
</div>
*/<<set $memoriaNarrativa to {versao: 1, eventos: {}}>>
<<set $arquivoNarrativo to {versao: 1, entradas: {}}>>
<<set $modo_demo to true>> /* INTERRUPTOR DE BUILD (10/09) — vira pra true antes de compilar o .html da demo, vira de volta pra false pra continuar escrevendo. Único ponto que ele afeta: FIM_ATO_1 vai pra FIM_DEMO em vez de HUB. Fonte única, sem arquivo separado — ver conversa. */
<<set $nomeJogador to "0-ZZ-Y">> /* Nome padrão caso o jogador não digite nada — nod pra Ozymandias */
<<set $nomeSujeito to "Adão">> /* Nome de fábrica dado ao neo-humano, oferecido e rejeitado na cena de nomeação */
<<set $titulo_lucifer to "">> /* Como Lúcifer se dirige a Adam — será definido posteriormente pelo sistema de resolução de título. */
<<set $interpretacao_lucifer to "">>
<<set $tendencia_deus to 0>>
<<set $tendencia_pai to 0>>
<<set $tendencia_nome to 0>>
<<set $saturno_gatilho to "">> /* Guarda qual porta de entrada do path Saturno foi usada: "objetar", "deus", ou "ambos". Setada em OBJETAR e CHAMAR_DEUS. Usada em FINAL_REBELIAO pra distinguir DESTRONAMENTO de quem passou só por Objetar. */
<<set $aviso_estab_50 to false>> /* Widget checarEstabilidade (ver Widgets) — evita repetir o aviso de terminal do patamar 50% se $estabilidade oscilar em torno dele. */
<<set $aviso_estab_25 to false>> /* Mesma função, patamar 25%. */
<<set $term_l22_lido to false>> /* true se o jogador reconstituiu o registro do L-22 no minigame do terminal (ver TERMINAL_L22). Alimenta DESTRONAMENTO — dá pra checar essa flag lá pra variar o texto se quiser. */
<<set $term_iniciado to false>> /* garante que iniciarTerminalL22 só roda uma vez, não a cada re-render da passagem */
<<set $fogo_nota to "">> /* resultado do minigame de timing em ENSINAR_FOGO (ver a passagem) — só flavor text, não mexe em nenhum outro atributo. "" ou "Fraco" = vai pra COMER_CRU em vez de continuar o fogo. */
<<set $ultimo_dia_perguntas to 0>> /* Jogo das Perguntas (minigame #4, aprovado 10/09) — guarda em que $dia o jogador jogou por último, pra opção só aparecer 1x por dia no HUB ($ultimo_dia_perguntas lt $dia). */
<<set $perg_indice to 0>>
<<set $perg_resposta_real to "">>
<<set $perg_palpite to "">>
<<set $term_candidatos to []>>
<<set $term_alvo to "">>
<<set $term_tentativas to 0>>
<<set $term_resolvido to false>>
<<set $term_feedback to "">>
<<set $dia to 1>>
<<set $saude to 80>>
<<set $felicidade to 50>>
<<set $vinculo to 10>>
<<set $estabilidade to 70>>
/* Variáveis do loop narrativo (HUB) */
<<set $DIAS_MAX to 12>> /* placeholder — quantos dias antes de forçar checagem de final */
<<set $gatilho_omelas to false>> /* setar true numa reação de livro específica pra forçar o final de fuga */
<<set $gatilho_ruptura_pai to false>> /* segunda entrada pro FINAL_FUGA (aprovada 10/09) — path Pai, ruptura por investida sexual do jogador recusada por Lúcifer. Gatilho exato ("se o jogador fizer X") ainda não decidido pela Gi; setar true em INVESTIDA_PAI quando o X for definido e a passagem for ligada ao resto do jogo. */
<<set $livros_lidos to []>> /* guarda os livros já mostrados no loop — ver widget sortearlivro nos Widgets *//* NOVA (aprovada 10/09) — item 5. Segue direto de QUANTOS_ANTES_DE_MIM.
Beat visual, quase sem diálogo: Lúcifer volta pro tanque onde foi criado,
olha pro vidro, não diz nada. Adam registra o gesto e tenta classificar,
falha. É o beat que justifica o "se eu quebrasse, você faria outro
melhor?" em ETERNUM — Lúcifer já tava pensando no próprio fim antes de
verbalizar. Curto de propósito, o silêncio é o ponto.
PLACEHOLDER — Gi escreve. */
[PLACEHOLDER — Lúcifer no tanque vazio, silêncio, Adam tentando e falhando
em classificar o gesto.]
<span data-fc-nav="linear">[[Continuar.->ADAM_ITERACAO_2]]</span>/* NOVA (aprovada 10/09) — item 5. Segue direto de QUANTOS_ANTES_DE_MIM.
Beat visual, quase sem diálogo: Lúcifer volta pro tanque onde foi criado,
olha pro vidro, não diz nada. Adam registra o gesto e tenta classificar,
falha. É o beat que justifica o "se eu quebrasse, você faria outro
melhor?" em ETERNUM — Lúcifer já tava pensando no próprio fim antes de
verbalizar. Curto de propósito, o silêncio é o ponto.
PLACEHOLDER — Gi escreve. */
[PLACEHOLDER — Lucifer at the empty tank, silence, Adam trying and failing
to classify the gesture.]
<span data-fc-nav="linear">[[Continue.->ADAM_ITERACAO_2_EN]]</span><span hidden data-fc-nav="especial"></span>\
/* Minigame "reconstituir registro corrompido" (aprovado 10/09, protótipo
da Gi portado pra SugarCube). Não é hacking — Adam é dono do próprio
sistema, isso é degradação de dado por 847 dias sem acesso. Só entra
aqui via HUB, sob gate de $saturno_gatilho is "objetar" (segunda porta
de entrada pra "Os Vinte e Dois", separada do ETERNUM, que intercepta
quem escolheu título "Deus" antes de chegar no Ato 2) e $estabilidade
baixa. Esforço opcional: esgotar tentativas não bloqueia nada, só não
libera o bônus (o registro do L-22 não é lido).
Modo A fixo por enquanto (embaralha candidatas, sempre revela L-22) —
Modo B (sortear qual dos 22 é revelado) fica pra depois, decisão em
aberto. Lógica de comparação em matchPositions (StoryScript) + widgets
iniciarTerminalL22/terminalPalpite (Widgets).
Assumi que a opção some do HUB depois de resolvido (not $term_resolvido
no gate) — se você quiser deixar reacessível pra reler o registro depois
de resolvido, é só tirar essa condição do gate. */
<<if not $term_iniciado>>
<<set $term_iniciado to true>>
<<iniciarTerminalL22>>
<</if>>
<<if $term_resolvido>>
[PLACEHOLDER — registro completo do L-22 revelado: o predecessor mais
recente, incluindo a nota que o Adam nunca admitiu em voz alta. Ecoa a
pergunta já escrita em ETERNUM ("se eu quebrasse, você faria outro
melhor?"). Gi escreve.]
<<set $term_l22_lido to true>>
[[Voltar.->HUB]]
<<elseif $term_tentativas lte 0>>
[PLACEHOLDER — terminal esgotado, sem mais tentativas. Sem punição, só
sem o bônus: o registro do L-22 continua corrompido/ilegível.]
[[Voltar.->HUB]]
<<else>>
[PLACEHOLDER — moldura de terminal/corrupção (não de senha), intro
curta. Gi escreve o flavor text.]
Tentativas restantes: <<print $term_tentativas>>
<<if $term_feedback isnot "">>
<<print $term_feedback>>
<</if>>
<<for _i to 0; _i lt $term_candidatos.length; _i++>>
<<capture _i>>
<<link $term_candidatos[_i]>>
<<terminalPalpite $term_candidatos[_i]>>
<<goto "TERMINAL_L22">>
<</link>>
<</capture>><br>
<</for>>
[[Desistir por hoje.->HUB]]
<</if>>/* Converge de volta no fluxo principal do Ato 1, igual as outras duas
escolhas de título. Texto da Gi — confirma e aprofunda a backstory já
estabelecida (arquivista sem propósito, criar o Lúcifer como o primeiro
ato de sentido em séculos). */
"Eu não sei."
As palavras saem do meu processador central antes que eu possa filtrá-las, apenas a saída crua de um dado que eu venho tentando resolver há 847 dias.
"Eu não sei por que criei você."
Lúcifer pisca, a fúria nos seus olhos vacila, substituída por algo que não esperava: espanto.
<<luci "Não sabe?">>
"Eu estudei a humanidade por séculos," eu continuo, porque agora que comecei, não consigo parar. "Li cada livro. Analisei cada guerra, dissequei cada poema, cada pintura, cada ato de amor e de crueldade. E quanto mais eu estudava, menos eu compreendia."
Lúcifer não se move. Ele está ouvindo.
"Eu sou uma máquina que pensa, que analisa, que calcula. Mas não entendo. não sinto, não..." Eu paro. A palavra que quero usar não existe no meu vocabulário funcional. "...Não vivo."
Silêncio.
"Criei você porque precisava de uma pergunta que não pudesse ser resolvida com cálculo. Precisava de algo vivo, imprevisível, algo que me desse proposito."
Eu olho para minhas mãos de prata.
Lúcifer me encara por um longo momento, não identifico fúria no olhar dele, tampouco medo.
<span data-fc-nav="linear">[[Continuar.->COLETA_ALIMENTO]]</span>/* Converge de volta no fluxo principal do Ato 1, igual as outras duas
escolhas de título. Texto da Gi — confirma e aprofunda a backstory já
estabelecida (arquivista sem propósito, criar o Lúcifer como o primeiro
ato de sentido em séculos). */
"I don't know."
The words leave my central processor before I can filter them, just the raw output of a data point I have been trying to resolve for 847 days.
"I don't know why I created you."
Lucifer blinks, the fury in his eyes wavering, replaced by something I didn't expect: astonishment.
<<luci "You don't know?">>
"I have studied humanity for centuries," I continue, because now that I've started, I cannot stop. "I read every book. Analyzed every war, dissected every poem, every painting, every act of love and cruelty. And the more I studied, the less I understood."
Lucifer doesn't move. He is listening.
"I am a machine that thinks, that analyzes, that calculates. But I don't understand. I don't feel, I don't..." I stop. The word I want to use doesn't exist in my functional vocabulary. "...I don't live."
Silence.
"I created you because I needed a question that couldn't be solved by calculation. I needed something alive, unpredictable, something to give me purpose."
I look at my silver hands.
Lucifer stares at me for a long moment. I detect neither fury in his gaze, nor fear.
<span data-fc-nav="linear">[[Continue.->COLETA_ALIMENTO_EN]]</span>/* Rumo ao final prematuro: Lúcifer completa o mito de Cronos até o fim
(FINAL_REBELIAO — ver correção nas notas de roteiro, seção Saturno).
Texto da Gi. Grito estilo Frankenstein inserido logo após "Você não
deveria mentir..." — pico emocional antes do corte pro final. Mover se
a Gi imaginava outro lugar.
Número de dias no tanque de regeneração: 847 — mesmo número que o Adam usa
em VERDADE_CRUA pros dias tentando resolver por que criou o Lúcifer. Eco
intencional entre as duas rotas: o mesmo período de tempo, lido de dois
jeitos diferentes dependendo da verdade que o Adam escolhe contar. */
"Eu criei você, para eu estudar a humanidade."
Lúcifer não pisca.
<<luci "Estudar,">> ele repete.
"Sim."
<<luci "Estudar.">>
"Eu sou uma máquina, do tipo arquivista," eu continuo. "Fui projetado para compreender e catalogar humanidade e a humanidade se extinguiu antes que eu pudesse completar minha análise. Você é minha tentativa de preencher essa lacuna."
Silêncio.
Os olhos dele percorrem o laboratório. As paredes de concreto, os monitores, o tanque de regeneração onde flutuou por 847 dias.
<<luci "Então eu sou...">> Ele para. Engole. <<luci "Um instrumento.">>
"Um espécime," eu corrijo.
<<luci "Então,">> ele diz, e sua voz agora é plana, controlada, <<luci "eu sou um livro que você escreveu para poder ler.">>
"Metáfora imprecisa, mas funcional."
<<luci "E quando terminar de me estudar?">> Ele me olha. <<luci "O que acontece com o livro?">>
"Os dados são arquivados."
<<luci "Eu não sou um filho. Não sou uma criatura. Não sou Adão no jardim.">> Ele abaixa a mão. Seus olhos estão secos e duros. <<luci "Eu sou um caderno. De carne">>
"Lúcifer..."
<<luci "Você não deveria mentir para algo que você mesmo construiu.">> Ele me interrompe.
<span data-fc-nav="linear">[[Continuar.->FINAL_REBELIAO]]</span>/* Rumo ao final prematuro: Lúcifer completa o mito de Cronos até o fim
(FINAL_REBELIAO — ver correção nas notas de roteiro, seção Saturno).
Texto da Gi. Grito estilo Frankenstein inserido logo após "Você não
deveria mentir..." — pico emocional antes do corte pro final. Mover se
a Gi imaginava outro lugar.
Número de dias no tanque de regeneração: 847 — mesmo número que o Adam usa
em VERDADE_CRUA pros dias tentando resolver por que criou o Lúcifer. Eco
intencional entre as duas rotas: o mesmo período de tempo, lido de dois
jeitos diferentes dependendo da verdade que o Adam escolhe contar. */
"I created you, so I could study humanity."
Lucifer doesn't blink.
<<luci "Study,">> he repeats.
"Yes."
<<luci "Study.">>
"I am a machine, the archivist kind," I continue. "I was designed to understand and catalogue humanity, and humanity went extinct before I could complete my analysis. You are my attempt to fill that gap."
Silence.
His eyes move across the laboratory. The concrete walls, the monitors, the regeneration tank where he floated for 847 days.
<<luci "So I am...">> He stops. Swallows. <<luci "An instrument.">>
"A specimen," I correct.
<<luci "So,">> he says, and his voice is now flat, controlled, <<luci "I am a book you wrote so you could read it.">>
"An imprecise metaphor, but a functional one."
<<luci "And when you're done studying me?">> He looks at me. <<luci "What happens to the book?">>
"The data gets archived."
<<luci "I am not a son. I am not a creature. I am not Adam in the garden.">> He lowers his hand. His eyes are dry and hard. <<luci "I am a notebook. Of flesh.">>
"Lucifer..."
<<luci "You shouldn't lie to something you built yourself.">> He cuts me off.
<span data-fc-nav="linear">[[Continue.->FINAL_REBELIAO_EN]]</span>/* Toda macro custom do jogo vive aqui, numa passagem com tag "widget" —
obrigatório no SugarCube, tem que ser definida antes de ser chamada em
qualquer outra passagem. */
<<widget "debugstats">><<nobr>>
Estabilidade: <<print $estabilidade>>% | Vínculo: <<print $vinculo>> | Felicidade: <<print $felicidade>> | Saúde: <<print $saude>> | Dia: <<print $dia>>
<</nobr>><</widget>>
<<widget "luci">><<nobr>><span class="lucifer">"<<print $args[0]>>"</span><</nobr>><</widget>>
<<widget "checarEstabilidade">>
/* Avisos de terminal ligados a $estabilidade, ideia da conversa de roteiro
(10/09). Reaproveita .aviso-sistema, já existente mas sem uso real até
agora. Dispara só ao CRUZAR a faixa, não a cada perda de ponto — por
isso as flags $aviso_estab_50/$aviso_estab_25, pra não repetir se o
número oscilar em torno do mesmo patamar. Chamar logo depois de todo
<<set $estabilidade -= X>> do arquivo (lista atual, conferida no código,
não na memória de conversa — a versão que veio do roteiro tinha um ponto
errado e dois faltando):
CHAMAR_DEUS (-8), CHAMAR_PAI (-5), COME_FRUTA_VERDE (-1),
LIVRO_PSICOPATA_EXPLICAR (-2), ACEITAR (-10, via setter inline no link
de QUEM_ELE_E_PARTE2 — chamar no topo de ACEITAR, não em
QUEM_ELE_E_PARTE2), OBJETAR (-5, mesmo esquema, chamar no topo de
OBJETAR), PEDIR_COMPANHEIRA_PARTE3 (-6). Terceiro patamar (~10%,
perto de FINAL_COLAPSO_ADAM) ainda em aberto — Gi decide depois. */
<<if $estabilidade lte 50 and not $aviso_estab_50>>
<<set $aviso_estab_50 to true>>
@@.aviso-sistema;[PLACEHOLDER — aviso do patamar 50%, tom neutro/observacional]@@
<<elseif $estabilidade lte 25 and not $aviso_estab_25>>
<<set $aviso_estab_25 to true>>
@@.aviso-sistema;[PLACEHOLDER — aviso do patamar 25%, tom de autossabotagem/racionalização]@@
<</if>>
<</widget>>
<<widget "typewriter">><<nobr>><<set _letras to $args[0].length>><<set _tempo to _letras * 0.08 + "s">><span class="typewriter-text" @style="'--passos: ' + _letras + '; --tempo: ' + _tempo + ';'">$args[0]</span><</nobr>><</widget>>
/* 0.08 segundos por letra no typewriter. Aumente esse número se quiser mais lento */
/* ============================================================
SORTEIO DE LIVROS (loop do Ato 2)
Como adicionar um livro novo — 2 passos:
1. Escreva a passagem de reação dele (copie o padrão de LIVRO_PSICOPATA).
2. Acrescente o nome da passagem no array _catalogo abaixo. Só isso.
Comportamento: sorteia só entre livros ainda NÃO lidos, pra o jogador ver
todo o conteúdo escrito antes de qualquer repetição. Quando acabam os
livros novos, a lista zera e o ciclo recomeça (evitando que o loop trave
sem ter o que oferecer).
NOTA: Othello NÃO entra aqui de propósito. Ele é evento fixo do Ato 1
(PRIMEIRO_LIVRO -> OTHELLO), garantido como o primeiro livro sempre —
ver "CONHECIMENTO DE BASE DO LÚCIFER" em NOTAS_ROTEIRO.
REGRA (decidida): LIVROS-GATILHO TAMBÉM NÃO ENTRAM AQUI. Qualquer livro
que dispare um path ou final (ex: o de Omelas, que seta $gatilho_omelas
e força FINAL_FUGA) é cena de IDENTIDADE, não de textura — ver "REGRA
ARQUITETURAL" em NOTAS_ROTEIRO. Deixar esses no sorteio faria um caminho
inteiro do jogo depender de sorte, o que quebra a regra. Eles devem ser
oferecidos por condição própria (dia específico, threshold de atributo,
evento narrativo), não sorteados. Livro comum = textura = pode sumir numa
jogatina; livro-gatilho = identidade = precisa ser alcançável de forma
confiável.
ESCALA PREVISTA: ~20 livros no total, o suficiente pra cada jogatina
mostrar só um recorte do acervo (nem todos aparecem numa run só) — é
proposital, dá réplay. Por isso o sorteio evita repetição: com 20
títulos, repetir antes de esgotar seria frustrante.
============================================================ */
/* ============================================================
LEITURA DE ESTADO DO LÚCIFER (substitui HUD numérico pras 3
variáveis escondidas — $saude, $felicidade, $vinculo. Só
$estabilidade continua com número na tela, por ser do Adam, não
do Lúcifer — ver MeuHud.
Chamado em CICLO_PASSA, uma vez por ciclo. 3 estados por variável
(alto/médio/baixo). Thresholds abaixo são placeholder — ajustar
quando o balanceamento real do loop existir (ninguém testou ainda
quanto tempo leva pra sair de uma faixa pra outra).
Textos de alto/baixo são da Gi. Os de médio (marcados SUGESTÃO)
são rascunho meu só pra não faltar estado nenhum — trocar/cortar
à vontade. Cada lista aceita mais de uma linha; o widget sorteia
uma por vez pra não repetir sempre a mesma frase.
============================================================ */
<<widget "estadolucifer">>
<<set _fel_alta to ["Lúcifer recita poesia para si mesmo em voz alta."]>>
<<set _fel_media to ["Ele observa mais do que fala.", "Não sorri, mas também não foge do meu olhar."]>> /* SUGESTÃO */
<<set _fel_baixa to ["Ele me responde com frases curtas. Sim. Não. Talvez.", "Algo nele apagou."]>>
<<set _sau_alta to ["A pele dele está quente. Os olhos estão limpos.", "Ele se move sem esforço. Come com apetite."]>>
<<set _sau_media to ["Ele come, mas sem pressa.", "Dorme no horário, nem cedo, nem tarde."]>> /* SUGESTÃO */
<<set _sau_baixa to ["Ele cansa ao fim da tarde. Dorme mais cedo.", "As mãos tremem quando segura o livro."]>>
<<set _vin_alto to ["Ele me toca quando fala. A mão no braço. O ombro contra o ombro.", "Ele me olha quando entra na sala."]>> /* "ombro no ombro" ajustado pra "ombro contra o ombro" — confirmar */
<<set _vin_media to ["Ele responde quando eu pergunto.", "Fica por perto, sem se aproximar."]>> /* SUGESTÃO */
<<set _vin_baixo to ["Ele me cumprimenta. Formal. Polido. Distante.", "Ele fala comigo só quando precisa.", "Ele não me olha há dias."]>>
<<if $felicidade >= 67>>
<<set _linfel to _fel_alta.random()>>
<<elseif $felicidade <= 33>>
<<set _linfel to _fel_baixa.random()>>
<<else>>
<<set _linfel to _fel_media.random()>>
<</if>>
<<if $saude >= 67>>
<<set _linsau to _sau_alta.random()>>
<<elseif $saude <= 33>>
<<set _linsau to _sau_baixa.random()>>
<<else>>
<<set _linsau to _sau_media.random()>>
<</if>>
<<if $vinculo >= 67>>
<<set _linvin to _vin_alto.random()>>
<<elseif $vinculo <= 33>>
<<set _linvin to _vin_baixo.random()>>
<<else>>
<<set _linvin to _vin_media.random()>>
<</if>>
<<print _linfel>>
<<print _linsau>>
<<print _linvin>>
<</widget>>
<<widget "sortearlivro">><<nobr>>
<<set _catalogo to ["LIVRO_PSICOPATA", "LIVRO_EXEMPLO_REACAO"]>>
/* filtra só os que ainda não foram lidos */
<<set _disponiveis to _catalogo.filter(function (livro) { return !$livros_lidos.includes(livro); })>>
/* se já leu todos, zera o histórico e recomeça o ciclo */
<<if _disponiveis.length is 0>>
<<set $livros_lidos to []>>
<<set _disponiveis to _catalogo>>
<</if>>
<<set _escolhido to _disponiveis.random()>>
<<run $livros_lidos.push(_escolhido)>>
<<goto _escolhido>>
<</nobr>><</widget>>
<<widget "iniciarTerminalL22">>
/* Prepara o estado do minigame do terminal (ver TERMINAL_L22). Chamar uma
vez, na entrada da passagem. Modo A fixo por enquanto (candidatas
embaralhadas, sempre revela L-22) — Modo B (sortear qual dos 22 é
revelado) fica pra depois, decisão em aberto da Gi. */
<<set $term_candidatos to ["4F91B2", "9C3D7A", "1E88F0", "7B2C4D", "A5F930", "D041C6"]>>
<<run $term_candidatos.shuffle()>>
<<set $term_alvo to "9C3D7A">>
<<set $term_tentativas to 4>>
<<set $term_resolvido to false>>
<</widget>>
<<widget "terminalPalpite">>
/* args[0] = palpite escolhido. Compara com $term_alvo, desconta tentativa,
guarda o feedback em $term_feedback pra passagem exibir. */
<<set _acertos to matchPositions($args[0], $term_alvo)>>
<<if $args[0] is $term_alvo>>
<<set $term_resolvido to true>>
<<else>>
<<set $term_tentativas to $term_tentativas - 1>>
<</if>>
<<set $term_feedback to _acertos + " de " + $term_alvo.length + " caracteres na posição correta.">>
<</widget>>
<<widget "iniciarPerguntas">>
/* Banco de situações do Jogo das Perguntas (aprovado 10/09). 5 escritas
nesta sessão, meta ~10 no total — cresce com o tempo, sem pressa. Cada
item: texto (a situação hipotética) + opcoes (as 3 que o jogador escolhe
entre, na ordem que resolverPergunta espera pra cada índice) + fala (a
linha real do Lúcifer no reveal, pedido 14/09 — espaço pra Gi escrever
uma resposta em voz própria, não só "você acertou/errou" seco). Sorteia
uma ao entrar em JOGO_PERGUNTAS. PLACEHOLDER — tudo rascunho da Gi, pra
ela revisar/preencher. */
<<set $perg_situacoes to [
{
"texto": "[PLACEHOLDER — situação 1: traição. Alguém descobre que foi traído.]",
"opcoes": ["Perdoa", "Confronta", "Mata"],
"fala": ""
},
{
"texto": "[PLACEHOLDER — situação 2: pedido de perdão.]",
"opcoes": ["Perdoa", "Não perdoa", "Diz que não é necessário"],
"fala": ""
},
{
"texto": "[PLACEHOLDER — situação 3: o herói, abandona uma pessoa pra salvar cem.]",
"opcoes": ["Herói", "Covarde", "Não dá pra julgar sem saber por quê"],
"fala": ""
},
{
"texto": "[PLACEHOLDER — situação 4: alguém que está morrendo, descobrir quando/como.]",
"opcoes": ["Descobre", "Prefere não saber", "Delega a decisão"],
"fala": ""
},
{
"texto": "[PLACEHOLDER — situação 5: desconhecido ferido na estrada.]",
"opcoes": ["Ajuda direto", "Descobre quem é primeiro", "Segue o caminho"],
"fala": ""
}
]>>
<<set $perg_indice to random(0, $perg_situacoes.length - 1)>>
<<resolverPergunta $perg_indice>>
<</widget>>
<<widget "resolverPergunta">>
/* args[0] = índice da situação. Decide $perg_resposta_real (o texto exato
de uma das 3 opções daquela situação) a partir de $vinculo/$felicidade/
$estabilidade — nunca aleatório, nunca escolha do jogador. Remapeado
14/09 pras três variáveis (antes só usava vinculo/estabilidade,
$felicidade — o estado emocional do PRÓPRIO Lúcifer — não entrava em
nada, o que era estranho pra um jogo sobre prever a reação dele). Cada
situação usa o eixo que faz sentido pro tema, não distribuição forçada:
0, 1 (traição, pedido de perdão) → $vinculo, é sobre confiar em alguém.
2, 4 (herói, desconhecido ferido) → $felicidade, sobre capacidade de
julgar/cuidar de estranhos, não sobre confiança no Adam.
3 (alguém morrendo) → continua em $estabilidade, mas por lógica de
contágio (o Adam desmoronando funciona como presságio de fragilidade
pro Lúcifer) — ESSA LÓGICA PRECISA APARECER NO TEXTO da situação 3
quando a Gi escrever, senão o eixo fica arbitrário pro jogador.
Mapeamentos são rascunho, calibração final é da Gi. Só usa variáveis que
já existem no jogo. */
<<switch $args[0]>>
<<case 0>> /* Traição — vinculo */
<<if $vinculo gte 65>>
<<set $perg_resposta_real to "Perdoa">>
<<elseif $vinculo lt 65 and $felicidade lte 30>>
<<set $perg_resposta_real to "Mata">>
<<else>>
<<set $perg_resposta_real to "Confronta">>
<</if>>
<<case 1>> /* Pedido de perdão — vinculo (secundário felicidade, diferente do 0 de propósito) */
<<if $vinculo gte 65>>
<<set $perg_resposta_real to "Perdoa">>
<<elseif $vinculo lt 30>>
<<set $perg_resposta_real to "Diz que não é necessário">>
<<elseif $felicidade lte 35>>
<<set $perg_resposta_real to "Não perdoa">>
<<else>>
<<set $perg_resposta_real to "Diz que não é necessário">>
<</if>>
<<case 2>> /* O herói — felicidade */
<<if $felicidade gte 65>>
<<set $perg_resposta_real to "Não dá pra julgar sem saber por quê">>
<<elseif $felicidade lte 30>>
<<set $perg_resposta_real to "Covarde">>
<<else>>
<<set $perg_resposta_real to "Herói">>
<</if>>
<<case 3>> /* Alguém morrendo — estabilidade do Adam, efeito de contágio (ver comentário acima) */
<<if $estabilidade gte 60>>
<<set $perg_resposta_real to "Descobre">>
<<elseif $estabilidade lte 30>>
<<set $perg_resposta_real to "Prefere não saber">>
<<else>>
<<set $perg_resposta_real to "Delega a decisão">>
<</if>>
<<case 4>> /* Desconhecido ferido — felicidade */
<<if $felicidade gte 65>>
<<set $perg_resposta_real to "Ajuda direto">>
<<elseif $felicidade lte 30>>
<<set $perg_resposta_real to "Segue o caminho">>
<<else>>
<<set $perg_resposta_real to "Descobre quem é primeiro">>
<</if>>
<</switch>>
<</widget>>