Modificações:Dados de Peixes

Fonte: Stardew Valley Wiki
Saltar para a navegação Saltar para a pesquisa
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Índice

Essa pagina explica como o jogo armazena e processa dados dos peixes, incluindo mecânica de geração. Isso é um guia avançado para desenvolvedores de Mod's.

Analisando as condições de reprodução dos peixes

O jogo verifica dois locais para determinar quais peixes devem aparecer quando o jogador está pescando. Isso se aplica apenas a peixes normais; a chance de gerar um peixe lendário é calculada separadamente pelo código de localização antes , seguindo as regras abaixo. (engenharia reversa a partir de BobberBar e GameLocation :: getFish .)

Locais de Spawn

Cada peixe é atribuído a uma área dentro do local e só aparecerá se o jogador estiver nessa área. As coordenadas do bloco para cada área são definidas por GameLocation :: getFishingLocation , que pode ser substituído por cada local do jogo. As seguintes áreas são definidas:

  • Cindersap Forest:
    • Lagoa (área 1 para ladrilhos (0, 0) a (52, 42) inclusive);
    • Rio (área # 0 que corresponde a qualquer outra parte da floresta).
  • Todos os outros locais têm apenas a área -1; portanto, de onde você pesca, não tem impacto.

Os peixes que podem ser criados em um determinado local são definidos nos dados delimitados por barra de Data \ Locations.xnb , especificamente nos índices de campo 4 (primavera), 5 (verão), 6 (outono), e 7 (inverno). Cada campo contém qualquer número de pares < int fishID> (combinando Data \ Fish.xnb ) + < int areaID> (ou -1 para qualquer área). Por exemplo, Cindersap Forest possui esses dados de peixes para o verão: 153 -1 145 0 144 -1 138 0 132 0 706 0 704 0 702 0 . Isso pode ser analisado como:

Valor Peixe Área
153 -1 Algas verdes qualquer (Lagoa ou Rio)
145 0 Peixe-sol Rio
144 -1 Lúcio qualquer (Lagoa ou Rio)
138 0 Truta arco-íris Rio
132 0 Brema Rio
706 0 Alocine Rio
704 0 Dourado Rio
702 0 Esquálio Rio

Dados dos peixes e critérios de desova

Os dados de peixes e os critérios de reprodução são armazenados como treze campos delimitados por barra em Data \ Fish.xnb :

Índice Sintaxe Exemplo Conteúdo
0 nome Baiacu O Nome do Peixe.
1 numero 80 Quantas vezes o peixe arremessa no minijogo de pesca; entre 15 (carpa) e 100 (Peixe-gelo).
2 "misturado|dardo|suave|flutuador|chumbo" floater Como o bobber se comporta durante o minijogo de pesca.
3 int 1 O tamanho mínimo de peixe (em polegadas).
4 int 36 O tamanho máximo do peixe (em polegadas).
5 [min time max time]+ 1200 1600 A hora do dia em que aparecem. O tempo mínimo é inclusivo, o tempo máximo é exclusivo. Pode especificar vários intervalos.
6 ["Primavera|Verão|Outono|Inverno"]+ ID da temporada As estações em que aparecem. Pode especificar vários. (Isso é ignorado. As estações são obtidas de Locations.xnb)
7 "Ensolarado|Chuva|Ambas" Ensolarado O clima quando eles aparecem.
8 690 .4 685 .1 Não utilizado.
9 numero 4 A profundidade mínima da água.
10 numero .3 Multiplicador de geração; usado no cálculo da taxa de reprodução (veja abaixo).
11 numero .5 Multiplicador de profundidade; usado no cálculo da taxa de reprodução (veja abaixo).
12 nivel 0 O mínimo nível de pesca.

Observe que, a partir da v1.2, o jogo multiplica o tamanho do peixe por 2,54 para todos os idiomas, exceto o inglês (para conversão de polegadas para cm). Veja FishingRod :: draw .

Taxa de geração

Se um peixe atender aos critérios de desova, a probabilidade de desova é {multiplicador de desova} - máximo (0, {profundidade mínima} - {profundidade real}) × {multiplicador de profundidade} × {multiplicador de desova} + {nível de pesca } / 50 , até um máximo de 90%. A "profundidade real" é a distância do ladrilho da bobber da terra.