Make Me

Make Me

How to make girl-bots like you:
  • Girl-bots like flowers...
  • Girl-bots need money...
  • There's something about those curiously adorable heart-boxes...
And it helps to be taller, too!


Give this entry an award


Ratings (show detail)

Overall: 3.9
Fun: 3.6
Production: 4.3
Innovation: 3.8

2% respondents marked the game as not working.
Respondents: 35


File Uploader Date
Post-competition update source
alex 2008/04/26 05:42
final entry
alex 2008/04/06 09:42
Make Me
alex 2008/04/06 01:26
Top Hat Bot
alex 2008/04/03 22:46
biccy 2008/04/03 00:51
Little visible progress
alex 2008/04/01 13:56
Animation editor
alex 2008/03/31 13:26
Animation is always fun
biccy 2008/03/31 10:03
It's alive!
alex 2008/03/30 22:52
robo sketchs
biccy 2008/03/30 12:26

Diary Entries

robo sketchs

Alex is making me draw stuff and won't let me muck around. Here is what I've done so far.


1 comment

Day 1: tiles n maps

Clearly we're making an FPS ;-)

Not shown is the neato map editor that opens a new window (thanks, pyglet!) at the touch of a key. Most of the afternoon was spent trying different approaches for collision detection and response until it felt right and had no glitches.

Add a comment

This is how I roll

While Alex is off being a code monkey and writing stuff up, I'm being an Artist and doing arty stuff (and not my home work)
Last night I drew character design for our little robo character. Today I was playing around and made this little gif. Yay it rolls!
It also has a lamp on it's head =D



Day 2: animation

Having an artist on board is really cool, I have lots more time to write code. On the other hand, there's already more art assets than any of my previous games had at their conclusion.

Pictured is the animation editor I wrote today. Images from Biccy come in as Photoshop files with 30-40 layers corresponding to different body parts and stages of animation. I use ImageMagick to split each layer into a separate PNG file (this is a bit glitchy and needs careful attention; I also tried PIL but no success).

I then draw a bounding box around each layer in a 128 line pyglet program that calls ImageMagick again to do the cropping and writes the bounding boxes to a file (which can later be loaded for editing). This is just to save space on image sizes.

The pictured program is used to assemble large sprite pieces ("anims") out of individual layers. The "select" window lets the user page through all the layers and add or remove them from the current anim shown in the "composite" window. Along the bottom of the composite window is a timeline scrub; as layers and the origin are moved around with the mouse, keyframes are inserted automatically and the animation can be played back immediately. Each "anim" is named and saved into a text file that stores all animation data, bounding boxes and references to the required images.

Finally, another script picks up this text file and copies the images that were actually used into the resource directory, scaling them down along the way (we haven't decided on a sprite size yet, which is why this is so late in the pipeline).

Constructing simple idle and movement animations is proving to be quick, so I'm optimistic that the time spent setting all this up pays off in the long run.

1 comment

Day 3: animation variants and movement

Today didn't seem that productive, mostly I fixed a lot of animation glitches and finished the work I started (and thought I'd finished) yesterday. Movement is now entirely controlled by the attached animation, and the characters can be built up out of multiple animations. The screenshot above is missing some animations (such as the background colour for the legs), but this can be entirely blamed on the artist ;-)

I've fixed a couple of bugs in pyglet in the making of this game so far: one was in pyglet.resource.location, the other in Texture.get_transform (the anchor was not being transformed). These fixes are available in r1990.

We also discovered that ImageMagick treats Photoshop layers saved out of Photoshop differently from those saved out of OpenCanvas. Rather than recode large sections of the animation tool I politely requested that the artist stick with just one application, if she pleases :-)

Way behind schedule on getting everything done on time.

Add a comment

Tile variety

I haven't really been doing much, so last night I did some work and made a bunch of tiles for our game.

Alex made this cool editor that allows me to drag tiles from one window onto our game map, it makes building the level quick n' easy (and fun!).

The image above shows a sample of tiles I made last night.

1 comment

Day 4: game features

Day 3 was pretty much a write-off. Like Richard, I was stranded in the city after a category 3 cyclone walked through Melbourne, shutting down the public transport system and cutting power to my house for 30 hours.

Thankfully I was able to leech power and wireless at my Mum's house, and got back into writing new code for the game, rather than addressing old collision and loading bugs. The main gameplay trick is now mostly finished as of 3 AM last night.

The on-demand map loading is sensitive to camera motion, so I replaced the previous follow-with-lag strategy with a spring+dampening model, which looks a little like handheld footage and plays nicer with the loader.

Add a comment

Make Me


pyglet problems?

Thanks to PyWeek, a small number of bugs in pyglet have been reported -- and promptly fixed.

If you wrote a game in pyglet this time round and ran into any problems: a bug, a workaround that was needed, something that wasn't documented correctly, something that you couldn't figure out... please let me know! I'm not (very) clairvoyant and don't hear about these problems unless you tell me :-)

Also, if you're playing someone's game that you think uses pyglet and are having some problems that are possibly platform-related, I'd be keen to learn about them too.

I understand that filing a bug report is an awful lot of trouble, so please feel free to just add your comments here.



Make Me: Post-competition release

Hey, we wanted to thank everyone for their great comments on our game, and to congratulate all the winners (yknow, everyone!).

We've put together a polished release of our game "Make Me", which we think addresses most of the comments brought up in the judging. Most of these we already knew about, and we've been working on fixing them this past week; but we also modified the game to address many respondents' complaints about the speed of the game and introduction to the blueprints screen.

I've uploaded source code and Mac OS X and Windows packages to my website at The Mac OS X and Windows packages have no dependencies; the source code requires only Python and AVbin (pyglet's included).

This newer version features:

  • Many bug fixes, including graphics glitches on old and new cards, sound problems, memory leaks, collision bugs, and enemy A.I. bugs.
  • Saved games are now saved to disk.
  • A much larger world to explore, including some new robot parts to pick up with unique features.
  • Changes to the existing map to better introduce how to play the game.
  • Improvements to the menu interface to make the operation more clear.
  • Graphical improvements to some of the tiles.
  • Many new sound effects, and a new soundtrack.
We hope you enjoy this version of Make Me, and look forward to PyWeek 7!

Add a comment