benjymous
Member
Ok - I've been a bit quiet recently - mostly as there's not really been much to demo, as everything's been going on deep in the innards of the engine, rather than anywhere that actually would show in a video.
The main focus at the moment is getting Lua integrated in, and it's mostly there now. Each level file gets its own corresponding lua script, which can subscribe to game events, and create timers and sensors.
Timers just wait for a set amount of time before triggering a lua callback, likewise a sensor is just a watch zone in the level which triggers another callback when something (the player, or another movable object) stumbles into it.
This means the game engine doesn't need to care about hard-coding the logic for each level, it just needs to provide the basic building blocks.
For example, instead of having to specifically code in the engine a way to have a windy tunnel that blows the player along, you just need to create a sensor in the tunnel, and apply a force to any object that stumbles in to it.
(as a quick test, I built something similar to Portal where you fall through one hole and pop out somewhere else, maintaining momentum - that probably doesn't make any sense for this game, but it means the engine is nice and versatile!)
Likewise, instead of having to have something in my level editor that defines what conditions you have to meet to be able to go through an exit (and which room you should go to when you do), it just gets coded into the onExit() event handler in the level's lua.
The main focus at the moment is getting Lua integrated in, and it's mostly there now. Each level file gets its own corresponding lua script, which can subscribe to game events, and create timers and sensors.
Timers just wait for a set amount of time before triggering a lua callback, likewise a sensor is just a watch zone in the level which triggers another callback when something (the player, or another movable object) stumbles into it.
This means the game engine doesn't need to care about hard-coding the logic for each level, it just needs to provide the basic building blocks.
For example, instead of having to specifically code in the engine a way to have a windy tunnel that blows the player along, you just need to create a sensor in the tunnel, and apply a force to any object that stumbles in to it.
(as a quick test, I built something similar to Portal where you fall through one hole and pop out somewhere else, maintaining momentum - that probably doesn't make any sense for this game, but it means the engine is nice and versatile!)
Likewise, instead of having to have something in my level editor that defines what conditions you have to meet to be able to go through an exit (and which room you should go to when you do), it just gets coded into the onExit() event handler in the level's lua.