alx-9 {l Wrote}:In those 3 cases, is the interaction based on the player's position or are they periodic animations? i.e. is for example the haystack triggered by an approaching kart or does it just roll onto the track every X seconds?
Atm they are periodic animations.
It would be quite difficult to modify the mesh at runtime (since we would need a new way to specify animations for a mesh, and exporting this into bullet). But adding or removing bullet objects wouldn't be that hard, we could add settings like: "after lap 1" or "before lap 3". For the drivelines we can either (for tracks getting smaller) just use the smaller drivelines from the very beginning, or have similar settings to indicate which drivelines to use in which lap (or which one is enabled/disabled). Getting this triggered by approaching karts would be a bit more work (in terms of how to specify this in blender and in the xml files), stk itself already has most of the infrastructure (check_lines which can detect if they are crossed, and they could be used to trigger certain actions).
But before we do anything like that we need a good track that makes use of this feature, since we don't really have the development resources to code something that's not being used. Even then, with gsoc commencing right now, I can't see us doing this in the next few months ... but having a track using this would certainly help boosting its priority (and perhaps that might even motivate new developers). We would also need to think carefully about the implementation, so that most dynamic track features we can think of can be implemented using the same framework (e.g. are checklines and lap based trigger good enough? Do we need to distinguish between player and non-player karts? If so, what in multi-player, should it be the first or last kart, ...).
Yes, ideally scripting would be nice to have, but as always we need to write the interface for those functions, and it's usually less work to use our existing xml based framework then integrating a scripting engine. Yes, maybe that's short-sighted, but with very limited developer resources that's all we can do. Perhaps next gsoc (if we participate) might be a good timing to think about scripting.
Cheers,
Joerg