A quick update: I’ve just finished a dynamic property system for the editor, which allows you to expose properties from your Lua objects that can be changed in the editor.

Previously I had a separate property form for each object and tool, but creating the forms at runtime is much cleaner and makes it easier to add new objects. It is also a big step towards implementing the custom UI that I am working on.

On a related subject I have done the a similar thing with the serialization of objects. By exposing the important properties of Lua objects though a simple function, they can be saved along with the rest of the level.

Above is an example from a light object which is created in Lua. When the level is saved, the “Light:Serialize” function is called, and the table which is returned is saved along with the other objects.

Last time I mentioned that I was going to try out the Tao.Lua bindings and see how much faster they perform than LuaInterface.

LuaInterface is really simple to use, and provides a full interface between your code and Lua without any need for wrappers. The downside is that invoking .Net methods is really slow. For every 10 of those flowers you can see in my last video, the framerate drops by 100!

My other option is to use pure Lua bindings, such as provided by the TaoFramework. I will have to write up wrappers for all the objects I wish to expose, but it will mean you will need hundreds of flowers before you notice a frame drop!

Managed LuaPlus may help with the wrapping, but I am definitely moving to pure Lua bindings. I have started working on the changes already!

I’ve been working hard implementing the scripting into the game engine, and have managed to put together some new backgrounds, new objects, a costume and some facial expressions for Boxboy!

The facial expressions might be difficult to see with Boxboys false beard in the way, so watch the video in HD!

At the moment I am using LuaInterface to interface Lua with the CLR, but I will also be trying out the Tao.Lua bindings to see how much faster they perform. Kopi Lua is another interesting project, it is a direct port of Lua to C#, but it is still very early on in development and hasn’t been optimised yet. Do you have any experience using Lua with .Net languages?

I have been adding to and refining features in Boxycraft almost non stop since the original version. However, I’ve decided it’s time to declare a few “certainties” that will definitely be in the final release. Here they are:

List – New things in Boxycraft 2

Level Editor

Moddable with Lua

Customizable characters with costumes and attachments

Community website to share levels and mods

New gameplay modes

Multiplayer – Online, local and hotseat

Tons of new items

Better art, graphics and sound

Continuous support, development and updates

To reach these goals and make Boxycraft into a really awesome game I am going to need better art, graphics and sound, not to mention maintaining the website, and I can’t do all this myself. It was a big, difficult decision to make, but I have decided that I am going to sell Boxycraft 2!

If you don’t know what Boxycraft is about, then download the original version and try it out. Boxycraft has come a long way since then and is continually improving, so times how good that was by a million and you will get Boxycraft 2!

I don’t yet have a release date, but as soon as I can I will release the game for preorder, along with the Beta and the Level Editor. In the meantime I will continue working on the game and keeping you up to date on my progress!

Sorry for the lack of posts recently, I’ve been hard at work on a new website for Boxycraft. You can’t see it just yet, but know that it’s gonna be awesome!

Lua

In other news I’m implementing Lua support into the game. I’m starting small with just backgrounds and simple decorations(waving plants, player decorations etc), but I plan to move to customizing in-game objects and creating your own items, attachments and effects.

Cortex Command from Data Realms is a great game that uses Lua scripting very well. Almost every item in the game can be customized or created, from the AI to the characters and weapons, and you can quickly and easily create your own unique items and mods.