<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tom Hermans</title>
	<atom:link href="https://auroriax.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://auroriax.com</link>
	<description>Professional game designer and hobbyist game dev</description>
	<lastBuildDate>Sat, 20 Mar 2021 10:02:02 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>Video about Edge Not Found for FreeCodeCamp! + Transcript</title>
		<link>https://auroriax.com/video-about-edge-not-found-for-freecodecamp/</link>
		
		<dc:creator><![CDATA[Auroriax]]></dc:creator>
		<pubDate>Sat, 20 Mar 2021 09:59:19 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://auroriax.com/?p=1375</guid>

					<description><![CDATA[Full disclosure: I won a year of CodePen Pro as part of the prizes from js13k. A couple of months back I was approached by Ania Kubów, who has a YouTube channel dedicated to JavaScript tutorials. She wanted me to contribute to a video for FreeCodeCamp showing of the top 20 entries of this years [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><em>Full disclosure: I won a year of CodePen Pro as part of the prizes from js13k.</em></p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1352" src="https://auroriax.com/wp-content/uploads/2020/09/enf_301-1024x527.jpg" alt="Level 301 of Edge Not Found." width="1024" height="527" srcset="https://auroriax.com/wp-content/uploads/2020/09/enf_301-1024x527.jpg 1024w, https://auroriax.com/wp-content/uploads/2020/09/enf_301-300x154.jpg 300w, https://auroriax.com/wp-content/uploads/2020/09/enf_301-768x395.jpg 768w, https://auroriax.com/wp-content/uploads/2020/09/enf_301-1536x790.jpg 1536w, https://auroriax.com/wp-content/uploads/2020/09/enf_301.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>A couple of months back I was approached by <a href="http://youtube.com/aniakubow">Ania Kubów</a>, who has a YouTube channel dedicated to JavaScript tutorials. She wanted me to contribute to a <a href="https://www.youtube.com/watch?v=GKOgm5-GbUA">video for FreeCodeCamp</a> showing of the top 20 entries of this years JS13K, by having their devs show and explain some cool bits of code. As <a href="https://auroriax.com/edge-not-found-postmortem-js13k-2020/">Edge Not Found</a> managed to get 2nd place, I figured I should actually record and voice this video myself (something I don’t often do online). My code example is about how I render the same level seemingly infinitely across the screen, <a href="https://codepen.io/auroriax/pen/ExyqRKw">which you can find on CodePen here</a>.</p>
<p>My part start at 9:12 in the video, but I’ve also provided a transcript with images of my part in the video below. I hope it is useful to someone!</p>
<p><span id="more-1375"></span></p>
<hr>
<h1>Introduction</h1>
<p>Hello! I’m Tom Hermans, I’m a Dutch developer who also makes video games sometimes, and for this year’s 13K jam I made “Edge Not Found”. It’s a puzzle game in an infinitely repeating world. I really like tile-based box pushing games like Sokoban, and I’ve already made several of them, but this one is probably my most complex one yet. I’ve been sitting on the idea for this game for a while, and the jam was a good opportunity to develop it and design some cool puzzles for it.</p>
<p>So let’s talk about the rendering for a bit. Each frame in the game is drawn using three steps. In the first step I create multiple canvasses that serve as sprites for the various puzzle elements, like walls and boxes. These are drawn using the <a href="https://github.com/rough-stuff/rough/wiki">rough library</a>, which generates nice, hand-drawn looking shapes. <br>
The second step renders the current puzzle state using these sprites, like this, then finally, it’ll draw this level repeatedly to fill up the entire game canvas. I really like the bit of code that handles this, so today, I’ll explain how this infinitely wrapping world works.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1376" src="https://auroriax.com/wp-content/uploads/2021/03/enf_examplelevel_320.png" alt width="165" height="320" srcset="https://auroriax.com/wp-content/uploads/2021/03/enf_examplelevel_320.png 165w, https://auroriax.com/wp-content/uploads/2021/03/enf_examplelevel_320-155x300.png 155w" sizes="auto, (max-width: 165px) 100vw, 165px"></p>
<p>For demonstration purposes, I’ve pre-generated a level image from the game instead of generating one from scratch, to keep it simple. Now then, I have isolated the code in this sample. I’ll go over the most important bits, but if you want to toy around with the full thing, you can access this example <a href="https://codepen.io/auroriax/pen/ExyqRKw">with this link</a>. So let’s go through it!</p>
<h1>Rendering magic</h1>
<p>The core of the tiling magic happens here, with the x and y offsets:</p>
<pre><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1385" src="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_10.png" alt width="996" height="152" srcset="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_10.png 996w, https://auroriax.com/wp-content/uploads/2021/03/Screenshot_10-300x46.png 300w, https://auroriax.com/wp-content/uploads/2021/03/Screenshot_10-768x117.png 768w" sizes="auto, (max-width: 996px) 100vw, 996px"></pre>
<p>These essentially affect how the levels are tiled. For example, if you’ve played the game you know this level can’t be solved, since the crate can’t get to the goal:</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1377" src="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_2.png" alt width="486" height="455" srcset="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_2.png 486w, https://auroriax.com/wp-content/uploads/2021/03/Screenshot_2-300x281.png 300w" sizes="auto, (max-width: 486px) 100vw, 486px"></p>
<p>But if we change the y offset to 2, the level becomes a straight line, and the puzzle becomes solvable. It’s kinda complicated, but it is used in lots of tricky puzzles!</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1378" src="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_3.png" alt width="749" height="511" srcset="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_3.png 749w, https://auroriax.com/wp-content/uploads/2021/03/Screenshot_3-300x205.png 300w" sizes="auto, (max-width: 749px) 100vw, 749px"></p>
<p>Next, we calculate how much levels we can fit onto the screen. The clipoffset here adds a small margin to the level border. But it also shows that the code works by putting it to a negative value*, then if I resize the screen you can see that levels are no longer drawn near the border of the screen. This makes sure that nothing will be drawn if it nearly or completely invisible:<img loading="lazy" decoding="async" class="aligncenter wp-image-1380 size-full" src="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_7-e1616233865829.png" alt width="1016" height="947" srcset="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_7-e1616233865829.png 1016w, https://auroriax.com/wp-content/uploads/2021/03/Screenshot_7-e1616233865829-300x280.png 300w, https://auroriax.com/wp-content/uploads/2021/03/Screenshot_7-e1616233865829-768x716.png 768w" sizes="auto, (max-width: 1016px) 100vw, 1016px"></p>
<p>Finally, a nested FOR loop actually draws the levels. Note that levels further away from the center will get more transparent. So if I zoom out all the way, you can see it will go on for a while, but eventually the wrapping will no longer be visible!</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1379" src="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_6.jpg" alt width="903" height="941" srcset="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_6.jpg 903w, https://auroriax.com/wp-content/uploads/2021/03/Screenshot_6-288x300.jpg 288w, https://auroriax.com/wp-content/uploads/2021/03/Screenshot_6-768x800.jpg 768w" sizes="auto, (max-width: 903px) 100vw, 903px"></p>
<p>When drawing the image with an offset defined, we shift the image on the grid. So, if I enable the coordinates display, you can see that the image also shifts two tiles down for each step on the x axis, and that’s due to the levelOffsetY I set earlier:</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1381" src="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_8.jpg" alt width="1018" height="957" srcset="https://auroriax.com/wp-content/uploads/2021/03/Screenshot_8.jpg 1018w, https://auroriax.com/wp-content/uploads/2021/03/Screenshot_8-300x282.jpg 300w, https://auroriax.com/wp-content/uploads/2021/03/Screenshot_8-768x722.jpg 768w" sizes="auto, (max-width: 1018px) 100vw, 1018px"></p>
<h1>Conclusion</h1>
<p>And that is it! Once again, <a href="http://cdpn.io/ExyqRKw">you can view this code snippet here</a>. Do consider playing <a href="https://auroriax.itch.io/edge-not-found">Edge Not Found</a> first if you haven’t, so you can learn how this level wrapping is used for tricky puzzles.<br>
So, I hope this inspired you to make your own infinite worlds! If you liked this, then you can find me as Auroriax on Twitter for more of my things, and if you look that name up on GitHub <a href="https://github.com/Auroriax/js13k-2020">you should also be able to find the full source code of the game</a>. Bye, and thanks for watching!</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Brain dump: On icing your projects</title>
		<link>https://auroriax.com/brain-dump-on-icing-your-project/</link>
		
		<dc:creator><![CDATA[Auroriax]]></dc:creator>
		<pubDate>Fri, 19 Mar 2021 15:28:46 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://auroriax.com/?p=1368</guid>

					<description><![CDATA[My project development style involves a lot of downtime. Either I lose motivation, or are busy in my actual work, the prototype failed, or some other reason causes me to be unable to continue working on the game to finish it. But that doesn’t mean I’ve given up on the game. For nearly all of [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>My project development style involves a lot of downtime. Either I lose motivation, or are busy in my actual work, the prototype failed, or some other reason causes me to be unable to continue working on the game to finish it. But that doesn’t mean I’ve given up on the game. For nearly all of my games, those were made over large periods of time, with effort I put in growing and shrinking like the waves.</p>
<p>For this, it’s important that you ice your projects correctly. Icing is similar to making a backup of a project (also super important!) but it involves more than that. When you ice a project, you should not only record it’s current state, but it’s also about ensuring that you can access that project multiple years in the future, and what your intentions were when you last worked on it. Aside from doing obvious things like commenting your code, some special considerations must be made if you want to ice your project in such a way that you can still get started with it years into the future. That is what this post is about. I have six thoughts I want to share.</p>
<p><span id="more-1368"></span></p>
<h1>1) Choose stable development technology</h1>
<p>Technology can change a lot in a couple of years. Not only has this to do with the continued improvement of technology, but also the tug-of-war that the platform holders are playing with other platforms and developers. They can change the rules of the game at any moment, with or without reason. The only way you can get around this is to pick a technology that is likely to be around in the future.</p>
<p>This can be very hard to estimate, but it’s personally why I’m now mostly making browser games, since the tech has been around for a while and I expect games to stay mostly compatible with future browsers. If the technology is open source, or if the company keeps offering all older versions of their technology, it’s a good sign that you’ll probably be able to keep opening your project files for at least a couple of years into the future.</p>
<h1>2) Document the most important things</h1>
<p>Even then, you must record how to do stuff. Any documentation or help on the internet can vanish or drown at any moment. (If you have a page that you must preserve, consider adding it to the <a href="https://archive.org/web/">Internet Archive</a>. That way, everyone can access it, even after the original goes down.) This is especially important if you work with technology that has been or will soon be deprecated.</p>
<p>The most important one is to keep a version of the technology around (for example, the installer package for a game engine). Save it together with the project if you can. Aside from that, you should keep a basic instruction for how to set up and compile a project. In this readme, record which version of specific programs you’re using, a step-by-step guide in how to set up the project on a fresh computer, and link other important documentation you’ve made (such as planning or design docs).</p>
<p>And if you have passwords for something (like virtual machines or Android keystores), don’t forget to record those too. This is also important for games that are already released: ask yourself, what should I absolutely record in case I want to update the game in the future?</p>
<h1>3) Ice every single project</h1>
<p>If you drop a project, it’s hard to say if you’ll ever gain the motivation to work on it again, or that it is simply left in the dust forever. On one hand, you’ll have to put in some effort to preserve a project that you’ve basically given up on, which you might not have the motivation for. But, realizing that you want to revive a project, but coming back to the code it’s a mess? Or it completely corrupted in the meantime? That will very likely dim any motivation you might have gained during your break.</p>
<p>Therefore, don’t be selective about which projects to ice. Just ice ‘m all. 15 minute prototypes to near-finished abandoned projects, you should treat them all the same. You never know when you might need it. (This could get messy though, we’ll talk about that in a bit: see point 5.)</p>
<h1>4) Ice the latest version</h1>
<p>If you’re a bit like me, you might take multiple breaks from a single project. Sometimes, I’m only able to recover an earlier version that I remember last working on. For example, when in 2020 I defrost a project I last worked on in 2019, I might only be able to find the older version from 2018 instead. This puts you in a tough dilemma: will I recreate the functionality from 2019? Or do I push the project in a different direction instead using the 2018 code? Or do I start over entirely? Or keep looking for the latest version?</p>
<p>Just this dilemma alone might cause you to give up defrosting the project completely. So make sure that when you notice a waning interest, you store the newer version of the project, preferably in the same place that the older version is in, and clearly label it with a version or a date so you can’t mix them up. (Don’t delete the older version though, see point 5.)</p>
<h1>5) Don’t bury it</h1>
<p>You might have so many unfinished projects across different technologies that it becomes a mess to recover one, should time ever come to revive it. Or you might want to be able to steal some specific functionality, a specific part of a prototype you want to reuse. Organization is key here: how would my future self attempt to recover this project? Try to be consistent with folder structures, file names, and where you store projects and assets.</p>
<p>As for where to save the project for recovery, this is a tricky one. Since your project will likely be offline (on your local file system), storing a copy in an online cloud service makes the most sense since it doubles as a backup. But will the online service you use for this still be around next year? What about the next five years? Finding a reliable permanent storage location is really really tricky in a world where technology is constantly changing.</p>
<p>As a last resort, you could remove projects to clean things up, but my recommendation here is actually to never manually delete any project at all, if this is feasible for you. For all assets there’s a non-zero chance you might want to recover it in the future. I might be especially careful in this area, but do consider asking yourself if you’ll absolutely might never need the project in the future, before deleting it permanently.</p>
<h1>6) Or release it anyway</h1>
<p>In software a project is never done: sometimes the team runs out of money or time and is launched into the world regardless of its completion state. If a project is unfinished, you can always throw it on the web with a disclaimer that it’s unfinished, and see what happens. If it’s clearly unfinished, I’d add a disclaimer that it’s a prototype. This takes a certain amount of bravery, but people might like it despite the fact that it’s unfinished (and of course, there are some people who like playing unfinished games for what they are).</p>
<p>But if it is already in some kind of playable state, you could consider releasing it as a normal game with no disclaimers at all. Now, at least you have some documentation (a project page) and an executable of the project in an easily accessible location. Finally, consider releasing the source project: this backups the source code, and in the rare case someone else want to pick up the project, they can do so (if you want this and give the project an open source license).</p>
<h1>Final Words: What I use</h1>
<p>I use <a href="https://writer.bighugelabs.com">Writer</a> and <a href="https://gist.github.com">Github Gist</a> for single text documents. Sometimes I also drop text files in <a href="https://trello.com">Trello</a> cards on my project’s boards. For some of my games the source code fits in a single text file, so this is nice for those. Gist can also do hosting &amp; version history for text files.</p>
<p><a href="https://github.com">Github</a> and <a href="https://bitbucket.org">Bitbucket</a> are used to access to git and store larger projects. Git does a lot of things, but I mostly use it to keep projects synced between my various computers. But it’s also a version system, so you have backups for past versions of your project. There’s a learning curve, but it’s definitely worth investigating and goes a long way into solving the problems above.</p>
<p>I hope this post was helpful!</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Edge Not Found postmortem — js13k 2020</title>
		<link>https://auroriax.com/edge-not-found-postmortem-js13k-2020/</link>
		
		<dc:creator><![CDATA[Auroriax]]></dc:creator>
		<pubDate>Tue, 22 Sep 2020 18:18:59 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://auroriax.com/?p=1345</guid>

					<description><![CDATA[So I participated in js13k again this year, this time sticking to my cards better and decided to make an eye- as much as a brain-bending puzzle game called Edge Not Found. After working for almost a year in TypeScript (and Canvas) for my job, I feel I have a lot more experience working with [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1351 size-full" src="https://auroriax.com/wp-content/uploads/2020/09/enf_title-e1600798525227.png" alt="Title screen of Edge Not Found." width="960" height="338" srcset="https://auroriax.com/wp-content/uploads/2020/09/enf_title-e1600798525227.png 960w, https://auroriax.com/wp-content/uploads/2020/09/enf_title-e1600798525227-300x106.png 300w, https://auroriax.com/wp-content/uploads/2020/09/enf_title-e1600798525227-768x270.png 768w" sizes="auto, (max-width: 960px) 100vw, 960px"></p>
<p>So I participated in js13k again this year, this time sticking to my cards better and decided to make an <a href="https://auroriax.itch.io/edge-not-found">eye- as much as a brain-bending puzzle game called Edge Not Found</a>. After working for almost a year in TypeScript (and Canvas) for my job, I feel I have a lot more experience working with the browser, along with the things I’ve learned from my entry last year. So here’s another larger-than-13kb postmortem about a smallen-than-13kb game.</p>
<p><a href="http://js13kgames.com/">js13k</a> last year was the most fun I’ve had with a game jam. There’s <a href="https://twitter.com/hashtag/js13k?f=live">a lot of activity from devs on Twitter</a> (though not overwhelmingly so), the month-long deadline is very relaxed compared to some other game jams (you’ll finish on time even if you contribute just half a kilobyte per day!), and there are simply <a href="https://twitter.com/MaximeEuziere/status/1306553299416608769">some amazing technical marvels</a> that people create even despite all these limitations.</p>
<p>Last year I wanted to try out the <a href="https://zzz.dog/">Zdog</a> library, this time my choice fell on <a href="https://roughjs.com/">rough.js</a>, which creates seemingly hand-drawn versions of geometrical shapes like cubes and circles. I stumbled upon <a href="https://shihn.ca/posts/2020/roughjs-algorithms/">a blog post that explained how this effect was achieved</a>, which made me want to try it out. Next to that, I’ve been working on a mini JS framework called Tomato that supported timing, hitbox and input management, which <a href="https://github.com/Auroriax/js13k-2020/blob/master/tomato.js">I wanted (and did) improve during the jam</a>. And programming in JavaScript with a live reload plug-in is absolutely a blast thanks to the blazingly fast iteration time.</p>
<p>And, of course, a seed for a game idea. I’ve made a <a href="https://auroriax.itch.io/pp">couple</a> <a href="https://auroriax.itch.io/sokobanana">Sokoban</a> <a href="https://auroriax.itch.io/necroban">variants</a> <a href="https://auroriax.itch.io/tahiras-tower">before</a>, and my next idea was to have the level continue infinitely into all directions. <strong>A small spoiler warning, though: I’ll vaguely describe some of the puzzle mechanics (though no puzzle solutions!) in this postmortem, so you might <a href="https://auroriax.itch.io/edge-not-found">want to play the game a bit</a> before reading on.</strong></p>
<p><span id="more-1345"></span></p>
<h1>Programming</h1>
<p>A level in this game is defined with a 2D array to set up the grid and some metadata such as the level name, but also shift offsets that are used for later levels. I think undo is the most important functionality any puzzle game should support, and as such I built the game up in a way where the game &amp; rendering logic are separated to make that possible.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1346" src="https://auroriax.com/wp-content/uploads/2020/09/Screenshot_10-1024x338.png" alt="Definition of the level in code, next to the level as it displays in the game." width="1024" height="338" srcset="https://auroriax.com/wp-content/uploads/2020/09/Screenshot_10-1024x338.png 1024w, https://auroriax.com/wp-content/uploads/2020/09/Screenshot_10-300x99.png 300w, https://auroriax.com/wp-content/uploads/2020/09/Screenshot_10-768x254.png 768w, https://auroriax.com/wp-content/uploads/2020/09/Screenshot_10.png 1425w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>The rectangular border in the middle of the screen indicates the only part of the level that actually exists. If you walk through the border, as far as the level state is concerned, you’ve wrapped to the other side of the level. There’s some math to decide where you should end up if the level is “shifted” (the level grid is not uniformly aligned).</p>
<p>One thing I attempted to implement was pathfinding. Lately, a number of Sokoban-style puzzle games have popped up that allow players to click or tap a location and have the character figure out how to walk over there. I really wanted to have this feature, but A* pathfinding was not intended for infinite grids. I really want to implement this for my next puzzle game, though.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1349" src="https://auroriax.com/wp-content/uploads/2020/09/Screenshot_9-1024x575.png" alt="Full source code of the submitted version of Edge Not Found." width="1024" height="575" srcset="https://auroriax.com/wp-content/uploads/2020/09/Screenshot_9-1024x575.png 1024w, https://auroriax.com/wp-content/uploads/2020/09/Screenshot_9-300x168.png 300w, https://auroriax.com/wp-content/uploads/2020/09/Screenshot_9-768x431.png 768w, https://auroriax.com/wp-content/uploads/2020/09/Screenshot_9-1536x863.png 1536w, https://auroriax.com/wp-content/uploads/2020/09/Screenshot_9.png 1736w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<h1>Optimization</h1>
<p>Make no mistake: even code that fits on a floppy disk can be incredibly slow when drawing a lot of things to the screen. At first I drew a rough.js primitive for every block on the screen, which is where this limitation became evident. Then, I drew the shapes to a level canvas, which is then drawn as an image and repeated across the screen. This was better, but still slow on levels with a lot of objects. So then I also drew all individual objects to their own canvases, drew those onto the level, then drew that repeatedly on the main canvas. Also, the game now attempts to skip rendering when nothing changes, using the object-level-main canvas technique described above, and that caused a more significant improvement than I originally expected.</p>
<p>A nice benefit is that all of this makes it really easy to support multiple color palettes, too. I made a couple of nice ones, including one based on Okinaki (my favorite color theme in N++) and BackFlipped, a theme with the color palette <a href="http://js13kgames.com/entries/backflipped">from my previous entry.</a></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1347 size-large" src="https://auroriax.com/wp-content/uploads/2020/09/canvas-1024x527.jpg" alt="Screenshot of the game with the Ikaniko color palette." width="1024" height="527" srcset="https://auroriax.com/wp-content/uploads/2020/09/canvas-1024x527.jpg 1024w, https://auroriax.com/wp-content/uploads/2020/09/canvas-300x154.jpg 300w, https://auroriax.com/wp-content/uploads/2020/09/canvas-768x395.jpg 768w, https://auroriax.com/wp-content/uploads/2020/09/canvas-1536x790.jpg 1536w, https://auroriax.com/wp-content/uploads/2020/09/canvas.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>I made a linter for my entry last year, but <a href="https://github.com/Auroriax/js13k-2020/blob/master/builds/ml.html">I expanded it for this game</a>, and mostly re-purposed it as a way to put multiple JavaScript files in a single file to minify it elsewhere, Google Closure Compiler in my case. Last year I had a lot of trouble with the Closure Compiler, but because of my choices of libraries combined with a better coding style, it worked with minimal hiccups this time around, allowing for a bit more content. Ultimately, I was able to minify around 79kb of files to just below 13kb zipped.</p>
<h1>Level design</h1>
<p>Making puzzles for this game took a lot of iteration, but overall I’m really happy with the level of puzzle quality in Edge Not Found. I iterated a lot and kept the very best levels, and made sure to enforce the intended solution. In world 1 and 2 you’re still getting used to the wrapping world and the puzzles are easy: the wrapped grid makes sure that the possibility space is bigger than in an ordinary version of Sokoban because it’s easier to retrieve blocks from tight corners in this game. But everything from 300 onward showcases very interesting properties of the system that are really fun and mind-bending to discover, and in some cases allow for very hard puzzles. I am still a bit divided on the new mechanic introduced in the final world, which I would preferably have introduced earlier, but since it mostly exists to compliment the other mechanics in the game, it does make for a fitting finale of the game together with level 404.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1352" src="https://auroriax.com/wp-content/uploads/2020/09/enf_301-1024x527.jpg" alt="Level 301 of Edge Not Found." width="1024" height="527" srcset="https://auroriax.com/wp-content/uploads/2020/09/enf_301-1024x527.jpg 1024w, https://auroriax.com/wp-content/uploads/2020/09/enf_301-300x154.jpg 300w, https://auroriax.com/wp-content/uploads/2020/09/enf_301-768x395.jpg 768w, https://auroriax.com/wp-content/uploads/2020/09/enf_301-1536x790.jpg 1536w, https://auroriax.com/wp-content/uploads/2020/09/enf_301.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>I especially love how the level select came together. Initially, I was planning for the [Esc] menu to be used for navigate between levels, but procrastination hit me hard. I ended up implementing it as a regular level instead, allowing me more control over in which order the player could play the levels.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1348" src="https://auroriax.com/wp-content/uploads/2020/09/end_levelselect-1024x379.png" alt="Level Select of Edge Not Found." width="1024" height="379" srcset="https://auroriax.com/wp-content/uploads/2020/09/end_levelselect-1024x379.png 1024w, https://auroriax.com/wp-content/uploads/2020/09/end_levelselect-300x111.png 300w, https://auroriax.com/wp-content/uploads/2020/09/end_levelselect-768x284.png 768w, https://auroriax.com/wp-content/uploads/2020/09/end_levelselect-1536x568.png 1536w, https://auroriax.com/wp-content/uploads/2020/09/end_levelselect.png 1878w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>Initially, all levels could be accessed at the start of the game. I decided to gate it slightly, to make for a smoother difficulty curve and a better sense of progression. You don’t have to beat all of the levels to continue, since some of them are really hard and I want players to have a realistic chance to unlock level 404 and finish the game. The main problem that spawned out of this is that the level select would become so big, it would no longer fit on the screen. That’s how I ended up with the current tight design, which already teases the mechanics of level 200 a little bit if you pay attention.</p>
<h1>Conclusion</h1>
<p>I had a blast making this game, and the reception also seems a lot better than for my entry last year. It was a great test run for my mini framework Tomato, and I worked out a lot of the kinks for the first game using it. I’m certainly looking forward to doing more projects like Edge Not Found, and I’m really curious to how it will do in the js13k voting.</p>
<p>If you have some time and are now really excited about playing the game, you can play either the <a href="https://js13kgames.com/games/edge-not-found/index.html">contest submission</a> or the <a href="https://auroriax.itch.io/edge-not-found">itch version</a>! Thank you for reading.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Fake Illusions is out!</title>
		<link>https://auroriax.com/fake-illusions-is-out/</link>
		
		<dc:creator><![CDATA[Auroriax]]></dc:creator>
		<pubDate>Thu, 20 Aug 2020 18:29:07 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://auroriax.com/?p=1340</guid>

					<description><![CDATA[Yes! Fake Illusions (the game I’ve spent a year and a half developing, and will probably continue to work on for a bit) is now out on both Steam and itch. It’s great to finally have it out of the door, and I’m curious about how it will perform on both platforms. It has been [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1341" src="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-OutNow-1024x437.png" alt width="1024" height="437" srcset="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-OutNow-1024x437.png 1024w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-OutNow-300x128.png 300w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-OutNow-768x328.png 768w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-OutNow-1536x655.png 1536w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-OutNow.png 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>Yes! Fake Illusions (the game I’ve spent a year and a half developing, and will probably continue to work on for a bit) is now out on both <a href="https://store.steampowered.com/app/1367520/Fake_Illusions/">Steam</a> and <a href="https://auroriax.itch.io/fake-illusions">itch</a>. It’s great to finally have it out of the door, and I’m curious about how it will perform on both platforms.</p>
<p>It has been a little bit of final sprint to get to this point, but the application is nice and stable now. I feel it’s the first game that I’ve made that I feel comfortable slapping a price tag on. So we’ll see how it goes! There’s also <a href="https://www.youtube.com/watch?v=wNmDVjBYjIs">a new launch trailer</a> to go along with it.</p>
<p>If you want to request a review copy or want to use the game for educational purposes, feel free to reach out for a free copy: my contact details are on the top of this page.</p>
<p>Thank you and enjoy!</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Designing Fake Illusions’ Accessibility</title>
		<link>https://auroriax.com/designing-fake-illusions-accessibility/</link>
		
		<dc:creator><![CDATA[Auroriax]]></dc:creator>
		<pubDate>Fri, 14 Aug 2020 14:06:49 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://auroriax.com/?p=1310</guid>

					<description><![CDATA[There have been a lot of games about optical illusions recently, but most of these have focused around impossible geometry in Esher-esque environments. However, many more interesting visual phenomenons are still unexplored in games. I had the idea of hiding “fake” optical illusions inside real ones, and having the player point out the cheater. After [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1320" src="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-45-0_14-8-2020-1024x576.png" alt="Fake Illusions title screen." width="1024" height="576" srcset="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-45-0_14-8-2020-1024x576.png 1024w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-45-0_14-8-2020-300x169.png 300w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-45-0_14-8-2020-768x432.png 768w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-45-0_14-8-2020.png 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>There have been a lot of games about optical illusions recently, but most of these have focused around impossible geometry in Esher-esque environments. However, many more interesting visual phenomenons are still unexplored in games. I had the idea of hiding “fake” optical illusions inside real ones, and having the player point out the cheater. After an initial prototype with a few illusions, I’ve spent the last year and a half working on expanding this idea, and I’m currently preparing it to launch on Steam soon!</p>
<p>Because the game idea is so unique and visual-focused, it runs at a high risk of being very inaccessible to play, for example for people with bad eyesight, colorblindness, or other handicaps. I have some experience with this subject when designing <a href="https://auroriax.itch.io/mobility">the accessible precision platformer Mobility</a>, so I wanted to ensure the same accessibility for this game, even though the two game ideas are wildly different. Today, I’d like to run through my design choices for keeping <a href="https://store.steampowered.com/app/1367520/Fake_Illusions/">Fake Illusions</a> accessible while still embracing minimalism and surrealism.</p>
<p><span id="more-1310"></span></p>
<h1>Simplicity</h1>
<p>Fake Illusions features very little text: the logo, an epilepsy warning and the credits. This makes a couple of things more difficult to design for me (mostly the tutorial and menus), but it generally pays off since players are not required to speak a certain language to play. Also, you don’t have to worry as much about font sizes &amp; contrast, but just to be sure, all text in the game is always rather large and has an outline.</p>
<p>Similarly, the game can be controlled completely with just the mouse and left mouse button, with Escape being the only other recognized button. The simplicity of the controls allows players to focus on the game instead of on the input methods.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1319" src="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-43-26_14-8-2020-1024x576.png" alt="Screenshot of the game, showing a number for each arrow." width="1024" height="576" srcset="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-43-26_14-8-2020-1024x576.png 1024w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-43-26_14-8-2020-300x169.png 300w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-43-26_14-8-2020-768x432.png 768w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-43-26_14-8-2020.png 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>The game features almost no dexterity elements—quite the opposite, the game rewards concentration and thoughtful answers instead of brute-force or quick reactions. The number next to each illusion allow multiple players to discuss the puzzle more easily. Any time the player changes a setting or makes progress, the game autosaves so the player can quit at any time without losing progress.</p>
<p>Most of these features were implemented and standardized rather early, and as such, all of these seemingly small design choices really bring accessibility into the core of the game’s design.</p>
<h1>Colors</h1>
<p>Most optical illusions require the maximum amount of contrast you can get to achieve the strongest effect, meaning you’re often required to use black or white. I expanded this monochrome style even to illusions that do not necessarily require it, making the game as colorblind friendly as it can be with this gameplay. In the rare case that an illusion type still trips someone up, the player can simply skip the illusion (we’ll get to this later) or change the settings.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1318" src="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-40-35_14-8-2020-1024x576.png" alt="Example of an illusion that would normally be color-based, but is grayscale in this game." width="1024" height="576" srcset="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-40-35_14-8-2020-1024x576.png 1024w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-40-35_14-8-2020-300x169.png 300w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-40-35_14-8-2020-768x432.png 768w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-40-35_14-8-2020.png 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>Sometimes the game breaks from this style for contrast colors: crosses are red while check marks are green. There’s also a single case where an illusion in the game does not work in monochrome, and keeps its original colors. Altogether, this allows for an art style that looks minimalist and uses a lot of primitive shapes, which has the added side effect of keeping the scope of the artwork small enough so I can make all of the game’s art assets by myself.</p>
<h1>Difficulty</h1>
<p>Since this game is very focused on spotting visuals, you have to take into account that not everybody’s eyes or screens are equal.</p>
<p>One of the playable illusions in the game is the Hermann Grid, where players have to find an actual gray square in the intersections between larger black squares. When I was playtesting the game during a network lunch, I noticed that the “faker” gray square was not visible on this screen. Apparently, the monitor ignored the very light shade of gray and turned it into full white. For this reason, the brightness slider was very important to add.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1317" src="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-38-55_14-8-2020-1024x576.png" alt="Fake Illusions settings screen with the difficulty slider &amp; settings button displaying a smiley." width="1024" height="576" srcset="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-38-55_14-8-2020-1024x576.png 1024w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-38-55_14-8-2020-300x169.png 300w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-38-55_14-8-2020-768x432.png 768w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-38-55_14-8-2020.png 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>This game has a difficulty slider that indicates how much the faker is allowed to stand out. At the default level it offers a fair challenge, but it can be set much harder but also much easier. The range on the slider is actually pretty wide, with the extremes making the puzzles either trivial or nearly impossible, to suit every type of player. I think this offers a much more dynamic control over difficulty compared to Easy/Medium/Hard settings that are currently the standard in many games. The slider appears in the settings menu, but also in-between levels while playing the illusion.</p>
<p>If the player changes the difficulty beyond a certain point, a smiley (or frowny) in the interface indicates this. This is mostly to make sure that the player knows it’s a globally applied setting and to remember them they’ve set it to a non-default value, and that they can follow a breadcrumb trail to the settings menu where they can adjust it back.</p>
<h1>Progression</h1>
<p>To complete Fake Illusions, you only need to beat around half of its content. Meaning you don’t have to play every illusion if you don’t want to, for whatever reason.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1328 size-large" src="https://auroriax.com/wp-content/uploads/2020/08/Screenshot_3-1024x575.png" alt="Fake Illusions intermission screen." width="1024" height="575" srcset="https://auroriax.com/wp-content/uploads/2020/08/Screenshot_3-1024x575.png 1024w, https://auroriax.com/wp-content/uploads/2020/08/Screenshot_3-300x168.png 300w, https://auroriax.com/wp-content/uploads/2020/08/Screenshot_3-768x431.png 768w, https://auroriax.com/wp-content/uploads/2020/08/Screenshot_3.png 1267w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>The game encourages the player to take breaks, or at the very least, switch between illusions from time to time. There’s an intermission screen each time the player beats a level of the illusion, and if the player has unlocked something new in the meantime, an exclamation mark is displayed on the “back to menu” button. Then the same exclamation mark is displayed on the thing the player unlocked in the level select.</p>
<p>At first the progression worked that only a fully completed illusion would unlock others. But I changed it so that every completed level (each illusion has around 5) would add up to unlock things. Players can still beat everything if they want, but it gives those who might get stuck more freedom to continue towards the end of the game.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1316" src="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-37-1_14-8-2020-1024x576.png" alt="Level select with an exclamation mark on one of the levels." width="1024" height="576" srcset="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-37-1_14-8-2020-1024x576.png 1024w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-37-1_14-8-2020-300x169.png 300w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-37-1_14-8-2020-768x432.png 768w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-37-1_14-8-2020.png 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>As a final detail, the last level in the game is the Shuffle mode, which gives the player hard versions of random illusions. The player will only encounter illusions here if they’ve already beaten the first difficulty of that illusion earlier, to make sure they only get puzzles for which they’ve already been onboarded. It’s a small feature, but one of which I’m certain will ease frustration.</p>
<h1>Scaling</h1>
<p>One thing Fake Illusions has that not many games do, is having a fully re-scalable window. The game tries it’s best to fit in at a 16:9 resolution, and also fills parts of the window that would normally be outside the 16:9 range. As a result, the game’s graphics fit no matter at which resolution you play.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-1330 size-large" src="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-57-34_14-8-2020-1024x290.png" alt="Screenshot of the game in a very vertical resolution." width="1024" height="290" srcset="https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-57-34_14-8-2020-1024x290.png 1024w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-57-34_14-8-2020-300x85.png 300w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-57-34_14-8-2020-768x217.png 768w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-57-34_14-8-2020-1536x434.png 1536w, https://auroriax.com/wp-content/uploads/2020/08/FakeIllusions-13-57-34_14-8-2020.png 1909w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<p>There’s also a zoom slider, in case you’d prefer to play the game at a different or pixel-perfect zoom level. The slider only appears when the window is larger than its default resolution (which is 1280x720), because the window can also scale a bit smaller than that for smaller windows or screens. (The <a href="https://store.steampowered.com/hwsurvey/Steam-Hardware-Software-Survey-Welcome-to-Steam">Steam Hardware Survey</a> is a very good guideline for knowing exactly what kinds of screen widths and other features to support.) I can imagine people will want to set the zoom level low, since they’ll have to move the mouse less, so most of the buttons and hitboxes in this game are quite big to help these players.</p>
<h1>Final Words</h1>
<p>The final thing that I’d like to talk about, is advertising your accessibility features on your store page.</p>
<p>When looking up info about games I’m interested in, I generally like to know which settings are available in the game so I know how accessible it is and how much I (as a player) am allowed to tweak. But for most games, this info is not readily available, requiring me to dive into reviews or social media to figure out what I can or can’t change.</p>
<div id="attachment_1313" style="width: 730px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-1313" class="wp-image-1313 size-full" src="https://auroriax.com/wp-content/uploads/2020/08/Screenshot_1.png" alt="A screenshot of the game's store page with the following text:  &quot;Accessibility info, Color blind friendly: the game uses only greyscale, red and green colors, with adjustable brightness. Illusions that require you to spot color differences can be skipped. Textless: Very little reading is required to play Fake Illusions. Autosave: Quit the game at any time and continue where you left off next time you play. Difficulty: The game is designed to be difficult but fair. You can also set the &quot;fake&quot; illusion to be easier to harder or spot in the settings. This is also indicated with a smiley in the interface. Controls: Completely playable with just the mouse and left mouse button (no keyboard/controller support).&quot;" width="720" height="471" srcset="https://auroriax.com/wp-content/uploads/2020/08/Screenshot_1.png 720w, https://auroriax.com/wp-content/uploads/2020/08/Screenshot_1-300x196.png 300w" sizes="auto, (max-width: 720px) 100vw, 720px"><p id="caption-attachment-1313" class="wp-caption-text">Screenshot of Fake Illusion’s Steam page.</p></div>
<p>So if you want to signal that your game was designed to be accessible, please put this info up on the store page, front and center! The <a href="http://gameaccessibilityguidelines.com/provide-details-of-accessibility-features-on-packaging-andor-website/">Game Accessibility Guidelines</a> also recommend you put this info in an easy-to-find location (<a href="http://gameaccessibilityguidelines.com/provide-details-of-accessibility-features-in-game/">preferably also in-game</a>). You cannot make the game accessible for everyone, but at least you can expand the range of people who can play the game, and set the expectations for your users so they know what they can (or cannot) expect.</p>
<p>Thank you for reading, and let’s make all games more accessible!</p>
<h1>Learn more</h1>
<p><a href="https://www.youtube.com/watch?v=xrDZ--AuiL8">Wordy tutorials need to end. Why Game Designers should take a “Vow of Silence”</a> by Hamish Todd<br>
<a href="http://gameaccessibilityguidelines.com/">Game Accessibility Guidelines</a><br>
<a href="https://accessible.games/wp-content/uploads/2018/11/AbleGamers_Includification.pdf">Includification</a> by AbleGamers</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Distraction-preventing Software and Tools</title>
		<link>https://auroriax.com/distraction-preventing-software-and-tools/</link>
		
		<dc:creator><![CDATA[Auroriax]]></dc:creator>
		<pubDate>Fri, 20 Mar 2020 15:29:22 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://auroriax.com/?p=1240</guid>

					<description><![CDATA[Since lots of people are currently stuck at home because of the corona virus, and I really wanted to contribute to notGDC this year, I’ve decided to write about something that I wanted to share for a while now: tools to prevent yourself from getting distracted while using a computer. When using any internet-connected device, [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1251" src="https://auroriax.com/wp-content/uploads/2020/03/distractions_white.gif" alt width="800" height="400"></p>
<p>Since lots of people are currently stuck at home because of the corona virus, and I really wanted to contribute to <a href="http://www.notgdc.fun/">notGDC</a> this year, I’ve decided to write about something that I wanted to share for a while now: tools to prevent yourself from getting distracted while using a computer.</p>
<p>When using any internet-connected device, the line between exertion and relaxation can blur very quickly—and I can relate. In my case, one time during an internship , I got side tracked and started watching… a Tetris competition. Of course I got caught: that was the moment where it dawned on me that the freedom to get distracted was too much responsibility for me. So I decided to take away some of that freedom, and opted to add measures on my computer to achieve that. I’ve used a lot of productivity tools over the years, so I’d like to share with you what I’ve learned and what worked for me.</p>
<p>Some context, though. I’m 22 years old, lived in a student house for around the past four years, and for the last months I’ve lived in an apartment by myself, working remotely. Most of the recommendations here will be Windows applications or browser extensions. I also have as few apps on my phone as possible to minimize distraction there (a “dumbphone” of sorts).</p>
<p>Some of the methods I’m using might be a little extreme, because I need it to stay sharp and motivated. So you might not be able to use very single tip here, but I still hope these pieces of software and other tips will suit your use cases!</p>
<p><span id="more-1240"></span></p>
<h1>Recommended productivity software</h1>
<h2><a href="https://addons.mozilla.org/en-US/firefox/addon/leechblock-ng/">LeechBlock</a> 🔒</h2>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/leechblock-ng/">LeechBlock</a> is a Firefox extension that blocks off access to sites during scheduled blocks of time. I like this program because there are tons of settings you can tweak. Which means that it might take a while to find a combination of settings that work for you, though!</p>
<p>In my case, it’s pretty strict. I can override it, but the method I’ve set (typing over a random 32-character string before overriding 10 minutes) is annoying enough that I only do it if I really want! I use it to block social media an news sites during work from 9 to 12 and 13 to 17, then lock those again at around 21.</p>
<p>This is the only tool I’ve used that allows me to set it up in such a way that I will play along with the restrictions I’ve set up, yet is <em>just</em> not strict enough that I’ll attempt to bypass those restrictions. That reason alone is why I’ve placed it on top of this list. I recommend it a bunch! (It also has a <a href="https://chrome.google.com/webstore/detail/leechblock-ng/blaaajhemilngeeffpbfkdjjoefldkok">Chrome version</a>.)</p>
<h2><a href="https://github.com/gorhill/uBlock">uBlock Origin</a> 🙈</h2>
<p>Ads can be pretty distracting, and making yourself invisible on the net might be just what you need to keep focus, especially if your work involves surfing to a whole lot of random sites (like game dev!).</p>
<p><a href="https://github.com/gorhill/uBlock">uBlock Origin</a> is the one I recommend, because it will also allow you to manually filter site elements that aren’t ads, if you don’t like those for some reason. For example, I use it to filter cookie permission banners, buttons in menus that I never use, and for some distracting sites I’ve even used it to sabotage site functionality, so that using the site becomes a very annoying.</p>
<h2><a href="https://addons.mozilla.org/en-US/firefox/addon/max-tabs-web-ext/">Max Tabs</a> 📑</h2>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/max-tabs-web-ext/">Max Tabs</a> is a Firefox extension that limits the amount of tabs you can have opened in a single window at the same time. I use this to make sure I close tabs I don’t need, since mess is usually a main source of distraction for me.</p>
<p>You can set the maximum of tabs yourself. This causes my tabs to be spread out across multiple windows (usually private windows in my case), each window carrying related subjects, which can be closed quickly when I’m done with them. (You could also look at something like <a href="https://addons.mozilla.org/en-US/firefox/addon/simple-tab-groups/">Tab Groups</a> if you’re primarily looking to organize your tabs.)</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1255" src="https://auroriax.com/wp-content/uploads/2020/03/battery.gif" alt width="181" height="53"></p>
<h1>Tools and other tricks</h1>
<p>You can use these tricks mostly without installing additional apps on your PC.</p>
<h2>Do Not Disturb mode ⛔️</h2>
<p>I use this on every device that supports it. On most Android devices, you can indicate a time period in which your phone automatically jumps into a “Do not Disturb” mode. If that doesn’t give you enough control, there are also apps that allow you to automatically toggle things like WiFi or Airplane Mode on and off at certain times, like <a href="https://play.google.com/store/apps/details?id=com.alfray.timeriffic&amp;hl=en">Timeriffic</a> (although its interface is a bit dated).</p>
<h2>Writing down stuff ✏️</h2>
<p>When I have a really cool idea, but I can’t act to it right away, it remains in the back of my mind until it’s documented. For solve this, I usually use a <a href="https://trello.com">Trello</a> board if it’s related to one of my projects, or a physical noteblock if I need to draw out new ideas.</p>
<p>I really like noteblocks, because they allow me to record idea’s when all my devices are off, and make drawings or diagrams that are difficult to create (quickly) on devices. My notebook also has a sleeve which allows me to carry it with one hand and draw with the other, and has a slot to stick a pencil inside, so I have everything I need to make annotations anywhere quickly.</p>
<h2>Night light &amp; grayscale display modes 💡</h2>
<p>I have a really bad habit of staying up too late behind the computer. The <a href="https://support.microsoft.com/en-us/help/4027563/windows-10-set-your-display-for-night-time">Nightlight feature</a> in Windows 10 helps with this: it filters out the blue light that tells your body you’re looking at the sun. The blue light prevents your body from producing the oxytocin you need to fall asleep, because it makes your brain think the sun is still up. (<a href="https://play.google.com/store/apps/details?id=com.urbandroid.lux&amp;hl=en">Twilight</a> on Android serves a similar purpose.)</p>
<p>Similarly, some devices have other options for screen coloring, including a greyscale mode. It looks cool (I sometimes use this option on my Nintendo Switch to turn it into an enormous Game Boy), but it also filters out colors that would normally be eye-catching and thus distracting. Look into the accessibility options on your device to learn more.</p>
<h2>User time limits ⏰</h2>
<p>The previous night light tip only soothes the problem of late computer work: it doesn’t prevent it. There’s also a setting in Windows 10 that prevent users from logging in during certain periods of time. So if you’re still using your computer when the period goes in, you’ll be able to continue using it, but if you lock it or are otherwise logged out, you can’t get in until the period has passed.</p>
<p>This is the most extreme measure I’m currently using, but it’s also the most difficult one to set up <a href="https://www.howtogeek.com/250224/how-to-set-time-limits-for-a-regular-account-in-windows-10/">because you’ll need to do it in the Command Prompt.</a> Additionally, you can set up one user account with only your productive stuff installed, and put the rest in another account with a really long password.</p>
<p>Or you can look into <a href="https://github.com/White-Tiger/T-Clock">T‑Clock</a>, with which you can set alarms and hourly chimes to remind you to take a break.</p>
<h2>Know your shortcuts ⌨️</h2>
<p>For me, if I can stay in the flow of the work I’m doing, then the chance that I’ll trail off becomes much smaller. I’ll assume you’re already familiar with shortcuts like Ctrl+V and Alt+Tab, so here are some of the lesser known ones that are equally as useful (especially for game devs):</p>
<ul>
<li>Windows+D: Show desktop</li>
<li>Windows+E: Open Windows Explorer</li>
<li>Alt+F4: Close current window</li>
<li>F2: Rename file</li>
<li>Ctrl+Shift+Esc: Open Task Manager (saves you a trip to the Ctrl+Alt+Delete menu!)</li>
</ul>
<p><a href="https://support.microsoft.com/en-us/help/12445/windows-keyboard-shortcuts">Here’s a pretty complete list of shortcuts on Windows</a>. One extra tip: in Windows Explorer, typing “cmd” in the navigation bar will open the command prompt in the current folder. Super useful to get commands running quickly!</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1259" src="https://auroriax.com/wp-content/uploads/2020/03/warning.gif" alt width="120" height="97"></p>
<p>&nbsp;</p>
<h1>Additional tools</h1>
<p>Here are some things I’ve used previously but didn’t work for me, but might for you:</p>
<h2><a href="https://www.rescuetime.com/">RescueTime</a> 📈</h2>
<p><a href="https://www.rescuetime.com/">RescueTime</a> tracks what kinds of software you use throughout the day. It already knows of most programs which ones are distracting and which ones are productive, and you can adjust this yourself too.</p>
<p>While this tool is great for tracking your behavior, there’s little incentive provided to actually improve this behavior. Still, if you are in the early phases of figuring out which things cost you the most time, RescueTime might be just what you need to analyze it!</p>
<h2><a href="https://habitica.com/static/home">Habatica</a> ⚔️</h2>
<p><a href="https://habitica.com/static/home">Habatica</a> is a <a href="https://trello.com">Trello</a> board combined with an RPG. I didn’t like it because it Habatica doesn’t actually track anything: it trusts the user to set all their tasks and habits and report accurately, and you need to play it with multiple people to make any meaningful progression in the RPG bit. <a href="https://alternativeto.net/software/habitica/">There are more gamified tasks lists out there</a>, if that sorta thing motivates you, try out some and see which one works best for you!</p>
<h2><a href="https://getcoldturkey.com/">Cold Turkey</a> 🦃</h2>
<p><a href="https://getcoldturkey.com/">Cold Turkey</a> has none of the edge cases that other app blockers might have that will allow you to use blocked stuff while you actually should not be able to. It’s feature set is very similar to LeechBlock, but it runs on your desktop instead It didn’t click with me because their free version is pretty basic. However, it might be just what you need if you often want to manually lock down your computer to get a couple hours of complete focus on work for a nearby deadline or deliverable.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1268" src="https://auroriax.com/wp-content/uploads/2020/03/finallySomePieceAndQuiet.gif" alt width="800" height="400"></p>
<h1>Conclusion</h1>
<p>I have used a lot of productivity tools because I know myself all too well, and recognize that I need them to use a computer properly. Hopefully I’ve convinced you to try some of these tools to keep your own distractions at bay! If anything, try out <a href="https://addons.mozilla.org/en-US/firefox/addon/leechblock-ng/">LeechBlock</a>, since it’s generally the most effective tool for me. Thanks for reading, and good luck!</p>
<p>You might also be interested in:</p>
<ul>
<li>Nicky Case: <a href="https://blog.ncase.me/habits-i-tried-to-make-in-2018/">Habits I (Tried To) Make in 2018</a></li>
<li>AlternativeTo: <a href="https://alternativeto.net/feature/anti-procrastination/">Apps with ‘Anti Procrastination” feature</a></li>
</ul>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Best games of 2019!</title>
		<link>https://auroriax.com/best-games-of-2019/</link>
		
		<dc:creator><![CDATA[Auroriax]]></dc:creator>
		<pubDate>Sat, 07 Mar 2020 21:33:58 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://auroriax.com/?p=1193</guid>

					<description><![CDATA[That’s a wrap on 2019, the year where I barely played Steam games in favor of itch, the year that Switch eShop discounts started getting amazing, and also a year where I graduated and moved away from my student house. Oh, and I also made a bunch of smaller games, while wrapping up Fake Illusions. [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>That’s a wrap on 2019, the year where I barely played Steam games in favor of itch, the year that Switch eShop discounts started getting amazing, and also a year where I graduated and moved away from my student house. Oh, and I also made a bunch of smaller games, while wrapping up Fake Illusions. Whew!</p>
<p>Here are some games I liked. Like <a href="https://auroriax.com/best-of-2018/">last year</a>, I just played these games this year, since I don’t really care about their original release date. The order of games is also pretty much “in the order I can think of them”, so take it with a grain of salt. Maybe two.</p>
<p><span id="more-1193"></span></p>
<p>Here goes!</p>
<h1>Sayonara Wild Hearts</h1>
<p>This game released on the same day as Untitled Goose Game on the Switch, and as such I was sent into doubt about which game to play first. Untitled Goose Game won that day, but this game kept lingering in the back of my mind. I beat the entirety of the game in one day (which is probably the best way to beat this game), and the music and graphics really evoked an emotion of flow in me that’s normally only reserved for rhythm games like Rhythm Paradise. Getting gold medals in the game is kind of awkward (because of how the scoring system was designed) but was ultimately very rewarding. The Zodiac Riddles create a very interesting reward system, and it further underlines the mystery beneath the game.</p>
<h1>Gris</h1>
<p>It’s artsy, wonderful, and also very metaphorical. It does everything it needs to do quite well, and some of the puzzles are actually pretty interesting. This is one of those rare games where exploration in itself is just incredibly rewarding on its own, you always want to see the next surprise the game will throw at you, and usually the game does that very elegantly.</p>
<h1>Pokemon Sword</h1>
<p>I did not expect a Pokemon game to captivate me as much as this latest entry in the series, but it has clicked with me immensely well. The story is dull, but this entry finally makes the competitive aspect of Pokemon accessible enough for me to care about, after a decade (since my first Pokemon game was Diamond) of UX Design “Two steps forwards and one step back”. The connective motif of the Pokemon series is at its strongest ever, now that all multiplayer functionality is now available both locally and online, and players can cooperate in Raid battles.</p>
<h1>Baba is You</h1>
<p>I guess I got kind of burned out on puzzle games, but Baba is You really invigorated that love by making the game as much about programming as shoving blocks around. Although many of the games on this list so far have a sense of mystery surrounding them, but Baba is You does a really good job at creating that mystery on a system-scale level, where the rules of the game itself are mysterious yet brimming with potential. It does get complex really quickly and levels can be really hit-or-miss, but the game remains accessible enough for me.</p>
<h1>Dicey Dungeons</h1>
<p>Another game with very interesting system design is Dicey Dungeons, a game that I wouldn’t have expected from the Super Hexagon &amp; VVVVVV designer as lead. Normally, I don’t have the patience for roguelikes, but this game has the wonderfully executed Episodes system that make each run different enough for me to care. It is a very refreshing take on luck and manipulating luck, filled with all kinds of silly things within.</p>
<h1>Ys VIII: Lacrimosa of Dana</h1>
<p>If an Ys story starts on a boat, you already know it’s going to be the butt of a joke. It’s been a while since I played an Ys game, but I got around to picking up the latest entry. I skipped a bunch of games in the series, so I’m not sure at which point the narrative in these games became basically the same as in the Trails series (a more story-focused series of games by the same developer), but it works rather well, and for the story it didn’t matter that I missed the last couple of games. Basically the action is still really nice, and the story is just a really nice bonus for the package. It drags on a bit, but most of the really annoying stuff is optional.</p>
<h1>Catrap</h1>
<p>Also known as Pitman, this is a really clever and elegant puzzle game, made even more impressive that it was a super early Game Boy release supporting an undo functionality and level editor. Some of the 100 puzzle rooms are kinda redundant, but across the board the puzzle quality is actually pretty impressive. I read about this in the Game Boy Works book and was intrigued enough to pick it up for €3 on the 3DS eShop, and was pleasantly suprised.</p>
<h1>Katamari Damacy REROLL</h1>
<p>I had missed out on this cult classic before because it never made its way to Nintendo platforms, but I’m happy to have experienced it. It’s silly, charming, and all with a very morale underneath: Earth has too much stuff. My housemates did compain that the game was too noisy, which is also a good way to describe this game as a positive thing.</p>
<h1>Super Mario Maker 2</h1>
<p>I’ve made over 60 courses, starting by doing the 4‑step level design that originated in the 3D Land and World games, and made a whole range of levels, from puzzles to autoscrollers and beanstalks to undergrounds. My favorite is a series of ten levels where you need to gather 999 coins within 60 minutes, which were both a blast to design and to play. Online can be a bit of a mixed bag sometimes, but just making levels already puts me in a state of flow that little games achieve for me nowadays.</p>
<h1>WILL: A Wonderful World</h1>
<p>The most thinky narrative game I’ve seen so far. The basic premise of the game is that you receive multiple letters from humans, and then you change the outcome of the scenario described in those letters by moving pieces up and down or between letters. This results in a lot of metagame as well, as only certain outcomes will unlock new letters. It can get pretty confusing and frustrating sometimes, but there’s nothing in there that can’t be solved by brute force.</p>
<h1>Heaven’s Vault</h1>
<p>A game about interpreting an old language, and all the story that surrounds it. I think this is the closest a game has come to portraying archeology… sorta accurately. It’s not exactly an Indiana Jones-style setting, but it feels much more relaxed and mysterious as you’re inside it, and all the things that can be missed while multitasking your actions. I don’t think it’s possible to play this game perfectly, which really sets the tone and game feel. I still think about the unanswered questions from the plot sometimes.</p>
<h2>That’s it!</h2>
<p>I ended up finishing this list a few months into 2020, so these are all the games that sticked with me. Thanks you for reading, and I am sure there will be many more games in 2020 to enjoy.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>js13kGames — Back to the basics</title>
		<link>https://auroriax.com/js13kgames-back-to-the-basics/</link>
		
		<dc:creator><![CDATA[Auroriax]]></dc:creator>
		<pubDate>Mon, 16 Sep 2019 12:33:47 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://auroriax.com/?p=1130</guid>

					<description><![CDATA[I wanted to participate in js13k for a while now, so I finally took the dive, similarly to 7drl this year. The resulting game is called BackFlipped, and you can play it on either the competition site or itch! Also, you can check out the source code on Github. I had some goals: I was [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="aligncenter  wp-image-1136" src="https://auroriax.com/wp-content/uploads/2019/09/backflipped-2-1024x921.png" alt width="597" height="537" srcset="https://auroriax.com/wp-content/uploads/2019/09/backflipped-2-1024x921.png 1024w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-2-300x270.png 300w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-2-768x691.png 768w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-2.png 1087w" sizes="auto, (max-width: 597px) 100vw, 597px"></p>
<p>I wanted to participate in <a href="https://js13kgames.com/">js13k</a> for a while now, so I finally took the dive, similarly to <a href="https://auroriax.itch.io/7drl-2019">7drl</a> this year. The resulting game is called BackFlipped, and you can play it on either <a href="https://js13kgames.com/entries/backflipped">the competition site</a> or <a href="https://auroriax.itch.io/backflipped">itch!</a> Also, you can <a href="https://github.com/Auroriax/BackFlipped">check out the source code on Github</a>.</p>
<p>I had some goals:</p>
<ul>
<li>I was itching to use <a href="https://zzz.dog">Zdog</a> to make a game! Zdog is a pseudo-3D engine for 3D vector art. Minimized it’s around 29k, so it’s a bit bulky compared to the frameworks specially designed for js13k, but I can make all my other assets using code now.</li>
<li>I want to work out an idea I already have spooking around in my head for a while, and I otherwise would not take the time for. Luckily, the jam theme was a good match for this idea.</li>
<li>To get a js13k T‑shirt! Based on last year’s contest you need to get into the overall top 33% to win one, and I’m pretty confident I can make that!</li>
</ul>
<p>Here’s a lengthy postmortem detailing my design decisions so I can refer to them later, but also so other people can learn! I might make a separate post about all the optimization tricks I used, but for now the <a href="https://js13kgames.github.io/resources/">js13k resources</a> are very useful, and I tried most of the tricks listed there.</p>
<p><span id="more-1130"></span></p>
<h2>The Idea</h2>
<p>I had an idea for a game where you fall into a well with platforms. The Left or Right arrow keys propel you into that direction, and if you hit a block, you score points. Then, you can kick through the block as well, to break it for more points.</p>
<p>For the “Back” theme, the extra layer I decided to add was the <em>back</em>ground. When you touch a block but then move away, it moves backwards. Once you reach the bottom of the well, gravity flips and you move to the background yourself. The better you play, the more blocks will move to the other side, increasing score potential.</p>
<p>I ended boosting the speed of the game during development. First blocks would disappear after leaving collision, now they do so on entering of collision to make it clearer you can kick through them. The Up key would not start a jump, but actually slow your fall. If you landed on a block you’d lose falling speed, but now you’ll just instantly start another drop after falling on something. The game is around five times faster than in the first version! Because this game has no traditional obstacles (such as spike blocks or enemies), the entire challenge has to come from battling the timer, which I think adds to the chaos of the gameplay.</p>
<div id="attachment_1167" style="width: 948px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-1167" class="size-full wp-image-1167" src="https://auroriax.com/wp-content/uploads/2019/09/ezgif-5-85ddde852e0f.gif" alt width="938" height="448"><p id="caption-attachment-1167" class="wp-caption-text">Early GIF of gameplay.</p></div>
<h2>Rules</h2>
<p>My idea was to only have a set of levels, but I scrapped that and made it just an endless mode. Now it has both!</p>
<p>While this game has levels, each level is actually just a randomness seed set to a certain value. You can’t set a seed for randomness in JS, but you can make your own seeded system. I took one <a href="https://stackoverflow.com/a/19303725">from StackOverflow.</a> A downside is that different browsers generate other levels, but that’s not too big of an issue for this game.</p>
<p>At first, endless mode would make you start at a certain time, then as you’d kick blocks you’d build up a jackpot. Hitting the bottom of the level would cash out your jackpot. But it encouraged players to constantly drop straight down and not hit all platforms. I revamped it with an “All Clear” mechanic: all platforms give a little bit of time, but if you hit all the platforms on the way down, you get a couple of extra seconds as well. Endless mode also keeps getting faster and faster as you go, too, and since the level keeps growing and growing on each flip, I think there’s a pretty good game balance on this mode now.</p>
<div id="attachment_1143" style="width: 537px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-1143" class="wp-image-1143" src="https://auroriax.com/wp-content/uploads/2019/09/backflipped-jackpotAlt.png" alt width="527" height="436" srcset="https://auroriax.com/wp-content/uploads/2019/09/backflipped-jackpotAlt.png 805w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-jackpotAlt-300x248.png 300w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-jackpotAlt-768x635.png 768w" sizes="auto, (max-width: 527px) 100vw, 527px"><p id="caption-attachment-1143" class="wp-caption-text">Old interface for Jackpot mode: The +sec counter displays the jackpot value, which gets claimed when you flip around.</p></div>
<h2>Interface</h2>
<p>I don’t think many js13k participants have “making a title screen” as their top priority. For me it’s rather important, because it’s the first impression the player will get from your game. I was quite happy to be able to make a simple but cool title screen using css colors and transforms.</p>
<div id="attachment_1140" style="width: 1034px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-1140" class="wp-image-1140 size-large" src="https://auroriax.com/wp-content/uploads/2019/09/backflipped-titleScreen-1024x523.png" alt width="1024" height="523" srcset="https://auroriax.com/wp-content/uploads/2019/09/backflipped-titleScreen-1024x523.png 1024w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-titleScreen-300x153.png 300w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-titleScreen-768x392.png 768w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-titleScreen.png 1919w" sizes="auto, (max-width: 1024px) 100vw, 1024px"><p id="caption-attachment-1140" class="wp-caption-text">I didn’t want to make separate texts for desktop &amp; mobile, so the game shows “Press Space or Tap Screen” on both platforms.</p></div>
<p>The game runs like normal in the background, except with the player, trail, and collisions disabled. Also, the title screen gets recycled as a game over screen by replacing the text. This makes the game seem more lively since it’s a screensaver when you’re not playing!</p>
<p>In other parts of the game the UI is minimalist:&nbsp; there’s a timer, a level/score indicator, and a progress bar. A text box shows game help on the title screen and other info when needed, for example upon game saves.</p>
<p>I wanted a screen-filling responsive game, so I use Zdog’s zoom property to make the game fit to smaller screens, with @media rules in CSS doing the UI.</p>
<h2>Mobile</h2>
<p>I did not plan to enter in the Mobile category, but someone wanted me to submit a simple mobile web game as part a test, so I decided to add it to BackFlipped.</p>
<p>I settled on using swipe directions to input the same direction arrow key, using a <a href="https://gist.github.com/SleepWalker/da5636b1abcbaff48c4d#gistcomment-2577818">GitHub gist</a> as base. It works a bit finicky (especially with short swipes) but it’s good enough to play with one finger. You do have to swipe a lot when the game starts getting faster! I also used these controls as an excuse to add input buffering: so if the game can’t handle player input in the current step, it’ll repeat it for a couple more frames in case the player timed just a bit too early.</p>
<p>The version I originally submitted for js13k had broken swipe controls. Luckily, a short email to the js13k team with a new version of the game was enough to get the jam version updated!</p>
<div id="attachment_1141" style="width: 303px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-1141" class="wp-image-1141 size-full" src="https://auroriax.com/wp-content/uploads/2019/09/backflipped-verySmall.png" alt width="293" height="495" srcset="https://auroriax.com/wp-content/uploads/2019/09/backflipped-verySmall.png 293w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-verySmall-178x300.png 178w" sizes="auto, (max-width: 293px) 100vw, 293px"><p id="caption-attachment-1141" class="wp-caption-text">This is pretty much how the game looks like on my older smartphone… The text isn’t very big, but at least it fits!</p></div>
<h2>Faking it with Zdog</h2>
<p>In Zdog, the 3D effect is only really visible when the camera rotates. My game didn’t require a lot of rotating though, but I decided to make the camera a little bit skewed to convey depth a bit better.</p>
<p>The screen flips around once you reach the bottom. I can only make the Zdog illustration rotate around its middle, which caused issues when the player was further away. The fix was making the player jump back to the origin when the camera starts flipping, then moving all other objects to the same position, relative to the player before the jump. Now the transition is super smooth!</p>
<p>A lot of the things that look like they’re exactly behind the player, are actually placed diagonally of that in 3D space. I did this to combat <a href="https://zzz.dog/extras#z-fighting">Z‑fighting</a>, when the renderer changes in which order overlapping shapes are drawn. Now what looks neatly when watching from the game camera, is actually not placed behind each other:</p>
<div id="attachment_1139" style="width: 548px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-1139" class="wp-image-1139 size-full" src="https://auroriax.com/wp-content/uploads/2019/09/backflipped-fakedDepth-1-e1568476040342.png" alt width="538" height="600"><p id="caption-attachment-1139" class="wp-caption-text">You’ll notice the trail and the player are in different places, but from where the camera usually is it seems like they’re in the same place.</p></div>
<p>But it works wonderfully when watched from the game camera. And that was good enough.</p>
<h2>Colors!</h2>
<p>If you have a game with only flat colors, it’s a missed opportunity if you don’t add multiple palettes. I tried it in my game <a href="https://auroriax.itch.io/mobility">Mobility!</a>, but I only ended up changing the background color, not the entire palette.</p>
<p>Backflipped defines six different colors: foreground and background, blocks on the fore- and background, character body/dots and eye/trail color. The background colors are most important, because everything else needs to have a decent contrast color with it.</p>
<p>The block colors also need good background contrast when you’re on their layer, but need to fade away into the background when they’re not: a tricky balance. So I used a <a href="https://www.aremycolorsaccessible.com/palette">palette creator designed to test the contrast of colors</a>, and ended up making a few palettes that use the flipping mechanic of the game metaphorically: for example, Dawnbreak switches between dusk and dawn.</p>
<p>Coil subscribers get two extra color palettes that are unlocked from the start. I think this is a good cosmetic goodie to offer to subscribers since it doesn’t influence gameplay too much, but does look very fancy and premium. Overall, I’m very happy with the variation among these seven color palettes!</p>
<div class="slick-slider-wrapper">
<div class="slick-slider slick-slider--size-large" id="slick-slider-1" data-slick="{&quot;showCaption&quot;:true,&quot;centerMode&quot;:true,&quot;centerPadding&quot;:&quot;60px&quot;,&quot;dots&quot;:true,&quot;focusOnSelect&quot;:true,&quot;lazyLoad&quot;:&quot;anticipated&quot;,&quot;speed&quot;:200,&quot;swipeToSlide&quot;:true,&quot;touchThreshold&quot;:25,&quot;variableWidth&quot;:true}">
<div class="slide" data-attachment-id="1152">
<div class="slide__inner">
<img width="1024" height="436" class="attachment-large size-large" alt data-sizes="(max-width: 1024px) 100vw, 1024px" data-lazy="https://auroriax.com/wp-content/uploads/2019/09/canvasA-1024x436.png" data-srcset="https://auroriax.com/wp-content/uploads/2019/09/canvasA-1024x436.png 1024w, https://auroriax.com/wp-content/uploads/2019/09/canvasA-300x128.png 300w, https://auroriax.com/wp-content/uploads/2019/09/canvasA-768x327.png 768w, https://auroriax.com/wp-content/uploads/2019/09/canvasA.png 1920w">
<div class="slide__caption">
The default colors.
</div>
</div>
</div>
<div class="slide" data-attachment-id="1153">
<div class="slide__inner">
<img width="1024" height="436" class="attachment-large size-large" alt data-sizes="(max-width: 1024px) 100vw, 1024px" data-lazy="https://auroriax.com/wp-content/uploads/2019/09/canvasB-1024x436.png" data-srcset="https://auroriax.com/wp-content/uploads/2019/09/canvasB-1024x436.png 1024w, https://auroriax.com/wp-content/uploads/2019/09/canvasB-300x128.png 300w, https://auroriax.com/wp-content/uploads/2019/09/canvasB-768x327.png 768w, https://auroriax.com/wp-content/uploads/2019/09/canvasB.png 1920w">
<div class="slide__caption">
Strawberry Patch
</div>
</div>
</div>
<div class="slide" data-attachment-id="1154">
<div class="slide__inner">
<img width="1024" height="436" class="attachment-large size-large" alt data-sizes="(max-width: 1024px) 100vw, 1024px" data-lazy="https://auroriax.com/wp-content/uploads/2019/09/canvasC-1024x436.png" data-srcset="https://auroriax.com/wp-content/uploads/2019/09/canvasC-1024x436.png 1024w, https://auroriax.com/wp-content/uploads/2019/09/canvasC-300x128.png 300w, https://auroriax.com/wp-content/uploads/2019/09/canvasC-768x327.png 768w, https://auroriax.com/wp-content/uploads/2019/09/canvasC.png 1920w">
<div class="slide__caption">
Blueberry Juice
</div>
</div>
</div>
<div class="slide" data-attachment-id="1155">
<div class="slide__inner">
<img width="1024" height="436" class="attachment-large size-large" alt data-sizes="(max-width: 1024px) 100vw, 1024px" data-lazy="https://auroriax.com/wp-content/uploads/2019/09/canvasD-1024x436.png" data-srcset="https://auroriax.com/wp-content/uploads/2019/09/canvasD-1024x436.png 1024w, https://auroriax.com/wp-content/uploads/2019/09/canvasD-300x128.png 300w, https://auroriax.com/wp-content/uploads/2019/09/canvasD-768x327.png 768w, https://auroriax.com/wp-content/uploads/2019/09/canvasD.png 1920w">
<div class="slide__caption">
Bright &amp; Light
</div>
</div>
</div>
<div class="slide" data-attachment-id="1156">
<div class="slide__inner">
<img width="1024" height="436" class="attachment-large size-large" alt data-sizes="(max-width: 1024px) 100vw, 1024px" data-lazy="https://auroriax.com/wp-content/uploads/2019/09/canvasE-1024x436.png" data-srcset="https://auroriax.com/wp-content/uploads/2019/09/canvasE-1024x436.png 1024w, https://auroriax.com/wp-content/uploads/2019/09/canvasE-300x128.png 300w, https://auroriax.com/wp-content/uploads/2019/09/canvasE-768x327.png 768w, https://auroriax.com/wp-content/uploads/2019/09/canvasE.png 1920w">
<div class="slide__caption">
Stylish Monochrome
</div>
</div>
</div>
<div class="slide" data-attachment-id="1157">
<div class="slide__inner">
<img width="1024" height="436" class="attachment-large size-large" alt data-sizes="(max-width: 1024px) 100vw, 1024px" data-lazy="https://auroriax.com/wp-content/uploads/2019/09/canvasF-1024x436.png" data-srcset="https://auroriax.com/wp-content/uploads/2019/09/canvasF-1024x436.png 1024w, https://auroriax.com/wp-content/uploads/2019/09/canvasF-300x128.png 300w, https://auroriax.com/wp-content/uploads/2019/09/canvasF-768x327.png 768w, https://auroriax.com/wp-content/uploads/2019/09/canvasF.png 1920w">
<div class="slide__caption">
Beau Blueprint, one of the exclusive palettes…
</div>
</div>
</div>
<div class="slide" data-attachment-id="1158">
<div class="slide__inner">
<img width="1024" height="436" class="attachment-large size-large" alt data-sizes="(max-width: 1024px) 100vw, 1024px" data-lazy="https://auroriax.com/wp-content/uploads/2019/09/canvasG-1024x436.png" data-srcset="https://auroriax.com/wp-content/uploads/2019/09/canvasG-1024x436.png 1024w, https://auroriax.com/wp-content/uploads/2019/09/canvasG-300x128.png 300w, https://auroriax.com/wp-content/uploads/2019/09/canvasG-768x327.png 768w, https://auroriax.com/wp-content/uploads/2019/09/canvasG.png 1920w">
<div class="slide__caption">
And Dawnbreak, the other exclusive palette.
</div>
</div>
</div>
</div>
</div>
<h2>Finishing</h2>
<p>I kept a close eye on my minified file size at the start, manually minifying code and combining assets in a single file. Later on, I found it easier to focus on getting the game done and worry about file size later. I found it risky to start optimizing too soon, as it might make my code messier than it already is, but this benchmark gave me an idea about how big I could make the game in a month.</p>
<div id="attachment_1147" style="width: 914px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-1147" class="wp-image-1147 size-full" src="https://auroriax.com/wp-content/uploads/2019/09/backflipped-filesizes.png" alt width="904" height="765" srcset="https://auroriax.com/wp-content/uploads/2019/09/backflipped-filesizes.png 904w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-filesizes-300x254.png 300w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-filesizes-768x650.png 768w" sizes="auto, (max-width: 904px) 100vw, 904px"><p id="caption-attachment-1147" class="wp-caption-text">I zipped the game at multiple times during development, with widely fluctuating file sizes. Screenshot from WinDirStat.</p></div>
<p>As the end kept crawling closer, I tried automated linting solutions, but I couldn’t get them to work. <a href="https://github.com/Auroriax/BackFlipped/blob/master/manuallinter.html">I ended up writing a manual linter in Javascript &amp; HTML</a>. It allows you to paste HTML, CSS, and JS, assign filenames, and hit a button to get a single output HTML with the contents of the other files embedded. I actually ended up learning a bit about how RegEx works to minimize the code a little bit (adapting <a href="https://github.com/xem/miniMinifier/">xem’s MiniMinifier</a>), and I might expand it to be more user friendly.</p>
<div id="attachment_1144" style="width: 1034px" class="wp-caption aligncenter"><a href="https://auroriax.com/wp-content/uploads/2019/09/backflipped-manuallinter.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-1144" class="wp-image-1144 size-large" src="https://auroriax.com/wp-content/uploads/2019/09/backflipped-manuallinter-1024x613.png" alt width="1024" height="613" srcset="https://auroriax.com/wp-content/uploads/2019/09/backflipped-manuallinter-1024x613.png 1024w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-manuallinter-300x179.png 300w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-manuallinter-768x459.png 768w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-manuallinter.png 1640w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></a><p id="caption-attachment-1144" class="wp-caption-text">Screenshot from my linter: clean files come in, messy combined file comes out. Combined with minification, this saves around 1/3th of characters!</p></div>
<p>The main way I lost file size was by removing unused Zdog functionality, like shapes I wasn’t using. Afterwards, the removals got more specific, resulting in a very messy but small version of Zdog.</p>
<p>I checked the game with <a href="https://github.com/js13kGames/entry/pull/54">the entry bot</a> which helped me spot some last minute issues. Although I forgot to submit the game with the bot, manually filling the form instead. Ah well!</p>
<div id="attachment_1151" style="width: 1034px" class="wp-caption aligncenter"><a href="https://auroriax.com/wp-content/uploads/2019/09/backflipped-outputcode.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-1151" class="wp-image-1151 size-large" src="https://auroriax.com/wp-content/uploads/2019/09/backflipped-outputcode-1024x524.png" alt width="1024" height="524" srcset="https://auroriax.com/wp-content/uploads/2019/09/backflipped-outputcode-1024x524.png 1024w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-outputcode-300x153.png 300w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-outputcode-768x393.png 768w, https://auroriax.com/wp-content/uploads/2019/09/backflipped-outputcode.png 1765w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></a><p id="caption-attachment-1151" class="wp-caption-text">The full source code (except favicon) for BackFlipped. Screenshot from Visual Studio Code.</p></div>
<h2>Take-away</h2>
<p>My main realization was that, no matter how much fun it is to optimize the file size of your game, you shouldn’t forget to make the game fun to play as well. Balancing the technical and gameplay related issues was very hard, and it almost went awry, destroying my motivation for the project. Luckily, after iterating some more and having a few more testers, I did manage to make the game fun.</p>
<p>Finishing it was also pretty hard: thirty days for a 13kb game sounds really generous, but knowing when you should stop adding new stuff to focus on minifying and polishing what’s there was also pretty difficult. I ran into a couple of annoying last-minute bugs, but luckily I was able to get it into a shippable condition in time!</p>
<p>You can play BackFlipped on <a href="https://auroriax.itch.io/backflipped">itch</a> and on the <a href="http://js13kgames.com/entries/backflipped">js13k competition site</a>. Also, check out any of the <a href="https://js13kgames.com/entries/2019">244 other submissions for the jam</a>— some really interesting games to find there, and you could fit them all on two or three floppy disks!</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>7 Day Roguelike Challenge 2019 — Six sides of the same hex</title>
		<link>https://auroriax.com/7-day-rougelike-challenge-2019/</link>
		
		<dc:creator><![CDATA[Auroriax]]></dc:creator>
		<pubDate>Wed, 13 Mar 2019 21:05:22 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://auroriax.com/?p=1032</guid>

					<description><![CDATA[So I made a roguelike! I have a problem with roguelikes: the games are incredibly punishing, and usually I can’t bring up the patience to continue playing after five permadeaths or so. Also, these games can be complicated, with very little explanation—something I think is amazing in most games, but can be very frustrating in [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1045" src="https://auroriax.com/wp-content/uploads/2019/03/7drl_2019_thumb.gif" alt width="630" height="500"></p>
<p><a href="https://auroriax.itch.io/7drl-2019">So I made a roguelike</a>! I have a problem with roguelikes: the games are incredibly punishing, and usually I can’t bring up the patience to continue playing after five permadeaths or so. Also, these games can be complicated, with very little explanation—something I think is amazing in most games, but can be very frustrating in a roguelike where you’re thrown to the wolves almost instantly.</p>
<p>However, I have been fascinated by the genre, regardless of my inability to actually play the games. So when I saw <a href="https://itch.io/jam/7drl-challenge-2019">7drl was happening this year</a>, I wanted to make a minimalist roguelike, also known as a rogue<strong>lite</strong>. Here’s an overview of the gameplay of the game and how it was put together this way.</p>
<p><span id="more-1032"></span></p>
<h1>Hexagons</h1>
<p>Square grids are cool, but I really wanted to try and make a game on a hex grid once. (I also opted to use hexes in <a href="https://auroriax.itch.io/hexaria">Hexaria</a>!) That means I couldn’t use pathfinding, so I’ll have to settle with some “dumber” enemy behavior.</p>
<p>I designed the game to be played with tank controls. By pressing forwards or backwards, you walk into the direction you’re facing into, which you can change by turning around with left or right. This way, you can navigate a hex grid while still needing just four buttons.</p>
<p>Moving forwards or backwards consumes a turn. I was thinking about having turning around also consuming a turn, but I think it would have made the game way too hard to be fun.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1037" src="https://auroriax.com/wp-content/uploads/2019/03/e6046445067c8bc19dcf56bdf0d4de07.png" alt width="1004" height="730" srcset="https://auroriax.com/wp-content/uploads/2019/03/e6046445067c8bc19dcf56bdf0d4de07.png 1004w, https://auroriax.com/wp-content/uploads/2019/03/e6046445067c8bc19dcf56bdf0d4de07-300x218.png 300w, https://auroriax.com/wp-content/uploads/2019/03/e6046445067c8bc19dcf56bdf0d4de07-768x558.png 768w" sizes="auto, (max-width: 1004px) 100vw, 1004px"></p>
<h1>Pushing</h1>
<p>HP is a very overdone system in games, and I wanted to try something different. There’s an enemy in one of the top-down Zelda games that is invincible, but does get knocked back a lot when attacked. They’re placed in rooms with pits. Guess what happens next.</p>
<p>This is what I wanted to make an entire game about, and was the first part of the game idea that would ultimately become my 7DRL entry.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1038" src="https://auroriax.com/wp-content/uploads/2019/03/f14f6521ec58252610df482c0e4fb0d4.gif" alt width="800" height="444"></p>
<h1>A fragile world</h1>
<p>Now that the enemy must be pushed off the stage (not unlike a Sudo wrestling match), you can start doing a lot more interesting things with level design. Here’s also where the random world generation (the trademark feature of the rougelike genre) comes in. A dynamic world is something I explored in <a href="https://auroriax.itch.io/edge-of-the-sky">Edge of the Sky</a>, but while in that game the world constantly grows, in this game the world becomes ever more fragile.</p>
<p>The world starts off as a hexagonal shape, with ~80 hexagonal tiles. Once you progress through the game, some of those solid tiles get replaced by fragile tiles, which break after someone steps on it (either the player or an enemy). If the player reaches the flag, some of those tiles will be filled in. This part of the game was inspired by <a href="https://www.mariowiki.com/Pyoro">Pyoro</a>, where your playing field grows or shrinks depending on how well you’re playing.</p>
<p>Slowly, the map turns into a grated cheese. It’s up to the player to prevent this as much as possible by playing carefully. This can be difficult, but they also have advantages, like acting as an extra hole to push enemies through.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1035" src="https://auroriax.com/wp-content/uploads/2019/03/ac4721e97361c846f831339d257b9e2b.gif" alt width="800" height="448"></p>
<h1>Enemies</h1>
<p>If the player has moved and the move is valid, the enemies get their turn. Each enemy type is processed in order, so each enemy of the same type gets their move, and once they’re all done, the next type of enemy is allowed to move.</p>
<p><strong>The copy</strong> will face you and walk towards you if you are in their line of sight in front of them. When flanked, they’ll just turn, or if approached from the back, they won’t do anything at all. If they hit you, you get pushed back one square. If you hit them, they’ll go one square back and are stunned, meaning they can’t use their turn after yours to instantly strike back to prevent stalemates.</p>
<p>Since the first enemy is melee only, I wanted a ranged attacker next. <strong>The slingshot</strong> shoots arrows. It has a three turn cooldown between shooting arrows. If pushed it gets stunned, meaning the cooldown is paused, so it can’t shoot more arrows if it is attacked repeatedly. Arrows have a lifetime of around ten turns, after which they’ll disappear. If they hit the player, they get pushed back two squares.</p>
<p><strong>The sniper</strong> was the last enemy to be added. It has the most powerful attack of all enemies, but cannot rotate towards you if it’s unprovoked. Once it spots you, a countdown starts, upon which a laser is fired in the direction of the player. If you’re hit, you get pushed back three squares. This enemy will also rotate towards you if you’re attacking it, meaning it can be hard to deal with in big groups of enemies.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1039" src="https://auroriax.com/wp-content/uploads/2019/03/59a10e66ae0b9d363d9a42893c840124.gif" alt width="800" height="594"></p>
<h1>Progression</h1>
<p>The game is endless, there’s no level goal or credits scene. However, I did manage to put some graphs on the game over screen, tracking the turns taken, enemies defeated, and flags gathered from the last ten runs. This should give you a little idea about if you’re getting better at the game, and in which extent. This is something I wanted to try for a while now to see if it motivates players more than a normal statistics screen, and the first results are good so far, so I might use this method of indicating progression in future games.</p>
<p>I really wanted this game to be accessible for a lot of different player types (like my <a href="https://auroriax.itch.io/mobility">precision platformer Mobility!</a>), but I did not manage to include all features I had planned for that, such as a setting to turn permadeath off, a difficulty selector, or a way to input a randomness seed. Features that did make it in include the fact that the game has no text (in stark contrast to most rougelikes), the fact that you can play the game with the arrow keys, WASD, ZQSD and a controller, and the fact that the game has no randomness except for the level generation. The “textless” restriction also prompted me to use a hexagon symbol (⬣) as name for the game. (Hexagone was a close second, but fell through when I found out that was already the name for a French swimming pool appliance manufacturer.)</p>
<p>The game starts with a controls tutorial, then introduces all enemies until you hit level 7, after which more enemies keep spawning and the world becomes more fragile. The highest score I had was around 12 flags, but Unidrax managed to hit 22 flags!</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1034" src="https://auroriax.com/wp-content/uploads/2019/03/photo5785357914951758086-1024x321.jpg" alt width="1024" height="321" srcset="https://auroriax.com/wp-content/uploads/2019/03/photo5785357914951758086-1024x321.jpg 1024w, https://auroriax.com/wp-content/uploads/2019/03/photo5785357914951758086-300x94.jpg 300w, https://auroriax.com/wp-content/uploads/2019/03/photo5785357914951758086-768x241.jpg 768w, https://auroriax.com/wp-content/uploads/2019/03/photo5785357914951758086.jpg 1264w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<h1>Graphics &amp; Audio</h1>
<p>I like isometric perspectives drawn really low-fi. I figured out quickly that staring at a static hexagon grid is pretty boring, so it needed some life implanted into it.</p>
<p>First, I made the grid tiles wiggle up and down a bit. This is not very noticeable—the effect used to be more intense, but I dialed it back a ton to prevent it from becoming too distracting.</p>
<p>There are a lot of things around the platform that float as well—I finally figured out how to set a sinus up correctly to do get a “float” effect. The background used to be the same pure black color as the tiles, but it could pretty hard to see if a tile was gone if the colors where the same.</p>
<p>The game has a lot of visual effects, like enemies and tiles spawning in, tiles being blown out or falling down, slashing animations, lasers, and of course screenshake. All of this is to help the player understand how the game works, and give them appropiate feedback. Especially the tile generation animation, which plays when you’re at a goal tile, takes a bit of time (although that’s also to prevent the game from breaking when that happens too fast!)</p>
<p>Here are the steps I took to get audio into this game, or my guide on how to do audio design when time is of the essence:</p>
<p>1) Find a nice track in the <a href="http://freemusicarchive.org/">Free Music Archive</a> that’s in the <a href="https://creativecommons.org/licenses/by/2.0/">CC-BY</a> and fits well with your theme, then include it in your game, put it in the credits, and set it to loop at the start of the game.</p>
<p>2) Find a couple of nice sound effects on <a href="https://freesound.org/">freesound.org</a> that are in the public domain (so you don’t have to credit them). You do need an account to download sounds, so I recommend setting that up in advance. <a href="https://www.filmeditingpro.com/a-video-editors-guide-to-sound-design/">Here is a list of words that might be useful to know</a>. I always sort with the shortest sounds first. Try to find a large bundle with the kind of sounds you’re looking for.</p>
<p>3) Put the sounds in <a href="https://www.audacityteam.org/">Audacity</a> for quick maintenance (trim away silent parts or parts of the sound you don’t need).</p>
<p>4) Put all sounds in the game, and assign them to the correct actions. Also set a pitch for when the sound effect plays. If it’s a sound you hear often, randomly select the pitch from a range. If multiple entities can play the sound (like the player and the enemy), set the same sound effect, but with a different pitch for both.)</p>
<p>5) Play the game, and tone down the volume or pitch of sounds you think are too dominant in the soundscape (especially if you hear them often). Play the game for a bit and watch for bits where a certain sound effect gets tiring, or places where you an audio cue is still missing.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-large wp-image-1043" src="https://auroriax.com/wp-content/uploads/2019/03/Ouzf-w-1024x540.png" alt width="1024" height="540" srcset="https://auroriax.com/wp-content/uploads/2019/03/Ouzf-w-1024x540.png 1024w, https://auroriax.com/wp-content/uploads/2019/03/Ouzf-w-300x158.png 300w, https://auroriax.com/wp-content/uploads/2019/03/Ouzf-w-768x405.png 768w, https://auroriax.com/wp-content/uploads/2019/03/Ouzf-w.png 1269w" sizes="auto, (max-width: 1024px) 100vw, 1024px"></p>
<h1>Conclusion</h1>
<p>This became a long post! Mostly, I’m just really happy I managed to make such a strategically interesting game within such a short time. I was able to try out a lot of ideas I had that happened to work really well together. This is also my first step into rougelike territory with emergent gameplay and random worlds, and it might be something I’ll explore another time as well.</p>
<p>You can play <a class="title game_link" href="https://auroriax.itch.io/7drl-2019" data-label="game:382725:title" data-action="game_grid">⬣ on itch.io</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Best of 2018</title>
		<link>https://auroriax.com/best-of-2018/</link>
		
		<dc:creator><![CDATA[Auroriax]]></dc:creator>
		<pubDate>Wed, 09 Jan 2019 01:00:00 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">https://auroriax.com/?p=1001</guid>

					<description><![CDATA[More years, more games! Looking back, I can only say one thing: Geez, I played a lot of games this year! Like last years’ lists, this just list games I played this year, not necessarily games that released this year, in no particular order. Also, only itch embeds this year because I’ve played a lot [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>More years, more games! Looking back, I can only say one thing: Geez, I played a <em>lot</em> of games this year!</p>
<p>Like last years’ lists, this just list games I <em>played</em> this year, not necessarily games that <em>released</em> this year, in no particular order. Also, only itch embeds this year because I’ve played a lot more games on itch, but also because all Steam embeds from <a href="https://auroriax.com/favorite-games-in-2017/">last year’s list broke</a> and I’m too lazy to add links/embeds for everything this time around.</p>
<p>It’s long, so you can skip straight to the <a href="https://auroriax.com/best-of-2018/#hm">Honorable Mentions</a> and <a href="https://auroriax.com/best-of-2018/#books">Books</a>. Also, <a href="https://auroriax.com/favorite-games-in-2017/">here’s 2017’s list</a>.</p>
<p><span id="more-1001"></span></p>
<h1>Pipe Push Paradise</h1>
<p>My favorite puzzle game this year. It’s really clever and brings back a lot of memories from other puzzle games. This dev also released <a href="https://toboggan.itch.io/hiding-spot">Hiding Spot</a> this year as well, which is also a really good puzzle game, which is a bit rougher around the edges but still every bit as interesting and smart.</p>
<p><iframe loading="lazy" src="https://itch.io/embed/167647" width="552" height="167" frameborder="0"></iframe></p>
<p>My favorite Puzzlescript game this year was <a href="https://rosden.itch.io/sliding-ground">Sliding Ground</a> (from <a href="https://itch.io/c/337780/all-my-puzzlescript-games">Rosden’s amazing one-puzzle-game-a-day project</a>). <a href="https://qrostar0.itch.io/hananopuzzle2">Hanano Puzzle 2</a> also deserves a mention.</p>
<h1>The Zium Garden</h1>
<p>My favorite walking sim this year, although <a href="https://crowscrowscrows.itch.io/museum">The Crows Crows Crows Community Museum</a> was a close second. Basically what it says on the tin, it’s a virtual museum that you can explore and admire without noisy other guests, and also houses art not possible in physical spaces. Check it out!</p>
<p><iframe loading="lazy" src="https://itch.io/embed/211632" width="552" height="167" frameborder="0"></iframe></p>
<h1>Tacoma</h1>
<p>An excellent continuation on Gone Home. You’re asked to investigate what happened to the crew of a deserted space station by watching back AR recordings. Soon you’ll figure out how the inhabitants made the sterile environment of the Tacoma feel more homely, and what’s really been going on in there.</p>
<p><iframe loading="lazy" src="https://itch.io/embed/154931" width="552" height="167" frameborder="0"></iframe></p>
<h1>Runner3</h1>
<p>I was a big fan of Runner2, and Runner3 is a really interesting continuation of the series! It has a lot more weirdness and interesting level designs, and as a result there’s a bit less quantity and a lot more quality overall. It received a nice update adding a lot more control over the difficulty settings, so try it!</p>
<p>Also, has no one been figuring out the secret of that radio tower yet?</p>
<p><iframe loading="lazy" src="https://itch.io/embed/246828" width="552" height="167" frameborder="0"></iframe></p>
<h1>Celeste</h1>
<p>Celeste is the best thing that happened to the genre in easily five years. It feels really nice to play, level design is really tight, has one of the most original and not-gimmicky feeling level mechanics, and there’s an awesome story to serve as metaphor for all of those. And it has a nice Assist Mode that makes it really accessible for new players in the genre. And that soundtrack.</p>
<p><iframe loading="lazy" src="https://itch.io/embed/216996" width="552" height="167" frameborder="0"></iframe></p>
<h1>Dr Darley and the Prisoners at Santa’s Workshop</h1>
<p>I played the first game in the series (<a href="https://pliantpress.itch.io/darley01">Dr. Darley and the Case of the Deboned Children</a>) last year and thought it was pretty neat. The sequel improves the narrative in nearly every way with an awesome soundtrack, really good jokes, and funny Dutch stereotypes.</p>
<p><iframe loading="lazy" src="https://itch.io/embed/210399" width="552" height="167" frameborder="0"></iframe></p>
<h1>Super Smash Bros. Ultimate</h1>
<p>Smash Bros actually released in the year it was announced! I don’t think I have anything to add on what the critics have already said, except that its UX is top-notch yet again (just <em>look</em> at that main menu). I do hope Sakurai gets to work on something new after this, though.</p>
<h1>Lumines Remastered</h1>
<p>I missed Lumines when it originally released due to it being PlayStation only—glad I finally get to play this one. Basically it’s a Tetris-style puzzle game that only allows you to drop 2x2 blocks that can only have two different colors of blocks. They disappear when you place them in 2x2 squares (or larger rectangles) when the beat marker moves over, which is synced to the music. And that music is really good!</p>
<h1>Persona 5</h1>
<p>Persona 5 just oozes style. Its story is pretty good, and I like the persistent dungeons much better than Persona 4’s generated ones. This game is a masterclass for UI design and narrative as well.</p>
<h1>Opus Magnum</h1>
<p>This is another really good puzzle game. I was eying Zachtronics games for a while, and this is the first one that seemed accessible enough. It’s puzzle difficulty ramps up really well, and the amount of creativity allowed in solutions is liberating when compared to Sokoban-likes. And it’s also an excellent excuse to show off my solution GIFs:</p>
<div class="slick-slider-wrapper">
<div class="slick-slider slick-slider--size-full" id="slick-slider-2" data-slick="{&quot;showCaption&quot;:true,&quot;centerMode&quot;:true,&quot;centerPadding&quot;:&quot;60px&quot;,&quot;dots&quot;:true,&quot;focusOnSelect&quot;:true,&quot;lazyLoad&quot;:&quot;anticipated&quot;,&quot;speed&quot;:200,&quot;swipeToSlide&quot;:true,&quot;touchThreshold&quot;:25,&quot;variableWidth&quot;:true}">
<div class="slide" data-attachment-id="1010">
<div class="slide__inner">
<img width="826" height="647" class="attachment-full size-full" alt data-lazy="https://auroriax.com/wp-content/uploads/2019/01/Opus-Magnum-Precision-Machine-Oil-300G-51-20-2018-04-04-17-42-13.gif">
<div class="slide__caption">
Opus Magnum — Precision Machine Oil (300G, 51, 20, 2018–04-04–17-42–13)
</div>
</div>
</div>
<div class="slide" data-attachment-id="1011">
<div class="slide__inner">
<img width="826" height="647" class="attachment-full size-full" alt data-lazy="https://auroriax.com/wp-content/uploads/2019/01/Opus-Magnum-Waterproof-Sealant-2018-03-01-13-14-45.gif">
<div class="slide__caption">
Opus Magnum — Waterproof Sealant (2018–03-01–13-14–45)
</div>
</div>
</div>
<div class="slide" data-attachment-id="1012">
<div class="slide__inner">
<img width="826" height="647" class="attachment-full size-full" alt data-lazy="https://auroriax.com/wp-content/uploads/2019/01/Opus-Magnum-Face-Powder-2018-02-09-00-21-13.gif">
<div class="slide__caption">
Opus Magnum — Face Powder (2018–02-09–00-21–13)
</div>
</div>
</div>
<div class="slide" data-attachment-id="1013">
<div class="slide__inner">
<img width="826" height="647" class="attachment-full size-full" alt data-lazy="https://auroriax.com/wp-content/uploads/2019/01/Opus-Magnum-Refined-Gold-2018-03-01-12-45-22.gif">
<div class="slide__caption">
Opus Magnum — Refined Gold (2018–03-01–12-45–22)
</div>
</div>
</div>
</div>
</div>
<h1>Furi</h1>
<p>A shoot-em-up with only boss battles! Does that sound awesome to you? Then you’ll probably like this.</p>
<p><iframe loading="lazy" src="https://itch.io/embed/87765" width="552" height="167" frameborder="0"></iframe></p>
<h1>The Legend Of Zelda</h1>
<p>The original NES one! I did obtain a original NES this year, but since I still only have one game on loan for it, I started playing Zelda with the Switch NES app. I think the Zelda games on the GameBoy are still my favorites, but seeing the true classic Zelda for the first time allowed me to truly understand the core of the series. And save states make the gambling minigame really easy!</p>
<h2 id="hm">Honorable Mentions</h2>
<p><strong>Okami HD</strong>: I decided to replay it this year, and am pretty amazed how timeless it is. There were some good parts in there that I’d forgotten in the years since I first played it.</p>
<p><strong>N++</strong>: Basically on the other side of the precision platformer spectrum from Celeste, N++ focuses highly on quantity over quality. And it’s pretty good at that, although it’s game feel and level design can feel much more frustrating.</p>
<p><strong>Jackbox Party Pack 5</strong>: Jackbox keeps re-inventing what party games should be and they’re doing a really good job at that. Jackbox continues to be a popular game of choice on my LAN parties.</p>
<p><strong>Fe</strong>: The atmosphere in this game is really nice. I really wish it focused more on walking around looking at pretty environments than stealth gameplay. Climbing trees and then flying away feels really nice and makes exploring the world (especially the more vertical areas) really fun.</p>
<p><strong>RiME</strong>: Another exploration-heavy game which was also really relaxing and mysterious. I didn’t really like the puzzles, though.</p>
<p><strong>Taiko no Tatsujin</strong>: The Switch is getting some really good rhythm games, and this was the most prominent one to release this year. I have a couple of friends who love osu!‘s Taiko mode, so inviting those over to play it on launch day was a no-brainer.</p>
<p><strong>Pinball FX3</strong>: I think I got around ten tables this year, mostly because they finally started getting discounted. The design of most cabinets is really good, although it varies from table to table how easy it is to learn the rules and get stuff done. Which makes the RPG-inspired table my favorite, probably.</p>
<p><strong>Hollow Knight</strong>: It’s a good metroidvania. It’s hard in all the right ways.</p>
<p><strong>Dandara</strong>: Also a metroidvania, but you’ll be jumping through spaces without gravity, jumping from wall to wall. The game is inspired by Brazilian folklore and that really feeds everything in the game. Some of the stuff in this game is annoying, but most of it is awesome.</p>
<p><strong>West of Loathing</strong>: Good jokes. Seriously, just about everything in this game is one big joke. If you’re into that, this comes highly recommended.</p>
<p><strong>Gorogoa</strong>: This was a really good vacation game. (Where other people bring books on vacations, I bring both books&nbsp;<em>and</em> games!) The game does a really good job at making everything mysterious, including the puzzles. Normally I hate point-and-click style puzzles in favor of more logically based puzzles (like Sokoban), but this game strikes a very good balance between the two. It’s pretty simillar to Framed (1 and 2), which I also played and feels very similar but with more consistent rules.</p>
<p><strong>Child of Light</strong>: Started replaying this on Hard mode, which is actually pretty hard when you don’t play it in New Game+. Still pretty surprised by how well it hold up over the past years.</p>
<p><strong>Night in the Woods</strong>: There are some really good skits in this, and while exploring the town can become a routine after a while, it’s really nice to get into the flow of meeting everyone every day. <a href="https://finji.itch.io/night-in-the-woods">Get it on itch.</a></p>
<p><strong>Just Shapes &amp; Beats</strong>: The story mode in this is amazing, and the online mode can be fun to play in bursts. It’s also still receiving updates, so there’s something to look forward to every now and then.</p>
<p><strong>Shantae: Half Genie Hero</strong>: It’s a decent game where the art and music is very good and the rest is just so-so. It does have a huge deal of expansions (I got the boxed Switch version with all of them included), and while there’s so much content recycled between the expansions, sometimes in interesting ways, but often it can feel like a chore with lots of backtracking.</p>
<p><strong>Typeshift</strong>: This has become my go-to mobile game, replacing Nitrome’s Leap Day as my first pick. The daily puzzles can be really fun to figure out together with someone else.</p>
<p><strong>Alto’s Odyssey</strong>: Zen mode can be super relaxing to play on the train after a busy week. I don’t really care about the other modes, since you can crash so quickly! I usually play until the (amazing) music has looped around two to three times.</p>
<h1 id="books">Books!</h1>
<p>I really like Nicky Case’s yearly book lists (<a href="https://blog.ncase.me/the-most-meaningful-books-i-read-in-2018/">here’s 2018’s</a>), so let me add the three books I liked the most this year:</p>
<h2><a href="https://www.goodreads.com/book/show/36236166-happy-brain">The Happy Brain</a> (Dean Burnett)</h2>
<p>I really liked The Idiot Brain (the predecessor for this book, which I read two years ago), so my brain instantly recognized the sequel in the store and motivated my body to part with some monetary gain in exchange for some facts about our gray mass. This time, it’s less about weird &amp; random facts about the brain, and more about coherent info about how your brain works to keep you happy, and which things it needs to keep you motivated.</p>
<p>You might be able to take some life lessons out of this, but mostly, it’s fascinating, funny, and really relatable. My favorite part of these books are absolutely the funny metaphors, and how well they can get the point across. Both books are a good recommendation if you want to figure out how you work, and also how others work, why you think you’re dumb while you can actually be quite smart (as well as the other way around), and more!</p>
<h2><a href="https://www.goodreads.com/book/show/34333318-over-straatnamen-met-name?ac=1&amp;from_search=true">Over straatnamen met name</a> (René Dings)</h2>
<p>This is a Dutch book about the design of street names! (I’d translate the title as “Namely about street names”.) Street names sound really boring (especially if you live in the US, where apparently <em>Second Street</em> is the most common street name), but it’s actually a really well thought out area of design.</p>
<p>From this book, I learned that streets can only be named after persons if that person has been dead for at least five years (to prevent that person from becoming evil and ruining the street the name belongs to), districts have a special council for street names that meet a couple of times a year (that you can submit suggestions to), and there’s even a neighborhood in the Netherlands with streets named after Tolkien characters! After this, I was even able to find a list with street names for my own home village, and they reflect the history of the town like a mirror.</p>
<h2><a href="https://www.goodreads.com/book/show/23719305-how-emotions-are-made?ac=1&amp;from_search=true">How Emotions Are Made</a> (Lisa Feldman Barrett)</h2>
<p>What if everything science thought about emotions was wrong? This books goes into huge lengths to describe why our current understanding of emotions severely limits our ability to correctly judge emotions from facial expressions and body language alone, how lawyers give out larger sentences just before lunch because their hunger is clouding their judgment, and how basically everyone is misinterpreting their own emotions (like the author herself getting feverish during a date, only to find out the next day she <em>actually</em> had a fever).</p>
<p>Basically, the book argues that a new framework for emotions is needed, where emotion concepts in different cultures are respected and people can make their own emotions by assigning words for a feeling. For example, I have an emotion concept for the feeling I have when my train departs from the station, since it feels really calm but also conclusive, and the actual motion of the train also makes me feel a bit funny. I don’t feel like I agree with everything in this book, but it put my mind to work good enough to deserve a place on this list.</p>
<h1>Next year</h1>
<p>I am not really looking forward to any games next year (maybe <a href="http://www.hempuli.com/Baba/">Baba is You</a>?), although now I have a NES I’ll probably start dabbling with retro games more. I expect my usage of itch to continue, and my usage of Steam to decline, just like last year. I got a load of games for my Switch this year, and that will probably be a constant next year! (Also, I still wanna play Gris!)</p>
<p>Also, I hope to finally be able to release new side projects to follow up <a href="https://auroriax.itch.io/mobility">Mobility</a>. Stay tuned!</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
