Last week was a little touch and go since the wife was out of town for three days but I was still able to make some progress despite trips to the trainstation, watching kids, etc..
Most of the week was spent in the object scripting system which is way way way better than in the last engine. I needed it for proper inventory management since only the 'back end' will know whether an object can really go into inventory or whether an object is equipped to one hand or both and so on. The last system had very limited object interaction (just through pop-up menus mostly) and then any game-level scripting was done with separate non-object based actions. (Existing modders may be familiar with this.)
The new system treats objects more like real Object Oriented Programming. You can define actions on objects that take various parameters, they can easily call the actions of other objects, and so on. So rather than have a bunch of root-level commands that the client sends to the back end, everything (at least so far as I've conceived) will be done right on the objects. If the game wants to have the player equip something in his right hand then the game invokes an action on the player. (In groovy this would look like, player.equipRight(someItem))
It also means that for moving things around in the backpack, I can call actions directly on the backpack... backpack.moveItem(someItem, some location) or whatever. Or more importantly, someItem.drop(location) to drop something on the ground... and then if the object is undroppable the scripting has a chance to ignore that action and keep the item right where it is.
Finally Friday I was able to start turning this into something that the UI could use. I had to define at least one new style object and/or patch up some old objects (my test world still has the test objects from the old engine)... and debug the scripting layer as I went. Last night I was finally loading object models into the inventory screen.
Today I was able to get them sized properly for the 2D inventory scale... and draggable. Here we see a screen with my build wands (an earlier bug gave me some duplicates) as well as some old cruft from the last engine (pieces of paper and a giant pencil).
Right now the objects are just draggable and the inventory doesn't really know they are in it or anything. I sort of just dragged them into position for this screen shot.
But it's progress just the same.