<?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>Trygve Vea is happy hacking :)</title>
	<atom:link href="http://trygvevea.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://trygvevea.com</link>
	<description></description>
	<lastBuildDate>Thu, 26 Apr 2012 21:03:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Tiny Quest (LD48#23)</title>
		<link>http://trygvevea.com/2012/04/26/tiny-quest-ld23/</link>
		<comments>http://trygvevea.com/2012/04/26/tiny-quest-ld23/#comments</comments>
		<pubDate>Thu, 26 Apr 2012 21:02:10 +0000</pubDate>
		<dc:creator>Trygve Vea</dc:creator>
				<category><![CDATA[Compo Entries]]></category>
		<category><![CDATA[Games]]></category>

		<guid isPermaLink="false">http://trygvevea.com/?p=537</guid>
		<description><![CDATA[This was my entry for Ludum Dare #23 – the theme was “Tiny World”. After not participating in Ludum Dare #22 because I hated the theme back then (Alone), I decided that I wasn&#8217;t going to put too much weight &#8230; <a href="http://trygvevea.com/2012/04/26/tiny-quest-ld23/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.ludumdare.com/compo/ludum-dare-23/?action=preview&#038;uid=3818">This was my entry for Ludum Dare #23</a> – the theme was “Tiny World”.  After not participating in Ludum Dare #22 because I hated the theme back then (Alone), I decided that I wasn&#8217;t going to put too much weight on it this time.  Since I saw <a href="http://supersmashland.com/">Super Smash Land</a>, I&#8217;ve been wanting to make an attempt at making something that looks like a Game Boy game &#8211; and even though it&#8217;s not a perfect fit, it&#8217;s acceptable.</p>
<p>It&#8217;s a platformer.  It has a lot of bugs, and I&#8217;m a bit ashamed by it.  I&#8217;m not used to leaving around so many bugs, but this is kind of bad.  The buglist so far:</p>
<ul>
<li>The jumping mechanic is poor enough, that it should be listed as a bug.</li>
<li>The blob-enemy sometimes start off by just floating upwards and never coming back down.</li>
<li>When I perform gravity on my sprites, they will take damage before they stop moving &#8212; which means that in the last bossfight, you will be damaged by the flames even though you&#8217;re over them.</li>
<li>The player has two bounding boxes, and it is possible to get stuck in an angle due to them not having the same base. (One of them is used for damage) &#8230; Workaround: Jump off.</li>
</ul>
<p>What went well:</p>
<ul>
<li>The graphics were pretty much as I wanted.  There were too little graphics, though.</li>
<li>I managed to get ports to all 3 platforms &#8211; which is nice.</li>
<li>My basecode/engine works pretty well.  I&#8217;m happy about that.</li>
</ul>
<p>What didn&#8217;t work out as I hoped:</p>
<ul>
<li>I wanted more enemies, more content and less bugs.  But I just wasn&#8217;t imaginative enough.</li>
</ul>
<p>All in all; I’m mostly happy with the result – and I’ll do even better next time.  If I get the time, I will make a larger game from this entry &#8211; just to show off what I wanted to do, at least.</p>
<p><strong>Some screenshots and a timelapse:</strong></p>
<p><a href="http://trygvevea.com/wp-content/uploads/2012/04/lavalava.png"><img src="http://trygvevea.com/wp-content/uploads/2012/04/lavalava.png" alt="" title="lavalava" width="640" align="left" /></a><br />
<a href="http://trygvevea.com/wp-content/uploads/2012/04/acastle.png"><img src="http://trygvevea.com/wp-content/uploads/2012/04/acastle.png" alt="" title="acastle" width="320" align="left" /></a><br />
<a href="http://trygvevea.com/wp-content/uploads/2012/04/lavalava.png"><img src="http://trygvevea.com/wp-content/uploads/2012/04/lavalava.png" alt="" title="lavalava" width="320" align="left" /></a><br />
<iframe width="560" height="315" src="http://www.youtube.com/embed/_xDay5gnObM" frameborder="0" allowfullscreen></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://trygvevea.com/2012/04/26/tiny-quest-ld23/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Munin-plugin for HP P2000 StorageWorks</title>
		<link>http://trygvevea.com/2012/02/20/new-munin-plugin-for-hp-p2000-storageworks/</link>
		<comments>http://trygvevea.com/2012/02/20/new-munin-plugin-for-hp-p2000-storageworks/#comments</comments>
		<pubDate>Mon, 20 Feb 2012 13:09:23 +0000</pubDate>
		<dc:creator>Trygve Vea</dc:creator>
				<category><![CDATA[Planet Redpill-Linpro]]></category>

		<guid isPermaLink="false">http://trygvevea.com/?p=520</guid>
		<description><![CDATA[I committed a new Munin-plugin for HP P2000 StorageWorks. It monitors through the HTTP XML-RPC interface. It detects all disks, vdisks and controllers automatically – all you need to provide is the username/password, IP-address, and set up some symlinks. It &#8230; <a href="http://trygvevea.com/2012/02/20/new-munin-plugin-for-hp-p2000-storageworks/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://munin-monitoring.org/browser/trunk/plugins/node.d/hp2000_.in">I committed a new Munin-plugin for HP P2000 StorageWorks</a>. It monitors through the HTTP XML-RPC interface.  It detects all disks, vdisks and controllers automatically – all you need to provide is the username/password, IP-address, and set up some symlinks.</p>
<p>It produces 10 graphs, + subgraphs.</p>
<p>Graph-gallery:</p>
<p>VDISK:<br />
<a href="http://trygvevea.com/wp-content/uploads/2012/02/vdisk_bandwidth-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/02/vdisk_bandwidth-day.png" alt="" title="vdisk_bandwidth-day" width="497" height="335" class="alignnone size-full wp-image-530" /></a><br />
<a href="http://trygvevea.com/wp-content/uploads/2012/02/vdisk_iops-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/02/vdisk_iops-day.png" alt="" title="vdisk_iops-day" width="497" height="335" class="alignnone size-full wp-image-521" /></a></p>
<p>Disk bandwidth and iops (rootgraphs provides enclosures, subgraphs provides disks): </p>
<p><a href="http://trygvevea.com/wp-content/uploads/2012/02/disk_iops-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/02/disk_iops-day.png" alt="" title="disk_iops-day" width="497" height="299" class="alignnone size-full wp-image-528" /></a></p>
<p><a href="http://trygvevea.com/wp-content/uploads/2012/02/disk_bandwidth-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/02/disk_bandwidth-day.png" alt="" title="disk_bandwidth-day" width="497" height="299" class="alignnone size-full wp-image-527" /></a></p>
<p>Controller bandwidth and iops:<br />
<a href="http://trygvevea.com/wp-content/uploads/2012/02/controller_bandwidth-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/02/controller_bandwidth-day.png" alt="" title="controller_bandwidth-day" width="497" height="287" class="alignnone size-full wp-image-524" /></a></p>
<p><a href="http://trygvevea.com/wp-content/uploads/2012/02/controller_iops-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/02/controller_iops-day.png" alt="" title="controller_iops-day" width="497" height="287" class="alignnone size-full wp-image-525" /></a></p>
<p>Controller Cache:<br />
<a href="http://trygvevea.com/wp-content/uploads/2012/02/controller_cache_misses-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/02/controller_cache_misses-day.png" alt="" title="controller_cache_misses-day" width="497" height="287" class="alignnone size-full wp-image-523" /></a><br />
<a href="http://trygvevea.com/wp-content/uploads/2012/02/controller_cache_hits-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/02/controller_cache_hits-day.png" alt="" title="controller_cache_hits-day" width="497" height="287" class="alignnone size-full wp-image-522" /></a></p>
<p>Controller CPU-load:<br />
<a href="http://trygvevea.com/wp-content/uploads/2012/02/cpu_load-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/02/cpu_load-day.png" alt="" title="cpu_load-day" width="497" height="287" class="alignnone size-full wp-image-526" /></a></p>
<p>A sawtooth-graph to indicate uptime statistics for the controllers:<br />
<a href="http://trygvevea.com/wp-content/uploads/2012/02/uptime-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/02/uptime-day.png" alt="" title="uptime-day" width="497" height="287" class="alignnone size-full wp-image-529" /></a></p>
<p>Use Munin? Got a HP P2000 StorageWorks SAN?  <a href="http://munin-monitoring.org/browser/trunk/plugins/node.d/hp2000_.in">Why don&#8217;t you give it a try</a>? <img src='http://trygvevea.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://trygvevea.com/2012/02/20/new-munin-plugin-for-hp-p2000-storageworks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Presentation: Writing modules for nginx</title>
		<link>http://trygvevea.com/2012/02/01/presentation-writing-modules-for-nginx/</link>
		<comments>http://trygvevea.com/2012/02/01/presentation-writing-modules-for-nginx/#comments</comments>
		<pubDate>Wed, 01 Feb 2012 08:55:09 +0000</pubDate>
		<dc:creator>Trygve Vea</dc:creator>
				<category><![CDATA[Planet Redpill-Linpro]]></category>

		<guid isPermaLink="false">http://trygvevea.com/?p=514</guid>
		<description><![CDATA[I held a presentation at Redpill Linpros &#8220;C / C++ / Embedded&#8221; Competence Group-meeting yesterday. It was about writing modules for nginx. It contains a lot of source code. I believe it&#8217;s an OK primer. Extending functionality in nginx, with &#8230; <a href="http://trygvevea.com/2012/02/01/presentation-writing-modules-for-nginx/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I held a presentation at Redpill Linpros &#8220;C / C++ / Embedded&#8221; Competence Group-meeting yesterday.</p>
<p>It was about writing modules for nginx.  It contains a lot of source code.  I believe it&#8217;s an OK primer.</p>
<div style="width:425px" id="__ss_11363830"> <strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/trygvevea/extending-functionality-in-nginx-with-modules" title="Extending functionality in nginx, with modules!" target="_blank">Extending functionality in nginx, with modules!</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/11363830" width="425" height="355" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
<div style="padding:5px 0 12px"> View more <a href="http://www.slideshare.net/" target="_blank">presentations</a> from <a href="http://www.slideshare.net/trygvevea" target="_blank">Trygve Vea</a> </div>
</p></div>
<p>The example code can be found on github.</p>
<p><a href="https://github.com/kvisle/nginx_module_samples">https://github.com/kvisle/nginx_module_samples</a></p>
]]></content:encoded>
			<wfw:commentRss>http://trygvevea.com/2012/02/01/presentation-writing-modules-for-nginx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Munin-plugin for HAProxy</title>
		<link>http://trygvevea.com/2012/01/23/new-munin-plugin-for-haproxy/</link>
		<comments>http://trygvevea.com/2012/01/23/new-munin-plugin-for-haproxy/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 06:00:44 +0000</pubDate>
		<dc:creator>Trygve Vea</dc:creator>
				<category><![CDATA[Munin]]></category>
		<category><![CDATA[Planet Redpill-Linpro]]></category>

		<guid isPermaLink="false">http://trygvevea.com/?p=499</guid>
		<description><![CDATA[I committed a new Munin-plugin for HAProxy. It&#8217;s a multigraph plugin, it discovers all the configured frontends and backends automatically &#8211; all you need to provide is the username/password for the haproxy status page. It produces 8 graphs, + subgraphs &#8230; <a href="http://trygvevea.com/2012/01/23/new-munin-plugin-for-haproxy/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://munin-monitoring.org/browser/trunk/plugins/node.d/haproxy_ng.in">I committed a new Munin-plugin for HAProxy</a>.  It&#8217;s a multigraph plugin, it discovers all the configured frontends and backends automatically &#8211; all you need to provide is the username/password for the haproxy status page.</p>
<p>It produces 8 graphs, + subgraphs for some of the backends, where it presents the same graphs, but with server-specific metrics.</p>
<p>Some of the root-graphs:</p>
<p><a href="http://trygvevea.com/wp-content/uploads/2012/01/HAPActive-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/HAPActive-day.png" alt="" title="HAPActive-day" width="497" height="311" class="alignleft size-full wp-image-507" /></a><br />
<a href="http://trygvevea.com/wp-content/uploads/2012/01/HAPUptime-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/HAPUptime-day.png" alt="" title="HAPUptime-day" width="497" height="311" class="alignleft size-full wp-image-506" /></a><br />
<a href="http://trygvevea.com/wp-content/uploads/2012/01/HAPSessionsBack-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/HAPSessionsBack-day.png" alt="" title="HAPSessionsBack-day" width="497" height="311" class="alignleft size-full wp-image-505" /></a><br />
<a href="http://trygvevea.com/wp-content/uploads/2012/01/HAPErrorsBack-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/HAPErrorsBack-day.png" alt="" title="HAPErrorsBack-day" width="497" height="311" class="alignleft size-full wp-image-504" /></a><br />
<a href="http://trygvevea.com/wp-content/uploads/2012/01/HAPErrorsFront-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/HAPErrorsFront-day.png" alt="" title="HAPErrorsFront-day" width="497" height="275" class="alignleft size-full wp-image-503" /></a><br />
<a href="http://trygvevea.com/wp-content/uploads/2012/01/HAPBandwidthBack-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/HAPBandwidthBack-day.png" alt="" title="HAPBandwidthBack-day" width="497" height="359" class="alignleft size-full wp-image-502" /></a><br />
<a href="http://trygvevea.com/wp-content/uploads/2012/01/HAPBandwidthFront-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/HAPBandwidthFront-day.png" alt="" title="HAPBandwidthFront-day" width="497" height="287" class="alignleft size-full wp-image-501" /></a><br />
<a href="http://trygvevea.com/wp-content/uploads/2012/01/HAPSessionsFront-day.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/HAPSessionsFront-day.png" alt="" title="HAPSessionsFront-day" width="497" height="275" class="alignleft size-full wp-image-500" /></a></p>
<p><br style="clear: both;" /></p>
<p>Do you use HAProxy and Munin? <a href="http://munin-monitoring.org/browser/trunk/plugins/node.d/haproxy_ng.in">Check it out</a>! </p>
]]></content:encoded>
			<wfw:commentRss>http://trygvevea.com/2012/01/23/new-munin-plugin-for-haproxy/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Birthday boy.</title>
		<link>http://trygvevea.com/2012/01/19/birthday-boy/</link>
		<comments>http://trygvevea.com/2012/01/19/birthday-boy/#comments</comments>
		<pubDate>Thu, 19 Jan 2012 05:00:58 +0000</pubDate>
		<dc:creator>Trygve Vea</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://trygvevea.com/?p=471</guid>
		<description><![CDATA[I&#8217;m 28 now. Those people who invented the term &#8220;grownup&#8221; were weird. There&#8217;s no such thing.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m 28 now.</p>
<p>Those people who invented the term &#8220;grownup&#8221; were weird.  There&#8217;s no such thing.</p>
]]></content:encoded>
			<wfw:commentRss>http://trygvevea.com/2012/01/19/birthday-boy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Experiment of the week: Bump mapping in OpenGL</title>
		<link>http://trygvevea.com/2012/01/16/experiment-of-the-week-bump-mapping-in-opengl/</link>
		<comments>http://trygvevea.com/2012/01/16/experiment-of-the-week-bump-mapping-in-opengl/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 00:07:42 +0000</pubDate>
		<dc:creator>Trygve Vea</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://trygvevea.com/?p=487</guid>
		<description><![CDATA[With a lot of help from my friend Zerd, I finally managed to get bump mapping to work. I&#8217;ve been pondering on how bump mapping can be used with 2D graphics &#8211; and after playing around a bit, I don&#8217;t &#8230; <a href="http://trygvevea.com/2012/01/16/experiment-of-the-week-bump-mapping-in-opengl/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>With a lot of help from my friend <a href="http://zerd.net/">Zerd</a>, I finally managed to get bump mapping to work.  I&#8217;ve been pondering on how bump mapping can be used with 2D graphics &#8211; and after playing around a bit, I don&#8217;t see any reason not to use this.</p>
<p>A built version for Windows can be downloaded here: <a href="http://dl.dropbox.com/u/1287557/bumptest.zip">http://dl.dropbox.com/u/1287557/bumptest.zip</a> &#8230; The source code is included, and it builds fine on Linux.  It also works just fine in wine if you don&#8217;t want to bother building it.  The code is fairly minimal.</p>
<p>A couple of screenshots with light illumination from different sides; (NOTE: This looks better in motion)</p>
<p><a href="http://trygvevea.com/wp-content/uploads/2012/01/Screenshot-4.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/Screenshot-4.png" alt="" title="Screenshot-4" width="240" height="480" class="alignleft size-full wp-image-492" /></a><a href="http://trygvevea.com/wp-content/uploads/2012/01/Screenshot-3.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/Screenshot-3.png" alt="" title="Screenshot-3" width="240" height="480" class="alignleft size-full wp-image-491" /></a><a href="http://trygvevea.com/wp-content/uploads/2012/01/Screenshot-6.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/Screenshot-6.png" alt="" title="Screenshot-6" width="330" height="360" class="alignleft size-full wp-image-490" /></a><a href="http://trygvevea.com/wp-content/uploads/2012/01/Screenshot-5.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/Screenshot-5.png" alt="" title="Screenshot-5" width="330" height="360" class="alignleft size-full wp-image-489" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://trygvevea.com/2012/01/16/experiment-of-the-week-bump-mapping-in-opengl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WTF anno 2005: Secure File Downloading.</title>
		<link>http://trygvevea.com/2012/01/09/wtf-anno-2005-secure-file-downloading/</link>
		<comments>http://trygvevea.com/2012/01/09/wtf-anno-2005-secure-file-downloading/#comments</comments>
		<pubDate>Mon, 09 Jan 2012 06:00:21 +0000</pubDate>
		<dc:creator>Trygve Vea</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://trygvevea.com/?p=479</guid>
		<description><![CDATA[When I started as a system administration at my old job, one of my first tasks was to help a consultant &#8211; from a company I won&#8217;t name &#8211; with their proprietary solution for &#8220;Secure Internet&#8221;. My workplace needed a &#8230; <a href="http://trygvevea.com/2012/01/09/wtf-anno-2005-secure-file-downloading/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>When I started as a system administration at my old job, one of my first tasks was to help a consultant &#8211; from a company I won&#8217;t name &#8211; with their proprietary solution for &#8220;Secure Internet&#8221;.  My workplace needed a secure way to download files, and their solution should cover all this&#8230; in various interpretations of &#8220;secure&#8221;.</p>
<p>The design was fairly simple:</p>
<ol>
<li>Clients connect to a terminal server (being Citrix or RDP, it doesn&#8217;t really matter).</li>
<li>The Internet connected session can&#8217;t access the secure network, but is able to store files on a temporary home directory in the DMZ.</li>
<li>The files in the DMZ are picked up and transmitted by email to a special account.</li>
<li>On the MS Exchange server, a trigger reacts on incoming emails to this particular account, and then writes the attachment to the user&#8217;s home directory.</li>
<li>The user can access the downloaded files inside the secure network.</li>
</ol>
<p>If we say that it&#8217;s acceptable for the user to deal with untrusted files downloaded from the Internet, this is a fair design.  It does the job.  However, this is not what I wanted to present to you.  I think it&#8217;s more interesting to look at how the file-transfer is performed.</p>
<p>When the user saves his file at his temporary home directory in the DMZ, a scheduled job runs and picks up the file.  The same job constructs an email formatted like this:</p>
<p><code>FROM: filelockaccount@acme.org<br />
TO: filelockaccount@acme.org<br />
SUBJECT: \\fileserver\home$\username\filelock\iloveyou.exe<br />
ATTACHMENT: iloveyou.exe<br />
</code></p>
<p>On the Exchange server, the trigger picks up the email, and writes the attachment to the path defined in the subject.  The Exchange server ran this job with administrative privileges.</p>
<p>To see whether this could be exploited, I used an Internet connected computer outside the network &#8211; just connected via ordinary ADSL.  I made Outlook Express use the ISP&#8217;s SMTP-server, and made an email formatted like this:</p>
<p><code>FROM: filelockaccount@acme.org<br />
TO: filelockaccount@acme.org<br />
SUBJECT: \\somewebserver\c$\OMGLOLZ.txt<br />
ATTACHMENT: OMGLOLZ.txt<br />
</code></p>
<p>A couple of minutes later, I could see OMGLOLZ.txt in the root of C:\ on somewebserver.  We also tested whether we had access to potentially execute malicious code&#8230; and since the magic process on the Exchange server ran with administrative privileges, we definitely could.</p>
<p>Turns out the secure way of downloading files from the Internet could be used to compromise server security in the entire network.</p>
<p>The hole were patched shortly after, and I got my attaboy.</p>
]]></content:encoded>
			<wfw:commentRss>http://trygvevea.com/2012/01/09/wtf-anno-2005-secure-file-downloading/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Goals for 2012</title>
		<link>http://trygvevea.com/2012/01/08/goals-for-2012/</link>
		<comments>http://trygvevea.com/2012/01/08/goals-for-2012/#comments</comments>
		<pubDate>Sun, 08 Jan 2012 02:39:18 +0000</pubDate>
		<dc:creator>Trygve Vea</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://trygvevea.com/?p=473</guid>
		<description><![CDATA[Get better at drawing. Make a chiptune. Participate in more competitions, more often. Co-create a game with someone (compo or not, whatever &#8211; it&#8217;s for fun). Post more stuff on this blog. Release more code. Release more tutorials. Enjoy life &#8230; <a href="http://trygvevea.com/2012/01/08/goals-for-2012/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<ul>
<li>Get better at drawing.</li>
<li>Make a chiptune.</li>
<li>Participate in more competitions, more often.</li>
<li>Co-create a game with someone (compo or not, whatever &#8211; it&#8217;s for fun).</li>
<li>Post more stuff on this blog.</li>
<li>Release more code.</li>
<li>Release more tutorials.</li>
<li>Enjoy life more.</li>
</ul>
<p>I drew a guy, he has weird proportions, but I&#8217;m happy with him.  I didn&#8217;t attempt to create Cody from Final Fight, but I was thinking about his colors.  I didn&#8217;t put a lot of work in it.<br />
<a href="http://trygvevea.com/wp-content/uploads/2012/01/08-guy2x.png"><img src="http://trygvevea.com/wp-content/uploads/2012/01/08-guy2x.png" alt="" title="08-guy2x" width="102" height="208" class="aligncenter size-full wp-image-474" /></a></p>
<p>(Looking at the ambitious-level of my own goals, it&#8217;s easy to understand why I&#8217;m usually not happy with my own effort.)</p>
]]></content:encoded>
			<wfw:commentRss>http://trygvevea.com/2012/01/08/goals-for-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Links house, analyzed: Part 3 – The wall</title>
		<link>http://trygvevea.com/2011/09/16/links-house-analyzed-part-3-%e2%80%93-the-wall/</link>
		<comments>http://trygvevea.com/2011/09/16/links-house-analyzed-part-3-%e2%80%93-the-wall/#comments</comments>
		<pubDate>Fri, 16 Sep 2011 15:00:25 +0000</pubDate>
		<dc:creator>Trygve Vea</dc:creator>
				<category><![CDATA[Game development]]></category>
		<category><![CDATA[Graphics]]></category>

		<guid isPermaLink="false">http://trygvevea.com/?p=402</guid>
		<description><![CDATA[The wall can be broken down into 3 parts, + the floor-edge, since it&#8217;s not technically a part of the wall. It always sticks next to the wall. The wainscot, the wallpaper and the crown-molding. I&#8217;m not 100% sure that &#8230; <a href="http://trygvevea.com/2011/09/16/links-house-analyzed-part-3-%e2%80%93-the-wall/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://trygvevea.com/wp-content/uploads/2011/08/house07-wall-brokendown.png"><img src="http://trygvevea.com/wp-content/uploads/2011/08/house07-wall-brokendown.png" alt="" title="house07-wall-brokendown" width="394" height="128" class="aligncenter size-full wp-image-403" /></a></p>
<p>The wall can be broken down into 3 parts, + the floor-edge, since it&#8217;s not technically a part of the wall.  It always sticks next to the wall.  The wainscot, the wallpaper and the crown-molding.  I&#8217;m not 100% sure that this is what it&#8217;s supposed to be &#8211; 16 bit graphics often leave some room to interpretation.</p>
<p><a href="http://trygvevea.com/wp-content/uploads/2011/08/house08-walltiles.png"><img src="http://trygvevea.com/wp-content/uploads/2011/08/house08-walltiles.png" alt="" title="house08-walltiles" width="96" height="224" class="aligncenter size-full wp-image-406" /></a></p>
<p>With the exception of the corner-area, the wall is built up by these 7 tiles (not 8, because the two tiles for the border are identical).  Looking up close, the tiles are fairly simple.  The detail here, is the combination of the tiles.</p>
<p><strong>The floor-edge</strong></p>
<p>Closest to the wall, it starts off with two pixels of dark color.  This gives us the impression of being in a corner next to the wall.<br />
Most of it is filled with a solid color fitting to the rest of the rooms palette.</p>
<p><strong>The wainscot</strong></p>
<p>Consisting of two tiles &#8211; together they could create a simple brick-wall pattern.  The reason it looks like wood, is because it&#8217;s brownish of color.  Fairly simple dithering; Not too much, not too little.  The corner-tile is just a few pixels marking the corner itself &#8211; without any additional dithering/shading in the area.</p>
<p><strong>The wallpaper</strong></p>
<p>When I look this closely at it, I get the feeling it&#8217;s stained.  These two tiles alone, proves how much detail a tiny amount of randomness can add to a scene.  The corner tile got extra &#8220;stains&#8221; added around the corner for shadowy effect.  This also adds to the illusion of perspective, as this tile is higher up than the wainscot.</p>
<p><strong>The crown-molding</strong></p>
<p>This is the most detailed of the four parts &#8211; yet, still fairly simple.  If you alternate the two tiles, you get perfect tiling.</p>
<p>So, the walls in Zelda are fairly detailed &#8211; yet, also fairly simple.  If one break down the wall into individual components, one can see what kind of tricks has gone into making of the wall.</p>
]]></content:encoded>
			<wfw:commentRss>http://trygvevea.com/2011/09/16/links-house-analyzed-part-3-%e2%80%93-the-wall/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Links house, analyzed: Part 2 – Perspective of things</title>
		<link>http://trygvevea.com/2011/09/09/links-house-analyzed-part-2-%e2%80%93-perspective-of-things/</link>
		<comments>http://trygvevea.com/2011/09/09/links-house-analyzed-part-2-%e2%80%93-perspective-of-things/#comments</comments>
		<pubDate>Fri, 09 Sep 2011 15:00:28 +0000</pubDate>
		<dc:creator>Trygve Vea</dc:creator>
				<category><![CDATA[Game development]]></category>
		<category><![CDATA[Graphics]]></category>

		<guid isPermaLink="false">http://trygvevea.com/?p=387</guid>
		<description><![CDATA[From a perspective point-of-view, this game fails when you&#8217;re indoors. The walls are treated differently when you&#8217;re indoors, than when you&#8217;re outside. Everything on the floor is still treated as if it was outdoors. One could have treated the entire &#8230; <a href="http://trygvevea.com/2011/09/09/links-house-analyzed-part-2-%e2%80%93-perspective-of-things/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>From a perspective point-of-view, this game fails when you&#8217;re indoors.  The walls are treated differently when you&#8217;re indoors, than when you&#8217;re outside.  Everything on the floor is still treated as if it was outdoors.</p>
<div id="attachment_388" class="wp-caption aligncenter" style="width: 458px"><a href="http://trygvevea.com/wp-content/uploads/2011/08/house03-wallperspective.png"><img src="http://trygvevea.com/wp-content/uploads/2011/08/house03-wallperspective.png" alt="" title="house03-wallperspective" width="448" height="352" class="size-full wp-image-388" /></a><p class="wp-caption-text">All walls are equally visible.  As if we were looking directly downwards.</p></div>
<div id="attachment_389" class="wp-caption aligncenter" style="width: 458px"><a href="http://trygvevea.com/wp-content/uploads/2011/08/house04-floorperspective.png"><img src="http://trygvevea.com/wp-content/uploads/2011/08/house04-floorperspective.png" alt="" title="house04-floorperspective" width="448" height="352" class="size-full wp-image-389" /></a><p class="wp-caption-text">You&#039;re not looking directly down anymore.  We&#039;re clearly looking at the scene from an angle.</p></div>
<p>One could have treated the entire game as if it was located outdoors.  However, Zelda without dungeons wouldn&#8217;t have been Zelda.  Adding the top-down view for just the walls, is most importantly done for navigational purposes &#8211; you will enter and exit doors on all four edges of the screen.  This is not a problem when we&#8217;re roaming around outdoors, as the screen will pan entirely when we touch the edges of it.  Entrances can be limited to be located pointing south.</p>
<p><a href="http://trygvevea.com/wp-content/uploads/2011/08/house05-largetosmall-brighttodark.png"><img src="http://trygvevea.com/wp-content/uploads/2011/08/house05-largetosmall-brighttodark.png" alt="" title="house05-largetosmall-brighttodark" width="384" height="256" class="aligncenter size-full wp-image-392" /></a></p>
<p>To add to the illusion of depth, one technique that you&#8217;ll see all over the place on Zelda is this; The tallest part of an object is brighter than its foot.  It will also appear larger than its foot.  The change in light and size gives us the illusion of distance.  The bricks on the entrance next to the floor is only 1&#215;2 large, while the topmost brick is clearly 2&#215;4 large.  Making the door wider on the top than its bottom also adds to this illusion.  The same concept is applied to three other items attached to the wall.  Note; I did flip the door upside-down from what it appears in the room for comparing purposes.</p>
<p><a href="http://trygvevea.com/wp-content/uploads/2011/08/house06-corner.png"><img src="http://trygvevea.com/wp-content/uploads/2011/08/house06-corner.png" alt="" title="house06-corner" width="120" height="120" class="aligncenter size-full wp-image-398" /></a></p>
<p>The corner is doing the &#8220;large on top&#8221;-technique, too &#8211; just not entirely as visible as on the other objects.  The corner-line has a thicker shadow on top, than on the bottom.  It is also fairly dark at the bottom of the entire wall &#8211; as it&#8217;s got a two pixel thick line close to it.</p>
]]></content:encoded>
			<wfw:commentRss>http://trygvevea.com/2011/09/09/links-house-analyzed-part-2-%e2%80%93-perspective-of-things/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

