User:Camponez/WIP: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
Line 307: Line 307:
No [http://www.factorioforums.com/forum/viewtopic.php?f=18&t=8016&p=63691#p63561 artigo que descreve a geração ]:
No [http://www.factorioforums.com/forum/viewtopic.php?f=18&t=8016&p=63691#p63561 artigo que descreve a geração ]:
: [[File:Factorio-Perlin-Noise.png]]
: [[File:Factorio-Perlin-Noise.png]]
Topo: Configurações normais, Meio: O mesmo, mas com alta '''frequência''' (note a mesma curva, mas com um formato mais denso), Abaixo: Mesmo do topo, mas em um nível mais alto = '''tamanho''' maior.
Topo: Configurações normais, Meio: O mesmo, mas com alta '''frequência''' (note a mesma curva, mas com um formato mais denso), Abaixo: Mesmo do topo, mas em um nível mais alto = '''tamanho''' maior.
A linha ondulada azul é uma função de ruído interno, a linha preta é um "nível" usado para determinar a localização dos recursos, as linhas vermelhas são recursos realmente posicionados. A alta frequência refere-se principalmente à função de ruído. Aumentar a frequência aumenta a contagem de campos de recursos e diminui seu tamanho e distância entre eles. Esse mecanismo é usado durante toda a geração do mapa no Factorio, com alguns ajustes. O gerador de mapas funciona em cada bloco, então os recursos são colocados em um bloco x se f(x) >  0. A quantidade de recursos bloco é fornecida por f(x) * riqueza.
A linha ondulada azul é uma função de ruído interno, a linha preta é um "nível" usado para determinar a localização dos recursos, as linhas vermelhas são recursos realmente posicionados. A alta frequência refere-se principalmente à função de ruído. Aumentar a frequência aumenta a contagem de campos de recursos e diminui seu tamanho e distância entre eles. Esse mecanismo é usado durante toda a geração do mapa no Factorio, com alguns ajustes. O gerador de mapas funciona em cada bloco, então os recursos são colocados em um bloco x se f(x) >  0. A quantidade de recursos bloco é fornecida por f(x) * riqueza.



Revision as of 11:53, 12 June 2020

A geração de mundo é, em resumo, uma série de configurações que definem como será o mundo quando gerado. Isso pode alterar dramaticamente a jogabilidade - um novo jogador é aconselhável para começar com as configurações padrão antes de decidir mudar seu mundo.

Como isso funciona

: MapGeneratorOverview.png

Uma explicação mais técnica da mecânica de geração mundial é que o gerador de mapas gera a maior parte do mundo com um algoritmo chamado "Perlin Noise". Em suma, funciona um pouco como as ondas no mar.


Tudo acima de um nível definido define a existência (ou a inexistência) das características de algum tipo de terreno. O jogador também deve saber que o mapa não é gerado no início do jogo. Apenas as partes que vêem são geradas, todo o resto não é. O mapa será gerado gradualmente à medida que o jogador explora mais terreno. Veja abaixo para detalhes mais técnicos.

A seguinte imagem mostra um exemplo de como o gerador mundial pode criar um novo mapa.

:
Geração de mundo com as configurações padrão com a seed 123456789

Predefinições automáticas

A partir da versão 0.15, uma configuração pré definida pode ser escolhida em vez de configurar manualmente a geração. Existem várias opções. As diferenças do predefinido "padrão" estão em parênteses em negrito.

Recipientes/Tecnologia Padrão Recursos Ricos Maratona Perigoso Mundo da morte Mundo ferroviário
Dificuldade de pesquisa Normal Normal Expancivo Normal Expancivo Normal
Dificuldade de tecnologia Normal Normal Expancivo Normal Expancivo Normal
Multiplicador do preço da tecnologia 1 1 4(+3) 1 4(+3) 1
Expanção dos inimigos Padrão Recursos Ricos Maratona Perigoso Mundo da Morte Mundo Ferroviário
Habilitado Sim Sim Sim Sim Sim Não(Sim)
Pedaços mínimos entre novas bases 3 3 3 3 3 3
Distância máxima das expanções 7 7 7 7 7 7
Tamanho mínimo do grupo 5 5 5 5 5 5
Tamanho máximo do grupo 20 20 20 20 20 20
Cooldown mínimo (Minutos) 4 4 4 4 4 4
Cooldown máximo (Minutos) 60 60 60 60 60 60
Evolução do inimigo Padrão Recursos Ricos Maratona Perigoso Mundo da Morte Mundo ferroviário
Fator de destruição 0.00200000 0.00200000 0.00200000 0.00200000 0.00200000 0.00200000
Habilitado Sim Sim Sim Sim Sim Sim
Fator de Poluição 0.00001500 0.00001500 0.00001500 0.00002000(+0.000005) 0.00002000(+0.000005) 0.00001500
Fator de tempo 0.00000400 0.00000400 0.00000400 0.00002000(+0.000016) 0.00002000(+0.000016) 0.00000200(-0.000002)


Poluição Padrão Recursos Ricos Maratona Perigoso Mundo da Morte Mundo Ferroviário
Absorção Das Árvores 500 500 500 500 500 500
Tacha de Difusão 2% 2% 2% 2% 2% 2%
Tacha de Dissipação 1 1 1 1 1 1
Habilitada Sim Sim Sim Sim Sim Sim
Dano mínimo para as árvores 3500 3500 3500 3500 3500 3500


Recurso Padrão Recursos Ricos Maratona Perigoso Mundo da Morte Mundo ferroviário
Frequência de carvão Normal Normal Normal Normal Normal Muito Baixo
Riqueza do Carvão Regular Muito Boa(Regular) Regular Regular Regular Regular
Tamanho Das Minas De Carvão Médio Médio Médio Médio Médio Grande(Médio)
Frequência de Cobre Normal Normal Normal Normal Normal Muito Baixa(Normal)
Riqueza do Cobre Regular Muito Boa(Regular) Regular Regular Regular Regular
Tamanho Das Minas De Cobre Médio Médio Médio Médio Médio Grande(Médio)
Frequência Bruta Normal Normal Normal Normal Normal Muito Baixa(Normal)
Riqueza Bruta Regular Muito Boa(Regular) Regular Regular Regular Regular
Tamanhos Das Minas Brutas Médio Médio Médio Médio Médio Grande(Médio)
Frequência das bases inimigas Normal Normal Normal Muito Alto(Normal) Muito Alta(Normal) Muito Baixa(Normal)
Riqueza das bases inimigas Regular Regular Regular Regular Regular Regular
Tamanho das bases inimigas Médio Médio Médio Médio Médio Pequena(Médio)
Frequência de Ferro Normal Normal Normal Normal Normal Muito Baixa(Normal)
Riqueza do Ferro Regular Muito Boa(Regular) Regular Regular Regular Regular
Tamanho das minas de Ferro Médio Médio Médio Médio Médio Grande(Médio)
Área inicial Médio Médio Médio Médio Médio Médio
Frequência de Pedra Normal Normal Normal Normal Normal Muito baixa(Normal)
Riqueza da Pedra Regular Muito Boa(Regular) Regular Regular Regular Regular
Tamanho das minhas de Pedra Médio Médio Médio Médio Médio Grande(Médio)
Frequência de Urânio Normal Normal Normal Normal Normal Muito Baixa(Normal)
Riqueza do Urânio Regular Muito Boa(Regular) Regular Regular Regular Regular
Tamanho das minas de Urânio Médio Médio Médio Médio Médio Médio
Frequência da Água Normal Normal Normal Normal Normal Muito Baixa(Normal)
Tamanho da água Médio Médio Médio Médio Médio Grande(Médio)

Configuração manual

Settings on the top row

Frequência

Isto é não, quão frequente é o minério, o carvão, o petróleo, etc., na verdade determina o número de depósitos individuais que o jogador encontrará.

Isso define o comprimento de onda dos geradores de ondas usados pelo algoritmo Perlin Noise acima, mas não o tamanho total de todas as ondas. Isso significa que a frequência não modifica a quantidade de recursos em um bloco, mas modificando a área de cada depósito e o número de depósitos. Além disso, a alteração da frequência não afeta a quantidade média de recursos em um mapa limitado, apenas sua distribuição.

Se a frequência dos recursos for aumentada, cada um dos depósitos será menor e terá menos recursos no total (porque cobre menos área) e os depósitos são muito comuns. Se a frequência do recurso diminui, os depósitos são maiores, mas mais raros. Isso também faz com que as bases inimigas apareçam com mais freqüência usando as mesmas regras de distribuição que os minérios - no entanto, isso pode levar a uma rápida expansão inimigos devido ao número muito maior de grupos de ninhos.

Tamanho

Isso define o tamanho das amostras de minério e da água geradas através da definição de "níveis". Aumenta o diâmetro médio de áreas de minério e lagos, permitindo ajustar o tamanho de ambos.

É tão simples quanto parece: tamanho pequeno significaria pequenas manchas de minério e massas de água, grande significa grandes manchas de minério e massas de água. Observe que isso é efetuado pela frequência, embora seja presumivelmente capaz de aumentar o total de minério e água do mundo, onde a frequência simplesmente o reequilibra.

Finalmente, isso faz com que bases inimigas apareçam maiores, embora as bases criadas pelo "processo natural" de expansão sigam regras diferentes.

A tabela a seguir mostra como as configurações de frequência e tamanho afetam a geração de amostras de minério. Para mais detalhes, abra as imagens em uma nova tab.


Geração de patches de ferro em diferentes configurações de frequência e tamanho
Frequência \ Tamanho Muito pequeno Pequeno Médio Grande Muito grande
Muito baixo Iron freq very low size very small.png Iron freq very low size small.png Iron freq very low size medium.png Iron freq very low size big.png Iron freq very low size very big.png
Baixo Iron freq low size very small.png Iron freq low size small.png Iron freq low size medium.png Iron freq low size big.png Iron freq low size very big.png
Normal Iron freq normal size very small.png Iron freq normal size small.png Iron freq normal size medium.png Iron freq normal size big.png Iron freq normal size very big.png
Alto Iron freq high size very small.png Iron freq high size small.png Iron freq high size medium.png Iron freq high size big.png Iron freq high size very big.png
Muito alto Iron freq very high size very small.png Iron freq very high size small.png Iron freq very high size medium.png Iron freq very high size big.png Iron freq very high size very big.png

Riqueza

Isso define o conteúdo real de cada remessa de minério e campo de petróleo. A riqueza do campo de recurso aumenta à distância.

Recursos em manchas de minério em diferentes configurações de riqueza
Muito pobre Pobre Regular Rico Muito rico
Iron richness very poor.png Iron richness poor.png Iron richness regular.png Iron richness good.png Iron richness very good.png

A coluna da esquerda

  • Água: como água é gerada em cada mapa.
  • Cobre, Pedra, Carvão, Petróleo: Recursos necessários para progredir no jogo. Veja acima para explicações mais detalhadas sobre cada uma dessas alterações.
  • Bases inimigas: Quantas e quantas bases iniciais são grandes. Observe que novas bases são criadas ao longo do tempo, tornando a baixa base inimiga um pouco menos significativa.

Área onde começa

Este é um valor que define uma área especial em torno das coordenadas centrais do mapa, que terão diferentes frequências de minério, etc., do restante do mapa. Geralmente, isso resulta em pelo menos uma fonte de minério confirmada, sempre resulta em uma fonte de água e sempre remove ninhos de mordedor de aparecer em uma área ao redor nessa área. As configurações dessa área geralmente garantem melhores condições de partida, embora o jogador possa optar por tornar essa área pequena para aumentar o desafio do jogo.

Geralmente, é uma boa idéia para o jogador explorar um pouco fora desta área antes de começar a construir. Embora essa área quase sempre pareça muito fértil, é possível que a geração de mapas tenha criado uma situação em que é impossível vencer o jogo, como falta de petróleo, muitos mordedores para defender etc.

Gerações mundiais em diferentes configurações da área inicial
Muito pequeno Pequeno Médio Grande Muito grande
Starting area very small.png Starting area small.png Starting area medium.png Starting area big.png Starting area very big.png

Modo pacífico

Os Enemies não iniciam os ataques, apenas respondendo se o jogador os acertar. Isso também pode ser ativado durante o jogo - veja em Comandos do console.

Altura e largura do mapa

Se o jogador limitar a largura e/ou altura, ele poderá gerar mapas com recursos e área finitos. Isso é recomendado para servidores multiplayer rodando em máquinas mais fracas ou jogadores que buscam desafios extras. Outra opção é tornar o mundo infinito em apenas um eixo, geralmente chamado de mundo de fita.

Código do mapa / Sequência para troca de mapa

Definições e terminologia:

Código do mapa
gerador aleatório do código
Sequência para Troca de Mapa
Todas as configurações para a criação do mapa (Código do Mapa, configurações de recursos, configurações de tamanho etc.)

Código do mapa

Este é o valor inicial para o gerador de números aleatórios que o Factorio usa para gerar o mundo. Saiba que 'número aleatório' é realmente um nome impróprio no Factorio e nos computadores em geral, pois eles não são realmente aleatórios, sendo calculados com algoritmos complicados que exigem uma semente como valor inicial (para obter mais detalhes, consulte http://en.wikipedia.org/wiki/Random_seed).

Portanto, a mesma sequêcia para troca de mapa, os códigos do mapa podem mudar drasticamente ou parecer muito semelhante. Depende do acaso. Para obter uma cópia verdadeira de um mundo, é importante fornecer a sequência de troca de mapas e permitir que ela preencha o código do mapa.

Sequência para troca do mapa

A sequência geralmente se parece com isso:

>>>AAALABAABgADAwYAAAAEAAAAY29hbAMDAgoAAABjb3BwZXItb3Jl
AwMCCQAAAGNydWRlLW9pbAMDAgoAAABlbmVteS1iYXNlAwMCCAAAAGl
yb24tb3JlAwMCBQAAAHN0b25lAwMCORcrDUQ7AACMCwAAAAAAAAAAAA
ADAFR8w0Q=<<<

É uma sequência que começa com >>> e termina com <<<. Existem vários jeitos conhecidos na comunidade para compartilhar cadeias de troca de mapa. A sequência de troca de mapas pode ser usada no gerador de mapas: há um campo extra no qual o jogador pode colar essa sequência. Nos computadores com Windows, isso pode ser feito selecionando-se uma sequência, clicando com o botão direito do mouse ou pressionando Control + C e, em seguida, coloque-a no campo string do gerador mundial com Control + V.

Se você deseja recuperar a sequência de troca de mapas do seu mundo:

Na caixa de diálogo Carregar jogo, selecione o jogo cuja sequência você deseja e clique no botão Sequência de troca de maps no canto inferior esquerdo. Quando a sequência aparecer, destaque-a com o mouse e pressione Control-C para copiá-la. (Command-C no Mac.) Agora você pode colá-lo no gerador de mapas para criar uma cópia desse mundo ou enviá-lo para um amigo.

Para um descrição mais técnica da sequência para troca de mapas, veja Map Exchange String Format.

Geração

O gerador de mapas (gerador de mundo) é baseado em um modificado Algoritimo Perlin noise.

Uma descrição mais detalhada pode ser encontrada na documentação da API.

No artigo que descreve a geração :

Factorio-Perlin-Noise.png

Topo: Configurações normais, Meio: O mesmo, mas com alta frequência (note a mesma curva, mas com um formato mais denso), Abaixo: Mesmo do topo, mas em um nível mais alto = tamanho maior.

A linha ondulada azul é uma função de ruído interno, a linha preta é um "nível" usado para determinar a localização dos recursos, as linhas vermelhas são recursos realmente posicionados. A alta frequência refere-se principalmente à função de ruído. Aumentar a frequência aumenta a contagem de campos de recursos e diminui seu tamanho e distância entre eles. Esse mecanismo é usado durante toda a geração do mapa no Factorio, com alguns ajustes. O gerador de mapas funciona em cada bloco, então os recursos são colocados em um bloco x se f(x) > 0. A quantidade de recursos bloco é fornecida por f(x) * riqueza.

Generating new Chunks

A map is endless by default, though its size can be limited by height and width - see above. Because it is technically endless, the whole map isn't generated from the start. A new Chunk of map is generated only when needed, similar to other procedurally generated world games.

Generating Invisible Chunks (Fog of War)

Outside of the visible chunk area, an invisible area of about 3 chunks wide is generated, as a preloading mechanism, and for biters to be able to see the player. Invisible chunks are also generated if pollution is generated heavily; the game generates (invisible) chunks as it needs to spread the pollution into the area.

Charting (Make Invisible Chunks Visible on Map)

As long as a chunk is invisible, the part of the players map stays black. This changes when a chunk is charted, which means when it is "touched" by radar. Either the players internal radar, which is always available and continually charts chunks around the player, or the Radar entity. When a visible chunk is generated there might be other chunks also invisibly generated.

An invisible chunk is eventually not made visible, even if you are so close, that you are able to see it in the character view (a black fog of war). This is, because of the above rule: a chunk is made visible, if it is touched by radar. Not character visibility. The players radar (or any radar) needs to be in range of that chunk to make it visible.


Exploring

If the player arrives at the current visible borders the needed chunks are generated. As the player explores, a radius of about 3 chunks are continually loaded around them. As this can take a while on lower end machines, it is possible to outrun the world generator and end up in 'limbo' with no entities around the player. Staying still for a while will allow the generator to catch up.

Maximum Map Size and used Memory

The map size is limited to 2000 x 2000 kilometers (a quadrant with 2,000,000 tiles side-length, an area of 4,000,000,000,000 quadrant-tiles). This is between the size of India and Australia. It would take around 240 game-minutes (=4 hours) by train to reach that border from the center. This means that the world is essentially endless.

Because only chunks are generated around the area that is revealed by radar, it is with current computers possible to reach that border. This is, because the needed memory size of the map is limited only by the generated number of chunks in the game. Which is not so much if you allocate just a small stripe of land.

The generated chunks are mapped and stored in the player's RAM, which is the limiting factor.

Histórico

  • 0.15.0:
    • O gerador de mundo agora pode selecionar pre-sets.
  • 0.13.0:
    • Algoritimo do gerador de mapa, campo de recurso agora tem mais riqueza.

Veja também