Oh, yes - most people should definitively make use of the helper functions.
My post was mainly a response to something Romulator said in his tutorial (about not being sure what the "class iScrMap" thing does) - just wanted to share some info about that to him and other people who are interested in these advanced aspects of the scripting engine.
Also, at some point in time there will be people who will want to make a mod that's completely differently conceptualized then SOMA, and will want to drastically change some aspects of the game - and while people have been able to achieve that to some extent with Amnesia by using some really clever hacks to circumvent game's limitations, from what I've seen, now this is supported to a
pretty great extent - so I think its worthwhile to compile some kind of documentation for advanced scripters, but phrased in such a way so that you can make (at least some) use of these features without being trained in programming.
As for my scripting page in the Scrapbooks folder - I'm gonna collect both advanced and non advanced info there, so I guess I can separate these out somehow into different section. But again, it's a "scrapbook" - a just a place to dump data so that it doesn't get lost / forgotten, that will then form a basis for a proper wiki entry at some later point.
EDIT:
But note that even for some of the non-advanced stuff, you sometimes need to have at least a basic idea on how to
use objects - since some of the helper functions work with them.
E.g.
This one returns a vector object:
cVector3f Player_GetPosition()
You can then access various components of it:
cVector3f playerPos = Player_GetPosition();
float x = playerPos.x;
// or just
float x = Player_GetPosition().x;
// Note: same for y & z components.
And this one accepts a vector object as a parameter:
void Player_AddBodyForce(const cVector3f &in avForce, bool abUseLocalCoords)