Skip to content

Instantly share code, notes, and snippets.

@MaiaVictor MaiaVictor/TaelinArena.md
Last active Jan 14, 2020

Embed
What would you like to do?
Taelin Arena

Taelin Arena

Uma arena online feita em uma nova linguagem de programação ultra-segura desenvolvida por nós, o Formality. O jogo será non-profit, get-paid-to-win: todo seu lucro é redirecionado pros próprios jogadores competitivos. Também será open-source e 100% modável: jogadores poderão criar seus próprios heróis. Será um jogo competitivo, real-time, top-view e muito dinâmico. O gameplay será uma mistura de League of Legends com Super Smash Bros. Os gráficos serão inspirados em Wizard of Legends, Tibia e Fire Emblem, porém em um estilo 3D voxelizado, o SpriteStack. Seu desenvolvimento será feito live no Twitch e seu código publicado no Github.

Estamos contratando artistas!

A arte do jogo será feita em um estilo híbrido 2D/3D. Ao invés de sprites (2D) ou modelos (3D), os heróis usarão "voxel cubes", ou seja, uma grid 64x64x64 de cores. Para criar esses "modelos", usaremos uma ferramenta chamada SpriteStack. Ela é bem simples: artistas tanto de pixel art quanto modeladores/animadores 3D, em tese, devem pegá-la com facilidade. Clique neste video para ver como ela funciona.

spritestack

Precisarei de animações e modelos feitos no SpriteStack, ou feitos em outras ferramentas de modelagem, desde que o resultado seja exportado para o formato desejado (um cubo 64x64x64 de voxels). O contrato durará cerca de 3 meses e o trabalho será remoto. Se está interessado, entre em contato comigo (Victor Maia) pelo Whatsapp (+55 21 996041890), Telegram (maiavictor) ou Twitter (maiavictr).

@MaiaVictor

This comment has been minimized.

Copy link
Owner Author

MaiaVictor commented Jan 6, 2020

Sobre o desenvolvimento:

O jogo está sendo feito por mim basicamente. Eu sou CTO de uma empresa de tecnologia, a Sunshine Cybernetics, e responsável pela criação de uma nova linguagem de programação ultra-segura, o Formality. Esse jogo tem como proposta validar a linguagem, pois será a primeira "aplicação real" feita nela. Isso terá enorme utilidade técnica (fazer benchmarks, suite de testes, ecossistema de libs). Por isso o jogo será non-profit, não pretendemos lucrar com ele. Mas, ainda assim, quero fazer algo bem divertido, por isso estou me baseando em jogos que curto bastante (League, Smash, etc.).

@MaiaVictor

This comment has been minimized.

Copy link
Owner Author

MaiaVictor commented Jan 11, 2020

Ultimas definições de estilo artístico

O jogo será voxelizado no estilo SpriteStack, ou seja, nem modelo 3D nem sprite 2D. Ao invés disso, temos uma sequência de 32 a 64 sprites 2D que são colocados "um em cima do outro", formando um volume tridimensional:







As animações serão estilo Fire Emblem, ou seja: sprites pequenos, "FPS" baixo, porém com muito motion-blur, key-frames impactantes, além de tecidos e cabelos fluidos para compensar.











Nossa meta final é alcançar o mais próximo desse estilo usando voxels, ou seja, um mix de Fire Emblem com SpriteStack. A questão é como chegar lá de forma visualmente elegante. Como isso nunca foi tentado antes, existe uma necessidade de explorar até definir o que funciona melhor. Repare que os exemplos do SpriteStack acima são, em sua maioria, formas ou objetos, não personagens animados. Para explorar esse território, criamos 3 personagens com tamanhos variados: 100, 48 e 36 pixels de altura. Esse foi o resultado:

Ainda estamos longe de alcançar a estética desejada. Mas a partir desses testes, acredito poder definir que o menor tamanho seja 36 pixels de altura para um personagem humano, ou talvez até menos. O Fire Emblem opera a 10 fps, porém abusa de frames idênticos; podemos usar entre 6 e 12, a ser definido. Semana que vem, teremos 2 exemplos feitos por artistas experientes, o que ajudará nessas decisões, além de melhorias gerais no renderizador.

@MaisaMilena

This comment has been minimized.

Copy link

MaisaMilena commented Jan 14, 2020

Grupo do Discord para acompanhar as notificações: https://discord.gg/zwfK53Q

@MaiaVictor

This comment has been minimized.

Copy link
Owner Author

MaiaVictor commented Jan 14, 2020

Outra explicação sobre o estilo planejado (copiado do Discord acima)

Pra recapitular, minha ideia é tentar trazer o estilo de animação do Fire Emblem pros voxels, e usar isso no TaelinArena, renderizado com o estilo SpriteStack. Ou seja, o desafio é tentar fazer isso:

Porém em 3D, no estilo SpriteStack:

A questão é: como chegar nesse resultado?

Algo que eu não recomendo é a feature de animação do SpriteStack, ou outros sistemas de bones/rigs 3D. Isso porque animações em pixel art raramente usam técnicas de interpolação. Elas são refeitas frame a frame. Sim, dá um trabalho maior, mas o resultado é bem mais fluido, por poder explorar deformações e controlar cada pixel de cada frame. Olhe, por exemplo, o quinto frame do sheet acima; ele é completamente deformado, nem daria pra fazer com rigs apenas. Ou seja, a ideia é que cada frame será um modelo novo: "lyn_0.vox", "lyn_1.vox", "lyn_2.vox", etc. Trabalhoso, sim, mas, para tornar a ideia viável, vamos fazer cada modelo bem pequeno, uns 36 voxels de altura.

Exemplo de um estilo que eu não gostaria de fazer..

@MaiaVictor

This comment has been minimized.

Copy link
Owner Author

MaiaVictor commented Jan 14, 2020

Pergunta: "Por que então ter modelos voxelizados ao invés de só transformar tudo em sprite sheet?"

Resposta 1: rotações

Resposta 2: luzes

@MaiaVictor

This comment has been minimized.

Copy link
Owner Author

MaiaVictor commented Jan 14, 2020

Sobre contratações

Temos um orçamento bom pra arte do projeto, e pretendemos formar uma equipe com 4-12 artistas (dependendo do rate) para trabalhar no jogo ao longo de 3 meses, ou mais caso o projeto continue. Ou seja, tem bastante vaga, mas eu não posso confirmar com ninguém ainda; o mais importante é definir se o artista conseguirá produzir no estilo desejado. No momento, eu contratei dois artistas que irão, ainda essa semana, enviar propostas de exemplos iniciais, além de um documento de direção de arte. Se eu curtir o resultado, já dá pra fechar a equipe logo a seguir. Mas nada os impede vocês explorarem e colaborarem com ideias enquanto isso, há muito a explorar e eu sou 100% aberto a sugestões. É bom ressaltar que todo mundo é dono do jogo, conforme vocês criam arte eu programo, vocês podem sugerir e fazer o personagem que quiser, e espero que seja um processo bem legal (:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.