RBE-SIM é um simulador de civilização baseado na web, construído em Laravel. Os jogadores habitam um planeta partilhado, escolhem uma cidade para viver, tomam decisões diárias — o que comer, quantas horas dormir, como contribuir para a comunidade — e essas decisões têm efeitos reais e acumulados sobre o mundo: o clima muda, os recursos escasseiam, as cidades evoluem.
Acede já à versão demo: aqui
O conceito de base é um modelo de Resource-Based Economy (RBE): não há dinheiro. O que existe são recursos, bem-estar, pressão ambiental e contribuição voluntária.
O Jogador (/me)
Cada conta tem um Player com atributos fisiológicos e sociais:
- Atributo Significado
- energy Energia física (0–100)
- hunger Fome (0–100)
- happiness_level Felicidade
- knowledge_level Conhecimento acumulado
- tech_skill_level Capacidade técnica
- social_skill_level Capacidade social
Acções do jogador
O jogador pode a qualquer momento:
POST /me/eat — comer (afecta fome, energia, pressão de recursos da cidade)
POST /me/sleep — dormir (recupera energia)
POST /me/contribute — contribuir para uma região/cidade (gasta energia, melhora estabilidade social)
O World Tick — o coração do simulador
A cada hora (via cron), o WorldTickService corre em sequência:
WorldTickService::run() ├── PlayerTickService::run() → processa cada cidadão ├── CityTickService::run() → actualiza o estado de cada cidade └── avança o tempo (dia/ano do mundo)
O PlayerTickService simula um dia de vida de cada cidadão:
- Resolve intenções (sono, lazer, aprendizagem, contribuição, dieta)
- Aplica fricção humana (overcommit cansa, tempo livre recupera)
- Traduz para fisiologia (sono ≥ 7h recupera energia, fome aumenta sem comer)
- Propaga efeitos da dieta para a cidade (dieta vegan reduz pressão de recursos; omnívora aumenta)
- Regista contribuição real ponderada pelo bem-estar do cidadão
- Guarda histórico de localização
- O ClimateEngine gera eventos naturais aleatórios com probabilidades diferenciadas:
Evento Categoria Probabilidade
Tempestade Atmosférico 30%
Seca Atmosférico 20%
Cheias Hidrológico 20%
Erupção solar Solar 15%
Terramoto Geológico 10%
Vulcão Geológico 5%
O estado do mundo
O tempo avança como um calendário interno: 365 dias por ano, acumulando história. O estado global está na tabela world_state (ano + dia actuais).
O que torna isto diferente
A mecânica central não é de conquista nem de acumulação de pontos. É de interdependência sistémica: o bem-estar do teu jogador afecta a cidade; a cidade afecta o clima; o clima afecta o teu bem-estar. Uma pessoa com fome contribui menos — não por punição, mas porque o modelo de bem-estar o reflecte matematicamente.
Estado actual (v0.1.0 — Maio 2026)
O simulador tem a base jogável implementada. O próximo foco será expor as intenções diárias ao jogador como escolhas reais (em vez de defaults automáticos) e ligar os eventos climáticos a consequências tangíveis nas cidades.