Voltar para o Blog
Quest Log

Como Criar um Jogo no Twine: Ficção Interativa do Zero

Mapa de passagens conectadas por setas na tela do editor Twine, com caixas de texto ligadas por linhas

Aprenda a criar um jogo no Twine do zero: instalar, montar passagens, ligar escolhas com links e usar variaveis com macros do Harlowe.

Se voce quer contar uma historia interativa, daquelas onde o leitor decide pra onde ir e a trama muda conforme as escolhas, aprender a criar um jogo no Twine e o caminho mais curto que existe. O Twine e uma ferramenta gratuita e no-code pra ficcao interativa: voce escreve texto, liga trechos com links e o resultado e um jogo de escolhas que roda em qualquer navegador. Nesse guia eu vou te levar do zero ate uma historia ramificada com variaveis funcionando, mostrando codigo real que voce pode copiar e testar.

Antes de tudo, um aviso honesto: o Twine brilha em texto e escolha, e nao serve pra nada em tempo real. Nao espere fazer plataforma, acao ou qualquer coisa com fisica e movimento. O Twine e feito de palavras e decisoes. Se o seu jogo cabe num livro-jogo, aquele estilo "se voce abrir a porta, va para a pagina 42", o Twine e perfeito. Se voce quer pulos e tiros, e a ferramenta errada.

Por que o Twine e o caminho mais curto pra criar um jogo de escolhas

A maior barreira pra quem quer fazer jogo e a programacao. O Twine derruba essa barreira quase inteira. A unidade basica do Twine e a passagem, um bloco de texto com um nome. Voce cria varias passagens, liga uma na outra com links, e pronto: o jogador clica nos links e navega pela sua historia. Isso sozinho ja e um jogo completo de ficcao interativa, sem uma linha do que a maioria chamaria de codigo.

O Twine tambem exporta tudo como um unico arquivo HTML. Nao precisa de servidor, nao precisa instalar nada pra jogar. Voce manda o arquivo pra um amigo, ele abre no navegador e joga. Pra publicar, sobe esse mesmo arquivo no itch.io e acabou. Poucas ferramentas tem essa distancia tao curta entre "tive uma ideia" e "tem gente jogando".

Se o que te atrai e a parte de contar historia com bifurcacoes, vale entender os fundamentos antes de escrever. Uma leitura sobre como estruturar narrativa ramificada em jogos vai te poupar de becos sem saida na trama e escolhas que nao importam.

Instalar e usar: versao web e versao desktop

O Twine tem duas formas de uso, e as duas sao gratuitas.

A versao web voce acessa direto pelo navegador, sem instalar nada. E otima pra experimentar em cinco minutos. O cuidado: ela salva o seu projeto no armazenamento do proprio navegador. Se voce limpar os dados de navegacao ou trocar de maquina, perde tudo. Use a versao web pra brincar, nao pra um projeto que importa.

A versao desktop voce baixa e instala no Windows, macOS ou Linux. Ela salva os projetos como arquivos no seu computador, o que e muito mais seguro. Pra qualquer coisa seria, recomendo a desktop desde o comeco. As duas usam a mesma interface e os mesmos formatos, entao o que voce aprende numa serve na outra.

Ao abrir o Twine, voce cria uma nova historia e cai numa tela grande e vazia com uma unica caixa escrito "Start" ou "Inicio". Essa caixa e a sua primeira passagem, o ponto onde o jogo comeca. Toda a sua historia vai viver nesse mapa: caixas conectadas por setas, cada seta sendo um caminho que o jogador pode tomar.

Clique duas vezes na passagem inicial pra edita-la. Aqui voce escreve o texto que o jogador ve. A magica esta na sintaxe de link do Twine: colchetes duplos.

A forma mais simples e [[Nome da Passagem]]. Isso cria um link e, se a passagem ainda nao existe, o Twine cria ela automaticamente pra voce no mapa. Olha um exemplo de uma passagem inicial:

Voce acorda numa cabana fria. A porta range com o vento.
Do lado de fora, uma trilha some na neblina.

[[Abrir a porta]]
[[Ficar na cama mais um pouco]]

Ao salvar, o Twine cria duas caixas novas ligadas por setas: "Abrir a porta" e "Ficar na cama mais um pouco". O jogador vera o texto e, embaixo, dois links clicaveis. Cada clique leva pra passagem de mesmo nome.

Na pratica, voce quase nunca quer que o texto do link seja igual ao nome da passagem. Pra separar as duas coisas, use a seta:

A trilha se divide em duas.

[[Seguir pela esquerda->trilha_esquerda]]
[[Descer para o rio->margem_rio]]

Aqui, Seguir pela esquerda e o texto que o jogador le, e trilha_esquerda e o nome interno da passagem pra onde o link leva. A seta -> aponta do texto pro destino. Existe tambem a forma invertida, [[trilha_esquerda<-Seguir pela esquerda]], que faz a mesma coisa com a seta ao contrario. Use a que ficar mais confortavel de ler.

Com so isso, links e passagens, voce ja consegue montar um livro-jogo inteiro. Escreva uma passagem, ofereca duas ou tres escolhas no fim, ligue cada escolha a uma nova passagem, e repita. A estrutura toda aparece visualmente no mapa, e voce enxerga na hora onde a historia trava ou vira um emaranhado.

Próximo nível
Quer aprender isso na prática?

No CursoGame.Dev você sai dos tutoriais soltos e constrói jogos publicáveis, com trilha progressiva, quests práticas e feedback real.

Conhecer a plataforma
+500 alunos4.9/5Garantia 7 dias

O formato Harlowe: dando estado ao seu jogo

Ate agora a historia e linear em cada ramo: o jogador escolhe e vai. Mas um bom jogo de escolhas lembra do que voce fez. Foi gentil com aquele personagem? Ele age diferente depois. Pegou a chave? A porta trancada abre. Pra isso o Twine usa o formato Harlowe e suas macros.

O Harlowe e o formato de historia padrao do Twine, ou seja, a linguagem que interpreta o que voce escreve. Toda historia nova ja vem em Harlowe, entao voce nao precisa configurar nada. As macros do Harlowe sao comandos entre parenteses que fazem alguma coisa alem de mostrar texto.

Guardando informacao com variaveis e a macro set

Uma variavel e uma caixinha onde voce guarda um dado: um numero, um texto, ou um verdadeiro/falso. No Harlowe, o nome de uma variavel comeca com cifrao. Pra colocar um valor dentro dela, use a macro (set:).

Voce estende a mao para o estranho e conta a verdade sobre o mapa.

(set: $confiou to true)
(set: $ouro to 10)

Ele assente devagar.

[[Continuar pela ponte->ponte]]

Nessas linhas, $confiou guarda o valor true (verdadeiro) e $ouro guarda o numero 10. Essas informacoes ficam salvas enquanto o jogador avanca, e voce pode consultar elas em qualquer passagem depois dessa. Da pra mostrar o valor de uma variavel no texto so escrevendo o nome dela, por exemplo "Voce tem $ouro moedas."

Mudando a historia com a macro if

O poder de verdade vem quando o texto muda conforme o que ficou guardado. Pra isso existe a macro (if:). Ela checa uma condicao e, se ela for verdadeira, mostra o trecho entre colchetes.

Voce chega ao portao do vilarejo. O guarda cruza os bracos.

(if: $confiou is true)[
O estranho da estrada aparece do seu lado e te reconhece.
O guarda relaxa e abre o portao sem discutir.

[[Entrar no vilarejo->praca]]
]

(if: $confiou is false)[
Ninguem te conhece aqui. O guarda pede uma moeda de pedagio.

[[Pagar 5 de ouro->praca]]
[[Insistir e discutir->discussao]]
]

Repare no is, que compara valores no Harlowe. Se $confiou for true, o jogador ve o primeiro trecho e entra de graca. Se for false, ve o segundo e precisa pagar ou brigar. A mesma passagem produz duas experiencias diferentes, dependendo de uma escolha que o jogador fez la atras. Isso e o coracao da ficcao interativa: consequencia.

Da pra ir alem com comparacoes de numero. Por exemplo, so deixar o jogador subornar se tiver ouro suficiente:

(if: $ouro >= 5)[
[[Oferecer 5 de ouro ao guarda->suborno]]
]

(if: $ouro < 5)[
Voce mal tem trocado no bolso. Nao da pra subornar ninguem.
]

O >= significa "maior ou igual", e o < significa "menor que". Com (set:) pra guardar, (if:) pra checar e essas comparacoes, voce ja tem tudo pra fazer um jogo que reage ao jogador, tudo sem sair do Twine.

Do rascunho ao jogo publicado

Com passagens, links e essas poucas macros, voce cobre a imensa maioria do que uma ficcao interativa precisa. O resto e escrita. E aqui esta o ponto que separa um projeto que sai de um que morre no meio: a parte dificil nunca foi a ferramenta, e sempre a historia. Escreva escolhas que importam, onde cada bifurcacao muda algo de verdade, e evite as escolhas falsas que levam todas pro mesmo lugar.

Se voce quer que os personagens conversem de um jeito vivo em vez de so despejar paragrafos, estudar tecnicas de como escrever um bom sistema de dialogo pra jogos ajuda muito, mesmo num jogo puro de texto como o do Twine. E se em algum momento a sua ideia crescer pra incluir retratos de personagem, trilha e cenas visuais, talvez valha migrar pra uma ferramenta focada nisso: nesse caso, veja como criar uma visual novel no Ren'Py, que pega o mesmo espirito narrativo e adiciona imagem e som.

Comece pequeno. Faca uma historia de cinco a dez passagens com uma escolha que muda o final. Termine ela de verdade, exporte o HTML e mande pra alguem jogar. Um jogo curto e terminado ensina mais que um epico que voce nunca acaba. No CursoGame.Dev a gente foca justamente nisso: te ajudar a sair da ideia solta e chegar num jogo terminado e publicado, do primeiro rascunho ate o botao de comprar. O Twine e um otimo lugar pra dar o primeiro passo hoje mesmo.

Perguntas frequentes

Preciso saber programar pra usar o Twine?

Nao. O Twine e no-code: voce escreve texto e cria links entre passagens arrastando caixas na tela. As variaveis e macros do Harlowe sao opcionais e simples, mais parecidas com preencher uma ficha do que com programar de verdade. Da pra fazer uma historia inteira so com links.

O Twine e gratuito mesmo pra publicar meu jogo?

Sim. O Twine e open source e gratuito, inclusive pra projetos comerciais. Ele exporta sua historia como um unico arquivo HTML que roda em qualquer navegador, e voce pode vender ou distribuir esse arquivo onde quiser, como no itch.io, sem pagar licenca.

Da pra fazer jogo de acao ou plataforma no Twine?

Nao. O Twine e feito pra ficcao interativa baseada em texto e escolhas. Ele nao tem fisica, sprites em movimento nem controle em tempo real. Pra acao ou plataforma, use uma engine como a Godot. Force o Twine so no que ele faz bem: narrativa ramificada.

Qual a diferenca entre a versao web e a versao desktop do Twine?

As duas usam o mesmo editor e formatos. A versao web roda no navegador e salva no armazenamento do proprio navegador, o que e pratico mas arriscado se voce limpar os dados. A desktop salva arquivos no seu computador e e mais segura pra projetos serios. Recomendo a desktop.

O que e o Harlowe no Twine?

Harlowe e o formato de historia padrao do Twine, a linguagem que define como escrever links, variaveis e condicoes. Ele usa macros entre parenteses, como (set:) e (if:). Existem outros formatos, como Harlowe e SugarCube, mas o Harlowe e o melhor ponto de partida pra iniciante.