Infiniminer v1.5

Infiniminer v1.5 is now out, available here.

  • There is now a server browser! To make your server public, MAKE SURE THAT PORT 5565 UDP IS ACCESSIBLE OUTSIDE YOUR NETWORK and then set the public flag in the server config to true. Junk servers WILL be blacklisted.
  • Made kick command IP based, added a ban command with a banlist stored in banlist.txt.
  • A random hint will display for your edutainment as you connect to a server.
  • Fixed the beacon bug, where beacon info wasn’t sent to players joining later in the game.
  • The red/blue colors for text are now easier to read.
  • Added a sexy new title screen.
  • Added a North mark on the radar screen.
  • You can now connect to host names, in addition to using Ctrl-V to paste an IP/hostname into the direct connect field.
  • You can now use the numpad!
  • Fixed some random crashes.
  • Gold veins are now bigger and thicker, but gold is only worth $100 per block.
  • Miners now carry 8 loot, everyone else carries 4.
  • All classes can dig by holding down the mouse button, but miners still dig much faster.
  • TNT now blows up other blocks of TNT, regardless of who owns them.
  • There is now a sandbox mode that can be enabled for the server, giving free blocks and no win condition.
  • There is now a work-around for the AllocateFormatAndData, the nosound flag in the client config.
  • Bloom lighting makes everything prettier! Lava textures are animated now too!

This is probably the last major update for Infiniminer.

Infiniminer v1.4

Infiniminer v1.4 is now out, available here.

  • Added beacon block, which creates unique signature on your team members’ radars (50 ore, Engineer, Prospector).
  • Added road block, which allows you to travel twice as fast (10 ore, Engineer).
  • All radar signals now have relative altitude information.
  • Ladder blocks now cost 25 ore to build (previously 10).
  • Jump blocks now cost 25 ore to build (previously 30, and before that 50).
  • The miner can now only hold 200 ore.
  • Default win condition now 10k with a less random total loot amount.
  • Fixed “string crash” related to volume parameter.
  • TNT now destroys lava blocks!

Infiniminer v1.31

Infiniminer v1.31 is now out, available here.

  • Adds volume control parameter to client configuration file.
  • Might fix some “missing key” crashes for the client.

Hey man, he was in my face.

by Zaiden, found on the VGCats forum


That’s right boys and girls – Infiniminer is now available! To play, you’ll need the installer below, the XNA 3.0 runtime (linked below), and maybe the .NET 2.0 runtime (linked below, although you probably have it).

Download Infiniminer v1.5 [1.45 MB]
Download XNA 3.0 Runtime
Download .NET 2.0 Runtime

There’s a README with some basic information, although you can find everything there is to know by holding F1 while in-game. Keep in mind that this is a networked multiplayer game, so you won’t have a lot of fun playing it by yourself.

Make sure you configure your client (name, resolution, etc) by using the “Edit Client Configuration” shortcut, which can be found under the Zachtronics Industries folder in your Start Menu after installation.

Fixing the AllocateFormatAndData() Crash
Open Source Project Information

Thanks go out to Chris Gengler ( for helping with the artwork.

The official IRC channel for Infiniminer is #infiniminer on Freenode. You can easily join by using this java IRC client, which will take you automatically to the channel.

Design a Game for Engineers

I’m spinning up on a project related to the Games for Engineers series that, if everything turns out, will take it to the next level. What does this mean for you guys? It means it’s CONTEST TIME!

  • Your task is to design a game for the Games for Engineers series.
  • You don’t actually need to know anything about making games – all you need is a good idea!
  • The minimum that will be accepted is a strong concept. Thinking through rules and designing example levels will greatly increase your chances of winning.
  • You should not program anything or create any artwork beyond concept drawings.
  • If your design is chosen, you will be given the option to temporarily join on with the Zachtronics Industries team and make your game. Terms will be discussed at this time.

All submissions should be emailed to me at by April 30th, 2009. If you have any questions, feel free to contact me by email or in the comments.

Unicode comments bug fixed!

There was a “feature” in the textile formatting code that replaced an ‘x’ surrounded on both sides by numbers with an ‘


Three days ago I posted a cryptic picture of a distinctly Soviet looking transistor. But what did it mean?


Launch KOHCTPYKTOP: Engineer of the People (640×640)

In KOHCTPYKTOP: Engineer of the People, you play as an engineer working in a semiconductor factory designing integrated circuits based on specifications provided to you. What does it have to do with communism? You’ll have to play to find out!

A few notes about the game:

  • This game is actually quite difficult; while you don’t need to know anything about electronics to play, being familiar with some of the concepts will definitely help in the later levels, as most of them are based around real-life circuits. Wikipedia is your friend.
  • The music playing is tracks one and five from CŒDES Pierre-Marie’s SYMPHONIE N°2 available on
v1.1: Fixed verification test for KT141AO and fixed a bug where two-input PNP gates would trigger despite one input being high.
v1.2: Fixed verification test for KR8S1, hopefully.
v1.3: Replaced crappy instructions with in-game video tutorial.

Choosing a Programming Language

Some people were asking in the comments today about when Infiniminer will be available – the answer is when it’s finished.

Some people were asking what languages I’ve used to make my games; this is a question I can expand on a little more.

Some of the first games that I wrote and find acceptable enough to display here, such as Pulse, the original Ruckingenur, and Gregor Mendel’s Pro-Botanist, were surprisingly written in C# using the native GDI+ drawing routines. When I got involved with the Game Development Club in college I switched to Python and pygame (a nice SDL wrapper), as those were the tools that the Game Development program generally revolved around in, and used them to write Silicon Foundry, the original Manufactoid, the Atropos control system, and, with the use of some OpenGL, Infinifrag.

And from there I proceeded to mix it up; Manufactoid is C++ and SDL, Tex Mechs was Python and PyOGRE (more like PyAWFUL!). Ruckingenur II was C# and SDL.NET, which is nice but apparently refuses to work under 64-bit versions of Windows. My two completed Flash games, and an upcoming and unannounced third title, are all AS3. I have a neat way of developing my Flash games, which I may document with a post in the future.

I wrote Infiniminer in C# using Microsoft’s XNA framework – I’m pretty sure it’s the greatest 3D game framework I’ve ever used, as it doesn’t get in your way but offers a bunch of really neat tools to make the process a breeze. You should definitely try it out if you haven’t already.

So what does this mean for you? If you’re looking to start programming games, two great ways to start are with Python and pygame or C# and XNA. Both setups are totally free and offer a good balance between ease of use and the ability to make whatever you want. Flash is a workable third option, but is sort of sketchy and probably not the best way to learn about game programming.

Do you have any questions or thoughts about game programming? What tools do you use? Fire off in the comments!

Infiniminer Update

Game should be out either at the end of this week or sometime next week. I’m working with a friend of a friend, Chris, to get some awesome graphics into the game, like the Prospectron hand-held mineradar you can see below.

Getting back to the surface is often the hard part…