Dancing With Monkeys & Forks

Dancing With Monkeys & Forks


Samurai Programmer Sawa (and cub) here!

Previously I talked about how “Over 70% of PixelJunk is done with scripts”. Today I want to speak a little bit more about “GameMonkey Script”. Why? Because I want more game developers throughout the world to use it!

To get the ball rolling, most of the basic things you’d need to know are available on the public page.

GameMonkey homepage

GameMonkey reference

Furthermore, we’ve gone and improved on this original flavour over time.

The convenience of threads should be felt in your belly every time you use them but, our GameMonkey is even simpler.. more convenient.. more wild!? You can make threads.

global WildThreadingFunction = function()
    local a = 10;

        // This is a thread

        // the local variable gets copied so, "10" will be shown
        print( a );

    local sound_pointer = Q.PlaySound( "WILD" );
        // Here's another thread

        // Animation goes here
        sleep( 0.5f );
        sleep( 0.5f );


Do you feel it? Can you feel that convenience?

Making threads everywhere easily is all nice and good but, the real guts of the value is that local variables get copied into threads right? With this, you can get rid of a lot of useless variables and arguments, the data and processing can be squeezed into one place.

This is deeply concerned with the programs readability. It means you don’t need to jump around here there and everywhere in the editor looking for stuff!

Regarding this fork、it’s been implemented in the latest version of GameMonkey, so feel free to try using it!


That’s all for today!


They call him YAMATRON.

They call him YAMATRON.


Beep beep! Beep!

Wait! Waiit!

You came all the way to here to visit out blog,
but the Inc. team is in Seattle for PAX!

There is a famous baseball player in Seattle.
Do you know Ichiro?

But tonight, we can rewrite history.

Exotic Robotic Artist YAMATRON!!


Inc. is his world! The maelstrom of his imagination!
He created over 4000 robots in his lifetime.

Any people who come to PAX, please come meet YAMATRON at
the Indie MEGABOOTH !! You can receive SPECIAL YAMATRON GOODS!


I must go! My child is calling! I’m house-sitting Japan today.


Posted in log

Workin’ the monkey

Workin' the monkey

Morning! Samurai Programmer Sawa (and cub) here!

Is everyone finding the dev blog useful!? Chat with us in the comments whenever you like~!

Ok, so have you ever seen the credits of a PixelJunk game? Anyone that hasn’t, get straight over to the PSN Store, buy all the PixelJunk games and clear them! Did you notice a name that appears every time in our credits? Yep that’s right, it’s our CEO Dylan Cuthbert… ..wait no, i’m talking about Game Monkey!!

It might feel weird, but over 70% of PixelJunk games are made in script. PixelJunk Inc. is of course no exception. The name of that scripting language is Game Monkey, our dearly beloved, stylin’ monkey friend.

And with that, here’s this week’s “imagination shot”!


As you can see, there’s lots of ‘sleeps’. If you want to put a brief delay between this thing and that thing a ‘sleep’ can help you out. Although, if you’re not careful the code can get overrun with them.

It’s still better than the alternative though, of implementing ‘sleeps’ in C++, then having any small tweak trigger an entire C++ build each time… that’s a big waste of time we’ve avoided.

GameMonkey lets you easily make threads (typically called fibers or coroutines) making it super convenient!

If only it could get more exposure…

Waah♪ O-ooh a-aah♪

Oh!.. My cub and monkey are calling.. I’ll leave it here for today.


Profound Profilers

Profound Profilers


I am samurai programmer Sawa!

Now that the fresh new PixelJunk Inc. name has been announced, I think it’s time for some new fresh blog posts to go along with it!
I’d like to start posting some delicious programmery details on PixelJunk Inc. for you all to see.

So I suppose there are lots of people who wonder; what is game development like? What sort of people work on games? I’ll give a little bit of an introduction.

I’m a native of Kyoto! The Japan inside Japan! I haven’t visited overseas!

Ok, everyone feeling relaxed?

This week I’ve been working on optimization of some rendering systems.. lets look at this splendid screenshot of Inc.!

Wah! Lots of things here. What is all this?!
This is the PixelJunk profiler. What kind of things are going on here?



Uh-oh. It looks like some ninjas have snuck in here. I’ll have to leave it at that for today.