My entry for Ludum Dare 32: Death Cycle – Links & Post Mortem

TL;DR: Check out my game prototype ‘Death Cycle’ here!

It has been a long weekend, but I created a playable prototype under this Ludum Dare’s theme: An Unconventional Weapon!

You know what happens, when you throw items into a running washer? Always wanted to know? Transform this useful household utility into a weapon of destruction!

Get cash for causing chaos and upgrade your washer or buy even more deadly things to throw into the drum!

screenshot1 screenshot3

Let’s do a quick Post Mortem, shall we?

This time I might have took on a bit more than I could chew, but in the end I was able to create a playable prototype; I wasn’t able to bring the prototype to the polished state that I would have seen it, but I am quite proud of what I have achieved in the little time I had available.

I have not worked with Unity 5 (or Unity’s new UI system that was introduced in 4.6) prior to this jam and encountered some deprecated functions and some UI behaviors. I still don’t fully understand every aspect of the UI (especially proper scaling of UI elements over different resolutions), but I learned a lot and I think I should be able to figure out the rest soon.

This time I also opted for plenty of sleep and a bit of social interaction during the weekend, instead of burning myself out. You have to allocate a whole weekend for it and if you burn yourself out, you will be pretty much useless on Monday or even more days, depending on how little sleep you got. I had to catch up with some work today, so I am glad I did not overdo it.

Taking a more relaxed approach somewhat forced me to go into overdrive on Sunday, leading to very sloppy code that would make myself shudder, if I was to take a look at it right now. I still streamed for the most part and enjoyed that. Thanks again to everyone who came by and tested builds for me!

Overall have worked roughly 18-20 hours on this prototype and if I would have committed more time to it, I definitely would have been able to polish the game a bit more.

What did I learn this time?

  • Focus on the key parts first. No really, don’t do too much cutsie stuff , before the prototype isn’t running. I know it is tempting to create a cute tophat for your washing machine, but maybe make sure that the game is having all the features it needs first.
  • Creating the 3D low poly assets and the artwork for the game was much faster (and more fun) than I anticipated. If you are willing to let mistakes go and just go with a not-perfect asset, you can create a lot of content in a short amount of time. A quick & dirty look can be fine, as long as it is consistent.
  • I really, really enjoy game development and I am gaining a footing with C# and Unity 5.
  • Make a detailed to-do list. List all the assets you will need and then work through them. You might think, this will just waste time, but if you have a to-do list to work through, you will less likely be distracted by another task or forget something.
  • Coming up with fun ideas before the compo started (see below), helped me to get into the mood, but also alleviated the stress of a “What if they pick a theme, I have no ideas for?”-scenario and gave me some time to get started with the game right away. After last time, where I had a total mental block, this really took the edge off.

screenshot4 screenshot2

I will definitely try to participate in the next Ludum Dare in August and I look forward to the other participant’s games! (Check out ZanzLanz’s entry! It’s awesome!)

You can download the game or play the web version off it on the

Ludum Dare entry page

I also condensed 20 hours of me streaming and working on my Ludum Dare entry into a 10 minute video! Check out ZanzLanz, if you enjoy the music!

Ludum Dare 32 coming up: Theme Voting Finale!

This weekend I will be (hopefully) participating on the Ludum Dare 32 – the 48 hour game jam / competition with thousands of participants! I always get a little giddy when it comes to this time, and I enjoy participating in it and just finishing up a small prototype in this limited timeframe.

Currently the Finale Round Theme Voting is running and this is my first chance I got to look at some of the contesting themes and I will try to brainstorm a few ideas… Last time I waited until the topic was announced to come up with an idea, but had a total mental block and gave up midway. I will sit down tomorrow and try to come up with a few specific ideas, preparing myself for the weekend!

If you guys are interested, here are my previous Ludum Dare entries:

30802-shot0.jpg-eq-900-500

  • Planetary Marriage Counseling in August 2014 with the theme “Connected Worlds” ranked #40 out of 2538 entries.

30802-shot0.jpg-eq-900-500 (1)

  • Me & My Metal Detector in April 2014 with the theme “Beneath The Surface” ranked #157 out of 2496 entries.

Just like the last two times, I will be on my Twitch Stream the whole time and answer questions and let my viewers playtest early versions (if possible!), so make sure to say hi!

Update: If you are curious how it went on Ludum Dare 32, go ahead and check out my post about my entry ‘Death Cycle‘, which includes a Timelapse and a Post Mortem!

Twitch Plays Chess – Python Script for Twitch Bot

After having some fun letting my Fish Play Piano and then letting Twitch play some Battle Chess with OpenTwitchPlays, I figured, that I would get back into Python and write my own little bot. The NES chess engine of Battle Chess was not very impressive. After a long night and a lot of coffee, I had my bot running thanks to some tutorials and plenty of documentation on Python on the internet.

Twitch Plays Chess Screenshot

I took the scripts from Make your own Twitch-Plays stream by Wituz as a starting point and improved on some functions (like being able to join a different channel than your username) and console output. I then added my features for clicking and dragging to interact with the UI of Lucas Chess (Windows) as well as the required !move command for players to specify coordinates. The script does only emulate player input and can therefore not output and results or give feedback on false input other than the proper use of syntax.

To avoid trolling (by just restarting a running game), I have added a simple voting system, which can be easily modified. You can use this script as a framework for your other games by removing everything related to the chess software and modifying it for your needs. If you need to emulate a longer button press for your game / emulator / tool to react properly, you can add the keyholder.py as outlined by Wituz to your script.

I have run into some problems with Lucas Chess and its very inconsistent UI, so if you intend to run another chess software, maybe check out something that supports hotkeys, so you can ideally avoid the mouse inputs since they are prone to problems. 🙂 I would love to see someone else having fun with these scripts!

Python Scripts:

  • main.py – This is where you control your bot behavior and add / remove commands
  • twitch.py – You won’t have to modify this script, main.py requires it, though.
  • Software Used:

  • Lucas Chess (or the game that you want to play)
  • Python with PyWin32 (I’ve been running / recommend 2.7 for this)
  • The FANTASTIC Python IDE PyCharm
  • Fish Plays Piano falls short – Twitch Plays Chess instead!

    Sometimes I get this little voice inside me, that wants to do something completely different and just ignore all the things I have to do and take care of. Apparently this time it was to make a fish play music! (Yes, I am an adult!)

    This weekend I did not get to record for my YouTube channel or do anything else that you could call “useful”. Because I was playing around with some concept for a new Twitch channel. My first try to put my fish Stumpy in front of the camera and let him play the piano, worked after roughly 12 hours of work. But due to their inability to play beautiful melodies and lay around a lot of the time, kinda turned out to be … not that interesting. I’d much rather watch a human play the piano on stream 😀

    The implementation was surprisingly easy with the help of MATLAB’s image processing features and Arindam’s blog post / template I could work with. I did some minor tweaks to the script, mainly in the form of dividing the screen into a grid and checking the coordinates from the blob with said grid and then sending keystrokes to a online piano tool.

    After I streamed this for a while, I decided I would try out something along the lines of “Twitch Plays Pokemon”, just with a different game: Battle Chess! I spent a few hours trying to set up the system with some Python scripts, with no luck (Getting Python & PyWin32 to run on my system was a headache).

    I then looked a bit further and found an open source tool called OpenTwitchPlay. The implementation was fairly easy and the stream was up and running in half an hour and seems now to run stable. I will have a closer look at the source code and see if I can modify it to fit it the channel; other chess software is also something I am considering, since this would maybe allow more complex commands. Luckily I have a dedicated system for the stream (It’s my German notebook, that I won’t be able to sell here heh)

    The Stream is currently running for 20+ hours and so far Twitch lost 2 times against the (slightly slow) NES AI. Currently it picks up in pace and some dedicated viewers are taking on the challenge of beating the AI. It certainly is going to be tricky, when more player are going to join the stream, but so far it’s been a blast watching them and listening to Nectarine Demoscene Radio. (Haha, please ignore the April Fools Bieber theme)

    Chess is very much like Starcraft 2 for me: I enjoy playing it once in a while, but I don’t have the perseverance to get really, really good at it; Since I love tinkering on stuff like this, I am looking forward to improving TwitchLovesGames!

    Game Guru – The Easy Game Maker?

    I am giving away a Steam key for GameGuru! If you want to join the raffle, scroll to the bottom of the post and enter there!

    Not too long ago, I was contacted by the developer The Game Creators, to check out their engine GameGuru. It is available on Steam for ~20$. After some initial fun with it on my stream, I figured I would give it a closer look and do a quick introduction / first impression video on the engine. As a game developer with experience, I can not be considered an absolute beginner, so I have other standards. I tried to stay as open-minded as possible, with an absolute beginner as the end user in mind.

    Note: GameGuru is an early access title on Steam, so updates over time, might resolve issues I might have encountered with the engine.

    I also wanted to leave a few additional words here on my blog, for anyone seeking more information.

    GameGuru states to be the easiest and most enjoyable game creator out there. I will have to say, that you will be able to create game quickly IF you accept a few limitations.

    • You will only be able to build first person games. There is no easy way to switch to another perspective or control style, if at all.
    • Indoor levels can only be created with pre-made parts.* If you want anything kind of geometry, you will have to build that in a 3d modeling program and import it into the game. If you have no experience with the creation of games, chances are, you won’t be able to do that as well.
    • The editor allows editing only top down, which makes placement of items, enemies and geometry tricky. Sometimes you can’t see what you create with the terrain tool until you are in the game. You can make changes to the game while you play it, this feels very finicky and impractical. I would love to be able to tilt the editor camera. I assume it has been left out to keep it very straightforward and less prone to problems.
    • You won’t be able to easily edit standard behaviours of your character*, those of enemies or certain events in the game; this will require to work with the LUA system in the background and at that point I feel you can as well learn to work with other (free) engines like Unity or GameSalad.
    • The performance is bad. I run a pretty might right and as soon as I encounter 10-20 enemies at the same time, and my system slows down drastically. For most use cases with this engine, this won’t be an issue; I am just pointing it out.

    I think that this engine is a fun little tool to play around with for kids or someone that is thoroughly intimidated by the thought of writing a line of script or code and that can work with these limitations that I listed above.

    * Since GameGuru is currently in Early Access, many of the features that are planned are not available yet. It might be worth, checking out this tool later down the line with the following additions made to it:

     

    • Character creator – personalise your game characters using this simple creation tool
    • Construction Kit – the ability to easily create building structures for your games
    • Improved AI & gaming techniques
    • Enhanced explosions and particle effects inc fire/smoke
    • Under water swimming and effects
    • Lazer weapons for Sci-Fi games, Spells for Fantasy games
    • HUD systems; compass tool, map, inventory
    • Melee attack & other combat & interaction game choices
    • Extra characters and game assets”

     

     

    Additional links:

    How to record a Let’s Play? Recording software to capture your gameplay!

    I am certainly not an expert on the different tools out there to record your gameplay footage, but I can at least tell you what I use and why I am using it. I would first split up the available software into recorders which are mainly intended for streaming and then those for recording gameplay without any streaming capabilities. Since they can offer features for both purposes, the lines blur a bit at times.

    XSplit or its free open-source alternative OBS are two tools to record your gameplay, while also being able to stream it (even simultaneously) to services like Twitch. These tools will leave you with smaller file sizes if you plan to upload them without any further editing. Due to their nature as streaming software, the quality of the recorded gameplay will be lower than an high-quality recording with other tools. These tools will also leave you with one single file, rather than several, which severely limits your ability to do editing afterward (except simple cuts). You will not be able to adjust the audio levels afterward, so these tools have to be set up perfectly to get the best results. An added benefit of these tools is that you can directly record your webcam with the game, which makes syncing up your video to your game & audio unnecessary; but keep the downside in mind, that you can’t edit the footage very well.

    Bandicam, DXtory or Action! (just to name a few), can record gameplay and audio in several tracks (your microphone and the game audio), enabling you to balance to levels afterward and give you better editing abilities. Especially if you don’t have a high-quality microphone or just want to improve your audio quality with effects later, you want to use one of these. These tools will also generally allow higher quality recordings, so if you plan to edit your videos and render them again, I would highly recommend these over the previously mentioned streaming tools for recording. Except Action!, you won’t be able to use these for streaming. (I haven’t heard much about the streaming functionality, so I can’t say much about it. They have a 30-day trial, if you are interested.)

    Bandicam and a few other tools have a way to overlay your gameplay with your webcam, so you won’t have to sync up the footage later on, but I recommend not using these options and using your manufacturers recording software instead. Since most people have Logitech Webcams, this will probably be the Logitech Webcam Software. Other tools for recording your Webcam exist, but this one will do the job. If you want effects, you should add these later!

    screenshot xsplitSo what do I use? I am sure a few friends of mine will now cringe… I use XSplit most of the time since I record a lot of series and I save a lot of time not having to render them again. Since I can apply an equalizer and compressor directly to my microphone feed, thanks to my new interface, I don’t need the audio tracks separated to apply effects. I should mention, as much as I like XSplit, it took me a lost of lost footage and frustration until I got myself conditioned to do test recordings for the audio levels. If your game audio is too loud or your microphone set up the wrong, there is pretty much nothing you can do about that. So if you go ahead and use one of these tools, make sure to test, test and test. Not having to use a separate software for streaming, is another bonus for me, since I now know my way around XSplit after over a year of use. I tried OBS for a while, but I am more than willing to pay the 5$ per month for this tool.

    If I want higher quality footage and separate tracks for later editing, I will pick Bandicam – it works very well in most cases and its new version presents the settings very well, and it offers good value for the price. I heard good things about DXtory and Action! And the free tool LoiLo looks promising, I just haven’t used any of these myself, so I can’t comment on these.

    So what should you use? I would advise against Xsplit for Beginners, not only because of the licensing costs but also because of the inability to edit your footage afterward. Editing something I recommend to beginners – it will take longer, but it will improve your content if you take the time to watch and edit your recordings again. XSplit will give you a finished video that you can upload directly to YouTube without editing it, but unless you do series where you don’t intend to cut anything, it will severely limit your ability to improve your footage after recording in post-production. If you plan to stream, I would recommend checking out OBS first, and if you are happy with it, you can save a few bucks per month – your viewer won’t be able to tell what kind of software you are using, and they both work flawlessly.

    I hope I could give you some ideas about recording your gameplay footage and let me know if you have any other questions!

    If you want some more information & comparisons on video game recording software, it might be worth checking out these links:

    What software do you guys use and why do you prefer it over other tools?

    YouTube Tip: Set as official series for this playlist

    YouTube is surprisingly good at sneaking in features, without telling anyone. One of these, that I stumbled upon a few weeks ago is the new Series playlists feature that you can enable for your playlist. It is a great feature, that will help you retain viewers and make it easier for them to find your content. This comes especially handy for my gaming series and I am sure you will be able to make use of it as well. I have seen many creators, not setting up their playlists like this yet; probably because they don’t realize this feature exists.

    What does ‘Series Playlist‘ mean? Let’s say a viewer finds your series on YouTube through the search (not the playlist) and starts watching the video. Before ‘Series Playlist‘ was a thing, you had to make sure to present follow up episodes to the user in one way or the other, because you could not always rely on YouTube to automatically suggest the next part in the suggestions on the left side.

    If your next part does not get suggested or you offer your viewer another way to find the next part in the series, chances are, the viewer will just click the next interesting thing and not follow your series (unless he really is into it, but then he will have to search for it).

    What you had to do before that, was to make sure there is a link in the description to the next part and / or you have an annotation linking to the next part in the video itself. Alternatively adding a playlist to the description did the trick too, although not as convenient. I still recommend doing those things, but now you can increase the odds, your viewer follows along the series!

    To enable this feature for your playlist, follow these simple steps:

    • Open your playlist that you wish to edit and click the “Playlist settings” button below the title

    playlist settings

    • In the little pop up window, check the option ‘Set as official series for this playlist’ and then hit save.

    set official

    You are done! Yes, that was all – you enabled the awesome functionality of that feature! Now when a user finds your video, YouTube will add the next part in the series above all suggestions with the note “Up Next” and automatically play the next part, if the user has this option enabled via the slider.

    up next

    There are a few requirements that you need to meet:

    • You must have a verified account in order to use series playlists. Verifying just requires a phone and you should do this anyway to get the full potential out of YouTube!
    • A video cannot appear in more than one series playlist. So make sure to not have several playlists with the same videos and set them all as official.
    • Only videos uploaded by you and that you have the rights to can be added to a series playlist.

    I hope this tip helps! It will certainly make it easier for your viewers to follow along the series and hopefully make them watch more of your videos!