Game Engine Revolution!

Epic Games released Unreal 4 for $19 a month and Crytek has announced $10 a month for use of the CryENGINE. Hopefully Unity will take note of this and reduce their monthly subscription cost. Even so, great things are happening in the world of game development! I predict that the next 5-10 years are going to be a new golden era for gaming. I think we’re going to see rapid changes to the design patterns we’re all used to seeing for years now. I can’t wait to see what the next decade brings!

Learning Haskell: Simple Hangman Game

I’m currently taking an Introduction to Discrete Structures course at the University of Arizona that introduced me to PROLOG and after learning the basics of that language I decided I wanted to give functional programming another go. This time, I actually have got something working. Unfortunately WordPress doesn’t have syntax highlighting for Haskell specifically, but it at least highlights certain keywords. EDIT: I’ve updated the code with type-definitions and removed some redundant parenthesis thanks to a some helpful redditors.

The source code is viewable on Github here.

Mini-Review of the Blue Snowball Microphone

I recently purchased the blue snowball from Amazon and I thought I would collect my thoughts on the product here.

Build Quality: Overall the microphone is very sturdy and the stand is not wobbly on my desk at all. The stand screws firmly to the base of the microphone and can be adjusted for height in a range of about 3 inches. The USB cable included is very thick and feels high quality as well. Also, it fortunately uses a standard Type B to Type A termination USB cable (similar to those used by printers and cable modems.) I always appreciate when companies use universal standards for cables as replacing them should something happen becomes a lot cheaper and easier.

Sound Quality: Very high quality. I admit my ears are not tuned to the wide range of condenser microphones out there but I would say that the sound quality is more than adequate for pod-casting, commentating, and bedroom studio production. A pop filter may be well advised if you use it in a semi-professional setting as with most condenser microphones.

Drawbacks: There aren’t many drawbacks to this microphone (given its price at the time of writing this article is around 65 dollars.) However, the primary downside is lack of zero latency monitoring. If you are someone who needs to hear yourself play or sing in your headphones while recording then I can’t recommend this microphone to you. Due to it being USB there is a noticeable delay which makes it hard if not impossible to record while listening to yourself. However, every other microphone I’ve listened to in the sub-100 dollar range that had zero-latency monitoring sounded subjectively worse in quality than the blue snowball which is why I went with it over its competitors (like the Audio Technica ATR2500 which has ZLM.)

Overall, I’m glad I finally decided to buy a “real” microphone and my friends are too as they can actually hear me over voice chat now! I would give this microphone an 8.2/10. If ZLM was added I would revise my score to a 9.1/10.

New update for Super House of Dead Ninjas Coming Soon!

Pretty sweet news, in my opinion. I enjoyed the hell out of that game but my one complaint was that it was a bit short. Having widescreen support will definitely be welcome as well and will help to detract from the “flash game” vibe that I get when playing it.

Wang Tiles in Python

After reading about others’ development strategies for the 2013 7DRL I stumbled upon a post by one developer who mentioned off-handedly using Wang tiles for the level generation in his game. Naturally, my interest was piqued as I have always been interested in procedural generation and never had heard of this concept before. After searching I found a rather sterile Wikipedia entry followed by this rather useful article on the topic. The core idea of Wang tiles is that as long as all the edges of each tile in a tiled surface match the edges of their neighbors the tiles will appear congruous and can be used to add complexity to a texture or game easily.

Interestingly enough, it’s also easy to generate an entire grid and fill it with Wang tiles. You can place the tiles row by row and you only need to ensure each new tiles’ connected edges match the tiles already laid down above and to the left of it (if those tiles exist.) Otherwise, you can use any tile in the set. I decided to implement my own Wang tiles system using pygame. As you can see, the implementation is straightforward and allows for easy expansion for adding more side-types (currently having two: closed or open.) I’ve added a snippet of the resulting image generated by the program below. Wang tiles are a very interesting, and simple, concept. I’m glad I discovered them as I’m sure I’ll put them to good use in the future!

Day 7 Conclusion

A sample of combat in the game

A sample of combat in the game

Well, Day 7 has come and gone and I’m glad to say that I have something playable at least. It’s not the most fun and is mostly luck based but it’s something. I may keep working on this game anyways (especially if anyone likes the game or at least the vision behind it.) It’s a very simplistic completely text driven game. Some key features: menu system, limb simulation, detailed text based combat. My thoughts on why I wasn’t able to complete a more advanced game in the time-span are detailed in this post. I would definitely like to compete in a future 7DRL and I will likely compete in the upcoming LudumDare so I have that to look forward to! The game (which is also the source, thanks to Python) is available for download here. You need to have Python 2.5-2.7.3 (2.7.3 being the version I used to develop the game) to be able to play. I tried to get Python 3 compatibility working however Unicurses would not cooperate with me and I didn’t have enough time to try to figure out why. If anyone needs help getting the game to run feel free to post a comment to this post and I will help you as soon as possible.