<?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>Lightning Does Strike Twice &#187; university</title>
	<atom:link href="http://gnueless.com/category/uni/feed" rel="self" type="application/rss+xml" />
	<link>http://gnueless.com</link>
	<description>The pseudo-random thoughts of Emil Erik Hansen, aka. Gnub</description>
	<lastBuildDate>Mon, 30 Jan 2012 18:25:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>checkbox</title>
		<link>http://gnueless.com/2012/01/checkbox.html</link>
		<comments>http://gnueless.com/2012/01/checkbox.html#comments</comments>
		<pubDate>Sat, 28 Jan 2012 23:49:27 +0000</pubDate>
		<dc:creator>Gnub</dc:creator>
				<category><![CDATA[drinking]]></category>
		<category><![CDATA[general gaming]]></category>
		<category><![CDATA[offline]]></category>
		<category><![CDATA[university]]></category>

		<guid isPermaLink="false">http://gnueless.com/?p=820</guid>
		<description><![CDATA[Now that the first half a year of my time studying Game Design is over, I found it would be a good time to look back on the experience so far &#8230; and I realized that I had forgotten a major thing &#8211; the outcome of the first real challenge on the Game Design course. [...]]]></description>
			<content:encoded><![CDATA[<p>Now that the first half a year of my time studying Game Design is over, I found it would be a good time to look back on the experience so far &#8230; and I realized that I had forgotten a major thing &#8211; the outcome of the first real challenge on the Game Design course. This does of course means that I&#8217;ll postpone the reflections, and instead present this lovely challenge instead. Priorities, you know. </p>
<p>The premise was rather simple: Within two days, we had to construct a drinking (yes, indeed) game, test it (no further details were given of the nature of that, but we did it the only right way &#8211; with beer) and present it for the rest of the class. Challenge accepted!</p>
<p>I find it quite amazing that I never thought about posting it until now, because it was (or rather: is) a very nice drinking game. It has certainly done its part in delivering as a proper drinking-game should. The only negative part you could say about it, is that it <em>might</em> be a bit tricky to find 9 cups and a coaster &#8211; but at the very least you do not need any cards or any number of dice. </p>
<p><span id="more-820"></span></p>
<p>Anyway, onward to the important part &#8211; the rules:</p>
<blockquote><p>
<strong>THE SETUP AND WHAT YOU NEED:</strong></p>
<ul>
<li>3 to 6 players (more or less is possible, but not recommended).</li>
<li>9 glasses for the board (5×5) placed in a square (3×3).</li>
<li>A middle-marker (a coaster is perfect for the job), placed under the middle cup. This only serves to make it easy to see where the middle is.</li>
</ul>
<p>The below drawing shows the outer square-positions with the x&#8217;s, the initial glass-positions with circles, and the coaster as the square.</p>
<p><img class="size-full aligncenter" title="Checkbox Board" src="http://gnueless.com/images/Checkbox.png" alt="" width="335" height="310" /></p>
<p>Every participant buys an amount of beer (it doesn’t have to be beer, the crowd just have to buy the same kind of drink), best done in a pitcher or likewise. The glasses are then filled up to 2-3 fingers (or more, depending on how hardcore you’re playing). Shot-glasses are excellent at this, as they can limit the maximum contents, while removing the need to check your pouring.</p>
<p><strong>A TURN IS PERFORMED AS:</strong><br />
The first player takes a filled glass and jumps (vertically/horizontally) over any amount of cups (similar to the game “Checkers”). The outcome depends on whether or not the glasses which has been jumped over is empty or full. </p>
<ul>
<li>Each jump is one cup maximum, but you can take several jumps in one turn.</li>
<li>You can jump over both types of glasses in a given turn.</li>
<li>You may not end up outside the 5×5 board.</li>
<li>You may not jump over the same glass twice during a turn.</li>
<li>You may not use the same glass, as the previous player used, to jump with.</li>
</ul>
<p>The outcome of a given turn depends on the amount of each of either full or empty cups. If a glass is full the next player drinks it, else the current player fills it from his pitcher. If 3 or more empty glasses are filled during a turn, you can fill extra in filled glasses &#8211; if you jumped over any of those.</p>
<p>Another choice is, instead of moving a cup, is to move a filled glass from the outer circle to an empty spot in the inner circle. By doing that, the player must drink it, then fill it. This does NOT have to follow the jumping rules.</p>
<p>In case there’s no moves left, the given player drinks all full glasses, fills all of them, and reset the board to the starting position (The 3×3 square).</p>
<p><strong>END OF THE ROUND:</strong><br />
When all players’ pitchers are empty, and there’s no more beer to fill in the glasses, the players will eventually end up having no more possible moves, and the board is reset to the original initial 3×3 view, with a new round of beer &#8211; if possible.
</p></blockquote>
<p>The game was created along with <em>Julian Møller</em>, <em>Mads Johansen</em> and <em>Steen Nordsmark Pedersen</em>. Looking forward to the next game, sooner rather than later.</p>
]]></content:encoded>
			<wfw:commentRss>http://gnueless.com/2012/01/checkbox.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>the video game name generator generator game with no name</title>
		<link>http://gnueless.com/2011/11/the-video-game-name-generator-generator-game-with-no-name.html</link>
		<comments>http://gnueless.com/2011/11/the-video-game-name-generator-generator-game-with-no-name.html#comments</comments>
		<pubDate>Sat, 12 Nov 2011 18:13:21 +0000</pubDate>
		<dc:creator>Gnub</dc:creator>
				<category><![CDATA[general gaming]]></category>
		<category><![CDATA[online]]></category>
		<category><![CDATA[random]]></category>
		<category><![CDATA[university]]></category>

		<guid isPermaLink="false">http://gnueless.com/?p=807</guid>
		<description><![CDATA[Name is still a placeholder. So, for now just &#8220;The VGNGGGwNN&#8221;. Not to be attempted to be pronounced. Ok, you may, but you might fail. Yeah. Alternatively &#8220;Primal Internet Fun&#8221;. It started with the following link was thrown out at the internal Facebook-page for the Game students at ITU: http://videogamena.me/ As fate would have it, [...]]]></description>
			<content:encoded><![CDATA[<p>Name is still a placeholder. So, for now just &#8220;The VGNGGGwNN&#8221;. Not to be attempted to be pronounced. Ok, you may, but you might fail. Yeah. Alternatively &#8220;Primal Internet Fun&#8221;.</p>
<p>It started with the following link was thrown out at the internal Facebook-page for the Game students at ITU: <a href="http://videogamena.me/" target="_blank" onclick="pageTracker._trackPageview('/outgoing/videogamena.me/?referer=');">http://videogamena.me/</a></p>
<p>As fate would have it, people started posting their favorite hilarious names. Lots of likes and &#8211; at least from my part &#8211; local giggles and burst-laughs was done. Then, it took a turn, when the idea of having a <a href="http://en.wikipedia.org/wiki/Indie_Game_Jam" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/Indie_Game_Jam?referer=');">Game Jam</a> was added, with making up a game based on what the generator spat out.</p>
<p>However, in the end, just <a href="http://twitter.com/Gnub/statuses/135409561929646080" onclick="pageTracker._trackPageview('/outgoing/twitter.com/Gnub/statuses/135409561929646080?referer=');">when I tweeted</a> the link, I figured a very simple &#8211; yet rather hilarious &#8211; game could be made from it. The rules are quite simple:</p>
<blockquote><p>First, gather a few people that wants to play. Not too few, not too many (4-6 would probably be perfect).</p>
<p>The following is then needed:</p>
<ul>
<li>A device that can display the <a href="http://videogamena.me/" onclick="pageTracker._trackPageview('/outgoing/videogamena.me/?referer=');">Video Game Name Generator</a>.</li>
<li>A block of paper and a writing device, per player.</li>
</ul>
<p>A person activates the VGNG, and the resulting name is spoken to the crowd. Each player now has <strong>a maximum of 5 minutes</strong> to come up with the best game-idea, based purely on the name. The winner is judged by social voting amongst the players. Naturally, you&#8217;re not allowed to vote for your own game.</p></blockquote>
<p>Looking forward to seeing if the idea actually holds. At the very least, I&#8217;m going to see what it&#8217;ll turn to!</p>
]]></content:encoded>
			<wfw:commentRss>http://gnueless.com/2011/11/the-video-game-name-generator-generator-game-with-no-name.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>so, today&#8217;s tweet&#8230;</title>
		<link>http://gnueless.com/2011/10/so-todays-tweet.html</link>
		<comments>http://gnueless.com/2011/10/so-todays-tweet.html#comments</comments>
		<pubDate>Mon, 10 Oct 2011 13:24:50 +0000</pubDate>
		<dc:creator>Gnub</dc:creator>
				<category><![CDATA[online]]></category>
		<category><![CDATA[random]]></category>
		<category><![CDATA[university]]></category>

		<guid isPermaLink="false">http://gnueless.com/?p=798</guid>
		<description><![CDATA[&#8230; was just like any other tweet &#8211; I guess &#8211; but the difference is, that it made me realize that it has been ages and ages since I&#8217;ve actually written anything here, save perhaps an update or two. What better way to redeem myself than to elaborate on the tweet in question? Awesome, yet [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230; was just like any other tweet &#8211; I guess &#8211; but the difference is, that it made me realize that it has been ages and ages since I&#8217;ve actually written anything here, save perhaps an update or two. What better way to redeem myself than to elaborate on the <a href="http://twitter.com/#!/Gnub/status/123298333337989120" title="Yes, this leads to Twitter. Amazing, right?" target="_blank" onclick="pageTracker._trackPageview('/outgoing/twitter.com/_/Gnub/status/123298333337989120?referer=');">tweet in question</a>?</p>
<blockquote><p>Awesome, yet bad idea: Get Sylar to playtest your game. No matter what, he&#8217;ll always know how it works.</p></blockquote>
<p>See, the joke is &#8211; like many other jokes &#8211; requires some background knowledge, which at this point is two-fold: <strong>&#8220;Who/what the hell is Sylar?&#8221;</strong> and <strong>&#8220;Why would it be a bad idea?&#8221;</strong> The latter is probably the less important, but it still adds some depth to it all.</p>
<p><span id="more-798"></span></p>
<p>Most people will get the Sylar-part, as many have seen him, <a href="http://www.imdb.com/name/nm0704270/" title="IMDB" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.imdb.com/name/nm0704270/?referer=');">Zachary Quinto</a>, in the role of Gabriel Gray, in the Heroes series. The series is basically about various people who gets super powers through the genetic evolution of the human race. Sylar&#8217;s super-power is simple &#8211; he knows how things work. I guess that&#8217;s a given from the tweet itself, but that&#8217;s how that is it. Unfortunately, he&#8217;s also the perfect super-villain, as he spent that knowledge for his own benefits, and was always scheming on how to achieve more power. </p>
<p>If we ignore the parts of him killing every single one of us to achieve the knowledge we have, being a fictional character, as well as stealing our super-powers, wha- . Yes, super-powers. I have some, you might not, but some of us have them. Carry on, it&#8217;s OK, we can&#8217;t all be super heroes after all.</p>
<p><center><img alt="" src="http://images2.fanpop.com/images/photos/2700000/lol-Sylar-heroes-2747862-300-400.jpg" title="Sylar" class="alignnone" width="300" height="400" /></center></p>
<p>Now, disregarding all those bad things, why would it be bad to have a person who knows everything play-testing your game? Obvious &#8211; he knows how it works. The best testers is those that tries the product for the first time, and then tries to figure out how the game works, and slowly learns it &#8211; as it was intended in the first place. Not only that, but all the little quirks would be hidden until they got told or finds out by accident. <em>Sylar?</em> He would simply know it &#8211; even the secret moves that the programmers added in, but didn&#8217;t officially finish yet.</p>
<p>After all, the process of game-testing is about figuring out what&#8217;s wrong in the game, what can be made better &#8211; not playing a game you already know all the little details about. The fitting quote here, is from <a href="http://en.wikipedia.org/wiki/Samuel_Beckett" title="Wikipedia" target="_blank" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/Samuel_Beckett?referer=');">Samuel Beckett</a>, heard during today&#8217;s Game Design lecture:</p>
<blockquote><p>All of old. Nothing else ever. Ever tried. Ever failed. No matter. Try again. Fail again. Fail better.</p></blockquote>
<p>I guess that&#8217;s also why jokes should never really be explained. Unless it wasn&#8217;t really a joke, but simply truth in compressed form &#8211; and thus, &#8220;it&#8217;s funny, because it&#8217;s true&#8221; applies. <em>Success!</em></p>
]]></content:encoded>
			<wfw:commentRss>http://gnueless.com/2011/10/so-todays-tweet.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>gwardar</title>
		<link>http://gnueless.com/2010/06/gwardar.html</link>
		<comments>http://gnueless.com/2010/06/gwardar.html#comments</comments>
		<pubDate>Sun, 27 Jun 2010 12:21:02 +0000</pubDate>
		<dc:creator>Gnub</dc:creator>
				<category><![CDATA[general gaming]]></category>
		<category><![CDATA[offline]]></category>
		<category><![CDATA[university]]></category>

		<guid isPermaLink="false">http://gnueless.com/?p=625</guid>
		<description><![CDATA[And so, the 3 week programming-course I&#8217;d been working with is over. The report is written, the program compiled (and worked!) flawlessly &#8211; although the last compile was done 1½ hour before the actual exam &#8211; and the board that ran our program is returned. I&#8217;m actually going to miss the thing, it was rather [...]]]></description>
			<content:encoded><![CDATA[<p>And so, the 3 week programming-course I&#8217;d been working with is over. The report is written, the program compiled (and worked!) flawlessly &#8211; although the last compile was done 1½ hour before the actual exam &#8211; and the board that ran our program is returned. I&#8217;m actually going to miss the thing, it was rather fun to work with &#8211; and game development is fun, especially when the idea is rather unique, and as thus, easy to write a lot about.</p>
<p><span id="more-625"></span></p>
<p>To give a quick rundown of the project, it was done by writing a program in C, that was sent via a serial port to a <a href="http://www.zilog.com/index.php?option=com_product&#038;Itemid=26&#038;mode=showFamilyDetails&#038;familyId=6&#038;parent_id=2" onclick="pageTracker._trackPageview('/outgoing/www.zilog.com/index.php?option=com_product_038_Itemid=26_038_mode=showFamilyDetails_038_familyId=6_038_parent_id=2&amp;referer=');">ZiLOG Z8 Encore! Z8F6403</a>, and from there we could listen via a Telnet-based Terminal (from another serial port), and/or via the on-board LED display (which I got a nice example of here: <a href="http://gnueless.com/images/failboard.jpg">The Failboard</a>), and get inputs by pressing the 3 buttons. The first week was various exercises to get used to how it reacted to various things, how to control its register-calls, and coding C in general. The various exercises was naturally elements that would all be used in one way or the other in the final project. The last two weeks however, was where the interesting stuff started happening, as we finally got to know the final objectives: Create a game based on &#8220;ReflexBall&#8221; (which is basically ArkaNoid, without any objects to hit), and develop it into either (you guessed it) ArkaNoid, or something else entirely &#8211; pretty much freely chosen, but it had to satisfy certain criteria.</p>
<p>For the fun of it, we chose the latter, and got the idea for a &#8211; potenially &#8211; pretty fun idea: Gwardar. Naturally, that name doesn&#8217;t say much, but it should help a lot when looking at what a gwardar actually is: <a href="http://www.avru.org/general/general_gwardar.html" onclick="pageTracker._trackPageview('/outgoing/www.avru.org/general/general_gwardar.html?referer=');">a snake</a>. So, our idea was a hybrid game of ReflexBall with Snake elements, which ended up being quite fun, and the actual game was &#8211; in fact &#8211; pretty fun as well.</p>
<p>I mainly worked on the gamefield &#8211; where the snake bounces around, collision detection &#8211; which was a much more essential part than for an ArkaNoid-game, as the ball/snake shouldn&#8217;t be able to hit itself, and react differently when hitting different things, and the ball/snake itself &#8211; which made sense to do together with collision, as that should be based upon where the ball was. </p>
<p>The first had some interesting challenges, as we only had a practical resolution of 63 x 21 &#8220;blocks&#8221; (columns and rows in the terminal-window, respectfully), and still wanted the ball/snake to be able to move with more than 8 different directions. As thus, we gave each block a 10&#215;10 background, essentially giving us a gamefield of 630 x 210, which gave many more possibilities in terms of directions (<a href="http://gnueless.com/images/screenshot0.png">early screen here, showing it</a>). However, to properly do that, we had to ensure that the ball/snake always moved to a new block, which was done by scaling the directional vector, so that the numerically longest of x or y was <em>exactly</em> 10 (or: 1 block). Any more, or any less, would mean that it could potentially skip, or end up in the same block.</p>
<p>In regards to collision-detection, it was done by first detecting what was on the target block, judged from the directional vector, change it in case the target was a wall or the &#8220;striker&#8221; (the board the player controls), grow in length if objects was eaten, or die, in case it was itself, or the void below the striker. In the case it was hitting something that would change the vector, the new target block was checked, and the ball would only continue moving in the case that there wasn&#8217;t anything there &#8211; or it was an edible object. The tricky part about the collision was detecting when it was hitting itself, and let that be handled properly. To explain that, it&#8217;s probably best to explain the properties of the ball/snake first.</p>
<p>The ball was given a &#8220;history&#8221;, of up to 50 blocks, that kept track of up to the previous 50 positions it had been placed on the detailed gamefield (that is, in the 630 x 210 grid), which initially served as a way to &#8220;erase&#8221; the balls previous position when it was redrawn at a new position, but later &#8211; when the ball turned into a snake &#8211; also a way to show the tail itself, by only erasing the tail length&#8217;th object in its history. In the end, the history was also used to place objects whenever eaten, at the very last position of the history &#8211; which turned out to look like it was random, especially when the tail length was short.</p>
<p>Getting back to the collision, it was obvious that low angles (meaning a directional vector of (10,1), for instance), would most likely cause the ball to &#8220;hit itself&#8221; upon bouncing against a wall, which would make it more or less impossible to ever reach the maximum length, or simply get very far at all. Still, it should naturally be possible to hit the tail, so we decided to simply ignore the first few parts of the history, when checking collision, so that the ball/snake had &#8220;time&#8221; to get free of itself. Hitting directly into a corner, would however still result death, as the overlap would be too great.</p>
<p>The other collision-based problem that surfaced was when &#8220;crossing itself&#8221;. A problem we never actually experienced exactly, but would look incredibly awkward if it did. Basically, it could happen as it would never <em>actually</em> hit itself, but on both sides, on points where both the &#8220;rough&#8221; x and y coordinates had changed (that is, on the 63 x 21 grid). Basically, it was done so that every time a situation like that happened, the collision-detection would check if both the coordinates (current_x, target_y) <em>and</em> (target_x, current_y) was in the ball&#8217;s history. In that case, it would have struck itself.</p>
<p>Now, going away from all the technical matter, the game proved to be very fun to play as well. The idea has been tried before, and there are quite many possible ways of <a href="http://dsiware.nintendolife.com/reviews/2010/02/snakenoid_dsiware" onclick="pageTracker._trackPageview('/outgoing/dsiware.nintendolife.com/reviews/2010/02/snakenoid_dsiware?referer=');">combining the two basic games</a>. In my personal opinion, ours was a success &#8211; but that&#8217;s always easy to say as one of the developers.</p>
<p>As a last word, here&#8217;s another <a href="http://gnueless.com/images/screenshot1.png">screenshot</a>, which should catch the idea pretty well. Try to imagine it with the tail being up to 50 &#8220;blocks&#8221; long.</p>
]]></content:encoded>
			<wfw:commentRss>http://gnueless.com/2010/06/gwardar.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>that&#8217;s rhetorical&#8230; right?</title>
		<link>http://gnueless.com/2009/09/thats-rhetorical-right.html</link>
		<comments>http://gnueless.com/2009/09/thats-rhetorical-right.html#comments</comments>
		<pubDate>Thu, 03 Sep 2009 16:45:47 +0000</pubDate>
		<dc:creator>Gnub</dc:creator>
				<category><![CDATA[me]]></category>
		<category><![CDATA[offline]]></category>
		<category><![CDATA[university]]></category>

		<guid isPermaLink="false">http://gnueless.com/?p=421</guid>
		<description><![CDATA[Today, the &#8220;big course&#8221; of this semester started, which for me is &#8220;General Rhetorics&#8221;. The first reaction from most is probably most likely &#8220;What on Earth would you take that for, as you&#8217;re a Computer Scientist?!&#8221;. And, that&#8217;s what I plan to answer, in a way that tells about myself. And why would I do [...]]]></description>
			<content:encoded><![CDATA[<p>Today, the &#8220;big course&#8221; of this semester started, which for me is &#8220;General Rhetorics&#8221;. The first reaction from most is probably most likely &#8220;What on Earth would you take that for, as you&#8217;re a Computer Scientist?!&#8221;. And, that&#8217;s what I plan to answer, in a way that tells about myself. And why would I do that, you might think. Mostly because we had it as an assignment, and a sort of creative way to do a naming round.</p>
<p><span id="more-421"></span></p>
<p>And so, there I was, taking a few minutes to ponder why I had even chosen it. The most immediate answer would be that I&#8217;ve gotten to like the who theorizing-part of discussion/argument for various stuff I find interesting. Delving a bit deeper, I &#8211; which I for some reason can&#8217;t recall writing here &#8211; had a course called &#8220;Methods in Language-Psychological Analysis&#8221; (!), which gave my general critical point of view a nudge in the right (wrong?) direction. I like having a real way of pointing out faults, inconsistencies and weak statistics and quoted stuff out in various texts &#8211; even if it&#8217;s only done &#8220;because I can&#8221;. That&#8217;s just me.</p>
<p>However, there&#8217;s also another reason, which I had probably known all along, but came to me when I said there wondering what to say. My writing side had been in me since early elementary school, and had most likely been suppressed (or just felt too natural for me to notice it), as my force lay in the numbers. Proving something was right in those subjects is easy, as it can be proved by applying &#8220;this formula&#8221; to values &#8220;a&#8221; and &#8220;b&#8221;, which will then <em>always</em> give &#8220;c&#8221;. Naturally, that doesn&#8217;t make the whole work trivial, just meaning that, if performed correct, there would in fact always only be <em>one</em> answer. And, sadly enough, Real life just doesn&#8217;t work like that. We have these dynamic values that gets applied here and there. And, as a reader of this, you know that I&#8217;ve &#8220;recently&#8221; gotten my urge of writing back.</p>
<p>All in all, I&#8217;m really looking forward to following the course and learning more of the fine arts of rhetorics, and getting to know <a href="http://imgsrv.kmbz.com/image/kmbz/UserFiles/Image/Brian%5C%27s%20Pics/captain_obvious.jpg" onclick="pageTracker._trackPageview('/outgoing/imgsrv.kmbz.com/image/kmbz/UserFiles/Image/Brian_5C_27s_20Pics/captain_obvious.jpg?referer=');">Captain Obvious</a> a bit more.</p>
]]></content:encoded>
			<wfw:commentRss>http://gnueless.com/2009/09/thats-rhetorical-right.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

