Fuja do zoológico ou como fiz jogos casuais no iOS


Muito tempo livre = trabalho em um novo projeto. Este jogo me inspirou a publicarPapaBubaDiopsobre a expulsão de vírus. Ao contrário dele, decidi usar a estrutura nativa do UIKit Dynamics. Em primeiro lugar - eu não trabalhei com ele, mas realmente queria tentar. E em segundo lugar - é nativo. E, embora o manual diga que não se destina à criação de jogos, eu ainda decidi tentar.

Em geral, gosto de jogos, quando algo cai, acumula-se a ideia de que tudo deveria desaparecer em algum ponto do princípio de um funil, levando-me a começar a desenvolver.

Tendo uma ideia, decidi começar a procurar ativos de design gratuitos. E acidentalmente tropeçou em um bando de animais pintados. Aqui estão meus personagens principais - são eles que caem e cavalgam. E se assim for - deve haver um objetivo - uma fuga.

O jogador toca na tela e, consequentemente, um novo animal aparece na mesma vertical, começando a cair e superar obstáculos. Parece que tudo é simples, mas não. Se você começar muitos animais de uma só vez, eles começarão a ficar presos, estúpidos e toda a fuga será coberta.

A versão inicial do jogo envolvia um tempo limitado e contando o número de fugitivos fugitivos, mas depois revi um pouco os detalhes do cálculo. Afinal, é fácil perceber que a forma dos caras é um pouco diferente. Por exemplo, um cervo, um macaco e um panda não são redondos e, portanto, os obstáculos passam muito mais difíceis. Foi decidido atribuir o número de pontos (créditos), dependendo do formulário.

Em geral, no UIKit Dynamics, você pode descrever a forma de um objeto de interação especificando o parâmetro UIDynamicItemCollisionBoundsType. Pode ser um retângulo, elipse ou BezierPath. Meu caso é uma elipse, e a forma da elipse depende das proporções do ativo do objeto. Do mesmo modo, um cervo, um macaco e um panda são ovais oblongos e, por exemplo, uma galinha, um pato e uma cobra são círculos de aparência pura. Parece maravilhoso, mas esses ativos)

Animais - ovais
imagem

imagem

imagem

Animais - círculos
imagem
imagem
imagem

O mais triste foi, é claro, a criação de níveis. No UIKit Dynamics, um obstáculo é invisível; portanto, a parte visível deve ser desenhada separadamente. Eu tive que preparar um conjunto de estruturas, cada uma delas contendo o ponto inicial e final do obstáculo e, andando por elas, desenhar e adicionar como barreira.

Tendo alcançado o nível, sentei-me para testá-lo e muitos problemas surgiram. Por exemplo, o ângulo de inclinação é muito pequeno e os animais começaram a se acumular, impossibilitando a passagem. Ou a localização dos obstáculos era mais ou menos. Além disso, por teste, encontrei o número real de pontos (créditos) que podem ser pontuados em um nível. Agora posso dizer que todos os níveis são aceitáveis.

Quando os níveis se acumularam o suficiente e o jogo se aproximou da prontidão do lançamento, decidi adicionar o último toque - para tornar alguns animais de estimação mais vivos. Como não havia ativos com os olhos fechados no pacote gratuito, foi decidido colocar uma esposa para esse assunto. Então metade do zoológico apareceu animação piscando.

Além disso, no final do desenvolvimento, foi decidido mostrar o próximo animal suspenso - em alguns níveis, isso realmente afeta a escolha do local da descarga.

Em geral, o UIKit Dynamics realmente não se destina ao desenvolvimento de jogos. A maior limitação foi a incapacidade de animar obstáculos. Talvez haja soluções alternativas, mas ainda não encontrei opções de trabalho decentes. Portanto, no momento, todas as barreiras são estáticas. Ao mesmo tempo, o framework é bastante simples de entender, fácil de usar (porque é implementado imediatamente) e não requer dança com um pandeiro.

Algumas dicas para completar os níveis. Não jogue imediatamente muitas criaturas vivas - elas gostam de se amontoar e ficar presas. Tente manter distância, mas não se esqueça da hora.

O jogo em si está disponível aqui e é totalmente gratuito.

Ficaria muito grato pelo feedback sobre a jogabilidade e as classificações. É realmente interessante o quanto esse tipo de formato de jogo se encaixa com o público.

Seja saudável.

All Articles