Skip to content

Glacier_Scripting_MissionScripts

DronCode edited this page Dec 20, 2023 · 3 revisions

Scripting & Missions

Each mission (excluding the main menu) contains their own DLL loaded from \Scriptcs, each DLL contains four sections:

SF

Script functions table, presented by game at 0x0043BE50 (int __cdecl ScriptingEngine::FillImportedScriptFunctionsTable(int v1))

ISF

Imported Script Functions table declares in-mission script, their name and callbacks.

Scripts

2023 update: new reversal is here https://gist.github.com/DronCode/fe7e03731af4358cbde272c419ce3f56

Old repr (maybe it will be useful)

Base entry is represented by the structure (not final view):

struct ScriptFunction_t
{
    using OnLoad_t = void(__stdcall*)();

    const char* ScriptName; //+0x0
    int m_field4;  //+0x4
    int m_field8;  //+0x8
    int m_fieldC;  //+0xC
    int m_field10; //+0x10
    int m_field14; //+0x14
    int m_field18; //+0x18
    OnLoad_t OnLoad; //+0x1C
};

and whole table looks like this:

namespace HBM::AllLevels
{
    static ScriptFunction_t g_Baseboid { "AllLevels_Baseboid", 0x0C, 0x0, /* pointer */ nullptr, 0x0, 0x0,  };
}

struct Scripts_t
{
    const uint8_t gMagicByte = 0x0B4;
    const uint8_t gUnk0 = 0x3;
    const uint8_t gUnk1 = 0x0;
    const uint8_t gUnk2 = 0x0;
    // Your scripts stuff here
    // For example
    ScriptFunction_t* AllLevels_Baseboid = &HBM::AllLevels::g_Baseboid;
    // ... other scripts ...
};

ScriptImports

Global table of game API for scripting.

C++ presentation of it:

struct _v3 {
    float x, y, z;
};

struct _ZSC_EVENT {};
enum _eMeta : int {};
enum _eCharacterType : int {};
enum _eMood : int {};
enum _eInterestlevel : int {};
enum _eNeed : int {};
enum _eAudioEvent : int {};
enum _eDirection : int {};
enum _eAudioType : int {};
enum _eMoveSet : int {};
enum _eFriskOp : int {};
enum _eEventCameraType : int {};
enum _eEventCameraPosition : int {};
enum _eScriptPathType : int {};

struct _sCover {};
struct _sGQCTask {};

struct ScriptImports_t
{
    void (__stdcall* Zcar__Moveto)(unsigned int, _v3, unsigned char);
    void (__stdcall* Zcar__Settargetspeedmultiplier)(unsigned int, float, float);
    void (__stdcall* Zcar__Getpathendpoint)(unsigned int);
    void (__stdcall* Zcar__Getpathstartpoint)(unsigned int);
    void (__stdcall* Zcar__Setpath)(unsigned int, unsigned int, unsigned char);
    void (__stdcall* Zcar__Getposobj)(unsigned int, char const*);
    void (__stdcall* Zcar__Attachactortoseat)(unsigned int, unsigned int, int);
    void (__stdcall* Zcar__Detachactorfromseat)(unsigned int, unsigned int, int);
    void (__stdcall* Zcar__Stop)(unsigned int, float);
    void (__stdcall* Zcar__Tempstop)(unsigned int, float);
    void (__stdcall* Zcar__Continue_)(unsigned int);
    void (__stdcall* Zcar__Hithitman)(unsigned int);
    void (__stdcall* Zcar__Setcarposdir)(unsigned int, _v3, _v3);
    void (__stdcall* Zlink__Stopallanims)(unsigned int);
    void (__stdcall* Zlink__Stopubanims)(unsigned int);
    void (__stdcall* Zlink__Getanim)(unsigned int, char const*);
    void (__stdcall* Zlink__Checkanimrunning)(unsigned int, int);
    void (__stdcall* Zlink__Getnumberofframes)(unsigned int, short);
    void (__stdcall* Zlink__Playanimsegment)(unsigned int, short, int, float, float, float);
    void (__stdcall* Zlink__Canplayanim)(unsigned int, short, int);
    void (__stdcall* Zlink__Canplayanimsegment)(unsigned int, short, float, float, float, float);
    void (__stdcall* Zlink__Playaniminterpolated)(unsigned int, short, _v3, _v3, float, float, float, float, int);
    void (__stdcall* Zlink__Setactiveanimdest)(unsigned int, _v3, _v3, float);
    void (__stdcall* Zlink__Getactiveanimdest)(unsigned int, _v3&, _v3&);
    void (__stdcall* Zlink__Lockfacing)(unsigned int, unsigned int);
    void (__stdcall* Zlink__Getmetakeyframenr)(unsigned int, short, _eMeta);
    void (__stdcall* Zlink__Getmetakeynrframenr)(unsigned int, short, _eMeta, int);
    void (__stdcall* Zlink__Getanimendpoint)(unsigned int, short, unsigned int, _v3&);
    void (__stdcall* Zlink__Getmetakeyframenrfrommetastring)(unsigned int, short, char const*);
    void (__stdcall* Zlink__Setholdweaponubanim)(unsigned int, short);
    void (__stdcall* Zhm3Actor__Setblinking)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Initmapicon)(unsigned int);
    void (__stdcall* Zhm3Actor__Forceshowmapicon)(unsigned int);
    void (__stdcall* Zhm3Actor__Die)(unsigned int);
    void (__stdcall* Zhm3Actor__Initializehitpoints)(unsigned int, int);
    void (__stdcall* Zhm3Actor__Sethitpoints)(unsigned int, float);
    void (__stdcall* Zhm3Actor__Setcharactertype)(unsigned int, _eCharacterType);
    void (__stdcall* Zhm3Actor__Getcharactertype)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Changemapiconandcharactertype)(unsigned int, _eCharacterType, unsigned char);
    void (__stdcall* Zhm3Actor__Removefrommap)(unsigned int);
    void (__stdcall* Zhm3Actor__Gethitpoints)(unsigned int);
    void (__stdcall* Zhm3Actor__Takedamage)(unsigned int, float);
    void (__stdcall* Zhm3Actor__Setleavebloodtrail)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Setvisionrangesandfovs)(unsigned int, float, float, float, float);
    void (__stdcall* Zhm3Actor__Setvisionrangeandfov)(unsigned int, float, float);
    void (__stdcall* Zhm3Actor__Setmood)(unsigned int, _eMood, float);
    void (__stdcall* Zhm3Actor__Gettension)(unsigned int);
    void (__stdcall* Zhm3Actor__Settension)(unsigned int, _eInterestlevel);
    void (__stdcall* Zhm3Actor__Increasetension)(unsigned int, _eInterestlevel, float);
    void (__stdcall* Zhm3Actor__Releasetension)(unsigned int, _eInterestlevel);
    void (__stdcall* Zhm3Actor__Getmaxneed)(unsigned int, float);
    void (__stdcall* Zhm3Actor__Setneed)(unsigned int, _eNeed, float);
    void (__stdcall* Zhm3Actor__Setneedtime)(unsigned int, _eNeed, float);
    void (__stdcall* Zhm3Actor__Getneed)(unsigned int, _eNeed);
    void (__stdcall* Zhm3Actor__Lockubanim)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Enableubholdanims)(unsigned int);
    void (__stdcall* Zhm3Actor__Disableubholdanims)(unsigned int);
    void (__stdcall* Zhm3Actor__Enableubholdanim)(unsigned int);
    void (__stdcall* Zhm3Actor__Isubanimlocked)(unsigned int);
    void (__stdcall* Zhm3Actor__Setscriptubanim)(unsigned int, short);
    void (__stdcall* Zhm3Actor__Resetscriptubanim)(unsigned int);
    void (__stdcall* Zhm3Actor__Playscriptubanim)(unsigned int, short, unsigned char);
    void (__stdcall* Zhm3Actor__Playscriptubanimloop)(unsigned int, short, unsigned char);
    void (__stdcall* Zhm3Actor__Stopscriptubanimplay)(unsigned int);
    void (__stdcall* Zhm3Actor__Hasrunningubanim)(unsigned int);
    void (__stdcall* Zhm3Actor__Setweapontemplate)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Getweapontemplate)(unsigned int);
    void (__stdcall* Zhm3Actor__Setweapon)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Resetweapon)(unsigned int);
    void (__stdcall* Zhm3Actor__Getweapon)(unsigned int);
    void (__stdcall* Zhm3Actor__Setammoinweapon)(unsigned int, int);
    void (__stdcall* Zhm3Actor__Pullweapon)(unsigned int);
    void (__stdcall* Zhm3Actor__Ownsownweapon)(unsigned int);
    void (__stdcall* Zhm3Actor__Isweapondrawn)(unsigned int);
    void (__stdcall* Zhm3Actor__Currentweaponcanbeholstered)(unsigned int);
    void (__stdcall* Zhm3Actor__Holsterweapon)(unsigned int);
    void (__stdcall* Zhm3Actor__Isholdingitem)(unsigned int);
    void (__stdcall* Zhm3Actor__Hasfreehand)(unsigned int);
    void (__stdcall* Zhm3Actor__Islinkactionrunning)(unsigned int);
    void (__stdcall* Zhm3Actor__Putiteminrightpocket)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Putiteminleftpocket)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Pullitemfromrightpocket)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Pullitemfromleftpocket)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Setisholdingshootableiteml)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Setisholdingshootableitemr)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Makeitemvisible)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Makeiteminvisible)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Makeactorvisible)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Makeactorinvisible)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Removedecal)(unsigned int, int);
    void (__stdcall* Zhm3Actor__Setvisibletypes)(unsigned int, int);
    void (__stdcall* Zhm3Actor__Getvisibletypes)(unsigned int);
    void (__stdcall* Zhm3Actor__Setseerblind)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Disablevision)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Enablevision)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Disablepickupclothes)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Enablepickupclothes)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Getvisibleprojectileweapons)(unsigned int, unsigned int&, int, unsigned int);
    void (__stdcall* Zhm3Actor__Isitemedible)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Isitemdrinkable)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Getitemnumbitestotal)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Getitemnumbites)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Removeitembite)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Restoreitembites)(unsigned int, unsigned int, int);
    void (__stdcall* Zhm3Actor__Getiteminfectiontype)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Aimweaponatgeom)(unsigned int, unsigned int, float);
    void (__stdcall* Zhm3Actor__Aimweaponatpos)(unsigned int, _v3, float);
    void (__stdcall* Zhm3Actor__Fireweapon)(unsigned int, unsigned char, float, unsigned char);
    void (__stdcall* Zhm3Actor__Playfireweaponsound)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__M12_Albinofireweapon)(unsigned int, unsigned char, float, unsigned char);
    void (__stdcall* Zhm3Actor__Triggerweaponpush)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Isaiminposition)(unsigned int);
    void (__stdcall* Zhm3Actor__Isaimingattarget)(unsigned int, unsigned int, float, unsigned int&, _v3&);
    void (__stdcall* Zhm3Actor__Reloadweapon)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Numberofshotsleft)(unsigned int);
    void (__stdcall* Zhm3Actor__Isbodyknownandunchanged)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Registerdeadbody)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Isobjectvisible)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Objectisinfront)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Chkcolibeforeactor)(unsigned int, float, float, _v3&);
    void (__stdcall* Zhm3Actor__Isitemininventory)(unsigned int, char const*);
    void (__stdcall* Zhm3Actor__Additemtoinventory)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Removeitemfrominventory)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Dumpinventorytoground)(unsigned int);
    void (__stdcall* Zhm3Actor__Undress)(unsigned int);
    void (__stdcall* Zhm3Actor__Dress)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Dialoglisten)(unsigned int);
    void (__stdcall* Zhm3Actor__Dialogtalk)(unsigned int);
    void (__stdcall* Zhm3Actor__Throwknifeatref)(unsigned int, unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Findsitdowngeom)(unsigned int, _v3&, _v3&, int&, int, unsigned int);
    void (__stdcall* Zhm3Actor__Sitdown)(unsigned int, short, unsigned char);
    void (__stdcall* Zhm3Actor__Sitdowninstant)(unsigned int, short, unsigned char);
    void (__stdcall* Zhm3Actor__Movechairifapplicable)(unsigned int, short, unsigned char);
    void (__stdcall* Zhm3Actor__Movechair)(unsigned int, short, unsigned char);
    void (__stdcall* Zhm3Actor__Situp)(unsigned int);
    void (__stdcall* Zhm3Actor__Findliedowngeom)(unsigned int, _v3&, _v3&, unsigned char);
    void (__stdcall* Zhm3Actor__Liedown)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Findlightswitch)(unsigned int);
    void (__stdcall* Zhm3Actor__Togglelightswitch)(unsigned int, unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Getlightswitchstate)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Getbodyposition)(unsigned int);
    void (__stdcall* Zhm3Actor__Setbodyposition)(unsigned int, int);
    void (__stdcall* Zhm3Actor__Setbodypositionunknown)(unsigned int);
    void (__stdcall* Zhm3Actor__Setbodypositionnormal)(unsigned int);
    void (__stdcall* Zhm3Actor__Sethmescort)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Gethmescort)(unsigned int);
    void (__stdcall* Zhm3Actor__Playsound)(unsigned int, _eAudioEvent);
    void (__stdcall* Zhm3Actor__Isweaponallowed)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Isweaponfoundathitman)(unsigned int);
    void (__stdcall* Zhm3Actor__Transferhitmanweaponstoactor)(unsigned int);
    void (__stdcall* Zhm3Actor__Isonback)(unsigned int);
    void (__stdcall* Zhm3Actor__Setneardeath)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Dropbloodstain)(unsigned int);
    void (__stdcall* Zhm3Actor__Activatebloodspurt)(unsigned int, int, _v3&);
    void (__stdcall* Zhm3Actor__Wantbloodstain)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Setwantbloodonhit)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Isactor)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Ishitmandraggingactor)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Iswearingclothes)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Getoriginalsuit)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Getflankingpos)(unsigned int, unsigned int, _eDirection, _v3&);
    void (__stdcall* Zhm3Actor__Getbodycheckposdir)(unsigned int, unsigned int, _v3&, _v3&);
    void (__stdcall* Zhm3Actor__Getposonpath)(unsigned int, unsigned int, float, _v3&);
    void (__stdcall* Zhm3Actor__Blowhitmandisguise)(unsigned int);
    void (__stdcall* Zhm3Actor__Generateaudioevent)(unsigned int, _eAudioEvent);
    void (__stdcall* Zhm3Actor__Playactorspeech)(unsigned int, _eAudioType, _eAudioEvent);
    void (__stdcall* Zhm3Actor__Playresourceasspeech)(unsigned int, int);
    void (__stdcall* Zhm3Actor__Playlocaleresourceasspeech)(unsigned int, char const*);
    void (__stdcall* Zhm3Actor__Getlocalesoundresource)(unsigned int, char const*);
    void (__stdcall* Zhm3Actor__Playrandomlocaleresourceasspeech)(unsigned int, char const*);
    void (__stdcall* Zhm3Actor__Isspeechplaying)(unsigned int);
    void (__stdcall* Zhm3Actor__Stopspeech)(unsigned int);
    void (__stdcall* Zhm3Actor__Bite)(unsigned int, short, _v3, _v3, float, float);
    void (__stdcall* Zhm3Actor__Punch)(unsigned int);
    void (__stdcall* Zhm3Actor__Stungunattack)(unsigned int);
    void (__stdcall* Zhm3Actor__Activaterigidbody)(unsigned int);
    void (__stdcall* Zhm3Actor__Userigidbodyonpush)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Useubragdoll)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Dragbody)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Actorbeingpushed)(unsigned int);
    void (__stdcall* Zhm3Actor__Isactorbeingkilled)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Changeintobodybag)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Isbodybag)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Maybebodybagged)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Setmaybebodybagged)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Setignorehelprequests)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Setissearching)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Disabledrag)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Getnumberofavailableragdolls)(unsigned int);
    void (__stdcall* Zhm3Actor__Setactorspecies)(unsigned int, int);
    void (__stdcall* Zhm3Actor__Sendeventtoactorswithinbox)(unsigned int, _ZSC_EVENT, unsigned int);
    void (__stdcall* Zhm3Actor__Playanimwithcamerabone)(unsigned int, short);
    void (__stdcall* Zhm3Actor__Findclosestcharactertype)(unsigned int, int, _v3, float);
    void (__stdcall* Zhm3Actor__Disableragdollanddieanim)(unsigned int);
    void (__stdcall* Zhm3Actor__Dummy)(unsigned int);
    void (__stdcall* Zhm3Actor__Repairutilbox)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Terminatecurrentlnkaction)(unsigned int);
    void (__stdcall* Zhm3Actor__Getsecuritydeviceloopingsound)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Getsecuritydeviceweaponfoundsound)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Activateragdollnextframe)(unsigned int);
    void (__stdcall* Zhm3Actor__Activateragdoll)(unsigned int);
    void (__stdcall* Zhm3Actor__Hitragdoll)(unsigned int, _v3, _v3, float);
    void (__stdcall* Zhm3Actor__Ishitmanvisible)(unsigned int);
    void (__stdcall* Zhm3Actor__Setignoredisguise)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Isignoredisguise)(unsigned int);
    void (__stdcall* Zhm3Actor__Canplayanimpf)(unsigned int, short, int);
    void (__stdcall* Zhm3Actor__Setposdiractor)(unsigned int, _v3&, _v3&);
    void (__stdcall* Zhm3Actor__Calculatestopdistancetoavoidobstacle)(unsigned int);
    void (__stdcall* Zhm3Actor__Setinterruptable)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Actor__Positionlock)(unsigned int);
    void (__stdcall* Zhm3Actor__Positionunlock)(unsigned int);
    void (__stdcall* Zhm3Actor__Isanimubanim)(unsigned int, short);
    void (__stdcall* Zhm3Actor__Getangletoactor2)(unsigned int, unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Addmouthemitter)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Removemouthemitter)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Onpickupitem)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Isenteringorleavingelevator)(unsigned int);
    void (__stdcall* Zhm3Actor__Isinorusingelevator)(unsigned int);
    void (__stdcall* Zhm3Actor__Isinoutsidelocation)(unsigned int);
    void (__stdcall* Zhm3Actor__Isinelevator)(unsigned int);
    void (__stdcall* Zhm3Actor__Getelevatorhatchgeom)(unsigned int);
    void (__stdcall* Zhm3Actor__Broadcasttoothersinelevator)(unsigned int, unsigned int, _ZSC_EVENT);
    void (__stdcall* Zhm3Actor__Isaccidentkilled)(unsigned int);
    void (__stdcall* Zhm3Actor__Ispointinsideelevatorarea)(unsigned int, _v3);
    void (__stdcall* Zhm3Actor__Setsuspectedsuit)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Ishitmanhidingbehindnextdoor)(unsigned int, unsigned int&, _v3&);
    void (__stdcall* Zhm3Actor__Idlelookat)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Actor__Setdisableragdollforshots)(unsigned int, unsigned char);
    void (__stdcall* Zactor__Setscriptpaused)(unsigned int, unsigned char);
    void (__stdcall* Zactor__Setmoveset)(unsigned int, _eMoveSet, int);
    void (__stdcall* Zactor__Stopmovementatdistance)(unsigned int, float);
    void (__stdcall* Zactor__Setmovespeedmultiplier)(unsigned int, float);
    void (__stdcall* Zactor__Getactorspeed)(unsigned int, unsigned int);
    void (__stdcall* Zactor__Dontstop)(unsigned int, unsigned char);
    void (__stdcall* Zactor__Movetoposq)(unsigned int, _v3, float, _eMoveSet, int);
    void (__stdcall* Zactor__Movetolocationq)(unsigned int, unsigned int, float, _eMoveSet, int);
    void (__stdcall* Zactor__Stoppath)(unsigned int);
    void (__stdcall* Zactor__Setstopdistance)(unsigned int, float);
    void (__stdcall* Zactor__Setpathnotify)(unsigned int, float);
    void (__stdcall* Zactor__Setupdateposition)(unsigned int, unsigned char);
    void (__stdcall* Zactor__Lockmovement)(unsigned int);
    void (__stdcall* Zactor__Unlockmovement)(unsigned int);
    void (__stdcall* Zactor__Clearreservation)(unsigned int);
    void (__stdcall* Zactor__Ignorereservations)(unsigned int);
    void (__stdcall* Zactor__Usereservations)(unsigned int);
    void (__stdcall* Zactor__Isragdollactive)(unsigned int, unsigned int);
    void (__stdcall* Zactor__Isdead)(unsigned int);
    void (__stdcall* Zactor__Isunconscious)(unsigned int);
    void (__stdcall* Zactor__Isawake)(unsigned int);
    void (__stdcall* Zactor__Getactorstate)(unsigned int);
    void (__stdcall* Zactor__Setawake)(unsigned int);
    void (__stdcall* Zactor__Setunconscious)(unsigned int);
    void (__stdcall* Zactor__Setsleeping)(unsigned int);
    void (__stdcall* Zactor__Setdead)(unsigned int);
    void (__stdcall* Zactor__Lookat)(unsigned int, unsigned int);
    void (__stdcall* Zactor__Getlookat)(unsigned int);
    void (__stdcall* Zactor__Enablelookat)(unsigned int, unsigned char);
    void (__stdcall* Zactor__Islookatenabled)(unsigned int);
    void (__stdcall* Zactor__Setactorposdir)(unsigned int, _v3, _v3);
    void (__stdcall* Zactor__Copytoref)(unsigned int, unsigned int);
    void (__stdcall* Zactor__Setvisfov)(unsigned int, float);
    void (__stdcall* Zactor__Isonstairs)(unsigned int);
    void (__stdcall* Zactor__Setshootintoground)(unsigned int, unsigned char);
    void (__stdcall* Zactor__Setshootintogroundinfullbody)(unsigned int, unsigned char);
    void (__stdcall* Zactor__Getboidspeed)(unsigned int);
    void (__stdcall* Zactor__Inactivateboid)(unsigned int);
    void (__stdcall* Zactor__Placeactorinmovinggroup)(unsigned int, unsigned int, unsigned int);
    void (__stdcall* Zactor__Removeactorfrommovinggroup)(unsigned int, unsigned int);
    void (__stdcall* Zactor__Getnumoftransitions)(unsigned int, _eMoveSet);
    void (__stdcall* Zactor__Setnumoftransitions)(unsigned int, _eMoveSet, int);
    void (__stdcall* Zactor__Setfootwearmaterial)(unsigned int, int);
    void (__stdcall* Zactor__Setmovepoolweight)(unsigned int, float);
    void (__stdcall* Zactor__Sethandtarget)(unsigned int, int, unsigned int, float);
    void (__stdcall* Zactor__Getvariant)(unsigned int);
    void (__stdcall* Zactor__Setvariant)(unsigned int, int);
    void (__stdcall* Zactor__Addtoforcedrawoffscreenlist)(unsigned int);
    void (__stdcall* Zactor__Removefromforcedrawoffscreenlist)(unsigned int);
    void (__stdcall* Zactor__Turnactor)(unsigned int, float);
    void (__stdcall* Zactor__Setcanopendoors)(unsigned int, unsigned char);
    void (__stdcall* Hm3Gui__Displayinfo)(char const*);
    void (__stdcall* Hm3Gui__Displaypipinfo)(char const*);
    void (__stdcall* Hm3Gui__Displaywarning)(char const*);
    void (__stdcall* Hm3Gui__Displaypipwarning)(char const*);
    void (__stdcall* Hm3Gui__Displayhint)(char const*);
    void (__stdcall* Hm3Gui__Displaysubtitle)(char const*);
    void (__stdcall* Hm3Gui__Displaysubtitletimed)(char const*, float);
    void (__stdcall* Silevelcontrol__Missioncompleted)();
    void (__stdcall* Silevelcontrol__Missionfailed)(char const*);
    void (__stdcall* Silevelcontrol__Characterkilled)(unsigned int);
    void (__stdcall* Silevelcontrol__Characterharmed)(unsigned int);
    void (__stdcall* Silevelcontrol__Completeobjective)(int);
    void (__stdcall* Silevelcontrol__Completeobjectivenotickoffmark)(int);
    void (__stdcall* Silevelcontrol__Uncompleteobjective)(int);
    void (__stdcall* Silevelcontrol__Hideobjective)(int);
    void (__stdcall* Silevelcontrol__Unhideobjective)(int);
    void (__stdcall* Silevelcontrol__Isobjectivecompleted)(int);
    void (__stdcall* Silevelcontrol__Changeobjectivetext)(int, char const*);
    void (__stdcall* Silevelcontrol__Clearchangedobjectivetext)(int);
    void (__stdcall* Silevelcontrol__Changeobjectivepath)(int, char const*);
    void (__stdcall* Silevelcontrol__Clearchangedobjectivepath)(int);
    void (__stdcall* Silevelcontrol__Getlevelcontrol)();
    void (__stdcall* Silevelcontrol__Gethitman)();
    void (__stdcall* Silevelcontrol__Ishitmanrecognizable)();
    void (__stdcall* Silevelcontrol__Killhitman)();
    void (__stdcall* Silevelcontrol__Getnotoriety)();
    void (__stdcall* Silevelcontrol__Getcoverlist)();
    void (__stdcall* Silevelcontrol__Start_Actorinvestigatehitman)(unsigned int);
    void (__stdcall* Silevelcontrol__End_Actorinvestigatehitman)(unsigned int);
    void (__stdcall* Silevelcontrol__Getdifficultysettings)();
    void (__stdcall* Silevelcontrol__Getdifficulty)();
    void (__stdcall* Silevelcontrol__Ishitmantrespassing)();
    void (__stdcall* Silevelcontrol__Ishitmaninoutsidelocation)();
    void (__stdcall* Silevelcontrol__Iscontainerallowedhere)(unsigned int);
    void (__stdcall* Silevelcontrol__Gethumanshieldtarget)();
    void (__stdcall* Silevelcontrol__Gethitmanhidecloset)();
    void (__stdcall* Silevelcontrol__Getcurrentvictim)();
    void (__stdcall* Silevelcontrol__Ishitmanincloset)(unsigned int);
    void (__stdcall* Silevelcontrol__Killhitmanincloset)();
    void (__stdcall* Silevelcontrol__Getdoorpickedbyhm)();
    void (__stdcall* Silevelcontrol__Ishitmanlockpicking)();
    void (__stdcall* Silevelcontrol__Ishitmanloookingthroughkeyhole)();
    void (__stdcall* Silevelcontrol__Ishitmanthrowingstuff)();
    void (__stdcall* Silevelcontrol__Subscribehitmanchangeclothes)(unsigned int);
    void (__stdcall* Silevelcontrol__Getcurrenthitmansuit)();
    void (__stdcall* Silevelcontrol__Ishitmanwearinghitmansuit)();
    void (__stdcall* Silevelcontrol__Getcurrenthitmanlefthanditem)();
    void (__stdcall* Silevelcontrol__Getcurrenthitmanweapontemplate)();
    void (__stdcall* Silevelcontrol__Getactorfriskinghm)();
    void (__stdcall* Silevelcontrol__Setactorfriskinghm)(unsigned int);
    void (__stdcall* Silevelcontrol__Getfriskoperation)();
    void (__stdcall* Silevelcontrol__Setfriskoperation)(_eFriskOp);
    void (__stdcall* Silevelcontrol__Getcurrentzone)();
    void (__stdcall* Silevelcontrol__Starteventcamera)(unsigned int, _eEventCameraType, unsigned int, _eEventCameraPosition);
    void (__stdcall* Silevelcontrol__Starteventcameralookatgeom)(unsigned int, unsigned int, _eEventCameraPosition);
    void (__stdcall* Silevelcontrol__Starteventcamerawithcameraboneanim)(unsigned int, int, int);
    void (__stdcall* Silevelcontrol__Endeventcamera)(int);
    void (__stdcall* Silevelcontrol__Getguardsfriskbox)(unsigned int);
    void (__stdcall* Silevelcontrol__Hashmweaponinhand)();
    void (__stdcall* Silevelcontrol__Incfriskfails)();
    void (__stdcall* Silevelcontrol__Incheadshots)();
    void (__stdcall* Silevelcontrol__Inctargetspoisoned)();
    void (__stdcall* Silevelcontrol__Incsedates)();
    void (__stdcall* Silevelcontrol__Incimpersonations)();
    void (__stdcall* Silevelcontrol__Incpusheddeath)();
    void (__stdcall* Silevelcontrol__Inctargetssniped)();
    void (__stdcall* Silevelcontrol__Incbodiesfound)(unsigned int);
    void (__stdcall* Silevelcontrol__Incsedatedbodiesfound)();
    void (__stdcall* Silevelcontrol__Incbloodtrailsfound)();
    void (__stdcall* Silevelcontrol__Incclosecombatkill)();
    void (__stdcall* Silevelcontrol__Incaccidentkill)(unsigned int);
    void (__stdcall* Silevelcontrol__Incaccidentkillignoredamage)(unsigned int);
    void (__stdcall* Silevelcontrol__Setchangeclothesallowed)(unsigned char);
    void (__stdcall* Silevelcontrol__Caughtontape)();
    void (__stdcall* Silevelcontrol__Tapestolen)();
    void (__stdcall* Silevelcontrol__Weaponused)(unsigned int, unsigned int);
    void (__stdcall* Silevelcontrol__Settargetnum)(unsigned int, int);
    void (__stdcall* Silevelcontrol__Gethminventoryitem)(char const*);
    void (__stdcall* Silevelcontrol__Isitemtemplateinhminventory)(unsigned int);
    void (__stdcall* Silevelcontrol__Isiteminhminventory)(unsigned int);
    void (__stdcall* Silevelcontrol__Copyhmtoref)(unsigned int);
    void (__stdcall* Silevelcontrol__Audioaddpauseobject)(unsigned int);
    void (__stdcall* Silevelcontrol__Starteventmusic)(int);
    void (__stdcall* Silevelcontrol__Createsecuritydevicefromtemplate)();
    void (__stdcall* Silevelcontrol__Getsuitcaseinhitmanshand)();
    void (__stdcall* Silevelcontrol__Isdooropen)(unsigned int);
    void (__stdcall* Silevelcontrol__Isdoorlocked)(unsigned int);
    void (__stdcall* Silevelcontrol__Getclosestposter)(unsigned int, unsigned int&, _v3&);
    void (__stdcall* Silevelcontrol__Getreachablehitmanpfpos)(_v3&);
    void (__stdcall* Silevelcontrol__Getclosestexitposforclimbinghitman)(_v3, _v3&);
    void (__stdcall* Silevelcontrol__Ishitmaninreachableposition)();
    void (__stdcall* Silevelcontrol__Ishitmaninsidepathfinder)();
    void (__stdcall* Silevelcontrol__Forcecloselasthitmandoor)();
    void (__stdcall* Silevelcontrol__Ishitmaninelevator)();
    void (__stdcall* Silevelcontrol__Ishitmantopofelevator)();
    void (__stdcall* Silevelcontrol__Showonmap)(unsigned int, unsigned char);
    void (__stdcall* Silevelcontrol__Isactorinwaterbox)(unsigned int);
    void (__stdcall* Silevelcontrol__Remove_Existing_Eventcam)();
    void (__stdcall* Pathfollower__Ispathfollowervalid)(unsigned int);
    void (__stdcall* Pathfollower__Numwaypointlists)(unsigned int);
    void (__stdcall* Pathfollower__Setwaypointindex)(unsigned int, int);
    void (__stdcall* Pathfollower__Useclosestonstart)(unsigned int, unsigned char);
    void (__stdcall* Pathfollower__Getnextwaypoint)(unsigned int);
    void (__stdcall* Pathfollower__Setwaypointlist)(unsigned int, int);
    void (__stdcall* Pathfollower__Getcurrentwaypointlist)(unsigned int);
    void (__stdcall* Pathfollower__Setexternalwaypointlist)(unsigned int, unsigned int);
    void (__stdcall* Pathfollower__Setpathtype)(unsigned int, _eScriptPathType);
    void (__stdcall* Pathfollower__Getpathtype)(unsigned int);
    void (__stdcall* Pathfollower__Getusewalk)(unsigned int);
    void (__stdcall* Pathfollower__Getplayanimswhilewalking)(unsigned int);
    void (__stdcall* Hm3Weapon__Getweapontemplate)(unsigned int);
    void (__stdcall* Hm3Weapon__Getweapontype)(unsigned int);
    void (__stdcall* Hm3Weapon__Gettimebetweenshots)(unsigned int);
    void (__stdcall* Hm3Weapon__Getweaponoperations)(unsigned int);
    void (__stdcall* Hm3Weapon__Weaponfiresprojectiles)(unsigned int);
    void (__stdcall* Hm3Weapon__Getprojectilesinmagazine)(unsigned int);
    void (__stdcall* Hm3Weapon__Emptyweapon)(unsigned int);
    void (__stdcall* Hm3Weapon__Setprojectilesinmagazine)(unsigned int, char, unsigned char);
    void (__stdcall* Hm3Weapon__Weaponissmall)(unsigned int);
    void (__stdcall* Hm3Weapon__Issniper)(unsigned int);
    void (__stdcall* Hm3Weapon__Isdetectable)(unsigned int);
    void (__stdcall* Coverlist__Releasecover)(unsigned int, _sCover&);
    void (__stdcall* Coverlist__Checkcoverfrompos)(unsigned int, unsigned int, _v3, float, _eDirection);
    void (__stdcall* Coverlist__Getbestcoverfrompos)(unsigned int, unsigned int, _v3, float, _eDirection);
    void (__stdcall* Coverlist__Getbestcover)(unsigned int, unsigned int, unsigned int, float, _eDirection);
    void (__stdcall* Coverlist__Getcoverindexesaroundpos)(unsigned int, _v3, float, int, int&);
    void (__stdcall* Coverlist__Getpisscover)(unsigned int, unsigned int, float);
    void (__stdcall* Coverlist__Getpissposdir)(unsigned int, unsigned int, _sCover&);
    void (__stdcall* Coverlist__Getcoverposdir)(unsigned int, _sCover&);
    void (__stdcall* Coverlist__Getcoverposdir_Pos)(unsigned int, _sCover&, _v3);
    void (__stdcall* Coverlist__Getcoverposition)(unsigned int, int, unsigned int, _v3);
    void (__stdcall* Coverlist__Getshootposdir)(unsigned int, _sCover&, unsigned char);
    void (__stdcall* Coverlist__Getshootposdir_Pos)(unsigned int, _sCover&, _v3, unsigned char);
    void (__stdcall* Coverlist__Getintermediateposition)(unsigned int, _sCover, _v3, _v3, float);
    void (__stdcall* Actorcommunication__Registerradiouser)(unsigned int, int);
    void (__stdcall* Actorcommunication__Sendradiomessage)(unsigned int, int, _ZSC_EVENT);
    void (__stdcall* Actorcommunication__Sendradiomessagetoclosestn)(unsigned int, int, int, _ZSC_EVENT);
    void (__stdcall* Actorcommunication__Sendradiomessagetoneedeforce)(unsigned int, int, float, _ZSC_EVENT);
    void (__stdcall* Actorcommunication__Sendrangedmessage)(unsigned int, float, _ZSC_EVENT);
    void (__stdcall* Actorcommunication__Sendglobalevent)(unsigned int, _ZSC_EVENT);
    void (__stdcall* Actorcommunication__Sendeventtoactorsinbox)(unsigned int, _ZSC_EVENT);
    void (__stdcall* Actorcommunication__Sendeventtoactorsinbox2)(unsigned int, _ZSC_EVENT);
    void (__stdcall* Fightcontroller__Attackingtarget)(unsigned int, int, unsigned int);
    void (__stdcall* Fightcontroller__Requestcoverfire)(unsigned int, unsigned int);
    void (__stdcall* Fightcontroller__Huntingtarget)(unsigned int, int, unsigned int);
    void (__stdcall* Fightcontroller__Standby)(unsigned int, int, unsigned int);
    void (__stdcall* Fightcontroller__Updatetargetinfo)(unsigned int, unsigned int, unsigned int);
    void (__stdcall* Fightcontroller__Signoff)(unsigned int);
    void (__stdcall* Fightcontroller__Querytarget)(unsigned int, int);
    void (__stdcall* Fightcontroller__Querytargetclose)(unsigned int);
    void (__stdcall* Fightcontroller__Queryshouldattack)(unsigned int, unsigned int);
    void (__stdcall* Fightcontroller__Iscombathappening)();
    void (__stdcall* Fightcontroller__Requestnewposition)(unsigned int);
    void (__stdcall* Guardquartercontroller__Initializeweaponstorage)(unsigned int, unsigned int);
    void (__stdcall* Guardquartercontroller__Registeractor)(unsigned int, unsigned int);
    void (__stdcall* Guardquartercontroller__Delegatetask)(unsigned int, _sGQCTask);
    void (__stdcall* Guardquartercontroller__Taskdone)(unsigned int, unsigned int);
    void (__stdcall* Guardquartercontroller__Accepttask)(unsigned int, _sGQCTask);
    void (__stdcall* Guardquartercontroller__Actornotavailable)(unsigned int, unsigned int);
    void (__stdcall* Guardquartercontroller__Getclosestbodybagbox)(unsigned int, unsigned int);
    void (__stdcall* Guardquartercontroller__Decreasebodybagboxcapacity)(unsigned int, unsigned int);
    void (__stdcall* Guardquartercontroller__Canaddweapontostorage)(unsigned int, unsigned int);
    void (__stdcall* Guardquartercontroller__Placeweaponinstorage)(unsigned int, unsigned int);
    void (__stdcall* Guardquartercontroller__Removeweaponfromstorage)(unsigned int, unsigned int);
    void (__stdcall* Guardquartercontroller__Getstorageposdirref)(unsigned int, _v3&, _v3&, unsigned int&);
    void (__stdcall* Guardquartercontroller__Isweaponinstorage)(unsigned int, unsigned int);
    void (__stdcall* Guardquartercontroller__Getweaponreffromstorage)(unsigned int, unsigned int);
    void (__stdcall* Dialog__Startdialog)(unsigned int, unsigned int, char const*, char const*, char const*);
    void (__stdcall* Dialog__Startonelinerdialog)(unsigned int, unsigned int, char const*);
    void (__stdcall* Dialog__Startonelinerdialognoturn)(unsigned int, unsigned int, char const*);
    void (__stdcall* Dialog__Pushdialogcamera)(unsigned int, unsigned int);
    void (__stdcall* Dialog__Popdialogcamera)();
    void (__stdcall* Dialog__Startdialogex)(unsigned int, unsigned int, char const*, char const*, char const*, int, unsigned char, unsigned char, unsigned char, unsigned char);
    void (__stdcall* Dialog__Isplaying)();
    void (__stdcall* Dialog__Setnotifytarget)(unsigned int, _ZSC_EVENT);
    void (__stdcall* Dialog__Stopdialog)();
    void (__stdcall* Dialog__Actorplaynextdialog)(unsigned int, char const*, int, char const*);
    void (__stdcall* Dialog__Setdialogskipable)(unsigned char);
    void (__stdcall* Dialog__Sethmposbeforedialog)(_v3);
    void (__stdcall* Zusepoint__Lock)(unsigned int);
    void (__stdcall* Zusepoint__Unlock)(unsigned int);
    void (__stdcall* Zusepoint__Changeprobability)(unsigned int, float);
    void (__stdcall* Zusepoint__Relocate)(unsigned int);
    void (__stdcall* Zusepoint__Islocked)(unsigned int);
    void (__stdcall* Zgeom__Getsize)(unsigned int);
    void (__stdcall* Zgeom__Setposition)(unsigned int, float, float, float);
    void (__stdcall* Zgeom__Getposition)(unsigned int);
    void (__stdcall* Zgeom__Getlocalpoint)(unsigned int, _v3&);
    void (__stdcall* Zgeom__Getposdir)(unsigned int, _v3&, _v3&);
    void (__stdcall* Zgeom__Setposdir)(unsigned int, _v3&, _v3&);
    void (__stdcall* Zgeom__Getclosestposdirinbox)(unsigned int, unsigned int, unsigned int, float, _v3&, _v3&);
    void (__stdcall* Zgeom__Getdistancetoobject)(unsigned int, unsigned int);
    void (__stdcall* Zgeom__Getdistancetopos)(unsigned int, _v3);
    void (__stdcall* Zgeom__Hascontroller)(unsigned int, char const*);
    void (__stdcall* Zgeom__Getcontroller)(unsigned int, char const*);
    void (__stdcall* Zgeom__Getangletoobject)(unsigned int, unsigned int);
    void (__stdcall* Zgeom__Getangletodir)(unsigned int, _v3);
    void (__stdcall* Zgeom__Getangletogeomdir)(unsigned int, unsigned int);
    void (__stdcall* Zgeom__Copyobjectposdir)(unsigned int, unsigned int);
    void (__stdcall* Zgeom__Copyobjectpos)(unsigned int, unsigned int);
    void (__stdcall* Zgeom__Copyobjectdir)(unsigned int, unsigned int);
    void (__stdcall* Zgeom__Getobjectrelpos)(unsigned int, float, float, float);
    void (__stdcall* Zgeom__Checkworldpointinside)(unsigned int, _v3);
    void (__stdcall* Zgeom__Isinview)(unsigned int);
    void (__stdcall* Zgeom__Printname)(unsigned int);
    void (__stdcall* Zgeom__Getdistancetoitem)(unsigned int, unsigned int);
    void (__stdcall* Zgeom__Makeinactive)(unsigned int);
    void (__stdcall* Zgeom__Makeactive)(unsigned int);
    void (__stdcall* Zgeom__Hide)(unsigned int, unsigned char);
    void (__stdcall* Zgeom__Getcurrentroom)(unsigned int);
    void (__stdcall* Zgeom__Numberofexitsfromgeomscurrentroom)(unsigned int, unsigned int);
    void (__stdcall* Zhm3Boid__Die)(unsigned int);
    void (__stdcall* Zhm3Boid__Getdistancefrombonetoobject)(unsigned int, int, unsigned int);
    void (__stdcall* Zhm3Boid__Getfacing)(unsigned int);
    void (__stdcall* Zhm3Boid__Disableboid)(unsigned int);
    void (__stdcall* Zhm3Boid__Shootintoground)(unsigned int);
    void (__stdcall* Zhm3Boid__Disableallbehaviors)(unsigned int);
    void (__stdcall* Zhm3Boid__Updatelocalspace)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Boid__Setminmaxspeed)(unsigned int, float, float);
    void (__stdcall* Zhm3Boid__Resetspeed)(unsigned int);
    void (__stdcall* Zhm3Boid__Setminmaxforce)(unsigned int, float, float);
    void (__stdcall* Zhm3Boid__Setvisionrangeandangle)(unsigned int, float, float);
    void (__stdcall* Zhm3Boid__Applyconstantforce)(unsigned int, float, float, float, unsigned char);
    void (__stdcall* Zhm3Boid__Enablebanking)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Boid__Setforceconstraint)(unsigned int, float, float, float);
    void (__stdcall* Zhm3Boid__Enableseparation)(unsigned int, float, int);
    void (__stdcall* Zhm3Boid__Enablecohesion)(unsigned int, int);
    void (__stdcall* Zhm3Boid__Enableallignment)(unsigned int, int);
    void (__stdcall* Zhm3Boid__Enableflee)(unsigned int, unsigned int, float, int);
    void (__stdcall* Zhm3Boid__Enablefall)(unsigned int, float, float, float, int);
    void (__stdcall* Zhm3Boid__Enablestayinbox)(unsigned int, unsigned int, int);
    void (__stdcall* Zhm3Boid__Enablestayinspherepos)(unsigned int, _v3, float, int);
    void (__stdcall* Zhm3Boid__Enablestayinsphere)(unsigned int, unsigned int, float, int);
    void (__stdcall* Zhm3Boid__Enablefollowwaypoints)(unsigned int, unsigned int, float, int, int);
    void (__stdcall* Zhm3Boid__Enablewander2D)(unsigned int, float, float, float, float, int);
    void (__stdcall* Zhm3Boid__Enableseekref)(unsigned int, unsigned int, int);
    void (__stdcall* Zhm3Boid__Enableseekpos)(unsigned int, _v3, int);
    void (__stdcall* Zhm3Boid__Enablefallbehavior)(unsigned int, float, float, float, int);
    void (__stdcall* Zhm3Boid__Setdragtarget)(unsigned int, unsigned int, int, _v3);
    void (__stdcall* Zhm3Boid__Releasedragtarget)(unsigned int, unsigned char);
    void (__stdcall* Zhm3Boid__Setpos)(unsigned int, float, float, float);
    void (__stdcall* Zhm3Boid__Setglobalbonescale)(unsigned int, float);
    void (__stdcall* Friskbox__Addguardtofriskbox)(unsigned int, unsigned int);
    void (__stdcall* Friskbox__Removeguardfromfriskbox)(unsigned int, unsigned int);
    void (__stdcall* Friskbox__Setenabled)(unsigned int, unsigned char);
    void (__stdcall* Friskbox__Isenabled)(unsigned int);
    void (__stdcall* Friskbox__Playfriskokanimmirrored)(unsigned int, unsigned int);
    void (__stdcall* Friskbox__Addsuitcase)(unsigned int, unsigned int);
    void (__stdcall* Friskbox__Removesuitcase)(unsigned int, unsigned int);
    void (__stdcall* Friskbox__Ishitmancarryingconfsuitcase)(unsigned int);
    void (__stdcall* Friskbox__Setsuitcaseplaced)(unsigned int, unsigned int);
    void (__stdcall* Friskbox__Issurrendweaponenabled)(unsigned int);
    void (__stdcall* Friskbox__Canpickupweaponsitems)(unsigned int);
    void (__stdcall* Friskbox__Sethitmanssuitcasechecked)(unsigned int, unsigned char);
    void (__stdcall* Osd__Addinfo)(char const*, char const*);
    void (__stdcall* Osd__Addtickoffmark)();
    void (__stdcall* Zhm3Securitycamera__Getfusebox)(unsigned int);
    void (__stdcall* Zhm3Securitycamera__Getradiochannel)(unsigned int);
    void (__stdcall* Zhm3Securitycamera__Getfootpoint)(unsigned int);
    void (__stdcall* Poscontroller__Addactor)(unsigned int, unsigned int);
    void (__stdcall* Poscontroller__Removeactor)(unsigned int, unsigned int);
    void (__stdcall* Poscontroller__Getposition)(unsigned int, unsigned int);
    void (__stdcall* M04Levelcontrol__Isglobeopen)();
    void (__stdcall* M04Levelcontrol__Didhmtalktoagent)();
    void (__stdcall* M04Levelcontrol__Ishmashitman)();
    void (__stdcall* M04Levelcontrol__Ishmasbodyguard)();
    void (__stdcall* M04Levelcontrol__Ishmaspatient)();
    void (__stdcall* M04Levelcontrol__Ishmasguard)();
    void (__stdcall* M04Levelcontrol__Ishmaswarden)();
    void (__stdcall* M04Levelcontrol__Ishmastherapist)();
    void (__stdcall* M11Levelcontrol__Additemforcolicheck)(unsigned int, unsigned int, float);
    void (__stdcall* M11Levelcontrol__Removeitemforcolicheck)(unsigned int);
    void (__stdcall* M11Levelcontrol__Activatecoliforactor)(unsigned int);
    void (__stdcall* M11Levelcontrol__Deactivatecoliforactor)(unsigned int);
    void (__stdcall* M11Levelcontrol__Setarranger)(unsigned int);
    void (__stdcall* M11Levelcontrol__Setangel)(unsigned int);
    void (__stdcall* M11Levelcontrol__Usecomputer)(unsigned int, unsigned char);
    void (__stdcall* M11Levelcontrol__Throwknife)(unsigned int);
    void (__stdcall* M11Levelcontrol__Operateprojector)(unsigned int);
    void (__stdcall* M11Levelcontrol__Startprojector)(unsigned char);
    void (__stdcall* M11Levelcontrol__Removefromwaterbox)(unsigned int);
    void (__stdcall* M11Levelcontrol__Karoketimeplayed)();
    void (__stdcall* M11Levelcontrol__Disablecrowdframeupdate)(unsigned char);
    void (__stdcall* M12Levelcontrol__Sionhighnoon)();
    void (__stdcall* M12Levelcontrol__Siafterhighnoon)();
    void (__stdcall* M12Levelcontrol__Sihighnoonactive)();
    void (__stdcall* M12Levelcontrol__Sihighnoonsilenced)();
    void (__stdcall* M12Levelcontrol__Isweaponremotebomb)(unsigned int);
    void (__stdcall* M12Levelcontrol__Displaybombhint)();
    void (__stdcall* M12Levelcontrol__Moveobject)(unsigned int, unsigned int, unsigned int, float, float);
    void (__stdcall* M12Levelcontrol__Disablehitmancontrols)(unsigned char);
    void (__stdcall* M12Levelcontrol__Hitmanfallforward)();
    void (__stdcall* Holevelcontrol__Hideoutcheckitem)(unsigned int);
    void (__stdcall* Holevelcontrol__Checkcustomweaponstate)(unsigned int);
    void (__stdcall* Holevelcontrol__Showhappysubtitle)(char const*, float);
    void (__stdcall* Bloodtrail__Isbloodtrail)(unsigned int);
    void (__stdcall* Bloodtrail__Getnexttrailpoint)(unsigned int);
    void (__stdcall* Bloodtrail__Gettrailnumber)(unsigned int);
    void (__stdcall* Bloodtrail__Deactivatetrail)(unsigned int);
    void (__stdcall* Cigs__Getcig)(unsigned int, unsigned int&);
    void (__stdcall* Cigs__Freecig)(unsigned int, unsigned int);
    void (__stdcall* Zlist__Getrndref)(unsigned int);
    void (__stdcall* Zlist__Getcount)(unsigned int);
    void (__stdcall* Zlist__Getref)(unsigned int, int);
    void (__stdcall* Zlist__Getindex)(unsigned int, unsigned int);
    void (__stdcall* Zlist__Contains)(unsigned int, unsigned int);
    void (__stdcall* Zlist__Add)(unsigned int, unsigned int);
    void (__stdcall* Zlist__Remove)(unsigned int, unsigned int);
    void (__stdcall* Zlist__Clear)(unsigned int);
    void (__stdcall* Zlist__Sendeventtolist)(unsigned int, _ZSC_EVENT);
    void (__stdcall* Addlinedecay)(_v3, _v3, int, float);
    void (__stdcall* Addvectordecay)(_v3, _v3, float, int, float);
    void (__stdcall* Debugfunctions__Displayscriptline)(unsigned int, unsigned int, int);
    void (__stdcall* Debugfunctions__Displayscriptlinefrompos)(_v3, _v3, int);
    void (__stdcall* Debugfunctions__Displaypermanentscriptline)(unsigned int, unsigned int, int);
    void (__stdcall* Debugfunctions__Displaypermanentscriptlinefrompos)(_v3, _v3, int);
    void (__stdcall* Debugfunctions__Modifypermanentscriptline)(int, unsigned int, unsigned int, int);
    void (__stdcall* Debugfunctions__Addpermanentscripttext)(unsigned int, int, int, char const*, ...);
    void (__stdcall* Physics__Releasebone)(int, _v3, float);
    void (__stdcall* Physics__Setvelocity)(int, float, float, float, _v3);
    void (__stdcall* Item__Attachrhand)(unsigned int, unsigned int);
    void (__stdcall* Item__Attachlhand)(unsigned int, unsigned int);
    void (__stdcall* Item__Detachrhand)(unsigned int, unsigned int);
    void (__stdcall* Item__Detachlhand)(unsigned int, unsigned int);
    void (__stdcall* Item__Resetedibleitem)(unsigned int, _v3);
    void (__stdcall* Item__Getlhanditem)(unsigned int);
    void (__stdcall* Item__Getrhanditem)(unsigned int);
    void (__stdcall* Item__Enablepickup)(unsigned int, unsigned char);
    void (__stdcall* Item__Setowner)(unsigned int, unsigned int);
    void (__stdcall* Item__Setownerparent)(unsigned int, unsigned int, unsigned int);
    void (__stdcall* Item__Getparent)(unsigned int);
    void (__stdcall* Item__Getowner)(unsigned int);
    void (__stdcall* Item__Setitemstate)(unsigned int, int);
    void (__stdcall* Item__Getitemstate)(unsigned int);
    void (__stdcall* Item__Isitemhidden)(unsigned int);
    void (__stdcall* Item__Isitemactive)(unsigned int);
    void (__stdcall* Item__Sliprighthanditem)(unsigned int);
    void (__stdcall* Item__Sliprighthanditemnoevent)(unsigned int);
    void (__stdcall* Item__Sliplefthanditem)(unsigned int);
    void (__stdcall* Item__Sliplefthanditemnoevent)(unsigned int);
    void (__stdcall* Item__Isitemcontainer)(unsigned int);
    void (__stdcall* Item__Insertitemincontainer)(unsigned int, unsigned int);
    void (__stdcall* Item__Removeitemfromcontainer)(unsigned int, unsigned int);
    void (__stdcall* Item__Putlhitemtopos)(unsigned int, _v3);
    void (__stdcall* Item__Putrhitemtopos)(unsigned int, _v3);
    void (__stdcall* Item__Containweapons)(unsigned int);
    void (__stdcall* Item__Containmetallicweapons)(unsigned int);
    void (__stdcall* Item__Iscontainerisempty)(unsigned int);
    void (__stdcall* Item__Setvisibletonpcs)(unsigned int, unsigned char);
    void (__stdcall* Item__Iscontainercontainsitem)(unsigned int, unsigned int);
    void (__stdcall* Item__Getitemincontainer)(unsigned int, char const*);
    void (__stdcall* Item__Clearfooddrinkinfection)(unsigned int);
    void (__stdcall* Item__Getanim)(unsigned int, char const*);
    void (__stdcall* Item__Playanimsegment)(unsigned int, short, int, float, float, float);
    void (__stdcall* Item__Useitemactivateanimation)(unsigned int);
    void (__stdcall* Item__Setforceunpickablebyhm)(unsigned int, unsigned char);
    void (__stdcall* Item__Getforceunpickablebyhm)(unsigned int);
    void (__stdcall* Item__Hideitem)(unsigned int);
    void (__stdcall* Item__Showitem)(unsigned int);
    void (__stdcall* Item__Isitemlarge)(unsigned int);
    void (__stdcall* Item__Isitemcigarette)(unsigned int);
    void (__stdcall* Item__Hastemplate)(unsigned int, unsigned int);
    void (__stdcall* Item__Isitemontopofelevator)(unsigned int);
    void (__stdcall* Item__Setscale)(unsigned int, float);
    void (__stdcall* Print)(char const*, ...);
    void (__stdcall* Error)(char const*, ...);
    void (__stdcall* Warning)(char const*, ...);
    void (__stdcall* Zscassert)(unsigned char);
    void (__stdcall* Engine__Random)();
    void (__stdcall* Engine__Randomrange)(int, int);
    void (__stdcall* Engine__Gettime)();
    void (__stdcall* Engine__Getsceneval)(char const*);
    void (__stdcall* Engine__Setsceneval)(char const*, unsigned int);
    void (__stdcall* Engine__Localeexists)(char const*);
    void (__stdcall* Engine__Isvalidvector)(_v3);
    void (__stdcall* Scene__Setobjectposition)(unsigned int, float, float, float);
    void (__stdcall* Scene__Setobjectpositionv3)(unsigned int, _v3);
    void (__stdcall* Scene__Getobjectposition)(unsigned int);
    void (__stdcall* Scene__Getgeomsinsidebox)(unsigned int, unsigned int&, int, unsigned char, unsigned char);
    void (__stdcall* Scene__Getactorsinbox)(unsigned int, unsigned int&, int);
    void (__stdcall* Scene__Isbox)(unsigned int);
    void (__stdcall* Scene__Isposinsidebox)(unsigned int, _v3);
    void (__stdcall* Scene__Getposinbox)(unsigned int);
    void (__stdcall* Scene__Setscale)(unsigned int, float, float, float);
    void (__stdcall* Scene__Objecthascontroller)(unsigned int, char const*);
    void (__stdcall* Scene__Getcontrolleronobject)(unsigned int, char const*);
    void (__stdcall* Scene__Getdistancebetweenobjects)(unsigned int, unsigned int);
    void (__stdcall* Scene__Getdistbetweenobjectandpos)(unsigned int, _v3);
    void (__stdcall* Scene__Getdistbetweenobjectandpos2D)(unsigned int, _v3);
    void (__stdcall* Scene__Getnumofaccessdenies)(unsigned int, unsigned int);
    void (__stdcall* Scene__Makeinactive)(unsigned int);
    void (__stdcall* Scene__Makeactive)(unsigned int);
    void (__stdcall* Scene__Getdoorstatus)(unsigned int);
    void (__stdcall* Scene__Getparent)(unsigned int);
    void (__stdcall* Scene__Isshattered)(unsigned int);
    void (__stdcall* Scene__Isground)(unsigned int);
    void (__stdcall* Scene__Setnoiselevel)(unsigned int, int);
    void (__stdcall* Scene__Getnoiselevel)(unsigned int);
    void (__stdcall* Scene__Getisinoutsidelocation)(unsigned int);
    void (__stdcall* Audio__Playsound2D)(int);
    void (__stdcall* Audio__Playsound3D)(int, int);
    void (__stdcall* Audio__Playlocaleresource2D)(char const*);
    void (__stdcall* Audio__Getlocaleresource)(char const*);
    void (__stdcall* Audio__Setnotifytarget)(unsigned int, int);
    void (__stdcall* Audio__Getplayposition)(int);
    void (__stdcall* Audio__Gettimeleft)(int);
    void (__stdcall* Audio__Stopsound)(int);
    void (__stdcall* Audio__Setvolume)(int, float);
    void (__stdcall* Audio__Getsndobjsoundobjectref)(unsigned int);
    void (__stdcall* Audio__Setsoundobjectautodelete)(unsigned int, unsigned char);
    void (__stdcall* Math__Vset)(_v3&, float, float, float);
    void (__stdcall* Math__Vcpy)(_v3&, _v3);
    void (__stdcall* Math__Vscalar)(_v3&, _v3, float);
    void (__stdcall* Math__Vaddscalar)(_v3&, _v3, _v3, float);
    void (__stdcall* Math__Vdist)(_v3, _v3);
    void (__stdcall* Math__Vsub)(_v3&, _v3, _v3);
    void (__stdcall* Math__Vadd)(_v3&, _v3, _v3);
    void (__stdcall* Math__Vneg)(_v3&);
    void (__stdcall* Math__Vreset)(_v3&);
    void (__stdcall* Math__Vdot)(_v3, _v3);
    void (__stdcall* Math__Vlen)(_v3);
    void (__stdcall* Math__Vnorm)(_v3&);
    void (__stdcall* Math__Vpul)(_v3&, _v3, _v3, float);
    void (__stdcall* Math__Sqrt)(float);
    void (__stdcall* Math__Vrot)(_v3&, _v3);
    void (__stdcall* Istring__Isnameequal)(unsigned int, char const*);
    void (__stdcall* Istring__Isnamecontains)(unsigned int, char const*);
    void (__stdcall* Istring__Isempty)(char const*);
    void (__stdcall* Pathfinder__Isvectinside)(_v3);
    void (__stdcall* Pathfinder__Isposinside)(float, float, float);
    void (__stdcall* Pathfinder__Getsearchposaroundpos)(_v3, float, int, int);
    void (__stdcall* Pathfinder__Getposaroundpos)(_v3, float);
    void (__stdcall* Pathfinder__Getentitypos)(unsigned int);
    void (__stdcall* Pathfinder__Getclosestwallpos)(unsigned int, _v3);
    void (__stdcall* Pathfinder__Teleportboid)(unsigned int, _v3);
    void (__stdcall* Pathfinder__Iswallbetweenpoints)(_v3, _v3);
    void (__stdcall* UnknownFunction)(int id, int a1, int a2, int a3, int a4);
};

Not all return types declared correctly, need to fix that.