{"id":3526,"date":"2016-04-07T15:55:56","date_gmt":"2016-04-07T22:55:56","guid":{"rendered":"http:\/\/www.nathalielawhead.com\/candybox\/?p=3526"},"modified":"2016-04-07T16:08:01","modified_gmt":"2016-04-07T23:08:01","slug":"tetrageddon-games-for-the-desktop-development-update","status":"publish","type":"post","link":"https:\/\/www.nathalielawhead.com\/candybox\/tetrageddon-games-for-the-desktop-development-update","title":{"rendered":"Tetrageddon Games (for the desktop): Development Update"},"content":{"rendered":"<p>So latest news with &#8220;Tetrageddon Games for the desktop&#8221; (better title pending) developments have been pretty exciting!<\/p>\n<p>Since I&#8217;ve finished getting &#8220;all the games to work, and run perfectly, in the same &#8216;container\/browser'&#8221; part I&#8217;ve actually been able to focus on creating new content.<br \/>\nNew exciting areas that are like being electrocuted with bright colors! Yeah!<\/p>\n<p>In itself, with just the games, I feel like it was still to lacking. I&#8217;m very proud of the visual presentation (random transitions, random backgrounds, etc&#8230;) but the games still where not enough in themselves.<br \/>\nI wanted to originally do a lot with the project, but given the limitations of the web (especially when it comes to &#8220;big files&#8221; and handling larger loads) I wasn&#8217;t ever really to &#8220;go there&#8221; to the fullest extent. In this case I can.<br \/>\nI mean, I know&#8230; I get it&#8230; It&#8217;s always sort of possible, but implementing that is a lot of work.<br \/>\nNevertheless I digress&#8230; So the lacking part of it is that I think the main menu itself needed more character. This basically has the potential to be a world of it&#8217;s own. To do that you need inhabitants and tangents (easter egg like content). I&#8217;ve been putting a lot of focus on adding this now.<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/nathalielawhead.com\/noodles\/HTMLPOST_09.png\" alt=\"\" \/><\/p>\n<p><img decoding=\"async\" src=\"http:\/\/nathalielawhead.com\/noodles\/HTMLPOST_01.png\" alt=\"\" \/><\/p>\n<p>So my point of &#8220;inhabitants&#8221;&#8230; One charming thing I remember about older games (like &#8220;a link to the past&#8221; to pull out a random title), where all the extra people you could talk to&#8230; unrelated things. I don&#8217;t know&#8230; I know newer triple A games do this, but somehow it lacks the charm these older examples have. You can probably chalk that up to nostalgia, but this is another argument&#8230;<br \/>\nSo you walk around, and meet these weird inhabitants, and sometimes it felt really surreal. It&#8217;s the surrealism I loved.<br \/>\nSo now I&#8217;m looking at this newer Tetrageddon, and it has games, ok, but there&#8217;s lacking backend. It&#8217;s not really a world yet.<br \/>\nI got the idea to turn the main menu itself into a world, and now I feel like I&#8217;m getting somewhere. The main way I&#8217;m doing this is hiding things around as &#8220;easter eggs&#8221;.<br \/>\nFor example, if you close Anatomically Incorrect Dinosaurs (close it from the window, not the default way of returning to the main menu), you find a little ghost sleeping there. You talk to the ghost, it goes off on a little rant, and then it floats away.<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/nathalielawhead.com\/noodles\/HTMLPOST_02.png\" alt=\"\" \/><\/p>\n<p>If you follow it you find a lair, where a potatoware farmer is farming fledgling electric love potatoes. These potatoes are little icons. You can open them, and have them running while you play the games. There&#8217;s a little background to this, but I don&#8217;t need to get into that.<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/nathalielawhead.com\/noodles\/HTMLPOST_03.png\" alt=\"\" \/><\/p>\n<p>So all this starts to feel very special. In the odd event you actually find this hidden stuff, I think it will add a huge amount of depth.<br \/>\nFor example, you can help cybermonkey escape.<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/nathalielawhead.com\/noodles\/HTMLPOST_05.png\" alt=\"\" \/><\/p>\n<p><img decoding=\"async\" src=\"http:\/\/nathalielawhead.com\/noodles\/HTMLPOST_10.png\" alt=\"\" \/><\/p>\n<p>In the odd event that someone hits a keyboard directional key, or (more likely) clicks on the monkey, you find out you can move the monkey.<br \/>\nMonkey walks off screen, and into this zen-like backend void.<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/nathalielawhead.com\/noodles\/HTMLPOST_04.png\" alt=\"\" \/><\/p>\n<p>There are websites scattered around here that you can explore, or proceed on your mission to escape&#8230;<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/nathalielawhead.com\/noodles\/HTMLPOST_06.png\" alt=\"\" \/><\/p>\n<p>Which brings me to the topic of this post&#8230; websites in games!<br \/>\nYay!<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/nathalielawhead.com\/noodles\/HTMLPOST_07.png\" alt=\"\" \/><\/p>\n<p><img decoding=\"async\" src=\"http:\/\/nathalielawhead.com\/noodles\/HTMLPOST_08.png\" alt=\"\" \/><\/p>\n<p>In its nature <a href=\"http:\/\/tetrageddon.com\" target=\"_blank\">Tetrageddon Games<\/a> is an experimental web project. It&#8217;s a parody of our online life&#8230; bla bla bla&#8230; end-pitch&#8230;<br \/>\nSo ok, the web has lots of tangents. You click on a thing, get distracted by a thing, follow these links, and eventually you don&#8217;t know where you are anymore and forgot what you where doing in the first place&#8230; You know, that classic activity people used to do called &#8220;browsing&#8221;.<br \/>\nThis is actually difficult to simulate in a game. I mean, you have characters, and a direction, and a goal, but it&#8217;s easier to recreate this with just plain text. There&#8217;s something inherently special about linking random pages together and dropping a person in the middle of it.<br \/>\nSo to properly do justice to this I would have to actually make a &#8220;browser&#8221; for this game, and get web content running in it (accurately too, real html\/js\/etc&#8230;).<\/p>\n<p>Thankfully this is very easy to accomplish.<br \/>\nThere are many ways of getting this to work with ActionScript + AIR (yes, I&#8217;m using AIR, I am evil Flash person. Yes, <a href=\"https:\/\/discuss.as3lang.org\/t\/a-classic-day-of-security-advisory\/250\" target=\"_blank\">all my games should die<\/a> i am here to destroy your internet)&#8230;<br \/>\nAt any rate&#8230;<\/p>\n<p>You could use <a href=\"http:\/\/help.adobe.com\/en_US\/FlashPlatform\/reference\/actionscript\/3\/flash\/media\/StageWebView.html\" target=\"_blank\">StageWebView<\/a>, but this is exceedingly limiting.<\/p>\n<p>The best solution for me was to go with HTMLLoader (which I&#8217;m largely using).<br \/>\nSee: <a href=\"http:\/\/help.adobe.com\/en_US\/FlashPlatform\/reference\/actionscript\/3\/flash\/html\/HTMLLoader.html\" target=\"_blank\">http:\/\/help.adobe.com\/en_US\/FlashPlatform\/reference\/actionscript\/3\/flash\/html\/HTMLLoader.html<\/a><\/p>\n<p>The most notable appeal is the following:<\/p>\n<blockquote><p>&#8220;The features available and rendering appearance are the same as those of the StageWebView class, plus close integration and script bridging between ActionScript and JavaScript.&#8221;<\/p><\/blockquote>\n<p>And the script bridging is quite nice. You can literally mix javascript and actionscript, and enjoy the benefits of both. <\/p>\n<p>For example: <a href=\"http:\/\/help.adobe.com\/en_US\/as3\/dev\/WS5b3ccc516d4fbf351e63e3d118666ade46-7ecf.html\" target=\"_blank\">http:\/\/help.adobe.com\/en_US\/as3\/dev\/WS5b3ccc516d4fbf351e63e3d118666ade46-7ecf.html<\/a><\/p>\n<p>From what I&#8217;ve gathered, watching other people&#8217;s uses of it, it can also be a replacement of sorts for ANE&#8217;s.<\/p>\n<p>In my cases I want to have full on HTML content. Any website must just show up in the little &#8220;browser&#8221; and just work. Because I have lots of jquery content, canvas content, games, etc&#8230; I intend to just &#8220;drop in&#8221;.<\/p>\n<p>I&#8217;ve successfully made it work! Weird html5 games I&#8217;ve built run perfectly in it, and I can display any type of website I want. Granted this is content that will run locally (you have to do some extra stuff if you want it to run remotely from web), but you get the idea. I could even have a Twine game running in this. So happy it works!<\/p>\n<p>The appeal for me is that I want to bring some of the &#8220;weird web stuff&#8221;, impressions of online communities, random brokenness, random thoughts, parody people&#8217;s strong opinions (maybe), and have it run (as web content) inside this game&#8230; I said that before, but I like saying this because I think it&#8217;s so cool to have that working.<br \/>\nI don&#8217;t know, I find this immensely exciting! You click on a thing, it opens a website that&#8217;s running in this game.<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/nathalielawhead.com\/noodles\/HTMLPOST_11.png\" alt=\"\" \/><\/p>\n<p>This opens a lot of possibilities for building on the environment here, and creating back stories, sub-stories, and tangents.<\/p>\n<p>Creating websites is not hard too. Phew&#8230; actually not hard at all&#8230; At least in my opinion it is not, considering how much harder it is to build a game from 0 to completion.<br \/>\nJavascript is also an insanely easy\/simple language to spend time with so it gives me a nice break from all the weird hard stuff.<\/p>\n<p>I actually love AIR\/ActionScript for this reason. Nothing is out of the box. If you want it (anything) you have to build it on your own. You want a scrollbar for your text? Go make it from scratch (probably bad example because there are some you can use)&#8230; Write your own physics&#8230; write your own ANE&#8230; do your own thing every-time. It may sound tedious, and it can get that way sometimes, but it opens so many doors for making weird unusual stuff. It&#8217;s really powerful that way.<br \/>\nI built my own solution for running the games in this&#8230; I mean, yeah it took longer, but I love how it works so &#8220;just right&#8221;.<\/p>\n<p>It&#8217;s been a blast making this thing.<\/p>\n<p>At any rate&#8230; Back to the point of HTML&#8230; The biggest hurdle in this case is coming up with all the written content\/creating all the varying websites (styles, how they link together, etc&#8230;).<br \/>\nIt&#8217;s a lot of content to create, but because it&#8217;s so easy to make it I think the end result will be filled with many tangents and web-like distractions&#8230; At least I hope the end result will be this.<br \/>\nThere&#8217;s lots of work to do, I guess, and it can get unbelievably exhausting.<\/p>\n<p>I still have all that, and one more major area (easter egg), to create&#8230; Then it&#8217;s really done. At that point I&#8217;ve done everything I wanted to do with it.<\/p>\n<p>Then I can finally start sleeping again!<br \/>\nYay, sleep!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>So latest news with &#8220;Tetrageddon Games for the desktop&#8221; (better title pending) developments have been pretty exciting! Since I&#8217;ve finished getting &#8220;all the games to work, and run perfectly, in the same &#8216;container\/browser&#8217;&#8221; part I&#8217;ve actually been able to focus on creating new content. New exciting areas that are like being electrocuted with bright colors! Yeah! In itself, with just the games, I feel like it was still to lacking. I&#8217;m very proud of the visual presentation (random transitions, random backgrounds, etc&#8230;) but the games still where not enough in themselves. I wanted to originally do a lot with the&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":4522,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[30],"tags":[],"class_list":["post-3526","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-games"],"_links":{"self":[{"href":"https:\/\/www.nathalielawhead.com\/candybox\/wp-json\/wp\/v2\/posts\/3526","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.nathalielawhead.com\/candybox\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.nathalielawhead.com\/candybox\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.nathalielawhead.com\/candybox\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.nathalielawhead.com\/candybox\/wp-json\/wp\/v2\/comments?post=3526"}],"version-history":[{"count":3,"href":"https:\/\/www.nathalielawhead.com\/candybox\/wp-json\/wp\/v2\/posts\/3526\/revisions"}],"predecessor-version":[{"id":3529,"href":"https:\/\/www.nathalielawhead.com\/candybox\/wp-json\/wp\/v2\/posts\/3526\/revisions\/3529"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.nathalielawhead.com\/candybox\/wp-json\/wp\/v2\/media\/4522"}],"wp:attachment":[{"href":"https:\/\/www.nathalielawhead.com\/candybox\/wp-json\/wp\/v2\/media?parent=3526"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.nathalielawhead.com\/candybox\/wp-json\/wp\/v2\/categories?post=3526"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.nathalielawhead.com\/candybox\/wp-json\/wp\/v2\/tags?post=3526"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}