3 ms·
My kneejerk reaction was "oh my god don't dump a general-purpose language into the runtime just to write mission scripts," but this is actually a good example o
by chipsy 12y ago
My kneejerk reaction was "oh my god don't dump a general-purpose language into the runtime just to write mission scripts," but this is actually a good example of how to do it: The DSL defines some data structures that the C++ code uses, and has a direct handoff of the emitted results from Lisp into C++. Lisp doesn't have to interact with every frame of the game.
If you start exposing the engine in arbitrary fashion, things go south rather quickly; the scripting language will never stop finding more things it happens to need to get access to, and then you have an inner platform with boilerplate abstractions that make for worse tooling than whatever you started with.
- TylerE 12y agoThis is completely bog standard in gamedev these days. The embedded language is usually lua, occasionally python.