Screenshot of final release



The Loons have a problem we can sympathize with -- global warming. Lakes and rivers are drying up, croplands are turning to dust, and it's becoming really hard to find any ice for a rum and coke. So they've come up with a plan -- move to the moon!

Help the Loons build a colony on their moon. Mine resources, build habitats, farms, factories, everything needed to make them feel at home. Support a big enough population and you may just save the Loons from extinction.


Give this entry an award


Ratings (show detail)

Overall: 3.1
Fun: 2.9
Production: 3.6
Innovation: 2.9

Respondents: 18


File Uploader Date
Screen shot 2013-09-08 at 3.27.02 PM.png
Screenshot of final release
gcewing 2013/09/08 03:31
Final Release
gcewing 2013/09/08 03:27
Initial Release
gcewing 2013/09/07 14:15
Screen shot 2013-09-07 at 1.29.34 AM.png
Screenshot with Smelter
gcewing 2013/09/06 13:32
Early screenshot of lander and resources
gcewing 2013/09/05 21:23
A loon
gcewing 2013/09/03 00:44

Diary Entries

Made a start

I've decided on a concept. It will be a peaceful RTS-style game based around building a lunar colony.

Resources: water, silica, metal ore, sunlight (for solar power)

Fixed units: habitat, smelter (turns ore into metal and silica into glass), factory, farm, solar panel, hydrolysis plant (to produce oxygen from water), transport tube

Mobile units: worker, rover

I started on the coding last night, and I made a bit of artwork today:

A loon
A loon (any resemblance to a Kerbal is entirely coincidental).

Add a comment


Got a walking animation working for Loon movement. I probably spent longer on it than I should have, but it looks at least 3126.48% better than my last RTS effort, where the units moved around like cheesy cardboard cutouts.

Also found a really big picture of a piece of lunar surface to use as a background. It's starting to look like the moon, if nothing else.

Add a comment

Graphics and resources

Last night I figured out how to render oblique views of 3D objects by bodgying together a tool chain involving Sketchup, Preview, Seashore and Intaglio. I know, smart people use Blender for that sort of thing, but it doesn't fit my brain well enough for use under pressure.

Used it to create a nice-looking lunar lander unit. Also put together the beginnings of a resource system.

Woke up this morning thinking that I need to have a separate Mission object for handling the various actions that a unit can perform. That may have to wait a bit, though, as non-Pyweek duties are calling. :-(

Lander, and some ore and water deposits.

Add a comment

Unit Construction

Loons can now construct buildings and carry resources from one place to another. One building type is implemented so far, the Smelter. (Mostly implemented -- it doesn't actually smelt anything yet...)

Add a comment


I spent several precious minutes trying to figure out why "Factory.try_to_start_building" wasn't getting printed by this method.

  def try_to_start_building(self, cls):
    "Factory.try_to_start_building" ###
    missing = self.resources.use(**cls.construction_resources)
    if missing:
      self.missing_resources = missing


Made a release

Made very good progress today. Added a bunch of units and got it into a minimally playable state. Time for a release in case I don't get another chance.

Things remaining to be done, roughly in order of priority:
  • Start with more than one loon
  • A unit for training more worker loons
  • Finish the help file
  • Solar panels, power system
  • Time limit
  • Title screen
  • Sounds and music

Add a comment

Final release!

Did quite a lot of last-minute polishing this morning, and even managed to find some appropriate music. As always, I didn't have time to implement everything I had in mind, but it's good enough to call it done. I can get back to playing Kerbal Space Program now!


Bug fix for Loon

To prevent occasional crash when a resource finishes getting mined, apply this change to Game/Code/

---    2013-09-07 17:51:27.000000000 +1200
+++    2013-09-14 09:41:07.000000000 +1200

@@ -45,7 +45,7 @@
             return target.resources
     def units_removed(self, unit, units):
-        if in units:
+        if self.get_target_unit() in units:
    = None
             if self.next_mission:
                 self.next_mission.units_removed(unit, units)

Add a comment