I feel I'm going to have a lot of questions in the coming weeks, but I'm keeping them all in this topic to avoid spamming new threads.
Hey Ghosthack, I made some progresses on some issues and finally got to look at the files. For now I've been trying to cleanup the SDK a bit to suit my simple needs, and I didn't get to the dialogs yet.
Config.fos sure raised a lot of questions. The most pressing matter, though, is that of the FOV. Basically, config.fos reads this:
// Look modifiers
__LookChecks = 0; // See Look checks in _defines.fos
SETFLAG(__LookChecks, LOOK_CHECK_DIR); // Nerfe look by directions of look
__LookDir0 = 0; // Nerf 0% of look radius with direct look
__LookDir1 = 20; // Nerf 20% of look radius with front side look
__LookDir2 = 40; // Nerf 40% of look radius with back side look
__LookDir3 = 60; // Nerf 60% of look radius with back look
__LookDir4 = 60; // UNUSED. Nerfe 60% of look radius with back look (Square geometry)
SETFLAG(__LookChecks, LOOK_CHECK_SNEAK_DIR); // Nerfe opponent sneak by directions of look
__LookSneakDir0 = 72; // Nerf %dp% of opponent sneak with direct look
__LookSneakDir1 = 36; // Nerf %dp% of opponent sneak with front side look
__LookSneakDir2 = 12; // Nerf %dp% of opponent sneak with back side look
__LookSneakDir3 = 0; // Nerf %d% of opponent sneak with back look
__LookSneakDir4 = 0; // UNUSED. Nerf 0% of opponent sneak with back look (Square geometry)
From there, of course, I took a look at
_defines.fos:
// Look checks
#define LOOK_CHECK_DIR (0x01) // Nerfe look by directions of look
#define LOOK_CHECK_SNEAK_DIR (0x02) // Nerfe opponent sneak by directions of look
#define LOOK_CHECK_SNEAK_WEIGHT (0x04) // Nerfe sneak by current weight
#define LOOK_CHECK_TRACE (0x08) // Tracing for wall aviablility
#define LOOK_CHECK_SCRIPT (0x10) // Allow bool check_look(...) in main.fos, all other defines ignored
#define LOOK_CHECK_ITEM_SCRIPT (0x20) // Allow bool check_trap_look(...) in main.fos, for items with ITEM_TRAP flag
It got me really confused. Like, what is _defines.fos doing? Is it taking action prior to config.fos, or after that? And why is it not just a part of main.fos then? Many questions. Not really important ones. Because, of course, there's the dreaded
client_fov.fos. By the content of this file, I reckon you rotators have coded an entire new FOV system from scratch. The problem is, I see no switch to turn it off and I'm starting to wonder: did you erase the old no-FOV way in the process, and should it be coded from scratch again if one decided to disable FOV, or is it the engine's default view? If so, how to turn it back on? Removing the whole
Look code from the three files just prevents the server from booting.
P.S. If I die while I'm still young, please tell my family this forum's captcha got me. Seriously, this is suicide material.P.P.S. Almost forgot. Proof that the development is going smoothly! Or, well, starting smoothly.
Right?