<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[underhound.eu]]></title><description><![CDATA[Games, music and more.]]></description><link>http://underhound.eu/</link><image><url>http://underhound.eu/favicon.png</url><title>underhound.eu</title><link>http://underhound.eu/</link></image><generator>Ghost 2.27</generator><lastBuildDate>Fri, 08 May 2026 10:50:10 GMT</lastBuildDate><atom:link href="http://underhound.eu/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[Server status]]></title><description><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>Known issues that are being worked on (in order of priority):</p>
<ul>
<li>Update-triggers are missing.</li>
<li>Odd messages (Bad channel -- pray in ssh).</li>
</ul>
<p>03.12.2017: Reduced launch-times by about 90%! Apparently mapping files from host to guest is bad for what I was doing, hence the dramatic improvement. This also</p>]]></description><link>http://underhound.eu/serverstatus/</link><guid isPermaLink="false">59fde786759c050001788579</guid><dc:creator><![CDATA[TZer0]]></dc:creator><pubDate>Sat, 04 Nov 2017 16:15:42 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>Known issues that are being worked on (in order of priority):</p>
<ul>
<li>Update-triggers are missing.</li>
<li>Odd messages (Bad channel -- pray in ssh).</li>
</ul>
<p>03.12.2017: Reduced launch-times by about 90%! Apparently mapping files from host to guest is bad for what I was doing, hence the dramatic improvement. This also fixed the lags people were having while playing.<br>
22.11.2017: After some careful consideration and fiddling around with settings, I've solved the following issue: New morgue-files are unreachable<br>
18.11.2017: Fixed issues: Updates do not happen. IRC-bot isn't up.<br>
14.11.2017: ssh is now up. Use terminal@underhound.eu:23 (I need 22 for the host so that any service technicians don't get too confused when trying to access it). Password: terminal. See further instructions <a href="http://crawl.develz.org/wordpress/howto">here</a> (CAO-key is valid).<br>
13.11.2017: <a href="https://underhound.eu:8080/">Webtiles</a> is up. Will keep working on the rest during the week - aiming to have it all up by the weekend.<br>
12.11.2017: Virtual machine is up. I'm working on configuring it. Update: morgues and logfiles can be found <a href="https://underhound.eu/crawl/">here</a>. Update #2: progress is good, looking quite promising. <strong>Update #3: I'm now able to play using the terminal on the server.</strong><br>
09.11.2017: I've been unsure on how I should set up my new server, but I ended up settling on the same setup as the previous one. I'm currently facing some host-side  difficulties (virtualization not being properly set up) regarding this, but hopefully this will be resolved during the weekend. Update #2: issue resolved, will continue working this weekend.<br>
04.11.2017: You are now reading this on the new server. I've set up my website and <a href="https://underhound.eu/tzer0/public_www/sync-test/">PUBG map app</a> and will start working on setting up crawl.<br>
03.11.2017: rsyncs are done. Bad news: an entire disk crashed so badly that it is non-recoverable and not even visible in the operating system. Good news: it was in a RAID and 99.9%+ of the files are already on the new server, including the various &quot;logfile&quot;-files (which are the ones that the scores are recorded in), user-db and crawl-version-db. Setup of new server will begin soon. It will take longer to set everything up as it is a completely fresh server and I'll have to do setups from scratch and import what I can.<br>
01.11.2017: rsync to new server has started. It is very likely that I will have to run a full crawl setup there as one drive seems to have crashed (two drives, RAID 1, problems on both drives)<br>
30.10.2017: ETA for delivery of new server is 01.11.2017. Setting it up may take a long time. (weeks)<br>
29.10.2017: Update: new server has been ordered. You should expect this to take a while (timeframe: weeks).<br>
28.10.2017: Disk problems. Fixing as soon as possible, but expect server to be down for a while. Sorry for the inconvenience.</p>
<!--kg-card-end: markdown--><!--kg-card-end: markdown-->]]></content:encoded></item><item><title><![CDATA[VideoWaves]]></title><description><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>I've made a simple applicaton that runs on Linux, Windows, and (probably!) Mac using <a href="http://openframeworks.cc/">OpenFrameworks</a> that takes input from your webcam and applies various filters.<br>
<img src="http://i.imgur.com/0DlhjRl.png" alt="Screenshot"><br>
Check the gallery <a href="http://imgur.com/a/uAQkd">here</a> and videos <a href="https://www.youtube.com/watch?v=ONTQrX3e_60&amp;list=PLCCQG4UD47qP-s9nHddg3T-vJ9qkkeiVK&amp;index=1">here</a>.</p>
<p>You can find the source <a href="https://bitbucket.org/TZer0/videowaves">here</a> and windows-binaries can be downloaded <a href="http://underhound.eu/tzer0/public_www/Programs/VideoWaves.zip">here</a> (requires <a href="https://www.microsoft.com/en-us/download/details.aspx?id=48145">vc redist 2015 32-bit (x86)</a></p>]]></description><link>http://underhound.eu/videowaves/</link><guid isPermaLink="false">59fdaca3f44c9500014a2d61</guid><dc:creator><![CDATA[TZer0]]></dc:creator><pubDate>Thu, 01 Sep 2016 12:18:54 GMT</pubDate><media:content url="http://underhound.eu/content/images/2017/11/videowaves.png" medium="image"/><content:encoded><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><img src="http://underhound.eu/content/images/2017/11/videowaves.png" alt="VideoWaves"><p>I've made a simple applicaton that runs on Linux, Windows, and (probably!) Mac using <a href="http://openframeworks.cc/">OpenFrameworks</a> that takes input from your webcam and applies various filters.<br>
<img src="http://i.imgur.com/0DlhjRl.png" alt="VideoWaves"><br>
Check the gallery <a href="http://imgur.com/a/uAQkd">here</a> and videos <a href="https://www.youtube.com/watch?v=ONTQrX3e_60&amp;list=PLCCQG4UD47qP-s9nHddg3T-vJ9qkkeiVK&amp;index=1">here</a>.</p>
<p>You can find the source <a href="https://bitbucket.org/TZer0/videowaves">here</a> and windows-binaries can be downloaded <a href="http://underhound.eu/tzer0/public_www/Programs/VideoWaves.zip">here</a> (requires <a href="https://www.microsoft.com/en-us/download/details.aspx?id=48145">vc redist 2015 32-bit (x86)</a>).</p>
<p>Press h to hide the GUI.</p>
<!--kg-card-end: markdown--><!--kg-card-end: markdown-->]]></content:encoded></item><item><title><![CDATA[The FitBit Blaze - wait, why was this thing 250€?]]></title><description><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>I recently won a FitBit Blaze.<br>
<a href="http://i.imgur.com/wzoXjD1.jpg"><img src="http://i.imgur.com/wzoXjD1l.jpg" alt="FitBit Blaze"></a><br>
<a href="http://i.imgur.com/xpLSjDr.jpg"><img src="http://i.imgur.com/xpLSjDrl.jpg" alt="FitBit Blaze"></a></p>
<p>All in all: it is a practical piece of equipment as it measures your pulse, how many steps you've taken, how many stairs you've ascended, <s>what APM you've got in Company of Heroes</s> and it shows the time (wouldn't be a smart watch without</p>]]></description><link>http://underhound.eu/the-fitbit-blaze-wait-why-is-this-thing-250eu/</link><guid isPermaLink="false">59fdaca3f44c9500014a2d60</guid><dc:creator><![CDATA[TZer0]]></dc:creator><pubDate>Sun, 26 Jun 2016 10:24:33 GMT</pubDate><media:content url="http://underhound.eu/content/images/2017/11/fitbit.png" medium="image"/><content:encoded><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><img src="http://underhound.eu/content/images/2017/11/fitbit.png" alt="The FitBit Blaze - wait, why was this thing 250€?"><p>I recently won a FitBit Blaze.<br>
<a href="http://i.imgur.com/wzoXjD1.jpg"><img src="http://i.imgur.com/wzoXjD1l.jpg" alt="The FitBit Blaze - wait, why was this thing 250€?"></a><br>
<a href="http://i.imgur.com/xpLSjDr.jpg"><img src="http://i.imgur.com/xpLSjDrl.jpg" alt="The FitBit Blaze - wait, why was this thing 250€?"></a></p>
<p>All in all: it is a practical piece of equipment as it measures your pulse, how many steps you've taken, how many stairs you've ascended, <s>what APM you've got in Company of Heroes</s> and it shows the time (wouldn't be a smart watch without that). It connects over bluetooth to your phone to store the data and allows some modification and tuning.</p>
<p>These things are working fine (mostly), but I'm kind of surprised by the number of flaws that I've found in a the few weeks I've had it.</p>
<p>In order from least annoying to most annoying according to myself:</p>
<ul>
<li>Animations are slightly choppy on the device (very minor complaint).</li>
<li>I would've prefered that it was charged over micro-USB rather than in a proprietary cradle as I prefer open standards and not having to worry out the cradle breaking (unlikely).</li>
<li>I have no idea what the heart-symbol in this theme means (I tried measuring my pulse, nothing happened):</li>
</ul>
<p><a href="http://i.imgur.com/EZxUWku.jpg"><img src="http://i.imgur.com/EZxUWkul.jpg" alt="The FitBit Blaze - wait, why was this thing 250€?"></a></p>
<ul>
<li>Some of the themes for the clock-display lack the functionality that other displays have. The one that I find most visually pleasing (pictured at the beginning of this post) shows how many steps you did in any given minute this hour (it could've shown it for the last hour, however: I'll take what I can get), but can't show the pulse. To see your current pulse you must click the left button, swipe left once and then tap the screen.</li>
<li>Sometimes the measured pulse is approximately double of what's actually the case.</li>
<li>Screen often turns on by itself (this is with the arm-lift detection function turned off).</li>
<li>This screen:</li>
</ul>
<p><a href="http://i.imgur.com/QfeYYHR.png"><img src="http://i.imgur.com/QfeYYHRl.png" alt="The FitBit Blaze - wait, why was this thing 250€?"></a></p>
<p>And there's no way to turn it off (I also got some e-mails that I unsubbed from).</p>
<ul>
<li>Sometimes the clock starts vibrating after I've had a incoming phone call and there's no way to make it stop except for just waiting.</li>
<li>Except for the calls (that are bugged out), I've never received a notification on the FitBit.</li>
<li>No way to set the clock to 24-hour mode (and it doesn't say AM/PM on the screen, not that it would be hard to determine <s>unless you're really drunk</s>).</li>
<li>No clock-theme with all data visible (I don't care if it would look crowded, I'm a nerd and I love having all this visible on one screen).</li>
<li>The graphs are sort of hard to read:</li>
</ul>
<p><a href="http://i.imgur.com/NoqffCg.png"><img src="http://i.imgur.com/NoqffCgl.png" alt="The FitBit Blaze - wait, why was this thing 250€?"></a></p>
<p>You have to estimate what your heart rate was at any given time. This graph could've had one tick on the x-axis for each hour and more ticks on the y-axis showing heart rate. Again: no way to adjust it. Instead, you are forced to tap where you want to read the data with no way of dragging along the graph.</p>
<p>I simply don't get it. FitBit has released several smart watches so far, they're an established brand and yet they don't have things that I would consider standard functionality. The lack of the 24-hour clock is surprising to me as it is such a simple thing to implement.</p>
<p><em>Note: the price mentioned in the post title is what I saw on the piece of paper I had to sign while receiving it (2379 NOK - approximately 250€ and $280). Norway has generally quite high import taxes and higher prices in general - the price for this device is likely to be somewhat lower in other places.</em></p>
<!--kg-card-end: markdown--><!--kg-card-end: markdown-->]]></content:encoded></item><item><title><![CDATA[Real-time voice morphing]]></title><description><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>This is a guide on how to create and set up real-time morphing of your voice for free. This can be used in voice chat in both games and dedicated voice chat programs like <a href="http://wiki.mumble.info/wiki/Main_Page">Mumble</a> or TeamSpeak.</p>
<p>Here's a <a href="https://underhound.eu/tzer0/public_www/rvm/Samples.mp3">quick sample</a> of what is possible to do in real time</p>]]></description><link>http://underhound.eu/real-time-voice-morphing/</link><guid isPermaLink="false">59fdaca3f44c9500014a2d5f</guid><dc:creator><![CDATA[TZer0]]></dc:creator><pubDate>Mon, 14 Mar 2016 19:53:23 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>This is a guide on how to create and set up real-time morphing of your voice for free. This can be used in voice chat in both games and dedicated voice chat programs like <a href="http://wiki.mumble.info/wiki/Main_Page">Mumble</a> or TeamSpeak.</p>
<p>Here's a <a href="https://underhound.eu/tzer0/public_www/rvm/Samples.mp3">quick sample</a> of what is possible to do in real time over voice chat.</p>
<p>Required software (all free!):</p>
<ul>
<li><a href="http://renoise.com/">Renoise</a> (demo will suffice) or your digital audio workstation of choice if you know what you're doing</li>
<li><a href="http://vb-audio.pagesperso-orange.fr/Cable/index.htm">VB-Audio Virtual Audio Cable</a> - scroll down and find the orange download button.</li>
<li><a href="http://www.g200kg.com/en/software/rovee.html">RoVee</a> or any other effects you might want (I recommend <a href="https://varietyofsound.wordpress.com/downloads/">epicVerb</a>)</li>
</ul>
<p>Here's a <a href="https://underhound.eu/tzer0/public_www/rvm/projectfiles.zip">download</a> of all project files that I've made while creating this guide. The sample provided above is avaiable as <strong>Samples.xrns</strong> and requires both RoVee and epicVerb (open it and press space to play).</p>
<p><strong>Before you go any further: PLEASE BE CAREFUL. My setups were tested in Mumble which auto-adjusts the input volume, meaning that I may have missed an instance in my example files where the audio goes higher than you expect. Always test things in local loopback at low volumes before exposing others.</strong></p>
<h5 id="settingupvbaudiovirtualaudiocable">Setting up VB-Audio Virtual Audio Cable</h5>
<p>After installing this software using VBCABLE_Setup_x64.exe (use VBCABLE_Setup.exe if you have a 32-bit OS), open your system recording devices.<br>
<img src="https://underhound.eu/tzer0/public_www/rvm/find%20menu.png" alt><br>
Find CABLE Output and assign it to be both the default device and default communication device.<br>
<img src="https://underhound.eu/tzer0/public_www/rvm/audio%20devices.png" alt><br>
As long as you use your default communication device in your voice chat programs, this should work. Be aware that you must undo this by reverting back to your real input device if you want to use voice chat again without Renoise.</p>
<h5 id="settinguproveeandothereffects">Setting up RoVee and other effects</h5>
<p>RoVee is a VST-plugin. VST-plugins are special effect programs that can be used by digital audio workstations like Renoise.</p>
<p>To install RoVee, simply create a folder somewhere (like C:/VST or C:/users/%USER%/vst and extract the downloaded zip into that folder.</p>
<h5 id="settinguprenoiseaudioroutingandplugins">Setting up Renoise audio routing and plugins</h5>
<p>Click on edit-&gt;preferences, go to the audio tab and setup your device settings:<br>
<img src="https://underhound.eu/tzer0/public_www/rvm/renoisesetup.png" alt><br>
The values you should care about are:</p>
<ul>
<li><strong>Device type</strong> - always DirectSound</li>
<li><strong>In device</strong> - your &quot;normal&quot; microphone device name (do not use default device)</li>
<li><strong>Out device</strong> - When you want to test locally, set this to the sound device you want to use, when you want go live and use your setup, change this to CABLE Input.</li>
</ul>
<p>Now click on Plug/Misc:<br>
<img src="https://underhound.eu/tzer0/public_www/rvm/renoisesetup2.png" alt><br>
Click on the top-most browse-button and locate the VST-folder you created in the previous step. If you add more plugins to that folder while running Renoise, go to this menu and click rescan to avoid having to restart Renoise.</p>
<h5 id="usingrenoisetomorphyourvoice">Using Renoise to morph your voice</h5>
<p>Here I've highlighted the two areas of renoise we care about.<br>
<img src="https://underhound.eu/tzer0/public_www/rvm/renoise.png" alt><br>
The blue box contains the tracks. For our purpose, you can think of them as voice morphing presets.<br>
The red box contains the effects chain. This is where we compose our special effects.</p>
<h6 id="basicsetup">Basic setup</h6>
<p>First, search for line input in the search bar above the list of effects and double-click the entry.<br>
Your effects chain should now look like this and you should be able to hear yourself if you are listening to the output of the program (this can be done by changing the out device in the previous section to your default device, by listening to local loopback in Mumble in the audio wizard or just trying it out with someone). If you can only hear your voice on one ear, choose the correct channel in the line input by selecting L, R or L+R.<br>
<img src="https://underhound.eu/tzer0/public_www/rvm/lineinput.png" alt><br>
Then we add our voice modulation software by searching for RoVee and double-clicking that. You should now be able to click on the button Ext. Editor on the RoVee effect and get the editor window up for the plugin so you can tweak the effect. You can also click the buttons to the left of where it says &quot;MaleToFemale&quot; to cycle between the presets.<br>
<img src="https://underhound.eu/tzer0/public_www/rvm/rovee.png" alt><br>
I've provided this setup as <strong>BasicInputAndRoVee.xrns</strong>.</p>
<h6 id="advancedsetup">Advanced setup</h6>
<p>Continue from the previous step and right-click in the red box.<br>
<img src="https://underhound.eu/tzer0/public_www/rvm/toggles.png" alt><br>
All your tracks except for one should now read &quot;OFF&quot; like this:<br>
<img src="https://underhound.eu/tzer0/public_www/rvm/toggles2.png" alt><br>
This means that every single track except for Track 02 cannot make sound and since effects are associated per track, we can have different presets ready. Make sure that Track 02 is selected (yellow corners as seen in the screenshot just above this text), add a line input and then a ringmod. Your voice should now sound robotic. Try dragging the note-slider and other sliders to change the pitch. Dry/Wet describes how much of the original sound is preserved when passing through that effect. In this case, only 25% of the original sound is preserved.<br>
<img src="https://underhound.eu/tzer0/public_www/rvm/ringmod.png" alt><br>
Now try right-clicking the OFF below Track 01, your voice should now go back to whatever you set up in the basic setup.<br>
This setup is provided as <strong>MultiTrack.xrns</strong> in the zip provided.</p>
<h6 id="stackingeffects">Stacking effects</h6>
<p>You are not limited to one effect per track.<br>
You can add multiple and it will sound really weird.<br>
An example has been provided as <strong>Stacked.xrns</strong>.</p>
<h6 id="moreexamples">More examples</h6>
<p>See <strong>PresetPacks.xrns</strong> for more examples of weird setups. <a href="https://underhound.eu/tzer0/public_www/rvm/PresetPack.mp3">Here's me</a> saying a cheesy phrase using each of them.</p>
<h5 id="furtheruse">Further use</h5>
<p>You can also use Renoise as a soundboard or compose your own pieces and play them over voice chat. However, I will not cover this here as that is basic Renoise usage and should instead be learned through their tutorials which can be found <a href="https://www.renoise.com/tutorials">here</a>.</p>
<h5 id="thanks">Thanks</h5>
<p>Huge thanks to the creators of Virtual Audio Cable, Renoise and RoVee for making this possible - you all rock!</p>
<h5 id="questionsandanswers">Questions and Answers</h5>
<p>Q: I can't hear anything, what have I done wrong?<br>
A: Debugging:</p>
<ul>
<li>Can you see activity in Renoise (moving volume bars etc), if not, you are probably using the wrong input, your track is disabled or your line input might be disabled.</li>
<li>Check that you have actually assigned the correct output device.</li>
</ul>
<p>Q: I get a failure when opening one of your samples, is this a problem?<br>
A: You are probably missing epicVerb, this isn't a problem - it just means that you won't have huge echo-ey effects.</p>
<p>Q: I added epicVerb and it sounds really weird, how do I fix this?<br>
A: Click Ext. Editor, hold and click on the DRY : WET-wheel and pull the mouse downwards until the wheel is turned almost all the way to the left.</p>
<!--kg-card-end: markdown--><!--kg-card-end: markdown-->]]></content:encoded></item><item><title><![CDATA[Global Game Jam 2016]]></title><description><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>I participated in <a href="http://globalgamejam.org/">Global Game Jam 2016</a> with a bunch of friendly people. The theme was &quot;ritual&quot;, so we made a game about a time-looped ritual with weird objectives. It works - sort of. We are lacking some mechnics, most notably: characters that die don't get removed which</p>]]></description><link>http://underhound.eu/global-game-jam-2016/</link><guid isPermaLink="false">59fdaca3f44c9500014a2d5e</guid><dc:creator><![CDATA[TZer0]]></dc:creator><pubDate>Sun, 31 Jan 2016 18:19:56 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>I participated in <a href="http://globalgamejam.org/">Global Game Jam 2016</a> with a bunch of friendly people. The theme was &quot;ritual&quot;, so we made a game about a time-looped ritual with weird objectives. It works - sort of. We are lacking some mechnics, most notably: characters that die don't get removed which was both a problem and a source of comedy as the room in the game got overcrowded.</p>
<p>The game and full team can be found <a href="http://globalgamejam.org/2016/games/rewind-ritual">here</a>.<br>
The source code can be found <a href="https://bitbucket.org/eivhyl/ggj16-room">here</a>.</p>
<p>I made the music and sound effects for the game as well as the systems for playing these.<br>
The music can be found <a href="https://soundcloud.com/tzer0/dark-cheese">here</a>, <a href="https://soundcloud.com/tzer0/dark-menu">here</a> and <a href="https://soundcloud.com/tzer0/dark-cheese-filtered">here</a>. All three files can be downloaded as FLACs <a href="http://underhound.eu/tzer0/public_www/renoise/Flacs/Rewind%20The%20Ritual.zip">here</a>.</p>
<p>The music system fades between the main game theme and the filtered one automatically so that the music &quot;amps up&quot; when you're playing. It also aligns a special effect that tells you how much time you've got to the beat except for the first round where it messes up and hits about 0.3 s off. I also ended up making baby noises for the game in my room - I wonder if my neighbour heard me.</p>
<p>I also got the best error message I've seen in a while:<br>
<a href="http://i.imgur.com/NiFQe5B.png"><img src="http://i.imgur.com/NiFQe5Bl.png" alt="Error message"></a><br>
The bad part was that the folders existed. Windows was unable to delete it so I had to write a bash-script to flatten the structure.</p>
<!--kg-card-end: markdown--><!--kg-card-end: markdown-->]]></content:encoded></item><item><title><![CDATA[Ludum Dare 33 - afterthoughts]]></title><description><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>I participated in Ludum Dare 33 with <a href="http://skyfishart.com/">Skyfish</a>.</p>
<p>The game can be found <a href="http://ludumdare.com/compo/ludum-dare-33/?action=preview&amp;uid=26006">here</a>.</p>
<p>I will not describe how it was made, but rather what I learned and experienced while using the tools I had. The relevant Unity Project can be found <a href="http://underhound.eu/tzer0/public_www/Ludum%20Dare/Pokemen%20%28LD%2033%29.7z">here</a>, but I advise against looking at it</p>]]></description><link>http://underhound.eu/ludum-dare-33-afterthoughts/</link><guid isPermaLink="false">59fdaca3f44c9500014a2d5c</guid><dc:creator><![CDATA[TZer0]]></dc:creator><pubDate>Mon, 24 Aug 2015 22:37:30 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>I participated in Ludum Dare 33 with <a href="http://skyfishart.com/">Skyfish</a>.</p>
<p>The game can be found <a href="http://ludumdare.com/compo/ludum-dare-33/?action=preview&amp;uid=26006">here</a>.</p>
<p>I will not describe how it was made, but rather what I learned and experienced while using the tools I had. The relevant Unity Project can be found <a href="http://underhound.eu/tzer0/public_www/Ludum%20Dare/Pokemen%20%28LD%2033%29.7z">here</a>, but I advise against looking at it if you are a programmer. Or someone trying to become one.</p>
<p>However, I will describe what could've been better and how I intend to tear through the coding bit in less time next Ludum Dare.</p>
<p><a href="http://i.imgur.com/8PxniQ3.png"><img src="http://i.imgur.com/8PxniQ3l.png" alt="One of the funnier glitches while working"></a></p>
<h4 id="aweekendwithunity">A weekend with Unity</h4>
<p>The day the theme was announced, I met with Skyfish and another person that ended up not contributing to the project. I had laid out a plan before I got there. Grab a language I know (Python), use a framework resembling one I've used before (Cocos2D), make a game and use the spare time to make music assets. Easy-peasy.</p>
<p>This sounded like a great plan up to the point where Skyfish made me aware the fact that web deployment is a de facto requirement for (more) people to play your game. After half a day of testing various setups, I ended up going for <a href="https://unity3d.com/">Unity</a> with C#. At least it deploys straight into the browser I thought.</p>
<p>This had the following consequences:</p>
<ul>
<li>I had to work from home. My laptop only runs Linux and the Unity Editor doesn't run on Linux without some serious work. This was a serious problem considering that Skyfish was responsible for a meetup related to LD at a hackerspace. This split our team in half.</li>
<li>General frustrations with the Unity Editor. In my opinion, the Unity Editor has some of the most clunky workflows I have ever seen in a program. Ever. A few examples:</li>
<li>To rename an item in your project, you must know the appropriate key (F2, yes, I am not making this up). There is no right-click menu item and the items do not respond to two slow left clicks. <strong>I seriously do not get this design decision.</strong></li>
<li>To create animations, the sprite you want to use has to be in the frame. The same goes for creating prefabs.</li>
<li>When creating an animation, the Unity Editor also creates an associated animation state machine. You only need one per character/object, not one per animation.</li>
<li>General silliness in regards to how you end up structuring your scene. It is very typical that you end up with an otherwise empty GameObject containing a script that acts as a &quot;GameController&quot; that does certain centralised actions such as triggering menus and other things. You can't attach this behaviour to the scene itself.</li>
<li>You end up feeling dirty for using the prefab-system. It feels like a corrupted version of dependency injection.</li>
<li>I'd estimate that the Unity Editor crashed on me at least 10 times while working. This may or may not be my PC's fault.</li>
</ul>
<p><a href="http://i.imgur.com/namlqEw.jpg"><img src="http://i.imgur.com/namlqEwl.jpg" alt="My workspace"></a></p>
<p>All in all, I didn't have time to do everything I wanted to and the resulting project isn't exactly optimal. I made sound effects for the game, but unfortunately I had no time at all for the music so I re-used some stuff I had made before.</p>
<h4 id="futureplans">Future plans</h4>
<p>This has been a very valuable experience and I now know how to prepare for the next Ludum Dare.</p>
<p>Well in advance I need to have boilerplate code ready consisting of C++ and SDL (or some other graphical framework) that I know successfully compiles to JS+WebGL through <a href="https://github.com/kripken/emscripten">Emscripten</a>. Preferably on as many OSes as possible. C++-to-JS projects already exist and there's a long list of them that can be found <a href="https://github.com/kripken/emscripten/wiki/Porting-Examples-and-Demos">here</a>. I tried tweaking one of them, but the code was hard to get through (this was before I went for Unity).</p>
<p>While the Unity Editor offers some great debugging features (this is not to be underestimated), I really feel that for a setting like Ludum Dare it is more important that you can do more things faster using something that does exactly what you need with really simple workflows. To mitigate the lack of debugging tools, you can make your own. For instance: add an integrated webserver + websocket that provides access to ingame variables/functions.</p>
<p>I will publish my entire boilerplate code for everyone to use on my <a href="https://github.com/tzer0">Github</a>-account some time prior to Ludum Dare 34 if I intend to participate.</p>
<!--kg-card-end: markdown--><!--kg-card-end: markdown-->]]></content:encoded></item><item><title><![CDATA[Welcome to underhound.eu]]></title><description><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>This blog will detail things that I make, contribute to or otherwise care about.</p>
<p>For now, you can check out the following:</p>
<ul>
<li><a href="http://underhound.eu/tzer0/public_www/project-war-archive.zip">Project War (Windows)</a> - work in progress turn-based-strategy (source coming soon)<br>
<a href="http://i.imgur.com/XAieAgo.png"><img src="http://i.imgur.com/XAieAgol.png" alt="Project War screenshot"></a></li>
<li><a href="https://tzer0.bandcamp.com/album/24-h">24 h</a> (<a href="http://underhound.eu/tzer0/public_www/renoise/Flacs/24%20h.zip">free download</a>)</li>
<li><a href="https://github.com/PongUIO/FinalShot">FinalShot</a> - source code for a simple 2p tank game made in python</li></ul>]]></description><link>http://underhound.eu/welcome-to-my-blog/</link><guid isPermaLink="false">59fdaca3f44c9500014a2d5b</guid><dc:creator><![CDATA[TZer0]]></dc:creator><pubDate>Sun, 03 May 2015 17:35:14 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: markdown--><!--kg-card-begin: markdown--><p>This blog will detail things that I make, contribute to or otherwise care about.</p>
<p>For now, you can check out the following:</p>
<ul>
<li><a href="http://underhound.eu/tzer0/public_www/project-war-archive.zip">Project War (Windows)</a> - work in progress turn-based-strategy (source coming soon)<br>
<a href="http://i.imgur.com/XAieAgo.png"><img src="http://i.imgur.com/XAieAgol.png" alt="Project War screenshot"></a></li>
<li><a href="https://tzer0.bandcamp.com/album/24-h">24 h</a> (<a href="http://underhound.eu/tzer0/public_www/renoise/Flacs/24%20h.zip">free download</a>)</li>
<li><a href="https://github.com/PongUIO/FinalShot">FinalShot</a> - source code for a simple 2p tank game made in python + pygame</li>
<li><a href="https://bitbucket.org/TZer0/crawl-docker">crawl-docker</a> - rapid deployment of a community Dungeon Crawl Stone Soup server (please help!)</li>
<li><a href="https://soundcloud.com/tzer0">My SoundCloud</a></li>
<li><a href="https://github.com/TZer0">My GitHub profile</a></li>
</ul>
<!--kg-card-end: markdown--><!--kg-card-end: markdown-->]]></content:encoded></item></channel></rss>