;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL

Topo

Como o game Trajes Fatais perdeu R$ 48 mil após sucesso em campanha

Criadores do game Trajes Fatais alegam ter sido vítimas de um golpe que desviou dinheiro da campanha de financiamento coletivo - Reprodução/YouTube
Criadores do game Trajes Fatais alegam ter sido vítimas de um golpe que desviou dinheiro da campanha de financiamento coletivo Imagem: Reprodução/YouTube

Giovanna Breve

Colaboração para o START

18/10/2020 04h00Atualizada em 23/10/2020 14h05

Jogo Rápido

  • Game de luta Trajes Fatais conseguiu apoiadores, bateu meta de arrecadação e ganhou prêmios, mas ainda não foi lançado
  • Criadores alegam ter sido vítimas de um golpe financeiro, e agora se reorganizam para finalizar o projeto
  • Trajes Fatais lembra clássicos como Street Fighter, mas com personagens brasileiros como Saci e Cangaceiro
  • Versão demo pode ser baixada gratuitamente para PC via Steam

Trajes Fatais, game do estúdio cearense Onanim, chamou atenção há alguns anos, com arte e gameplay de primeira qualidade, lembrando os clássicos Street Fighter e King of Fighters. O game ganhou prêmios e bateu metas de arrecadação em campanha de financiamento, em 2017.

Só que, três anos depois, o jogo ainda não foi lançado. Os criadores acusam um ex-membro do estúdio de desviar cerca de R$ 48 mil dos R$ 114 mil arrecadados, comprometendo o desenvolvimento e a entrega do projeto no prazo. Para conhecer melhor essa história, o START conversou com Onofre Paiva e Jonathan Ferreira, dois dos envolvidos no desenvolvimento desse peculiar jogo de pancadaria.

Vitórias e derrotas

Trajes Fatais, ou "TRAF" para os íntimos, está sendo feito há quase dez anos. Desenhando em pixel art com animação 2D, ele tem todas as características dos clássicos games de luta dos anos 90, principalmente os da SNK, como King of Fighters e Fatal Fury, mas com uma diferença fundamental: as raízes da cultura brasileira.

O toque Made in Brazil chama atenção não só nos cenários, que incluem até uma Festa Junina, mas principalmente nos personagens: cangaceiro, indígena e sereia são alguns dos lutadores nesse variado elenco do jogo.

O reconhecimento começou em 2015, com o prêmio de Melhor Jogo por voto popular no SBGames 2015. No ano seguinte, Melhor Jogo Brasileiro na Brasil Game Show (BGS) de 2016.

Naquele mesmo ano, o grupo lançou uma primeira campanha de financiamento coletivo, que não arrecadou o suficiente.

Em 2017, a Onanim organizou uma nova campanha, utilizando uma abordagem diferente, e o sucesso veio: bateram a meta de R$ 80 mil, chegando a R$ 114.444,00.

Onofre Paiva Trajes Fatais - Reprodução/Arquivo Pessoal - Reprodução/Arquivo Pessoal
Onofre Paiva vestido como o cangaceiro Lourenço Sombra, um dos personagens do jogo
Imagem: Reprodução/Arquivo Pessoal

Em entrevista ao START, o game designer e criador de Trajes Fatais, Onofre Paiva, comenta que esse foi um período de mudanças para a equipe.

"Acabamos entrando numa vibe mais 'empreendedora', com uma proposta mais chamativa, porém arriscada por oferecer um projeto bem mais complexo", explica o desenvolvedor.

A lista de conteúdos que estariam no jogo é longa: e para joystick, modo história, modo arcade, modos de disputa "versus", além de modo de treinamento e recursos próprios do Steam, como "trading cards" e conquistas.

Mas, com a meta superada, a Onanim acreditava que poderia concretizar o sonho de lançar o jogo.

Bateu mais forte que Hadouken

Do total de R$ 114 mil arrecadados, o estúdio ficou com R$ 99 mil, segundo Onofre, já que parte da arrecadação fica retida plataforma de financiamento —no caso, o Catarse.

Onofre conta que uma parte do valor que ficou com a Onanim foi usado em "serviços de terceirizados". O restante, cerca de R$ 48 mil, seria usado para o desenvolvimento de Trajes Fatais.

Campanha de financiamento do game Trajes Fatais - Reprodução/START - Reprodução/START
Campanha de financiamento de Trajes Fatais
Imagem: Reprodução/START

Onofre explica que, na época, o estúdio não tinha uma conta empresarial aberta, então a decisão foi depositar o dinheiro coletado na conta pessoal de Onofre, sendo que a istração ficaria a cargo de outro integrante do estúdio.

Foi quando, segundo os criadores, tudo começou a ruir.

cena do game Trajes Fatais - Divulgação/Onanim - Divulgação/Onanim
Imagem: Divulgação/Onanim

Jonathan Ferreira, ex-produtor do jogo e um dos responsáveis por dar uma nova vida ao projeto na campanha de 2017, desconfiou que os R$ 48 mil não haviam sido reados para a conta da empresa assim que ela foi aberta e questionou quem estava istrando.

"Mesmo eu falando, falando e falando, a pessoa que estava istrando isso no lugar do Onofre convencia ele de que não era preciso fazer tal coisa, e ele acabou dando ouvidos à pessoa errada", desabafou Jonathan em entrevista ao START.

Após meses de insistência por parte do produtor, em março de 2018 Onofre cedeu e ou o o à conta bancária para Jonathan.

Foi assim que ambos descobriram o rombo: segundo eles, o dinheiro não estava mais lá.

Tanto Jonathan quanto Onofre decidiram não revelar a identidade do integrante do estúdio acusado de dar o golpe. O caso foi resolvido diretamente entre o estúdio e o acusado do golpe, sem processos na Justiça.

Confesso que naquele primeiro momento eu senti apenas ódio, depois de dias fui sentindo várias outras coisas
Jonathan Ferreira, ex-produtor do Trajes Fatais

Se para Jonathan o sentimento era de raiva, Onofre sentiu mais pelo lado pessoal. "Difícil descrever a sensação, mas acaba culminando numa raiva de si mesmo por não ter percebido antes e por confiar demais."

Depois da descoberta, o integrante acusado foi afastado da Onanim.

"Entramos em acordo de que terá que repor tudo. Isso já foi iniciado, porém não será uma reposição imediata, mas em várias prestações", explica Onofre.

Trajes Fatais - Reprodução/YouTube - Reprodução/YouTube
Imagem: Reprodução/YouTube

Segundo Onofre e Jonathan, o estúdio não saiu ileso: outros integrantes foram dispensados, por falta de dinheiro para os salários, o lançamento, marcado para 2018, foi adiado, e a dinâmica entre integrantes remanescentes não era boa.

"O problema é que partir do roubo a sinergia já não era mais a mesma", afirmou Jonathan Ferreira.

Prestando contas

Os problemas aumentavam para fora do estúdio, também. Como justificar o atraso para as 1232 pessoas que deram dinheiro na campanha de financiamento?

A internet se dividiu: enquanto parte dos seguidores continuaram apoiando, com mensagens diretas ao estúdio, outros acreditavam que o game havia caído no esquecimento, sem esperanças de ser lançado.

Game Trajes Fatais - Divulgação - Divulgação
Versão antiga de Trajes Fatais, de 2016
Imagem: Divulgação

Segundo Onofre, as reações negativas são poucas, e ele afirma que tem recebido muita compreensão e e dos fãs, o que ajuda na motivação da equipe:

"Tivemos muito apoio e isso foi fundamental para reavivar nosso ânimo. As mensagens de carinho realmente nos fortaleceram. E nossa palavra está de pé em relação ao que eles receberão", promete ele.

Este ano, o estúdio tem divulgado vídeos esclarecendo a situação do game.

Tivemos muito apoio e isso foi fundamental para reavivar nosso ânimo
Onofre Paiva

Os desenvolvedores afirmam que as recompensas para os apoiadores serão entregues, mas que isso só deve acontecer após o lançamento do jogo.

A lista de recompensas vai desde a trilha sonora digital, para quem contribuiu com R$ 20 ou mais, até um personagem próprio no jogo, para o único apoiador que desembolsou R$ 30.000 ou mais, na cota limitada.

"As recompensas são a última coisa. O pretendido é usar o dinheiro das vendas do jogo. Mas pode ser possível também com a ajuda de investidores", afirma Onofre.

Continue?

No começo de 2020, o produtor Jonathan Ferreira saiu da Onanim. Segundo ele, não foi uma escolha fácil, já que preferiu aguentar mais um tempo até as coisas melhorarem.

"O problema é que o projeto se alongou por muito mais tempo que o esperado, devido a isso, esse processo de decisão foi longo e doloroso", diz ele.

Atualmente, Jonathan está se dedicando a um novo jogo, também de luta: Pocket Bravery, de seu novo estúdio chamado Statera.

game de luta brasileiro Pocket Bravery - Divulgação/Statera Studio - Divulgação/Statera Studio
Pocket Bravery é novo projeto do ex-integrante do estúdio de Trajes Fatais
Imagem: Divulgação/Statera Studio

Em um vídeo em seu canal, o ex-produtor diz que, apesar da saída, continua amigo dos integrantes da Onanim.

Enquanto isso, Onofre tem se dedicado inteiramente ao desenvolvimento de Trajes Fatais. Além dele, a equipe atual é composta por outro sócio e um novo produtor.

Para completar o projeto, a Onanim tem freelancers e parcerias com produtoras para a parte de programação e sonoplastia.

"Atualmente as principais áreas estão de acordo com receber porcentagens da venda em vez de pagamento direto. Espero com isso que todos ganhem até mais do que estava combinado", esclarece Onofre.

Poster do game brasileiro de luta Trajes Fatais - Divulgação/Onanim - Divulgação/Onanim
Imagem: Divulgação/Onanim

Por enquanto Trajes Fatais: Suits of Fate tem lançamento previsto para PC (via Steam), com uma versão alfa disponível para .

Segundo o blog oficial do game, há pretensão de lançamento também para outras plataformas e um lançamento em o antecipado até o fim de 2020, mas sem data definida devido à pandemia de covid-19.

"Quanto ao estado do jogo, baseando-se nos personagens (que são a alma de um jogo de luta), diria que está em 80%", completa o criador de Trajes Fatais, que ainda sonha em tornar realidade o jogo que começou a idealizar há dez anos.

Trajes Fatais

SIGA O START NAS REDES SOCIAIS

Twitter: https://twitter.com/start_uol
Instagram: https://www.instagram.com/start_uol/
Facebook: https://www.facebook.com/startuol/
TikTok: http://vm.tiktok.com/Rqwe2g/
Twitch: https://www.twitch.tv/start_uol

Errata: este conteúdo foi atualizado
Diferentemente do que informava a versão original do texto, o valor desviado, segundo os entrevistados, foi de R$ 48 mil, e não R$ 57 mil. A informação já foi corrigida.