;(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

OPINIÃO

START Indica: 10 "walking simulators" que você precisa conhecer

Em Firewatch, jogador vira um guarda florestal e tenta esquecer problemas do ado - Reprodução
Em Firewatch, jogador vira um guarda florestal e tenta esquecer problemas do ado
Imagem: Reprodução

Makson Lima

Colaboração para o START

03/05/2020 04h00

Não-jogo, antijogo, os simuladores de andar. Seja qual for a alcunha ou rótulo escolhido, os ditos FPX, ou "first person experience", têm gerado discussões acaloradas sobre as regras do jogo. É preciso haver regras? Como cumpri-las? Vencedores e perdedores? Pontos, continues, vidas?

Foi em 2013 que Gone Home abalou as estruturas do que compõe um jogo de videogame, num verdadeiro manifesto da importância narrativa, do uso da mídia para contar histórias de forma impossível em qualquer outo lugar. Com a chegada do horror psicológico The Shattering, START selecionou alguns dos jogos mais relevantes dentro da polêmica vertente.

THE SHATTERING

Shattering - Divulgação - Divulgação
O bom e velho Teste de Rorschach
Imagem: Divulgação

Lançamento: 2020 (Steam)
Desenvolvimento: Super Sexy Software

Sessões de terapia transformadas em gameplay e regressão hipnótica traduzida em cenários remodelados aos medos e anseios do paciente. Por que John está ali, em busca de ajuda? O que aconteceu em sua infância e adolescência? Como foi o seu casamento? The Shattering é quase transcendental, uma experiência de total imersão e, justamente por isso, repleta de momentos traumáticos.

WHAT REMAINS OF EDITH FINCH

Finch - Divulgação - Divulgação
A casa dos Finch, saída diretamente de um conto de fadas
Imagem: Divulgação

Lançamento: 2017 (PS4, Xbox One, PC, Switch)
Desenvolvimento: Giant Sparrow

O mais inventivo de todos os exemplos da lista. A trágica história dos Finch acompanha altas doses de imaginação na forma de contar a história particular de cada pedacinho da árvore genealógica dessa família tão exótica e sofrida. Depois da explosão criativa de The Unfinished Swan, a Giant Sparrow consegue a surpreendente tarefa de superação e What Remains of Edith Finch segue como a pedra angular dentro do movimento FPX.

DEAR ESTHER

Esther - Divulgação - Divulgação
Videogames podem ser relaxantes e contemplativos
Imagem: Divulgação

Lançamento: 2007 (PC, Xbox One, Switch, PS4)
Desenvolvimento: The Chinese Room

Foi em 2007 onde tudo começou. Nascido de mods da Source Engine de Half-Life 2 e depois recriado para diversas plataformas, Dear Esther fala sobre reflexões e anseios. Caminhar por uma ilha recôndita acompanhado pela voz que declama uma carta, e de forma bastante aleatória, sem ordem pré-definida, pode ser relaxante. A trilha sonora de Jessica Curry celebra o quão insólito tudo aparenta ser: uma verdadeira ode à não-violência.

GONE HOME

Gone Home - Divulgação - Divulgação
O que esconde a casa dos Greenbriar?
Imagem: Divulgação

Lançamento: 2013 (PC, Xbox One, Switch, PS4)
Desenvolvimento: The Fullbright Company

A The Fullbright Company, criadora do DLC Minerva's Den, de BioShock 2, estava cheia de ideias tidas como revolucionárias. Gone Home foi a concretização de tais ideias, oferecendo uma total reconstrução narrativa em videogame. No formato, nada ali é efetivamente novo, mas a não-linearidade das descobertas e a narrativa quebrada, posta em cada elemento do cenário, fizeram da volta para casa de Katie uma das mais envolventes dos últimos tempos. É a narrativa interativa posta da forma mais plena possível.

AMNESIA: A MACHINE FOR PIGS

Amnesia - Divulgação - Divulgação
O terror industrial, bem diferente de The Dark Descent
Imagem: Divulgação

Lançamento: 2013 (PC, PS4, Xbox One, Switch)
Desenvolvimento: The Chinese Room, Frictional Games

Depois de seu trabalho em Dear Esther, a The Chinese Room, em parceria com a Frictional Games, mergulhou de cabeça no terror industrial com A Machine for Pigs, um capítulo nada convencional da já aclamada franquia Amnesia. Ao contrário de The Dark Descent, o horror abandona o gótico dos castelos e abraça o vitoriano dos becos e matadouros imundos.

THE VANISHING OF ETHAN CARTER

Carter - Divulgação - Divulgação
Os belos cenários tomados pela natureza escondem segredos macabros
Imagem: Divulgação

Lançamento: 2014 (PC, Xbox One, PS4, Switch)
Desenvolvimento: The Astronauts

A cidadezinha de Red Creek Valley é palco da investigação do famoso detetive Paul Prospero —seu último caso, como ele bem aponta. Mal poderia imaginar o que estaria por vir, cujo gatilho foi a carta de um garoto e fã, o Ethan Carter do título. Incluindo fendas no tempo-espaço, ecos do ado e lendas ancestrais, The Vanishing of Ethan Carter é de exploração livre e cenários fotogrametrados, muito impressionantes.

FIREWATCH

Firewatch - Reprodução - Reprodução
Escapismo, isolamento e reencontro com a natureza
Imagem: Reprodução

Lançamento: 2016 (PC, PS4, Xbox One, Switch)
Desenvolvimento: Campo Santo

A vida de guarda-florestal não é nada fácil, e Firewatch ainda consegue enfiar um ou outro mistério numa rotina dada como certa. Aliás, quebra da rotina pré-estabelecida em videogame é uma das grandes propostas desse movimento narrativo interativo. Pouco mais de um ano após um grande incêndio, é incumbência de Henry manter as coisas em ordem na Floresta Nacional de Shoshone, mas como manter essa ordem se a sua própria vida (e, em especial, a de sua esposa) está bem longe disso?

TACOMA

Tacoma - Divulgação - Divulgação
Prontos para embarcar nessa ficção?
Imagem: Divulgação

Lançamento: 2017 (Xbox One, PC, PS4)
Desenvolvimento: The Fullbright Company

O Gone Home espacial nos leva até o ano de 2088 e a base espacial que dá nome ao jogo. A coisa toda já começa em catástrofe, pois chegamos ao local após sua colisão com um meteorito. Ecos holográficos remontam e recontam vários dos momentos da infortunada tripulação. Todo aprendizado nascido de Gone Home e sua narrativa de ambiente é posto em Tacoma, magistralmente traduzido para a específica linguagem da ficção-científica.

EVERYBODY'S GONE TO THE RAPTURE

Rapture - Divulgação - Divulgação
Gráficos realistas nessa narrativa interativa
Imagem: Divulgação

Lançamento: 2015 (PS4, PC)
Desenvolvimento: The Chinese Room

A The Chinese Room, especializada na narrativa interativa, se junta à Santa Monica para entregar um dos FPX mais ambiciosos e com altos valores de produção. O Rapture do título diz respeito ao arrebatamento cristão, e não a utopia de Andrew Ryan em BioShock, bom deixar isso claro. Nessa pacata cidadezinha britânica onde o jogo se a, todos os habitantes desapareceram misteriosamente. O que, diabos, aconteceu ali?

PROTEUS

Proteus - Divulgação - Divulgação
A ilha pixelizada de Proteus
Imagem: Divulgação

Lançamento: 2013 (PS3, Vita, PC)
Desenvolvimento: Twisted Tree Games

A ilha em pixel art de Proteus é uma obra de arte por si só. Explorá-la livremente, sem objetivo pré-definido, como se fosse um cartão-postal de uma aventura tão descompromissada quanto relaxante, é seu outro grande trunfo. Dia, noite, verão, inverno; as mudanças no meio ambiente reformulam a perspectiva de quem joga, que pode buscar sentido ao perseguir criaturas ou ao simplesmente fechar seus olhos virtuais.

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

** Este texto não reflete, necessariamente, a opinião do UOL