I've had a project itching on my brain for a few weeks, and I wanted some comments on the idea.
It's called IrrSkript: Irr from Irrlicht, Skript from Script. It's a scripting kit for Irrlicht using Lua as it's language.
The idea is for a complete game development package.
From the developer's point of view:
Package Editor: A visual program that packs all game data (Models, Textures, GUI elements, Game Skripts, etc.) into a compressed "cartridge" file.
Skript Editor: An editor for editing game Skripts in the Lua Language.
From the player's point of view:
IrrSkript Konsole: An "Irrlicht Virtual Machine" that plays the game in the "cartridge." The end user "loads" a cartridge on the Konsole, then runs main.isk OR the "cartridge" that is to be loaded is passed on the command line. On the PC, it'll operate somewhat like an Emulator... you load a ROM, then play the game.
The "Irrlicht Virtual Machine," known as the "IrrSkript Konsole" is ... an abstract Video Game Console. The idea is that the Konsole is compiled for the target platform (PC, Xbox, Gamecube, Mac, whatever) using whatever libraries are available to take advantage of the power of that console. The Konsole then presents a uniform Virtual Machine to the IrrSkript game.
The biggest positive I see is that a game can be developed on a PC, then run on a Konsole developed for a licensed copy of XBOX SDK... or maybe not
The problem I am having is that, although I know what I want to do with the project, I don't really know much about Scripting languages in general, and Game scripting languages in specific. I want IrrSkript to be as general as possible. So if anyone could point me to some General Game Scripting libraries (if there are any), I would appreciate that much.
I'm teaching myself Irrlicht and Scripting Languages, so progress will be as slow as an Armadillo in Liquid Nitrogen for a while, but I'm getting started.
As an aside, at this time, I might be using something like XUL to describe the GUI, Lua for the game programming, and possible ZLIB for compression. I'd also like to implement some kind of encryption that can be placed on "cartridges" so that they cannot be tampered with, but I don't know at this time.
And suggestions, or questions for clarification, or dissenting opinions are welcome!