Mapa e Movimentação

De MysteryRealms
Revisão de 12h05min de 11 de abril de 2025 por Rodrigogml (discussão | contribs)
Ir para navegação Ir para pesquisar

A PlayTale Engine oferece suporte para dois tipos complementares de movimentação do jogador: entre Localidades e dentro de uma Localidade. Cada um desses modos utiliza lógicas distintas, mas coerentes com a Estrutura de Localização.

Mapa Global (Entre Localidades)

O mapa global é representado por uma malha cartesiana de coordenadas inteiras (formato [x;y]), onde cada ponto representa uma Localidade.

  • Cada célula corresponde a uma área de 10 km² (10 km × 10 km).
  • As coordenadas são usadas apenas internamente, para validar cálculo de distância e deslocamento. Elas nunca são exibidas ao jogador.
  • A distância entre dois pontos pode ser calculada com o Teorema de Pitágoras, com base nas coordenadas inteiras.
  • É recomendado que o jogo exiba ao jogador sempre a distância entre dois pontos em termos relativos:
  • Exemplo: "2 dias de caminhada para o sul", "1 dia e meio a cavalo para o leste", ou esmo em distância: "15Km daqui", "2km a oeste de X".


Exemplo

  • [10;15] está a 10 km a oeste de [11;15]
  • Distância entre [10;15] e [12;18]:

(1210)2+(1815)2×10=4+9×10=13×1036km


Navegação

Toda a navegação do jogador no jogo ocorre exclusivamente entre Zonas e Ambientes. Esses são os únicos dois níveis da Estrutura de Localização que possuem representação visual direta no jogo (como imagens e ilustrações específicas). Ou seja, são os únicos "lugares" que o jogador realmente vê e nos quais interage diretamente no sentido espacial e navegável.

Apesar de Zona e Ambiente serem categorias distintas para fins organizacionais e narrativos, no contexto da navegação, ambas têm exatamente a mesma função. A distinção entre elas é estrutural: a Zona representa o local principal (geralmente externo ou de acesso geral), enquanto os Ambientes são subdivisões internas ou pontos específicos de interação dentro dessa Zona.

O jogador pode se mover:

  • De uma Zona para outra Zona;
  • De um Ambiente para outro Ambiente dentro da mesma Zona;
  • Também é tecnicamente possível mover-se entre Ambientes de Zonas diferentes — o sistema não restringe isso — embora não seja uma prática comum, sendo usada apenas em situações excepcionais (ex: passagens secretas, túneis, edifícios interconectados, etc.).

Toda Zona é um ponto navegável, mesmo sem possuir Ambientes internos. Da mesma forma, uma Zona pode (e frequentemente deve) conter Ambientes para estruturar melhor os pontos de interação específicos, mas sua navegação como lugar não depende da existência desses ambientes. Ambientes e Zonas são ambos elementos navegáveis independentes, com ou sem presença um do outro.

Por padrão, ao entrar em uma Zona, o jogador será posicionado no ambiente definido como ponto inicial (caso haja ambientes), ou permanecerá na própria Zona como ponto visual e narrativo direto. A engine trata esse comportamento automaticamente, permitindo que scripts e eventos definam se a entrada ocorre direto em um ambiente ou na Zona geral.

Todas as interações visuais, eventos locais, gatilhos de entrada e saídas, ativação de scripts narrativos e movimentação ocorrem sempre dentro de Zonas ou Ambientes. As estruturas superiores (como Localidades, Regiões ou Domínios) são abstrações de organização mundial, sem navegação direta pelo jogador.

A partir da Zona ou Ambiente em que o jogador se encontra, é possível determinar toda a estrutura superior da localização. Ou seja, os níveis como Localidade, Região, Domínio, Continente e Mundo são automaticamente inferidos com base no lugar atual. Isso significa que o sistema não precisa rastrear em qual Localidade o jogador está diretamente: basta saber a Zona ou Ambiente atual, pois todos os níveis superiores são uma consequência hierárquica dessa posição. Essa abordagem garante consistência e simplicidade na lógica de navegação e localização global.

Conexão

O conceito de Conexão é a formalização da ligação entre duas Zonas e/ou Ambientes, permitindo a navegação entre eles. Toda movimentação possível no jogo depende da existência de uma conexão definida entre dois pontos.

Cada Conexão possui os seguintes atributos:

  • Origem: A Zona ou Ambiente de onde parte a conexão.
  • Destino: A Zona ou Ambiente para onde a conexão leva.
  • Direção Inversa (bidirecional): Indica se é possível retornar do Destino para a Origem. Por padrão, conexões são bidirecionais. Entretanto, situações como descidas em escorregadores, passagens de mão única, quedas, portas trancadas por dentro, entre outras, podem tornar a conexão unidirecional.
  • Distância (em metros): A distância física entre Origem e Destino. Esse valor é essencial para o cálculo automático do tempo de deslocamento, influenciado por atributos do jogador (como velocidade ou cansaço), obstáculos do terreno, tipo de movimento (caminhada, corrida, rastejamento, etc.), ou mesmo condições mágicas.

Essas conexões formam a malha navegável do jogo, e sua definição correta é fundamental para a coerência da movimentação e da progressão do jogador dentro do mundo de jogo.


Recomendação de Documentação da Mapeamento

Para documentar a navegação e conexões do mundo de jogo, sugerimos criar uma página específica chamada Navegação dentro da documentação do jogo (em Story Telling Mystery Realms).

A estrutura da página deve obedecer aos seguintes níveis hierárquicos:

  • = Nome da Região = (nível 1) – Apenas título, sem conteúdo textual.
  • == Nome da Localidade == (nível 2) – Apenas título, sem conteúdo textual.
  • === Nome da Zona === (nível 3) – Aqui são listadas as conexões da Zona.
  • ==== Nome do Ambiente ==== (nível 4) – Aqui são listadas as conexões do Ambiente, se existirem.

Cada Zona e Ambiente deve listar suas conexões diretas utilizando o seguinte formato padronizado:


  • Bidirecional: Sim|Não
  • Condições: (A ser definido melhor)
  • Classificação: Pacificado|Hostil|Selvagem
  • Notas Narrativas: (Informações narrativas relevantes)

É obrigatório que conexões bidirecionais estejam descritas em ambos os pontos conectados, garantindo clareza e rastreabilidade da malha de navegação.

Exemplo de Uso

= Terras Centrais =

== Langur ==

=== Praça das Vozes ===
* Para [[#Taverna Asa Quebrada]] – 35m
:* '''Bidirecional:''' Sim
:* '''Condições:''' Nenhuma. Livre passagem a qualquer hora do dia.
:* '''Classificação:''' Pacificado
:* '''Notas Narrativas:''' A entrada da taverna é discreta, quase escondida entre duas casas de pedra antiga. Lanternas fracas iluminam a porta de madeira escura.

=== Taverna Asa Quebrada ===

==== Salão Principal ====
* Para [[#Cozinha]] – 12m
:* '''Bidirecional:''' Sim
:* '''Condições:''' Apenas acessível quando a porta interna está destrancada (normalmente aberta durante o expediente).
:* '''Classificação:''' Pacificado
:* '''Notas Narrativas:''' A cozinha pode ser vista parcialmente do balcão, com cheiros constantes de ensopados e carne assada.

==== Cozinha ====
* Para [[#Salão Principal]] – 12m
:* '''Bidirecional:''' Sim
:* '''Condições:''' Ver acima.
:* '''Classificação:''' Pacificado
:* '''Notas Narrativas:''' Pequena e bem organizada, com uma porta lateral que leva ao beco dos fundos (não documentada ainda).