Yeah, we need more tutorials that, to be frank, are written for amateurs; I say this because those tutorials would explain things in detail using basic wording.
As for your question, I'll first outline how an NPC (or any object, really) is positioned in-game and then outline the two methods for placing objects in-game and their pros and cons.
...
An object in-game possesses two things: a vector of three floats containing its XYZ coordinates, and a float containing its directional facing (between 0.0 and 360.0).
Scripting:
The first, and most common, way to spawn objects is through scripting, whether the script is launched from a conversation, entering a level, or a reaction to an event. No matter what, it's all the same basic formula:
*It should be noted that in all the examples below, the marks are for example only and cannot be there when compiling the scripts*
Pros:
Highly adaptable
Easy to access
Can be used at almost any time
Perfect for delayed or conditional placement
Simple and universal directional facing
Cons:
Cannot spawn doors, triggers, sounds
Module-editing (GFF Editor):
Placing or moving objects in the module itself requires a GFF Editor (like K-GFF) and editing the .git file for the module. Each object has its own XYZ coordinates that can all be edited easily, but the directional facing is tricky...
Cameras:
A camera's facing is determined by its Orientation field, wherein the first of the four numbers (we don't edit the second or third, normally) is equal to
cos( ( - 90.0) / 2)
and the fourth number is equal to
sin( ( - 90.0) / 2).
Placeables and Doors:
Placeables and Doors both use a Bearing field, and this is a radian (everything in regards to facing for everything is a radian), so
( + 90) * 0.0174532925.
If you're resulting number is greater than 4.7207963267949, then you'd subtract 7.857239039871151612 and use the result.
Creatures, Waypoints, and Triggers: These three all have an XOrientation and a YOrientation field, and the results for both, respectively, are:
cos()
and
sin().
Sounds, Encounters, and Stores:
These either don't have orientations, or in the Stores' case, the orientation is thought worthless. However, the Encounters can have spawn points, and these have an Orientation field that is a bearing (like the placeables and doors).
Pros:
Fine control
Ability to place encounters, cameras, sounds, and triggers
Cons:
Objects listed spawn the first time you enter the level, and so this is a one-time job
Complications in directional facing