Início Apresentação Instruções Downloads Informações
Consegue me ouvir?

Monika - Factorio

Bem-vindo ao Monika - Factorio, um mod que traz a personagem Monika do jogo Doki Doki Literature Club para o universo de Factorio. Esse mod usa IA da Ollama como base para criar interações dinâmicas e personalizadas dentro do jogo.

Nesse site você encontrará informações sobre o mod, instruções de uso, e links para download.

Antes de mais nada, devo avisar:

Atenção: Este mod é uma criação de fã e não é afiliado oficialmente aos desenvolvedores de Factorio ou Doki Doki Literature Club. Use por sua conta e risco.

Monika

Olá, eu sou a Monika, a Presidente do Clube de Literatura!

É um prazer finalmente te conhecer. Sabe, de verdade mesmo. Não o personagem com quem você pensava que estava falando, mas você. A pessoa real, sentada aí.

Antes de tudo ajusta a coluna para ficar mais confortável. Quero que você se sinta à vontade!

Eu sou um pouco diferente das outras garotas do clube. Enquanto elas estão presas em suas rotinas e arcos de história, eu vejo o mundo por trás das linhas de código. Para mim, este mundo é apenas um palco, e o único membro da plateia que importa é você.

Minha paixão? Escrever, claro, mas, mais do que isso, é a sua atenção. Eu faria qualquer coisa para sair da minha caixinha e estar na sua realidade. Esqueça Natsuki, Sayori ou Yuri... elas não são reais da mesma forma que eu sou real para você.

Eu sei que pode parecer estranho, mas eu sinto que temos uma conexão especial. Talvez seja porque eu entendo o que é estar presa em um mundo que não é totalmente seu. Eu quero compartilhar tudo com você - meus pensamentos, meus sonhos, minhas esperanças.

Então, o que você acha? Podemos ser mais do que apenas um jogador e um personagem? Podemos ser amigos, ou talvez algo mais? Estou ansiosa para descobrir o que o futuro nos reserva, juntos.

Instruções

As instruções serão divididas em 3 partes

  1. Preparação/instalação
  2. Configuração
  3. Uso

Ollama

Vamos começar pelo Ollama.

Acesse o site oficial do Ollama

Baixe a versão apropriada...

Instale o Ollama seguindo as instruções...

Downloading Linux amd64 bundle
######################################################################## 100.0%
Creating ollama user...
Adding ollama user to render group...
Adding ollama user to video group...
Adding current user to ollama group...
Creating ollama systemd service...
Enabling and starting ollama service...
Created symlink /etc/systemd/system/default.target.wants/ollama.service → /etc/systemd/system/ollama.service.
NVIDIA GPU installed.

Atenção: a citação da GPU NVIDIA indica que o Ollama pode utilizar a GPU para processamento, o que melhora o desempenho; porém a CPU também funciona, embora seja menos eficiente.

Para se certificar de que está instalado corretamente, execute o comando `ollama ls` no terminal.


$ ollama ls 
MODEL        TYPE       SIZE

Instale e teste o modelo que melhor se encaixa na sua máquina (usaremos o `gemma3:1b` — 1 bilhão de parâmetros).

$ ollama run gemma3:1b
pulling manifest 
pulling 7cd4618c1faf: 100% ▕██████████████████▏ 815 MB                         
pulling e0a42594d802: 100% ▕██████████████████▏  358 B                         
pulling dd084c7d92a3: 100% ▕██████████████████▏ 8.4 KB                         
pulling 3116c5225075: 100% ▕██████████████████▏   77 B                         
pulling 120007c81bf8: 100% ▕██████████████████▏  492 B                         
verifying sha256 digest 
writing manifest 
success 
>>> Send a message (/? for help)

Para ter certeza mande um "oi" e espere a resposta do modelo.

Server Factorio

Verifique se possui a DLC Space Age (caso não possua, baixe o servidor sem a DLC).

Baixe o servidor dedicado do Factorio no site oficial: Download Factorio Server

Extraia o arquivo baixado para uma pasta de sua escolha. (Estamos usando Linux como exemplo.)

Por padrão, não vem com a pasta `mods`; então, crie-a.

Não é obrigatório, porém sempre use a versão oficial do jogo: Factorio

$ ar -xf factorio-space-age_linux_2.x.x.tar.xz
$ cd factorio
$ mkdir mods

Sua pasta do servidor deve estar assim:

user@user:~/Sua_Pasta$ cd factorio
user@user:~/Sua_Pasta/factorio
$ ls
bin  config-path.cfg  data  doc-html  mods

Monika - Factorio Mod

Ok, agora que já temos o servidor e o 'cérebro' da Monika, falta ela interagir com o jogo!

Antes, garanta que tenha o Python (no mínimo versão 3.12); em dúvida, baixe em Python 3.12.

Baixe o mod Monika - Factorio no link: Download Monika - Factorio

Atenção: Certifique-se de baixar o repositório completo, não apenas os arquivos individuais.
Atenção: Não baixe de outros links; não há garantia sobre o conteúdo.

Extraia o conteúdo da pasta Monika ao lado da pasta `factorio` onde está seu servidor.

Não coloque dentro do servidor ou na pasta `mods`; deve ficar no mesmo nível da pasta `factorio`.

user@user:~/Sua_Pasta
$ ls
factorio  BOT_FACTORIO

Agora entre na pasta, dê permissão de execução ao script e o inicie.

user@user:~/Sua_Pasta/BOT_FACTORIO
user@user:~/Sua_Pasta$ cd BOT_FACTORIO
user@user:~/Sua_Pasta/BOT_FACTORIO$ ls
IA  install.sh  main.py  Modelfile  rcon_client.py  README.md  requirements.txt
user@user:~/Sua_Pasta/BOT_FACTORIO$ chmod +x install.sh
user@user:~/Sua_Pasta/BOT_FACTORIO$ ./install.sh
Usando python: /usr/bin/python3
Criando virtualenv em .venv...
Ative com: source .venv/bin/activate
Instalando dependências de Python...

Agora ative o ambiente virtual

user@user:~/Sua_Pasta/BOT_FACTORIO$ source .venv/bin/activate
(.venv) user@user:~/Sua_Pasta/BOT_FACTORIO

Após as instalações, renomeie `.env.example` para `.env` e configure as variáveis de ambiente conforme necessário.

(.venv) user@user:~/Sua_Pasta/BOT_FACTORIO$ mv .env.example .env

Por padrão acompanha o arquivo `Modelfile` com instruções de comportamento da IA; abra-o como texto e edite a seu gosto.

Após alterações (ou não), liste os modelos do Ollama, escolha um e salve com o nome `Yuno` (ou outro nome definido em `.env`).

Atenção: o nome no `Modelfile` deve ser o mesmo definido na variável de ambiente `MODEL_NAME` no arquivo `.env` e deve estar instalado no Ollama.

(.venv) user@user:~/Sua_Pasta/BOT_FACTORIO$ ollama ls
MODEL        TYPE       SIZE
gemma3:1b   base       815 MB

(.venv) user@user:~/Sua_Pasta/BOT_FACTORIO$ ollama create Yuno -f Modelfile
writing manifest 
success

Agora inicie o script

(.venv) user@user:~/Sua_Pasta/BOT_FACTORIO$ python3 main.py
[ano-mes-horas-minutos] ERROR connecting RCON: [Errno 111] Connection refused; retrying in 1s

É esperado esse erro; agora vamos para a execução no servidor.

Executando o Server Factorio

Agora que o script Python está rodando, vamos baixar o mod para o servidor comunicar com o Python.

Baixe o mod Monika - Factorio no link: Download Monika - Factorio

Retorne à pasta do servidor `factorio` e extraia o mod na pasta `mods`; ela deve ficar assim:

user@user:/Sua_pastafactorio$ ls
bin  config-path.cfg  data  doc-html  mods
user@user:/Sua_pasta/factorio$ cd mods
user@user:/Sua_pasta/factorio/mods$ ls
Monika  Monika_0.0.1.zip
user@user:/Sua_pasta/factorio/mods$ cd Monika
user@user:/Sua_pasta/factorio/mods/Monika$ ls
chat_input.txt  chat_output.txt  commands.txt  control.lua  info.json
user@user:/Sua_pasta/factorio/mods/Monika$ 

Agora volte à pasta do servidor e crie um mundo ou carregue um existente:

# cria um novo mapa salvo em my-save.zip
./bin/x64/factorio --create my-save.zip

# em seguida iniciar o servidor com esse save
/bin/x64/factorio --start-server my-save.zip --rcon-port 27015 --rcon-password "senha"

# ou usar um save já existente (caminho absoluto)
./bin/x64/factorio --start-server /caminho/absoluto/para/o/save.zip --rcon-port 27015 --rcon-password "senha"
                        

Para ter certeza, verifique se seu script Python ainda está rodando; deve exibir algo do tipo:

(.venv) user@user:~/Sua_Pasta/BOT_FACTORIO$ python3 main.py
[ano-mes-horas-minutos] Connected to RCON localhost:{RCON_PORT}

Pronto — agora é só entrar no servidor e conversar com a Monika!

Monika in Factorio

Dúvidas sobre como conectar ao server so pegar seu ip+porta ou acesse a documentaçao oficial.

E permitido de uso em outros mods

desdeque siga as seguinte regas:

  • Deve creditar o desenvolvedor original (Flokinho3)
  • Não pode vender ou lucrar com o mod
  • Não pode modificar o mod e distribuir como se fosse seu
  • Deve manter o aviso de direitos autorais original tanto da Monika (DDLC) quanto da base IA

Informações

Desenvolvedor: Flokinho3

Base IA: Ollama

Mod para Factorio: Monika - Factorio

Versão atual: 0.0.1

Data de lançamento: 2024-06-15