sexta-feira, 29 de janeiro de 2021

Mesa Posta, joguinho lançado!

 

screenshot da tela de título do jogo

 

Mesa Posta é uma tentativa de fazer um jogo da velha mais interessante ao dar as peças habilidades especiais e um tempo limitado no tabuleiro.


toda peça tem uma certa quantidade de pontos de constituição e uma habilidade especial que remove ou aumenta eles quando ela é posicionada no tabuleiro. entretanto,​ toda vez que um jogador fizer uma jogada, todas as peças em jogo perdem um ponto, então todas serão removidas eventualmente a não ser que um jogador consiga forma uma linha antes de suas peças sumirem.


o jogo tem um modo single player contra uma IA mediana e um modo multiplayer local para dois jogadores que não pôde ser bem testado em função da quarenta.


pois bem, consegui terminar o joguinho e ele agora pode ser baixado pela minha nova página no itch:  https://gramorim.itch.io/mesa-posta



gif feio infelizmente :|


Table Setting, launched game!

 

screenshot of the title screen of the game

 

Table Setting is and attempt to make a more interesting tic tac toe by giving pieces special abilities and a limited time on the board.


every piece has an amount of constitution points and abilities that can increase or remove them when that piece is layed on the board. every time a player makes a move, every piece on the board loses one point though, so all of them will be removed eventually unless a player manages to form a line before their pieces wither away.


the game has a single player mode against a middling AI and a two player local multiplayer mode that wasn't very well tested due to quarantine.


well, I managed to finish the game and you can now download it at my new itch page: https://gramorim.itch.io/mesa-posta



gif of a bit of a match being played
ugly gif unfortunately :|

quarta-feira, 27 de janeiro de 2021

balanço do meu janeiro/2021

decidi que a partir desse ano quero fazer balanços mensais das coisas que joguei ou li sobre jogos. quero que isso seja um incentivo para eu refletir sobre essas coisas, apesar de que não achar que vou ter nada muito inteligente para falar sobre a maioria dos jogos. é também uma prática regular de escrita e um jeito de recomendar coisas interessantes para quem estiver interessado :)

se alguém quiser trocar ideia sobre as coisas aqui ou recomendar algo semelhante fica a vontade.

 

jogos que joguei:

- Magic The Gathering Arena

comecei a jogar/ ficar obcecada por magic no final do ano passado por influência/ corrupção de uma amiga. tenho medo de falar muito sobre o jogo já que é obviamente muito complexo e não tenho muita experiência. minhas impressões iniciais é que eu simplesmente adoro o potencial para combos e sinergias interessantes entre as cartas, muito maior que qualquer outro jogo de cartinha com o qual eu tive experiência até agora.

entretanto, nunca me desse cartas que fazem efeito negativo imediato nas criaturas do oponente, eliminam criaturas, impedem elas de atacarem ou defenderem e coisas do tipo. não uso no meu deck e me incomoda quando os outros usam, mas talvez seja só xilique. não aprecio cartas que simplesmente estraguem os brinquedinhos do oponente de um jeito que não aciona ou fortalece os brinquedinhos do jogador, parece barato. ao mesmo tempo, também não sei se a solução seria evitar afetar diretamente as cartas do oponente, essa interação direta é interessante, ficar só no seu lado também é chato. não tenho uma opinião tão formada sobre isso agora e é provável que eu só esteja muito desacostumada com jogos multiplayer.

adoro a ideia de modos diferentes de jogo e utilizar as cartas como componentes modulares, ou monemas de regras, em sistemas variados. só joguei online até agora, mas me deu muita vontade de conseguir acesso a umas cartas físicas para poder brincar de fazer mod de magic.


- Ocean OI

sequência de batalhas em rpg maker sem (quase) nenhum contexto narrativo. party fixa de personagens. muito tenso e estratégico, gostei bastante. o sistema é baseado em NU, o  MP desse jogo, um recurso necessário para magias fortes, mas que só pode ser gerado por habilidades de personagens e acaba rápido. o rolê do jogo é acertar esse ritmo entre as habilidades que geram NU e as que gastam os pontos. 

as batalhas acabavam sendo ou relativamente fáceis, considerando que eu sabia como lidar, ou muito difíceis ao ponto de precisar tentar várias vezes até entender melhor o ritmo das habilidades e conseguir prosseguir, mas em momento nenhum fiquei muito frustrada. sempre acabava entendendo um pouco melhor o que fazer depois de perder uma batalha.

apesar de não ter história, eu achei interessante o que o jogo faz com o boss no final apenas com o sistema de batalha.


- Dear Substance of Kin

um minigame da Deconstructeam, que fez Red Strings Club. simplesmente uma preciosidade. costumo pensar que design inovador é quando o sistema do jogo parece abrir espaço para coisas novas, sugerir infinitas novas possibilidades. os jogos da Deconstructeam são inovadores quase no sentido contrário, são extremamente específicos e introjetados. as mecânicas são simples, mas funcionam como construção de mundo, incrivelmente situadas. a ficção é detalhada, bem mais do que eu esperaria de um jogo desse tamanho. é como uma joiazinha, pequena, única e preciosa.


- OnlyCans: Thirst Trap

hsjshskshd esse jogo. meu amor por ele começa pelos créditos e pela enorme quantidade de pessoas que dedicaram seu tempo para essa obra de arte. é algo tão simples, mas a mistura do jeito que as latas se mexem na tela, o jogo de tempo e os gemidos toda vez que você clica criam uma experiência muito efetiva, ainda é uma piada, mas ela é muito bem realizada enquanto jogo e mais duradoura do que eu achei que ia ser. sugiro o uso de fones. grande experiência auditiva.


- Critters for Sale: SNAKE

que jogo lindo. o primeiro episódio de uma visual novel/ point-and-click em 5 partes. a estética foi realmente o apelo aqui, mas o modo como o jogo une seu input, as imagens e o som é bem holístico. gostei que as imagens centrais só eram reveladas quando você tocava na tela, deu uma reatividade muito interessante para uma interface mais estática. a interface inclusive, também magnífica. adorei que uma parte considerável da tela só dispunha o nome do episódio, muito estilosinho. recomendo o trailer para apreciar a estética porque o movimento do glitch nervoso adiciona muita coisa.


- Discover My Body

um joguinho curto com uma estética linda. adorei as imagens que ele cria tanto visualmente quanto textualmente.


leituras que li:

- There and back again: why RPGs matter more than ever

esse artigo é bem basicão e me interessou mais porque a escritora faz parte de um podcast dedicado exclusivamente a RPGs chamado Axe of the Blood God  que fiquei curiosa de ouvir. ele entretanto voltou a me deixar incomodada quanto a categoria RPG e o que isso significa. se dark souls e mass effect são ambos RPGs o que esse role-playing do nome significa? o único fator comum de tudo que é chamado disso parece ser numerozinhos no seu personagem que você tem liberdade para aumentar, o que parece sugerir como fundamento uma sistematização do seu personagem enquanto um ser específico e diferenciado com capacidades únicas para interagir com o mundo, mas isso num nível muito numérico também. entretanto, o artigo fala muito da sensação de um mundo real que RPGs teoricamente passariam.

 

The Shuffled World Game (Game Design)

tecnicamente li isso no final do ano passado, quando foi escrito, mas já que não estava publicando esse balanço nessa época, quero falar disso agora. ele foi escrito pelo Melos Han Tani, da dupla que fez Adonyde 2, que eu adoro, e detalha uma ideia que ele teve para estruturar o mundo de um jogo teórico.

como comentei no próprio post, achei o Shuffled World um jeito muito interessante de manter um mundo continuamente denso e ativo mesmo depois do jogador cruzar ele várias vezes. se as conexões entre uma área e outra são sempre diferentes e o jogador não tem uma ideia viciada do caminho a seguir, não existem espaços puramente intersticiais, todo lugar é um destino em si e o ponto de partida do próximo destino, já que o jogador sempre precisa parar para pensar na próxima direção.


- Covering Allies in Final Fantasy Legend 3

an account of space and meaning in dragon quest 1

dois posts do designer de Ocean OI. o primeiro é uma consideração bem interessante sobre a mecânica de guarda em FF 3 e o segundo explora como os encontros aleatórios com inimigos cria a textura do mundo de Dragon Quest 1 e como sua percepção desse mundo vai mudando dependendo do estado do seu personagem e do nível dele. o jogo em combinação com essas leituras me despertaram bastante interesse em ler e jogar mais JRPGs, especialmente o aspecto de batalha.

o segundo post é responsável por me introduzir à UI simplesmente linda dos encontros aleatórios de Dragon Quest 1.

 

 

- Combat Design in RPGMaker 2003 — A Technical Rundown of Facets’ Bosses

admito que na verdade só li metade desse post hskshsk. ele é uma explicação altamente técnica da forma com que a pessoa desenvolveu os bosses do seu jogo Facets no rpg maker 2k3 e as técnicas usadas para criar batalhas altamente dinâmicas e dramáticas na engine limitada. li o suficiente para ver que era um recurso interessante de se ter guardado e deixei o resto para caso eu tenha interesse em brincar com isso um dia, ou para mostrar para os outros.


- World Creation by Analogy

uma explicação da equipe que desenvolve o projeto AI Dungeon, que usa geração procedural para criar um pequeno jogo de aventura em texto, do modo como usam o GPT-3 e seu processo analógico para relacionar conceitos no desenvolvimento do jogo. não entendo muito de machine learning e redes neurais, nem é minha área favorita de geração procedural, então não entendi 100% do texto, mas achei o que eu peguei muito interessante e tenho vontade de ler mais sobre o assunto.


- Listed Action Interactive Fiction

Counterfeit Monkey

memalign, a pessoa que escreveu ambos os posts, relata as primeiras experiências com o que chamou de ficção interativa de "listed action". esse tipo de ficção interativa se contrasta com os de múltipla escolha, onde opções narrativas são dadas para o jogador escolher, levando a um bloco de texto diferente e as ficções interativas do tipo parser onde o sistema simula um mundo com entidades e regras de interação e o jogador experiencia a história escrevendo comandos.

as ficções de múltipla escolha envolvem texto estático, ao contrário das ficções de parser em que o mundo é simulado de forma complexa e o sistema traduz isso em um bloco de texto. memalign está buscando criar um terceiro gênero porque gosta da ideia de um mundo complexo e simulado, mas queria um formato mais amigável para celulares e plataformas móveis, onde escolher uma opção é muito mais confortável que digitar um comando.

me interessou bastante por conta de umas experiências em ficção interativa que quero começar a desenvolver ainda esse ano.


- Apologia for Game Wikis

esse texto defende jogo obtusos que requerem um guia para a compreensão do jogador, o que ele refere como "mistérios lúdicos", em contraposição à filosofia contemporânea de valorizar jogos de mecânicas simples, coesas e facilmente internalizáveis.

isso me lembrou umas trocas que tive com uma amiga sobre jogos antigos com mecânicas tão obtusas que os jogos viram coisas arcanas. isso me levou a pensar nas regras de um jogo como uma experiência estética e poética em si, enquanto regra ou sistema, não apenas enquanto fabricador de uma experiência para o jogador. o texto comenta que ler sobre dwarf fortress, por exemplo, faz parte da própria experiência do jogo. tenho essa relação com um dos jogos que o auto do texto fez, Caves of Qud, que li sobre muito mais do que eu joguei.

Heidegger teorizou que experienciamos objetos, ou ferramentas, quando eles funcionam da maneira esperada, mas que esses objetos se apresentam a nós enquanto -coisas- quando quebram e a quebra do nosso hábito com esses objetos nos leva a vê-los como a coisa em si mesma. vejo nisso um paralelo com o contraste do texto entre jogos em que as regras são imediatamente absorvidas e internalizadas e o sistema do jogo é manipulado pelo jogador de forma imediata e inconsciente e jogos obtusos e confusos em que a quebra do hábito do jogador (através do fracasso ou da falta de entendimento) leva o jogador a precisar ponderar o sistema do jogo em si mesmo.


Raw Danger – An original perspective on survival horror

fala sobre um jogo que nunca joguei, mas me intrigou bastante. um survival horror durante um desastre natural, sem oponentes, em que a única ameaça é conseguir atravessar e sobreviver ao ambiente.


- NarraScope 2020: Building Narrative Chat

vídeo de uma apresentação na convenção online narrascope de 2020 sobre um sistema de chat chamado mote que permite um grupo de pessoas contar uma história em conjunto, assumindo papéis, com o sistema de chat lidando com o trabalho de gerar corretamente o texto para cada pessoa segundo a perspectiva do personagem dela. achei interessante o sistema descrito. bem técnico.


projetos pessoais:

janeiro foi um dos meses em que eu mais foquei em desenvolvimento de jogo em muito tempo. foi um mês decisivo para o projeto do bate-bate. sinto que foi agora que eu entendi com clareza o que eu quero do jogo inteiro e o escopo que eu quero dele. entendi bem melhor o balanceamento entre os valores e efeitos diferentes dos golpes e as necessidades que cada batalha precisa ter para dar certo e sinto que faço cenários funcionais com mais facilidade agora.

terminei um joguinho inteiro! :)

isso é sempre satisfatório. costumo ter pequenos projetos paralelos a projetos maiores, mas costumam ser experimentos meio abertos e sem final conclusivo. gostei da experiência de ter começado e acabado algo, ter entendi um pouco melhor de algum princípio de design no processo e já ter ideias de como desenvolver isso melhor no futuro.

terça-feira, 26 de janeiro de 2021

jogo da velha pt.4: nome do joguinho e minha impressão sobre o resultado do experimento

depois de escolher os sprites de comida, desenvolvi o resto da estética do jogo em volta deles e por fim decidi chamar o jogo de Mesa Posta em português e Table Setting em inglês. essa parte foi meio difícil pois costumo começar um jogo tendo uma ideia muito clara da estética que eu quero, mas como esse jogo era altamente abstrato eu acabei sentindo que toda escolha que eu fazia quanto ao tema, estética ou título era muito arbitrária e acabei me contentando com algo que parecesse pelo menos decente só para poder prosseguir com o desenvolvimento.

 

quanto ao design do jogo eu acho que num certo grau o resultado foi interessante, pelo menos mais que o jogo da velha. eu gosto muito da consideração de tempo, ter que levar em questão a remoção eventual de todas peças, acho que foi o maior sucesso aqui e quero explorar isso mais vezes.

uma partida é bem curtinha, quase do grau de um jogo da velha normal, porém dependendo muito da qualidade da reação da IA. acho interessante que as vezes vários turnos levavam a nada, com as peças sendo todas removidas, mas ainda conseguia me reestabelecer e ganhar eventualmente. acho muito legal essa coisa do jogo não estar necessariamente "avançando" constantemente, como em um jogo da velha normal ou a maioria dos jogos de tabuleiro, em que pontos estão sendo constantemente acumulados, ou peças sendo constantemente adicionadas ou removidas, até que se chegue num fim inevitável.

vários turnos podem se passar sem nada ter sido estabelecido de forma duradoura. o jogo é mais um fluxo constante de configurações passageiras de peças que podem, eventualmente, atingir um estado de vitória, mas não de forma inevitável. entretanto, é um jogo muito curtinho para explorar isso de verdade e as vezes a IA só não reage muito bem e ele acaba de uma forma bem direta e linear. você bota 3 ou 4 peças e é isso. quero tentar voltar nisso no futuro.

vale lembrar que por conta da quarentena eu não tive a oportunidade de tentar o modo multiplayer com dois jogadores, só joguei contra a IA.


para finalizar algumas screenshots do look final do joguinho :)


o título do jogo


uma partida


jogo da velha: correção de um bug considerável na demo

corrigi um bug considerável no efeito das peças e upei uma nova build da demo no drive. paralelo a isso, o jogo agora já tem efeitos sonoros, splash screens, um visual mais acabado e uma tela de título. ele está muito perto de terminado.


link pro drive com o rar: https://drive.google.com/drive/folders/1mrE1b7ALpwRf8aG5SDvqC-PGsDQBRQh-?usp=sharing

domingo, 24 de janeiro de 2021

bate-bate: demo versão 0.20 disponível!

gif de uma batalha do jogo


 

adicionei uma demo nova no drive. as adições deva ser vez são substancias, ela trás tanto a mecânica nova de esquiva quanto a possibilidade do uso de itens pelo jogador e seus oponentes, além de um botão de fechar o jogo!

opiniões e comentários são sempre muito bem vindos.

 

link para o rar: https://drive.google.com/drive/folders/1JoPGdF136_zH3PZ9WQ3QY38nRTy9Uf2E?usp=sharing

 

gif de uma batalha em que um inimigo consegue esquivar do golpe de um lutador do jogador
a nova mecânica de esquiva funcionando

 

sexta-feira, 22 de janeiro de 2021

tic tac toe eng.1: the idea for making the game more complex

 

work in progress, but already testing colors, sprites and composition

 

while reading about another game I had this idea to make tic tac toe more viable and strategic. the goal is still to make a line of three pieces, but each piece now has a number of constitution points. everytime a player lays down a piece, every piece on the board loses one constitution point. when a piece loses all points it is removed from the board. every piece has a different number of points and a special power that activates as soon as you lay it down and it usually involves giving points to your pieces, removing points from the enemy or adding points to the piece itself.

each player begins the game with a random "hand" of pieces and everytime they lay one down, a new one is drawn from a "deck" to replace it. each player has the same pieces in their deck. the goal here is to solve the question of tic tac toe being a solved game by adding the randomness of not knowing what piece you're gonna have and having to improvise.

the inevitable demise of every piece means you have to consider not just the two dimensions of the board, but also the dimension of time, considering if your piece will still be there when you try to form the line and that an enemy piece might get removed, freeing up that space. laying down a piece requires considering what its constitution is and how much it's gonna last, what its power is and where is best to put it as well as the lines being formed by both players.

hopefully it's more engaging than tic tac toe. my impression so far is that it sort of is???? it's pretty short and not super complex, but I think is engaging enough as a very short little game, certainly more engaging than tic tac toe. I find it interesting that sometimes you play a few turns and accomplish nothing actually and also that you truly have to account for time and every piece's inevitable degradation.

fundamentally this is a little experiment and I'm not aiming for anything specific or too successful. I just want to see how this plays.

all of the demos I made so far are exclusively in portuguese, but the next one will have an english option!

jogo da velha: pequeno update na demo

percebi jogando que a página inicial da demo atual já era a partida e não o título, o que é meio confuso. estou botando uma versão nova só para arrumar isso e já aproveitando para finalmente incluir um botão para fechar a aplicação e testar os (possíveis) gráficos novos de comida.


link pro drive com o rar: https://drive.google.com/drive/folders/1mrE1b7ALpwRf8aG5SDvqC-PGsDQBRQh-?usp=sharing

 


 

quinta-feira, 21 de janeiro de 2021

bate-bate eng.1: introducing and presenting the game so far

idea and motivation

I got the idea for the game while playing team fight tactics. auto-battlers enamored me immediately, I love the ideia of setting up a stage, then watching the action unfold hands-off. looking at the game more as a space of possibility than a world to manipulate directly and deterministically.

there's also an influence of card games and specially deck builders and engine builders here. decks are likewise a possibility space. but the automation of auto-battlers makes feel like the "cards" deployed are less like tools that I handle and more like little entities that I'm inserting in this ecosystem to react with its environment in a potentially unforeseen way.


battle structure

the battlefield is composed of a 3x3 grid that can be occupied by brawlers, both yours and the enemy, but also static field elements. the battle happens in two phases that alternate, like auto-battlers, the combat phase and the management phase.

the combat phase happens automatically. an initial brawler will be selected as the current active fighter and they will move to make combat with one of their neighbouring brawlers, potently using their primary move. the neighbour they made contact with will be the new active fighter and will do the same, choose a neighbour, move to conyact, potently use their primary move.

the result is a chain of contacts, or bonks, of one fighter on the other, as a wave, triggering a bunch of moves and effects on the process. each brawler has a primary skill that can be either supportive or offensive and will target the contacted brawler depending on whether they're an ally of and opponent. supportive skills only target allies, offensive skills only opponents.

brawlers also have secondary moves that will trigger during specific moments and can affect different areas, like all adjacent cells.

this will continue through a set number of turns before the combat round ends and the management one begins.

during the management phase the player can try to put their brawlers in the best possible position to be successful during the automatic combat phase. it's the only phase the player can act directly on the field. they can move their brawlers around to any empty cell on the grid and can also use items that heal or add buffs. but every time the player makes an action, the AI will act as well.

the AI can do everything the player can, move and use items on the opponents. this adds an element of push your luck to the game. currently these are the only moves the AI and the player can do, but in the future the player will be able to deploy more brawlers and the AI will spawn more enemies. so the player can do as much as they want to, to improve their odds during the combat phase, but with each move there's a chance the AI will do something very serious, like spawning new enemies.


a wave of bonks


movement


using items on your brawler, with the AI using one on the opponent as a response


buffs and debuffs

moves at the moment can inflict damage, heal damage, inflict poison, and buff and debuff the attack and the defense.

an attack buff will increase the damage inflicted by primary moves, while the attack debuff will diminish the damage delt. not symmetrically, the defense buff will diminish the damage received by -any- move, same for the debuff. this allows the possible strategy of opening up brawlers with a defense buff by attacking them with lots of secondary damage moves, to attack later with more powerful primary damage moves.

buffs and debuffs are reset as soon as they take effect. I decided on this because I didn't want the modifiers to spiral out of control making things difficult to predict and balance. at the same time, the effect of buffs and debuffs increases exponentially.

so it's pretty difficult to stack buffs, but there's a big incentive to arrange brawlers as to make that as likelly as possible.


in conclusion

all the demos so far are exclusively in portuguese, but I do intend to release a demo next month with an english option.

jogo da velha pt.3: testar gráficos prontos

estou jogando o protótipo do jogo da velha e refletindo sobre o design dele, mas enquanto não decido se quero mudar algo, ou o que, estou pensando um pouco na parte visual do jogo. visto que é um jogo bem pequeno que estou desenvolvendo em paralelo a um projeto bem maior, pensei em aproveitar para explorar o uso de gráficos prontos e talvez começar a montar uma biblioteca de assets que posso usar em projetinhos menores ou em protótipos.

dando uma olha na parte de assets do itch encontrei esse conjunto lindo de comidinhas: Free Pixel foods por ghostpixxells

visto que o jogo é bem jogo de tabuleiro, achei interesse que as peças sejam pratos de comida que você esteja botando na mesa. vou fazer pessoalmente os efeitos especiais para os golpes e vai ser desafiador e interessante pensar em efeitos com temática de comida.


testes do gráficos de comida no protótipo atual do jogo



mockup de uma peça do jogo com os gráficos de comida, a pecinha já foi feita por mim

quarta-feira, 20 de janeiro de 2021

bate-bate pt.11: mecânica nova, esquiva

adicionei uma mecânica nova que abre espaço para uma grande quantidade de personagens e estratégias novas.

 

um lutador inimigo (o morcego vermelho) realizando uma esquiva e evitando levar dano

 

 

esquiva pode ocorrer por dois motivos. o primeiro é um buff novo de evasão e um debuff novo de destreza. se um lutador está para usar um golpe ofensivo em um alvo, mas o atacante tem debuff de destreza ou o alvo tem buff de evasão, existe a chance do alvo evitar o ataque. quando esquiva ocorre, o atacante não utiliza seu golpe primário, mas ainda passa a vez pro alvo.

cada ponto de buff de esquiva ou debuff de destreza aumenta um pouco a chance da esquiva ocorrer. quando o alvo esquiva, todo o seu buff de esquiva e o debuff de destreza do atacante são zerados. isso significa que se um lutador acumular evasão continuamente, ele inevitavelmente vai acabar esquivando em algum momento provavelmente.

o segundo motivo para a esquiva envolve uma adição considerável ao jogo, níveis. como o jogo ainda está contido a batalhas individuais, a mecânica de níveis não foi necessário até agora, mas também pode levar a esquiva. quando um lutador de nível mais alto ataca um alvo de nível mais baixo, há sempre uma chance do alvo esquivar. quanto maior a diferença de nível, maior a chance de esquiva.

minha intenção é que isso dê um espaço para lutadores de níveis mais baixos no seu conjunto, tornando eles viáveis e, possivelmente, até estrategicamente interessantes. lutadores de nível muito menor que seu inimigo podem conseguir evitar a maioria dos ataques, mas sempre correm o risco de acabar sendo atacados por um golpe muito forte quando a esquiva falhar.

o nível por enquanto não muda. os lutadores do jogador tem todos nível 2 e os inimigos variam um pouco mais.

domingo, 17 de janeiro de 2021

projetos passados 02: interstellar rising

apresentação

Interstellar Rising (um nome que intencionalmente não significa muita coisa) foi uma tentativa de testar um série de pequenos experimentos em mecânicas tradicionais de RPGs em uma interface a base de texto, iniciando experimentações em ficção interativa e sistemas narrativos, algo que me interessa muito.

você joga como uma espécie de mercenário, realizando trabalhos variados que vão de assassinato a escolta, em um sistema espacial gerado proceduralmente e composto de planetas, luas e asteróides. o jogo é estruturado em missões, que consistem de um único encontro narrativo, resolvido provavelmente com uma única escolha narrativa. no meio tempo, o jogador também pode passear por qualquer local no sistema, visitando locações onde ele pode conseguir serviços e pedindo a ajuda a um pequeno conjunto de personagens, também gerados proceduralmente, que possuem aptidões variadas.


tela título do jogo


estrutura

o sistema que você habita é composto por sete locações, planetas, luas e asteróides, apesar da diferença ser puramente cosmética. cada locação tem quatro estabelecimentos que podem ser visitados pelo personagem, um nível de influência que o personagem possui naquele local, um nível de influência que cada grupo possui no local e uma opinião que essa locação possui do personagem.

o jogador pode passear livremente pelo sistema, visitando o lugar que quiser, e utilizando os serviços prestados pelos estabelecimentos. entretanto, um único estabelecimento por locação pode ser usado até que o jogador complete uma nova missão. da mesma forma, o jogador pode ser dirigir aos personagens do jogo e pedir favores, mas cada personagem só presta um favor até que uma missão nova seja completada.

as missões, portanto, estruturam o jogo e determinam seu ritmo, criando um semblante de "capítulos" , ou sessões, mesmo para as ações realizadas fora delas. queria dessa forma permitir um jogo aberto que ainda tivesse um controle mais firme do seu ritmo e mantivesse o jogador numa linha mais coesa. espero também que essa estrutura convide o jogador a relacionar as ações no mundo à missão que está realizando, dando uma coesão maior ao que ele faz.


narrativa

toda missão é um evento narrativo que pode ser acessado na locação na qual ele acontece. eventos narrativos são encontros em que o jogo precisa escolher uma opção de ação para realizar, podendo ter então sucesso ou fracasso nesse encontro. quase todo encontro é muito simples e requer apenas uma única escolha de ação.

eu acabei decidindo no começo do projeto que iria programar o sistema narrativa com uma ferramenta que não compreendia muito bem ainda e isso me engessou muito no seu desenvolvimento. queria que os encontros narrativos fossem mais complexos, possivelmente procedurais e assim muito mais variados. o que deu para implementar foi algo muito muito simples. existe uma pequena variedade de encontros que se repetem com frequência e a única variação na experiência é a forma com que você decide ter sucesso neles.

escolhas narrativas em eventos tem uma certa chance de sucesso dependendo do tipo de ação que ela é e da sua aptidão naquela ação. algumas escolhas tem chance de sucesso garantida, mas só podem ser escolhidas se o jogador tiver um nível mínimo de influência naquele local.

estabelecimentos são eventos narrativos também em que a maioria das ações tem sucesso garantido com a influência necessária para tomar aquele serviço, como comprar um item no mercado, mas também podem ter ações com possibilidade de fracasso, como roubar um banco.

queria que qualquer coisa que o jogador precisasse, como um item, ou influência em um local, pudesse ser obtida por uma variedade de meios, cada um precisando de uma preparação ou incorrendo em consequência diferentes. comprar um item exige do jogo conseguir influência suficiente no local do mercado, seja completando missões ali ou pedindo favor a um personagem rico, mas ele pode sempre tentar roubar o item, o que levaria ele a nunca mais poder usar aquele mercado novamente. algumas ações podem ser realizadas tanto por personagens quanto por estabelecimentos, mas as duas coisas implicam num procedimento diferente com chances de sucesso e custos diferentes, etc.

 

tela de narrativa com as opções narrativas de tipos variados



ações e atributos

odeio a forma tradicional com que jogos lidam com atributos. se quase todos os atributos simplesmente te levam a dar mais dano, só que com armas ou habilidades diferentes, eles são só um jeito teoricamente menos restritivo de restringir armas por classe ou criar fraqueza em inimigos por certos tipos de ataque. acho muito insatisfatório.

queria um equivalente a atributos que realmente me fizesse sentir que estou habitando um papel diferente investindo em uma coisa e não na outra. tentei explorar isso nesse jogo criando quatro (na verdade meio que cinco) tipos de ação que uma escolha narrativa pode ter, permitindo que o jogador tenha aptidões variadas em cada tipo de ação.

enforce (forçar), deceive/ hack (enganar/ haquear), negotiate (negociar) e convince (convencer). tentei dar a cada tipo de ação uma textura realmente diferente da outra dando efeitos e consequências inerentes para cada tipo de ação independente da escolha narrativa. dessa forma, uma escolha narrativa tem efeitos próprios dependendo do jogador ter sucesso ou fracasso, mas sua ação também implica em um efeito recorrente e previsível que o jogador sempre vai levar em consideração.

enforce envolve forçar sua vontade nos outros, seja por ameaças, autoridade ou violência física e sempre leva o alvo da ação a diminuir sua opinião de você independente de sucesso ou fracasso.

deceive/ hack tem o mesmo efeito um em relação ao outro, você busca conseguir o que quer enganando o alvo. se a ação for bem sucedida, ele não fica sabendo e você não perde opinião com ele. se a ação for um fracasso o alvo diminui a opinião que tem por você. deceive tem a vantagem em relação a enforce de possibilitar que o alvo não diminua a opinião, mas também costuma ter uma chance de sucesso bem menor e precisar de mais preparação.

negotiate nunca leva o alvo a diminuir a opinião por você, já que não envolve violência ou trapaça, mas tem sua chance de sucesso levemente dependente de uma opinião positiva por parte do alvo e necessita que você entregue um de seus itens para ele como contrapartida caso a ação seja um sucesso. negotiate então depende de uma relação boa com as pessoas e locações e um fluxo constante de itens.

a última ação é a que envolve o menor custo e consequência por parte do jogador, mas é completamente dependente de uma relação positiva com o alvo, convince. esse tipo de ação basicamente só tem a menor chance de sucesso com alvo aliados e ainda assim vai tender a ser menor que outros tipos de ação, mas não custa nenhum item e nunca tem consequências negativas no fracasso.

devido às limitações do sistema narrativo, eu não acho que esse sistema foi bem explorado, mas eu amo a idéia e quero explorar isso bem mais no futuro.

 

locações e estabelecimentos

as locações são geradas proceduralmente, de um jeito muito simples, quatro estabelecimentos aleatórios, um panorama puramente visual, uma opinião do jogador e seu nível de influência e a influência dos grupos no local.

para tentar tornar as locações mais concretas que apenas um agrupado de estabelecimentos, adicionei a regra que o jogador só pode usar um único estabelecimento de uma locação por missão. isso ajuda a limitar um pouco a capacidade do jogador, impedindo as coisas de saírem do controle, e cria uma relação mais forte entre os quatro estabelecimentos de uma locação.

a geração procedural desses locais fica um pouco mais forte agora, mesmo selecionando os estabelecimentos de forma aleatória. os locais A, B, C e D não podem ter nada em relação um com o outro a priori, mas ganham uma relação forte quando estão juntos por se tornarem mutualmente excludentes. estabelecimento A ganha a característica de não poder se usado simultaneamente com B, C e D. a seleção aleatória de quatro estabelecimentos se torna significativa de forma inerente, sem o significado para esse conjunto precisar existir anteriormente.

de um modo geral me incomoda essa sensação em jogo abertos de que se pode fazer tudo a qualquer momento. o jogador pode ter tudo, ver tudo, ler tudo, evoluir tudo, conhecer tudo. no máximo o jogador faz decisões mutualmente excludentes em momentos muito discretos como escolha de classe, facção e etc. a sensação que me passa é o mundo do jogo perde uma relação geográfica, que os elementos do mundo perdem uma relação forte uns com os outros e o jogo vira só um balde de coisa para o jogador experienciar de forma completa na ordem que tiver vontade. não permitir que todos os estabelecimentos de um local sejam usados de uma vez foi um jeito pequeno, mas constante e granular, que eu tentei de explorar algo diferente.


a tela das locações, com acesso aos estabelecimentos



grupos e personagens

personagens tem uma certa opinião do jogador, um certo nível de influência em todas as locações do sistema, fazem parte de um grupo e possuem uma profissão. o jogador pode pedir favores aos personagens com três possibilidades de ação: ameaçar o personagem caso o jogador tenha um item específico que representa informação sobre esse personagem <enforce>, negociar com o personagem entregando um item em troca <negotiate> ou só pedir pelo favor <convince>.

personagens podem prestar dois tipos de favor, permitir que o jogador use a influência do personagem em alguma locação até o final da sua missão atual ou prestar algum serviço dependendo da profissão do personagem. os serviços prestados pelos personagens são os mesmo que os prestados pelos estabelecimentos. personagens com caráter político podem aumentar ou diminuir o poder de um grupo em uma locação. hackers e espiões podem obter itens de informação sobre algum alvo. artistas e social influencers podem melhor a opinião de um personagem em uma locação e por aí vai.

grupos são apenas agrupamentos de personagens que possuem uma certa influência em cada locação do sistema, indo de 0 a 100%. esse número é abstrato, mas o grupo com a maior porcentagem de uma locação tem influência na opinião que ela tem do jogador. da mesma forma, a opinião que os membros de um grupo tem do jogador altera a opinião que o próprio grupo tem do jogador.

se a maioria dos membros de um grupo tem uma opinião positiva, esse grupo com o passar do tempo vai pender para uma opinião mais positiva, a depender da intensidade da opinião dos membros. o mesmo para opiniões negativas. a influência dos grupos nos planetas funcionam da mesma forma, a opinião do planeta vai sempre pender para a opinião do grupo dominante.

queria que isso tivesse sido bem mais dinâmico que acabou sendo e que o jogador se sentisse mais motivado a se envolver com esse sistema de opiniões. a opinião afeta a probabilidade de ações de <convince> e <negotiate> e pode levar encontros narrativos agressivos a gatilharem em locações com opiniões muita baixas, mas ainda assim queria que fosse algo um pouco maior. personagens novos são inseridos no jogo muita raramente e eles nunca mudam de grupo, então a opinião nos grupos acaba tendo pouca flutuação para o sistema ser dinâmico.

a opinião afeta de forma mais forte o oponente no nível dos personagens, provavelmente. poder conseguir favores com eles com uma ação de <convince> é muito vantajoso.


a tela de contato com os personagens



arquétipos e traits

os arquétipos e traits foram um jeito de lidar tanto com a questão de objetivos tanto quanto a ideia de classes ou árvores de habilidades. traits são características que o jogador adquire e mudam sua aptidão para certas ações. arquétipos são traits especiais que o jogador ganha quando joga de uma forma especial e específica e cumpre certos pré-requisitos.

traits normais refletem um sistema escondido que registra toda ação que o jogador realiza. quando o jogador usa uma ação de um certo tipo, esse tipo aumenta em um contador escondido e todos os outros tipos de ação diminuem um pouquinho. dessa forma, se um jogador usar um certo tipo de ação o tempo todo, essa ação atinge um nível arbitrário nesse contador e o jogador ganha uma trait que aumenta sua aptidão nessa ação. da mesma forma, se o jogador nunca usa um certo tipo de ação, ela diminui o suficiente no contador e o jogador ganha uma trait diminuindo sua aptidão nessa ação.

ao contrário de habilidades normais em rpgs, em que o jogador escolhe uma habilidade para se tornar mais forte, ou aumenta o número de um atributo, as traits nesse jogo refletem as ações do jogador. para ser mais forte em <convince> ele precisa efetivamente usar muito, mas ao mesmo tempo, ele enfraquece em <convince> se não usar nunca. esse sistema busca tornar cada ação do jogador significativa de um jeito pequeno e granular e passar a sensação de que o jogo está "escutando" e prestando atenção no que o jogador faz.

arquétipos buscam fazer algo similar. cada arquétipo tem uma lista de pré-condições e concedem uma trait especial quando cumpridas. "Knee-Breaker" requer que o jogador ameace vários personagens. "Gentleman Thief" que ele cometa vários roubos bem sucedidos sem usar ações do tipo <enforce>. a ideia é que os arquétipos reconheçam atos interessantes do jogador e registrem isso de forma concreta no seu personagem.


gráficos e interface

eu estava fazendo um jogo mais complexo pela primeira vez, programando, fazendo o design e os gráficos sozinha, então queria um estilo que fosse visualmente simples, mas dinâmico. escolhi algo mais gráfico, com elementos representativos muito esporádicos, como o panorama dos lugares e os retratos dos personagens.

a interface de caixinhas lado a lado é uma influência bem orgânica de jogos antigos, especialmente jogos de PC dos anos 90, mas também de histórias em quadrinho e fotografia. a natureza da fotografia é o índice, a fotografia produz esse pequeno índice de um momento ou coisa, que pode ser exibido ao lado de outros índices, mas existe enquanto recorte auto contido. gosto de uma UI que apresenta os elementos do jogo pro jogador com uma relação mais abstrata entre si, passível de ser manipulada por mim muito facilmente. o jogo comunica a relação entre seus elementos, mas não precisa representá-la. eu posso mostrar um local ou uma pessoa e dizer que um certo símbolo ou palavra está associado a eles, coisas desse tipo.

para deixar o jogo dinâmico escolhi animar quase que apenas coisas gráficas. as telas tem glitchzinhos constantes que ficam aparecendo e desaparecendo e as conexões entre as caixas são animadas e sugerem dados sendo transmitidos entre elas (eu espero). a única representação gráfica animada são os retratos em rotoscopia, em que a baixíssima taxa de quadros contrasta tanto com o movimento naturalista quanto com o movimento constante das linhas pretas.


sumário e conclusão

meu objetivo com o jogo foi criar um mini sistema de rpg em que cada ação seja significativa, não por conta de escolhas narrativas grandes que mudem a direção da história, mas de forma granular no sistema do jogo, com consequências pequenas para cada ação realizada e escolhas mutuamente excludentes.

não queria um modelo de "role-playing" em que o jogador escolhe classes e skills que comunicam o tipo de personagem que ele é, mas um jogo que realmente requeira que o jogador se comporte de uma dada forma e reconheça e registre isso de forma concreta.

o jogo acabou sendo uma experiência valiosa para mim enquanto designer e programadora, além de um rascunho interessante das ideias de design, mas foi restringido pela minha falta de experiência e por escolhas ruins de ferramenta. quero muito revisitar essas ideias no futuro.


o jogo teve música realizada por Ra Irigaray e pode ser encontrado aqui, em um estado jogável espero eu: https://umunum.itch.io/interstellar-rising

quinta-feira, 14 de janeiro de 2021

bate-bate pt.10: mecânica nova, itens!

adicionei uma mecânica nova ao jogo, itens! o jogador agora possui um pequeno "deck" de itens toda luta que ele pode utilizar nos seus lutadores durante a rodada de administração. os itens tem efeitos simples que espelham os golpes dos lutadores, eles podem curar hp, dar buff de ataque e defesa e aumentar a evasão (mecânica nova que explicarei mais tarde).

itens também podem ser utilizados pelos inimigos, isso agora vira uma ação possível da inteligência artificial durante a rodada de administração junto à movimentação, como reação ao jogador fazendo uma jogada. 

a possibilidade dos inimigos utilizarem itens em si próprios acabou tendo efeitos positivos e negativos na dinâmica da rodada de administração, eu acho. a reação do inimigo é agora mais imprevisível, tem chances dele se mover ou usar um item, em compensação, isso tira um pouco da satisfação de conseguir manipular a movimentação do oponente de forma previsível, algo muito divertido antes.

o uso de itens pelo oponente também fortalece o aspecto "push your luck" dessa rodada. itens podem ter efeitos de graus variados, uma poção pode curar 1 de vida e outra 3. logo o jogador nunca sabe se a ação do inimigo será mais branda ou mais forte e sempre que tomar uma ação estará correndo o risco de uma reação grave por parte da IA.

(como sempre assets temporários de cadence of hyrule e pokemon)


uso de um item em um lutador aliado e logo em seguida em um inimigo, como resposta


segunda-feira, 11 de janeiro de 2021

jogo da velha pt.2: como fiz a inteligência artifical do oponente

a IA começa escolhendo aleatoriamente uma de suas peças disponíveis para jogar e depois avalia o campo para escolher a melhor célula onde botar, levando em consideração a possibilidade de formar uma linha, impedir o oponente de fazê-lo e se beneficiar do poder da peça.

a IA não estrategiza de verdade, toma uma ação por vez sem planejar a próxima, mas visto que já é difícil conseguir ganhar, apesar de não ser difícil de evitar perder, não achei necessário que ela jogasse melhor que isso, pelo menos por agora.

na hora de analisar o campo a IA avalia todas as linhas de três células possíveis, uma a uma, e pontua as células vazias dependendo da possibilidade de conseguir formar uma linha sua ou impedir uma linha do oponente. no final do processo a célula com maior pontuação é escolhida e a IA joga sua peça nela.

um espaço vazia ganha uma certa pontuação se fizer parte de uma linha com uma outra peça da IA e uma pontuação bem maior caso faça parte de uma linha com duas peças, sendo a peça que falta para formar um conjunto de três. o mesmo é feito avaliando as peças do oponente, se a linha tiver duas peças do oponente, o espaço vazio ganha uma pontuação alta para levar a IA a impedir o oponente de ganhar.

cada espaço vazio também é pontuado dependendo do efeito da peça escolhida. certos efeitos retiram força de inimigos adjacentes ou adicionam força a aliados adjacentes. efeitos que dependem da posição da peça no campo e de seus vizinhos possuem tags que levam a IA a levar as peças adjacentes em consideração. peças que danificam os inimigos adjacentes por exemplo, dão pontos a um espaço vazio por cada inimigo adjacente a ele.

 

gif explicativo do processo de pontuação dos espaços vazios
explicação do processo de pontuação de um único espaço vazio de acordo com todas as linhas de três peças em volta dele

gif demonstrando todas as linhas analisadas pela IA
todas as linhas de três peças analisadas pela IA, em ordem


.

jogo da velha: demo disponível da versão atual do jogo

ainda preciso testar melhor o design do jogo e potencialmente a inteligência artificial do oponente, mas uma versão viável do protótipo já está disponível com funcionalidade completa para partidas de dois jogadores (multiplayer local) e um jogador.

os gráficos ainda são temporários com assets ripados de pokemon e a interface é minimamente funcional e feia.

é provável que no estado atual do design o jogo não termine e só dure para sempre sem ninguém ganhar, mas comentários são muito bem vindos.


link pro drive com o rar: https://drive.google.com/drive/folders/1mrE1b7ALpwRf8aG5SDvqC-PGsDQBRQh-?usp=sharing 


gif de uma partida em andamento


sábado, 9 de janeiro de 2021

bate-bate: demo disponível da versão 0.15

compartilhei uma nova versão do protótipo no drive. ela apresenta mais vários cenários de combate, melhorias em cenários antigos e a introdução da mecânica nova dos objetos de cenário com efeitos ativáveis.


link pro zip: https://drive.google.com/drive/folders/1JoPGdF136_zH3PZ9WQ3QY38nRTy9Uf2E?usp=sharing

 

adendo: gráficos temporários ripados de cadence of hyrule e pokemon

adendo 2: ainda esqueci de botar um botão de fechar a aplicação

segunda-feira, 4 de janeiro de 2021

jogo da velha pt.1: tentando aditivar o jogo da velha

comecei recentemente um side project pequeno para tentar adaptar o jogo da velha em um jogo mais funcional e estratégico.

os jogadores posicionam peças em um tabuleiro de 4x4 com o objetivo de formar uma linha de 3 peças na vertical, diagonal e horizontal. cada peça possui uma certa quantidade de força. depois do turno de cada jogador, todas as peças em campo perdem um de força, dessa forma todas as peças em campo serão eventualmente removidas a não ser que o jogo termine antes. cada peça tem um poderzinho que envolve adicionar força a peças aliadas, remover força de peças inimigas ou adicionar força a si. cada jogador tem o mesmo set de peças em um deck e uma mão aberta de peças para jogar, ganhando uma nova do seu "deck" sempre que descer alguma.

o objetivo do jogo é portanto posicionar as peças levando em consideração a sua necessidade de formar uma linha de três peças, bloquear as linhas do oponente e tomar vantagem do efeito da peça jogada tudo ao mesmo tempo.

meu chute para deixar o jogo mais estratégico e divertido que o jogo da velha é que um campo de 4x4 torne mais difícil frustrar uma linha do jogador, já que ele terá dois lados para posicionar as peças ao invés de só um, e que uma mão aleatória de peças leve o jogador a precisar improvisar e leve a partidas variadas. além disso, a remoção eventual de todas as peças leva o jogador a precisar considerar a dimensão do tempo além do espaço do tabuleiro. entretanto, ainda não consegui testar muito o protótipo atual.

postarei updates ocasionais sobre esse protótipo e eventualmente umas versões jogáveis.


screenshot do jogo no estado atual
a mão do jogador 1 (azul) e do jogador 2 (vermelho) de cada lado com o tabuleiro no meio

 

(assets temporários de pokemon)


Floreio, minha gramática de geração procedural de texto

Gostaria de falar um pouco da ferramenta de geração procedural de texto por gramática de substituição que eu venho desenvolvendo na Unity pa...