{"id":5856,"date":"2024-11-04T17:33:31","date_gmt":"2024-11-04T20:33:31","guid":{"rendered":"https:\/\/www.blogs.unicamp.br\/zero\/?p=5856"},"modified":"2024-11-04T17:45:31","modified_gmt":"2024-11-04T20:45:31","slug":"a-wild-function-appears-parte-3","status":"publish","type":"post","link":"https:\/\/www.blogs.unicamp.br\/zero\/5856\/","title":{"rendered":"A Wild Function Appears \u2013 parte 3"},"content":{"rendered":"\n<p class=\" eplus-wrapper\">Ent\u00e3o, quando vi estes memes pensei, nossa que ideia dahora. Poderia criar algo realmente jog\u00e1vel com essa estrutura XD<\/p>\n\n\n\n<p class=\" eplus-wrapper\">Se n\u00e3o me engano era 2018, \u00e9poca em que meu blog principal era o Xoxelho (<a href=\"https:\/\/xoxelho.wordpress.com\/\">https:\/\/xoxelho.wordpress.com\/<\/a>) que j\u00e1 tinha como objetivo atrelar o formalismo com o l\u00fadico, mas ainda pecava no alcance (tomei v\u00e1rios ban do facebook por divulgar o mesmo conte\u00fado repetidas vezes). Nesse per\u00edodo comecei a estruturar como seria uma vers\u00e3o jog\u00e1vel dessa piada. Ou seja, um jogo de batalha onde o jogador pudesse enfrentar fun\u00e7\u00f5es matem\u00e1ticas utilizando derivadas em rela\u00e7\u00e3o a x e y.<\/p>\n\n\n\n<p class=\" eplus-wrapper\">O conceito do jogo todo foi descrito no post <strong><a href=\"https:\/\/xoxelho.wordpress.com\/wild-functions\/\">Wild functions<\/a><\/strong>. Mas em resumo o jogador tinha uma reserva de energia descrita como x\u00edcaras de caf\u00e9 a serem consumidas para cada a\u00e7\u00e3o (derivar ou integrar), uma nota inicial no seu curso de C\u00e1lculo e v\u00e1rias fun\u00e7\u00f5es para enfrentar (cujo n\u00edvel de dificuldade era representado pela quantidade de estrelas acima dela). A fun\u00e7\u00e3o viria a cada turno causar danos na nota do jogador, neste exemplo seria um d\u00e9cimo do seu valor em m\u00f3dulo por turno. J\u00e1 a condi\u00e7\u00e3o de vit\u00f3ria do jogador era reduzir o valor da fun\u00e7\u00e3o em m\u00f3dulo para menos de 5, considerando x e y definidos.<\/p>\n\n\n<div class=\"wp-block-image \">\n<figure class=\"aligncenter size-full eplus-wrapper\"><img fetchpriority=\"high\" decoding=\"async\" width=\"417\" height=\"378\" src=\"https:\/\/www.blogs.unicamp.br\/zero\/wp-content\/uploads\/sites\/187\/2024\/11\/image-7.png\" alt=\"\" class=\"wp-image-5857\" srcset=\"https:\/\/www.blogs.unicamp.br\/zero\/wp-content\/uploads\/sites\/187\/2024\/11\/image-7.png 417w, https:\/\/www.blogs.unicamp.br\/zero\/wp-content\/uploads\/sites\/187\/2024\/11\/image-7-300x272.png 300w\" sizes=\"(max-width: 417px) 100vw, 417px\" \/><\/figure>\n<\/div>\n\n\n<p class=\" eplus-wrapper\">Assim, o n\u00edvel da fun\u00e7\u00e3o (estrelas dela) definiriam o esp\u00f3lio da vit\u00f3ria, que poderia ser convertido em benef\u00edcios para o jogador (nessa parte meio que perdi a linha e fui criando muitaaaaaas coisas). <\/p>\n\n\n<ul class=\"eplus-wrapper wp-block-list eplus-styles-uid-18828b\">\n<li class=\" eplus-wrapper\"><strong>A melhoria iluminada \u2013 <\/strong>essa melhoria \u00e9 dividida em 5 n\u00edveis dispon\u00edveis em ordem crescente nas respectivas cartas de pr\u00eamio. Cada melhoria se aplica a uma fun\u00e7\u00e3o espec\u00edfica do personagem e pode ser usada apenas para a fun\u00e7\u00e3o que cont\u00e9m todas as melhorias anteriores. Exemplo: para usar o n\u00edvel 5 da melhoria iluminada na fun\u00e7\u00e3o diferencial de x, voc\u00ea deve ter usado anteriormente os n\u00edveis 1, 2, 3 e 4 da melhoria iluminada nessa fun\u00e7\u00e3o. Essa melhoria reduz a quantidade de caf\u00e9 necess\u00e1ria para ativar cada fun\u00e7\u00e3o em 1. <\/li>\n\n\n\n<li class=\" eplus-wrapper\"><strong>A melhoria da cafeteira \u2013<\/strong> essa melhoria \u00e9 dividida em 5 n\u00edveis dispon\u00edveis em ordem crescente nas respectivas cartas de pr\u00eamio. Cada melhoria pode ser aplicada individualmente ao estoque de caf\u00e9, mas apenas uma vez para cada n\u00edvel de melhoria. Exemplo: a melhoria de n\u00edvel 3 pode ser aplicada antes da melhoria de n\u00edvel 1, mas voc\u00ea n\u00e3o pode aplicar duas vezes uma melhoria j\u00e1 utilizada. Essa melhoria aumenta o espa\u00e7o de caf\u00e9 no estoque do personagem em 3.<\/li>\n\n\n\n<li class=\" eplus-wrapper\">M\u00e1quina de caf\u00e9 expresso gratuita \u2013 Este item permite que o personagem restaure quantidades de caf\u00e9 em seu estoque.<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Teste de bom substituto \u2013 Este item funciona contra fun\u00e7\u00f5es do mesmo n\u00edvel da sua carta ou n\u00edveis abaixo. Ele deve ser ativado antes da primeira a\u00e7\u00e3o contra uma fun\u00e7\u00e3o; usar este cart\u00e3o n\u00e3o conta como um movimento, mas permite que, a qualquer momento, at\u00e9 o momento em que o jogador coleta as cartas de sua vit\u00f3ria, decida se deseja cancelar todo o evento, retornando assim as cartas coletadas, restaurando sua cafe\u00edna gasta e pontos de pontua\u00e7\u00e3o perdidos (o jogador pode pegar suas cartas de vit\u00f3ria, mas esse \u00e9 o limite de tempo para ativar os benef\u00edcios deste cart\u00e3o, ap\u00f3s essa ocasi\u00e3o, se o jogador n\u00e3o ativar o benef\u00edcio deste cart\u00e3o, seu efeito ser\u00e1 perdido).<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Teste de mau substituto \u2013 Este item funciona contra fun\u00e7\u00f5es do mesmo n\u00edvel da sua carta ou n\u00edveis abaixo. Ele deve ser ativado antes da primeira a\u00e7\u00e3o contra uma fun\u00e7\u00e3o; usar este cart\u00e3o n\u00e3o conta como um movimento, reduz pela metade a pontua\u00e7\u00e3o atual, mas permite que a recompensa da fun\u00e7\u00e3o selvagem aumente em uma estrela. Suponha que se uma fun\u00e7\u00e3o de cinco estrelas for derrotada, o jogador receba a recompensa de uma equival\u00eancia de seis estrelas (fun\u00e7\u00e3o de 6 estrelas \u2013 veja quatro cartas de 5 estrelas e pegue 2, ou veja seis cartas de 4 estrelas e pegue 3, ou veja oito cartas de 3 estrelas e pegue 4, ou veja dez cartas de 2 estrelas e pegue 5, ou veja doze cartas de 1 estrela e pegue 6).<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Melhoria da calculadora cient\u00edfica \u2013 Este item permite (contra fun\u00e7\u00f5es do mesmo n\u00edvel ou n\u00edveis abaixo) que o jogador use duas fun\u00e7\u00f5es em uma \u00fanica a\u00e7\u00e3o. Mas o custo em cafe\u00edna permanece o mesmo para cada a\u00e7\u00e3o. Por exemplo, usar a fun\u00e7\u00e3o diferencial em x, que custa 5 x\u00edcaras de caf\u00e9, exigir\u00e1 que o personagem tenha pelo menos 10 x\u00edcaras de caf\u00e9.<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Melhoria das anota\u00e7\u00f5es pessoais do professor \u2013 Este item permite (contra fun\u00e7\u00f5es do mesmo n\u00edvel ou n\u00edveis abaixo) que o jogador use (n\u00edvel do item + 1 \u2013 n\u00edvel da fun\u00e7\u00e3o selvagem) vezes uma fun\u00e7\u00e3o sem pagar caf\u00e9. Por exemplo, este item de n\u00edvel 4 contra uma fun\u00e7\u00e3o selvagem de n\u00edvel 3, (4 + 1 &#8211; 3) = 2, ent\u00e3o o jogador nesta luta pode usar 2 fun\u00e7\u00f5es sem pagar o caf\u00e9 necess\u00e1rio para isso.<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Trapacear no teste \u2013 Este item permite (contra fun\u00e7\u00f5es do mesmo n\u00edvel ou n\u00edveis abaixo) que o jogador jogue (n\u00edvel do item + 1 \u2013 n\u00edvel da fun\u00e7\u00e3o selvagem) vezes um dado e escolha o melhor. Resultados 1 ou 2: elimina automaticamente a fun\u00e7\u00e3o selvagem; Resultados 3 ou 4: a fun\u00e7\u00e3o selvagem causar\u00e1 metade do dano em cada ataque; Resultados 5 ou 6: a fun\u00e7\u00e3o selvagem causar\u00e1 o dobro do dano em cada ataque.<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Dedica\u00e7\u00e3o: cada n\u00edvel deste item restaura pontos na pontua\u00e7\u00e3o do personagem. No intervalo de uma batalha para outra, n\u00e3o \u00e9 permitido usar mais de um cart\u00e3o deste item de cada n\u00edvel. Por exemplo, o jogador, mesmo tendo 5 cart\u00f5es de dedica\u00e7\u00e3o de n\u00edvel 1 para restaurar 5 pontos na pontua\u00e7\u00e3o, precisaria de 5 intervalos entre batalhas contra fun\u00e7\u00f5es selvagens. Assim, a estrat\u00e9gia para restaurar muitos pontos de uma vez \u00e9 usar esses cart\u00f5es ao mesmo tempo, por exemplo: um de n\u00edvel 1, um de n\u00edvel 2, um de n\u00edvel 4, e com isso, em apenas um intervalo de batalha, o jogador ter\u00e1 restaurado 7 pontos na pontua\u00e7\u00e3o.<\/li>\n\n\n\n<li class=\" eplus-wrapper\">Miseric\u00f3rdia \u2013 Este item permite (contra fun\u00e7\u00f5es do mesmo n\u00edvel ou n\u00edveis abaixo) que o jogador use para cancelar um total de at\u00e9 (n\u00edvel do item + 1 \u2013 n\u00edvel da fun\u00e7\u00e3o selvagem) ataques vindos de uma fun\u00e7\u00e3o selvagem. Por exemplo, neste item de n\u00edvel 4 contra uma fun\u00e7\u00e3o selvagem de n\u00edvel 3, (4 + 1 &#8211; 3) = 2, o jogador nesta luta pode cancelar at\u00e9 dois ataques desta fun\u00e7\u00e3o selvagem.<\/li>\n<\/ul>\n\n\n<p class=\" eplus-wrapper\">Inclusive o sistema de batalha propunha o uso do <a href=\"https:\/\/www.wolframalpha.com\/\">Wolfram Alpha<\/a> para determinar tanto a fun\u00e7\u00e3o ap\u00f3s a intera\u00e7\u00e3o, quanto seu dano causado ou condi\u00e7\u00e3o de vit\u00f3ria. Mas um problema que hoje identifico nesta proposta \u00e9 com a integra\u00e7\u00e3o, pois ao integrar crio uma constante que precisaria ser desconsiderada, embora na pr\u00e1tica n\u00e3o a desconsideremos, apenas denotamos por uma letrinha e seguimos os c\u00e1lculos. Mas no jogo, tanto para a condi\u00e7\u00e3o de vit\u00f3ria e dano, temos o valor da fun\u00e7\u00e3o em m\u00f3dulo, se a constante for indeterminada, ent\u00e3o a condi\u00e7\u00e3o de vit\u00f3ria e dano na maioria dos casos tamb\u00e9m seria indeterminada.<\/p>\n\n\n\n<p class=\" eplus-wrapper\">Na \u00e9poca fiz at\u00e9 um videozinho simulando como seria a jogabilidade:<\/p>\n\n\n\n<figure class=\" wp-block-embed is-type-rich is-provider-incorporar-manipulador wp-block-embed-incorporar-manipulador eplus-wrapper\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"A wild function appeared\" width=\"800\" height=\"600\" src=\"https:\/\/www.youtube.com\/embed\/RtU8Y99i01c?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p class=\" eplus-wrapper\">Neste exemplo, escolhi derivar em rela\u00e7\u00e3o a x, tanto porque sumiria com a parte do sen(y), como tamb\u00e9m porque o valor definido para x \u00e9 bem mais alto que o do y, levando a um dano maior ao meu personagem.<\/p>\n\n\n\n<hr class=\" wp-block-separator has-alpha-channel-opacity eplus-wrapper\" \/>\n\n\n\n<p class=\" eplus-wrapper\">Como referenciar este conte\u00fado em formato ABNT (baseado na norma NBR 6023\/2018):<\/p>\n\n\n\n<p class=\" eplus-wrapper\">SILVA, Marcos Henrique de Paula Dias da. A Wild Function Appears \u2013 parte 3.&nbsp;<em>In<\/em>: UNIVERSIDADE ESTADUAL DE CAMPINAS.&nbsp;<strong><a href=\"https:\/\/www.blogs.unicamp.br\/zero\/\" target=\"_blank\" rel=\"noreferrer noopener\">Zero \u2013 Blog de Ci\u00eancia da Unicamp<\/a>.&nbsp;<\/strong><a href=\"https:\/\/www.blogs.unicamp.br\/zero\/category\/v-12-ed-1\/\" target=\"_blank\" rel=\"noreferrer noopener\">Volume 12. Ed. 1. 2\u00ba semestre de 2024<\/a>. Campinas, 4 de novembro 2024. Dispon\u00edvel em:&nbsp;<a href=\"https:\/\/www.blogs.unicamp.br\/zero\/5856\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.blogs.unicamp.br\/zero\/5856\/<\/a>. Acesso em: &lt;data-de-hoje&gt;.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ent\u00e3o, quando vi estes memes pensei, nossa que ideia dahora. Poderia criar algo realmente jog\u00e1vel com essa estrutura XD Se<\/p>\n","protected":false},"author":434,"featured_media":5857,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"editor_plus_copied_stylings":"{}","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"pgc_sgb_lightbox_settings":"","_vp_format_video_url":"","_vp_image_focal_point":[],"footnotes":""},"categories":[1232],"tags":[],"class_list":["post-5856","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-v-12-ed-1"],"_links":{"self":[{"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/posts\/5856","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/users\/434"}],"replies":[{"embeddable":true,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/comments?post=5856"}],"version-history":[{"count":5,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/posts\/5856\/revisions"}],"predecessor-version":[{"id":5873,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/posts\/5856\/revisions\/5873"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/media\/5857"}],"wp:attachment":[{"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/media?parent=5856"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/categories?post=5856"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.blogs.unicamp.br\/zero\/wp-json\/wp\/v2\/tags?post=5856"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}