5static int GAME_STORAGE_VERSION = 142;
10 int m_DebugMonitorEnabled;
24 void EnableEMPlugs(
bool enable)
26 for (
int i = 0; i <
GetGame().m_EnergyManagerArray.Count(); ++i)
28 if (
GetGame().m_EnergyManagerArray[i])
29 GetGame().m_EnergyManagerArray[i].SetDebugPlugs(enable);
41 m_ParamCache.Insert(null);
50 StorageVersion(GAME_STORAGE_VERSION);
77 VONManager.CleanupInstance();
83 proto native WorkspaceWidget GetWorkspace();
84 proto native WorkspaceWidget GetLoadingWorkspace();
97 void OnProcessLifetimeChanged(
int plmtype)
102 void OnLicenseChanged()
148 void OnUpdate(
bool doSim,
float timeslice)
216 proto native
void RequestExit(
int code );
221 proto native
void RequestRestart(
int code);
226 proto native
bool IsAppActive();
231 proto
bool GetHostAddress( out
string address, out
int port );
236 proto owned
string GetHostName();
255 proto native
int ConnectLastSession(
UIScriptedMenu parent ,
int selectedCharacter = -1 );
259 proto native
void DisconnectSession();
264 proto native
void DisconnectSessionForce();
277 proto native
void GetProfileStringList(
string name, out
TStringArray values);
285 proto
bool GetProfileString(
string name, out
string value);
299 proto native
void SetProfileString(
string name,
string value);
304 proto native
void SaveProfile();
310 proto
void GetPlayerName(out
string name);
317 proto
void GetPlayerNameShort(
int maxLength, out
string name);
323 proto native
void SetPlayerName(
string name);
347 proto
void GetPlayerNetworkIDByIdentityID(
int playerIdentityID, out
int networkIdLowBits, out
int networkIdHightBits );
354 proto native
Object GetObjectByNetworkId(
int networkIdLowBits,
int networkIdHighBits );
361 proto native
bool RegisterNetworkStaticObject(
Object object);
369 proto native
bool IsNetworkInputBufferFull();
377 proto native
void SelectSpectator(
PlayerIdentity identity,
string spectatorObjType,
vector position);
383 proto native
void UpdateSpectatorPosition(
vector position);
391 proto native
void SendLogoutTime(
Object player,
int time);
397 proto native
void DisconnectPlayer(
PlayerIdentity identity,
string uid =
"");
411 proto native
void RemoveFromReconnectCache(
string uid);
417 proto native
void ClearReconnectCache();
423 proto native
void StorageVersion(
int iVersion );
428 proto native
int LoadVersion();
433 proto native
int SaveVersion();
438 proto native
float GetDayTime();
447 proto
bool ConfigGetText(
string path, out
string value);
456 proto
bool ConfigGetTextRaw(
string path, out
string value);
463 string ConfigGetTextOut(
string path)
466 ConfigGetText(
path, ret_s);
475 bool FormatRawConfigStringKeys(inout
string value)
478 ret = value.Replace(
"$STR_",
"#STR_");
491 string cfg =
"CfgVehicles " +
class_name +
" model";
493 if (
GetGame().ConfigGetText(cfg, model_path) )
495 int to_substring_end = model_path.Length() - 4;
496 int to_substring_start = 0;
499 for (
int i = to_substring_end; i > 0; i--)
501 string sign = model_path.Get(i);
504 to_substring_start = i + 1;
509 string model_name = model_path.Substring(to_substring_start, to_substring_end - to_substring_start);
514 return "UNKNOWN_P3D_FILE";
522 proto native
float ConfigGetFloat(
string path);
530 proto native
vector ConfigGetVector(
string path);
537 proto native
int ConfigGetInt(
string path);
544 proto native
int ConfigGetType(
string path);
569 proto native
void ConfigGetTextArrayRaw(
string path, out
TStringArray values);
576 proto native
void ConfigGetFloatArray(
string path, out
TFloatArray values);
583 proto native
void ConfigGetIntArray(
string path, out
TIntArray values);
592 proto
bool ConfigGetChildName(
string path,
int index, out
string name);
600 proto
bool ConfigGetBaseName(
string path, out
string base_name);
609 proto native
int ConfigGetChildrenCount(
string path);
610 proto native
bool ConfigIsExisting(
string path);
612 proto native
void ConfigGetFullPath(
string path, out
TStringArray full_path);
616 proto native
bool GetModToBeReported();
628 string return_path =
"";
629 int count = array_path.Count();
631 for (
int i = 0; i < count; i++)
633 return_path += array_path.Get(i);
659 proto
bool CommandlineGetParam(
string name, out
string value);
661 proto native
void CopyToClipboard(
string text);
662 proto
void CopyFromClipboard(out
string text);
664 proto native
void BeginOptionsVideo();
665 proto native
void EndOptionsVideo();
667 proto native
void AdminLog(
string text);
676 proto native
bool PreloadObject(
string type,
float distance );
678 proto native
Object CreateStaticObjectUsingP3D(
string p3dFilename,
vector position,
vector orientation,
float scale = 1.0,
bool createLocal =
false);
689 proto native
Object CreateObject(
string type,
vector pos,
bool create_local =
false,
bool init_ai =
false,
bool create_physics =
true );
690 proto native SoundOnVehicle CreateSoundOnObject(
Object source,
string sound_name,
float distance,
bool looped,
bool create_local =
false);
703 proto native
void ObjectDelete(
Object obj );
704 proto native
void ObjectDeleteOnClient(
Object obj );
705 proto native
void RemoteObjectDelete(
Object obj );
706 proto native
void RemoteObjectTreeDelete(
Object obj );
707 proto native
void RemoteObjectCreate(
Object obj );
708 proto native
void RemoteObjectTreeCreate(
Object obj );
709 proto native
int ObjectRelease(
Object obj );
710 proto
void ObjectGetType(
Object obj, out
string type );
711 proto
void ObjectGetDisplayName(
Object obj, out
string name );
719 proto native
bool IsObjectAccesible(
EntityAI item, Man player);
722 proto native
void ReloadShape(
Object obj);
726 proto native
Input GetInput();
729 proto native
vector GetCurrentCameraPosition();
730 proto native
vector GetCurrentCameraDirection();
739 proto native
bool AddInventoryJuncture(Man player, notnull
EntityAI item,
InventoryLocation dst,
bool test_dst_occupancy,
int timeout_ms);
741 bool AddInventoryJunctureEx(Man player, notnull
EntityAI item,
InventoryLocation dst,
bool test_dst_occupancy,
int timeout_ms)
743 bool result = AddInventoryJuncture(player, item, dst, test_dst_occupancy, timeout_ms);
744 #ifdef ENABLE_LOGGING
745 if (
LogManager.IsInventoryReservationLogEnable() )
747 Debug.InventoryReservationLog(
"STS = " + player.GetSimulationTimeStamp() +
" result: " + result +
" item:" + item +
" dst: " +
InventoryLocation.DumpToStringNullSafe(dst),
"n/a" ,
"n/a",
"AddInventoryJuncture",player.ToString() );
755 proto native
bool HasInventoryJunctureItem(notnull
EntityAI item);
757 proto native
bool HasInventoryJunctureDestination(Man player, notnull
InventoryLocation dst);
758 proto native
bool AddActionJuncture(Man player, notnull
EntityAI item,
int timeout_ms);
759 proto native
bool ExtendActionJuncture(Man player, notnull
EntityAI item,
int timeout_ms);
760 proto native
bool ClearJuncture(Man player, notnull
EntityAI item);
762 bool ClearJunctureEx(Man player, notnull
EntityAI item)
764 #ifdef ENABLE_LOGGING
765 if (
LogManager.IsInventoryReservationLogEnable() )
767 Debug.InventoryReservationLog(
"STS = " + player.GetSimulationTimeStamp()+
" item:" + item,
"n/a" ,
"n/a",
"ClearJuncture",player.ToString() );
770 return ClearJuncture( player, item);
775 proto native
bool ExecuteEnforceScript(
string expression,
string mainFnName);
777 proto native
void DumpInstances(
bool csvFormatting);
779 proto native
bool ScriptTest();
781 proto native
void GetDiagModeNames(out
TStringArray diag_names);
783 proto native
void SetDiagModeEnable(
int diag_mode,
bool enabled);
785 proto native
bool GetDiagModeEnable(
int diag_mode);
788 proto native
void GetDiagDrawModeNames(out
TStringArray diag_names);
790 proto native
void SetDiagDrawMode(
int diag_draw_mode);
792 proto native
int GetDiagDrawMode();
795 proto native
bool IsPhysicsExtrapolationEnabled();
800 proto native
int GizmoGetCount();
805 proto native
Class GizmoGetInstance(
int index);
810 proto native
Managed GizmoGetTracker(
int index);
815 proto native
int GizmoFindByTracker(
Managed tracker);
820 proto native
void GizmoClear(
int index);
825 proto native
void GizmoClearAll();
832 proto native
void GizmoSelectObject(
Object object);
841 proto native
void GizmoSelectPhysics(
Physics physics);
850 proto native
void GizmoSelectUser(
Managed instance);
856 proto native
float GetFps();
862 proto native
float GetLastFPS();
869 proto native
float GetAvgFPS(
int nFrames = 64);
876 proto native
float GetMinFPS(
int nFrames = 64);
883 proto native
float GetMaxFPS(
int nFrames = 64);
892 void GetFPSStats(out
float min, out
float max, out
float avg,
int nFrames = 64)
894 min = GetMinFPS(nFrames);
895 max = GetMaxFPS(nFrames);
896 avg = GetAvgFPS(nFrames);
903 proto native
float GetTickTime();
905 proto
void GetInventoryItemSize(
InventoryItem item, out
int width, out
int height);
920 proto native
World GetWorld();
921 proto
void GetWorldName( out
string world_name );
923 string GetWorldName()
926 g_Game.GetWorldName(world_name);
930 proto native
bool VerifyWorldOwnership(
string sWorldName );
931 proto native
bool GoBuyWorldDLC(
string sWorldName );
933 proto
void FormatString(
string format,
string params[], out
string output);
937 proto native
void GetPlayers( out
array<Man> players );
942 if (index >= players.Count())
951 proto native
vector GetPointerDirection();
953 proto native
vector GetWorldDirectionFromScreen(
vector world_pos);
957 proto native
vector GetScreenPosRelative(
vector world_pos);
960 proto native
MenuData GetMenuData();
1005 proto native
void RPCSingleParam(
Object target,
int rpc_type,
Param param,
bool guaranteed,
PlayerIdentity recipient = null);
1008 proto native
void RPCSelfSingleParam(
Object target,
int rpcType,
Param param);
1011 proto native
void ProfilerStart(
string name);
1013 proto native
void ProfilerStop(
string name);
1025 proto native
void Chat(
string text,
string colorClass);
1026 proto native
void ChatMP(Man recipient,
string text,
string colorClass);
1027 proto native
void ChatPlayer(
string text);
1033 proto native
void MutePlayer(
string muteUID,
string playerUID,
bool mute);
1040 proto native
void MuteAllPlayers(
string listenerId,
bool mute);
1047 proto native
void EnableVoN(
Object player,
bool enable);
1055 proto native
void SetVoiceEffect(
Object player,
int effect,
bool enable);
1061 proto native
void SetVoiceLevel(
int level);
1066 proto native
int GetVoiceLevel(
Object player = null);
1072 proto native
void EnableMicCapture(
bool enable);
1077 proto native
bool IsMicCapturing();
1082 proto native
bool IsInPartyChat();
1085 proto native
Mission GetMission();
1090 proto native
void StartRandomCutscene(
string world);
1092 proto native
void PlayMission(
string path);
1139 m_DebugMonitorEnabled = value;
1144 return IsServer() && m_DebugMonitorEnabled;
1153 proto native
float SurfaceRoadY(
float x,
float z, RoadSurfaceDetection rsd = RoadSurfaceDetection.LEGACY);
1176 float high = -9999999;
1177 float low = 99999999;
1179 for (
int i = 0; i < positions.Count(); i++)
1181 vector pos = positions.Get(i);
1201 vector angles = normal.VectorToAngles();
1202 angles[1] = angles[1]+270;
1205 if (angles ==
"0 540 0")
1213 return ConfigGetInt(
"CfgSurfaces " + surface +
" isDigable");
1218 return ConfigGetText(
"CfgSurfaces " + surface +
" digPile", result);
1224 return ConfigGetInt(
"CfgSurfaces " + surface +
" isFertile");
1229 if (liquidType == -1)
1232 if (liquidType == 0)
1258 vector pos =
object.GetPosition();
1260 float radius =
object.ClippingInfo ( min_max );
1261 vector min =
Vector ( pos[0] - radius, pos[1], pos[2] - radius );
1262 vector max =
Vector ( pos[0] + radius, pos[1], pos[2] + radius );
1336 proto native
void OverrideDOF(
bool enable,
float focusDistance,
float focusLength,
float focusLengthNear,
float blur,
float focusDepthOffset);
1338 proto native
void AddPPMask(
float ndcX,
float ndcY,
float ndcRadius,
float ndcBlur);
1394 bool IsKindOf(
string cfg_class_name,
string cfg_parent_name)
1398 ConfigGetFullPath(
"CfgVehicles " + cfg_class_name, full_path);
1400 if (full_path.Count() == 0)
1402 ConfigGetFullPath(
"CfgAmmo " + cfg_class_name, full_path);
1405 if (full_path.Count() == 0)
1407 ConfigGetFullPath(
"CfgMagazines " + cfg_class_name, full_path);
1410 if (full_path.Count() == 0)
1412 ConfigGetFullPath(
"cfgWeapons " + cfg_class_name, full_path);
1415 if (full_path.Count() == 0)
1417 ConfigGetFullPath(
"CfgNonAIVehicles " + cfg_class_name, full_path);
1420 cfg_parent_name.ToLower();
1421 for (
int i = 0; i < full_path.Count(); i++)
1423 string tmp = full_path.Get(i);
1425 if (tmp == cfg_parent_name)
1449 ConfigGetObjectFullPath(
object, full_path);
1451 cfg_parent_name.ToLower();
1453 for (
int i = 0; i < full_path.Count(); i++)
1455 string tmp = full_path.Get(i);
1457 if (tmp == cfg_parent_name)
1476 int class_count = ConfigGetChildrenCount(config_path);
1477 for (
int index = 0; index < class_count; index++)
1479 string found_class =
"";
1480 ConfigGetChildName(config_path, index, found_class);
1481 if (found_class == searched_member)
1545 return (
g_Game.GetMissionState() == DayZGame.MISSION_STATE_MAINMENU);
1553 if (!m_CharacterData)
1557 GetGame().GetMenuData().RequestGetDefaultCharacterData();
1559 return m_CharacterData;
1565 return m_AnalyticsManagerServer;
1570 return m_AnalyticsManagerClient;
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
Static data holder for certain ammo config values.
Class that holds parameters to feed into CGame.IsBoxCollidingGeometryProxy.
float GetHighestSurfaceYDifference(array< vector > positions)
Returns the largest height difference between the given positions.
proto void SurfaceUnderObjectByBone(notnull Object object, int boneType, out string type, out int liquidType)
proto native void RestartMission()
proto native void ResetPPMask()
override void OnUpdate(bool doSim, float timeslice)
proto native bool IsBoxCollidingGeometry(vector center, vector orientation, vector edgeLength, int iPrimaryType, int iSecondaryType, array< Object > excludeObjects, array< Object > collidedObjects=NULL)
Finds all objects with geometry iType that are in choosen oriented bounding box (OBB)
void SurfaceUnderObjectByBoneCorrectedLiquid(notnull Object object, int boneType, out string type, out int liquidType)
override void OnActivateMessage()
proto native float SurfaceY(float x, float z)
override void OnDeactivateMessage()
proto native float SurfaceGetSeaLevelMax()
proto native void AddPPMask(float ndcX, float ndcY, float ndcRadius, float ndcBlur)
proto native float SurfaceGetSeaLevel()
proto native float GetWaterDepth(vector posWS)
proto native void GetPlayerIndentities(out array< PlayerIdentity > identities)
string CreateDefaultPlayer()
returns class name of first valid survivor (TODO address confusing naming?)
override void OnPostUpdate(bool doSim, float timeslice)
override void OnDeviceReset()
proto native bool IsBoxCollidingGeometryProxy(notnull BoxCollidingParams params, array< Object > excludeObjects, array< ref BoxCollidingResult > collidedObjects=NULL)
override void OnAfterCreate()
proto native bool IsMultiplayer()
proto native float SurfaceRoadY(float x, float z, RoadSurfaceDetection rsd=RoadSurfaceDetection.LEGACY)
proto native bool SurfaceIsSea(float x, float z)
bool IsKindOf(string cfg_class_name, string cfg_parent_name)
Returns is class name inherited from parent class name.
void SetDebugMonitorEnabled(int value)
proto native BiosUserManager GetUserManager()
proto native bool IsDebug()
override void OnKeyPress(int key)
bool IsSurfaceFertile(string surface)
Checks if the surface is fertile.
ScriptCallQueue GetCallQueue(int call_category)
int CorrectLiquidType(int liquidType)
proto native vector SurfaceGetNormal(float x, float z)
proto native void SetMainMenuWorld(string world)
proto native bool IsBoxColliding(vector center, vector orientation, vector edgeLength, array< Object > excludeObjects, array< Object > collidedObjects=NULL)
Finds all objects that are in choosen oriented bounding box (OBB)
proto float SurfaceGetType3D(float x, float y, float z, out string type)
Y input: Maximum Y to trace down from; Returns: Y position the surface was found.
bool ObjectIsKindOf(Object object, string cfg_parent_name)
Returns is object inherited from parent class name.
proto native void UpdatePathgraphRegion(vector regionMin, vector regionMax)
proto native void InitDamageEffects(Object effect)
Initialization of damage effects.
proto native bool IsServer()
bool IsSurfaceDigable(string surface)
Checks if the surface is digable.
void UpdatePathgraphRegionByObject(Object object)
bool IsMissionMainMenu()
Returns true when current mission is Main Menu.
proto float SurfaceGetType(float x, float z, out string type)
Returns: Y position the surface was found.
proto native void OverrideInventoryLights(vector diffuse, vector ambient, vector ground, vector dir)
proto native void LogoutRequestTime()
Logout methods.
proto native bool SurfaceIsPond(float x, float z)
proto native void LogoutRequestCancel()
override void OnKeyRelease(int key)
proto native float SurfaceGetSeaLevelMin()
ScriptInvoker GetUpdateQueue(int call_category)
proto native owned string GetMainMenuWorld()
override void OnMouseButtonRelease(int button)
proto native void OverrideDOF(bool enable, float focusDistance, float focusLength, float focusLengthNear, float blur, float focusDepthOffset)
override void OnMouseButtonPress(int button)
AnalyticsManagerServer GetAnalyticsServer()
proto native Weather GetWeather()
Returns weather controller object.
proto native bool GetSurface(SurfaceDetectionParameters params, SurfaceDetectionResult result)
API for surface detection.
TimerQueue GetTimerQueue(int call_category)
proto native bool IsDedicatedServer()
Robust check which is preferred than the above, as it is valid much sooner.
bool GetSurfaceDigPile(string surface, out string result)
proto native float SurfaceRoadY3D(float x, float y, float z, RoadSurfaceDetection rsd)
proto int GetTime()
returns mission time in milliseconds
proto native void NightVissionLightParams(float lightIntensityMul, float noiseIntensity)
proto native bool IsClient()
proto void SurfaceUnderObject(notnull Object object, out string type, out int liquidType)
proto native void RespawnPlayer()
vector GetSurfaceOrientation(float x, float z)
Returns tilt of the ground on the given position in degrees, so you can use this value to rotate any ...
native void CreateMission(string path)
Create only enforce script mission, used for mission script reloading.
AnalyticsManagerClient GetAnalyticsClient()
override bool OnInitialize()
void SurfaceUnderObjectCorrectedLiquid(notnull Object object, out string type, out int liquidType)
proto native float SurfaceGetNoiseMultiplier(Object directHit, vector pos, int componentIndex)
proto native EntityAI GetEntityByPersitentID(int b1, int b2, int b3, int b4)
proto native void OpenURL(string url)
override void OnRPC(PlayerIdentity sender, Object target, int rpc_type, ParamsReadContext ctx)
string CreateRandomPlayer()
returns class name of random survivor (TODO address confusing naming?)
static bool IsDigitalCopy()
proto native void SetLoginTimerFinished()
int ConfigFindClassIndex(string config_path, string searched_member)
proto native void SetEVUser(float value)
Sets custom camera camera EV. range: -50.0..50.0? //TODO.
void SurfaceUnderObjectExCorrectedLiquid(notnull Object object, out string type, out string impact, out int liquidType)
proto native void AbortMission()
Returns to main menu, leave world empty for using last mission world.
proto native int ServerConfigGetInt(string name)
Server config parsing. Returns 0 if not found.
proto void SurfaceUnderObjectEx(notnull Object object, out string type, out string impact, out int liquidType)
proto native ContentDLC GetContentDLCService()
Return DLC service (service for entitlement keys for unlock content)
ScriptInvoker GetPostUpdateQueue(int call_category)
MenuDefaultCharacterData GetMenuDefaultCharacterData(bool fill_data=true)
TStringArray ListAvailableCharacters()
outputs array of all valid survivor class names
proto native bool CanRespawnPlayer()
Super root of all classes in Enforce script.
ContentDLC is for query installed DLC (only as entitlement keys, not content)
GetServersResultRow the output structure of the GetServers operation that represents one game server.
static bool IsGameActive(bool sim)
Base Param Class with no parameters. Used as general purpose parameter overloaded with Param1 to Para...
The class that will be instanced (moddable)
Manager class for managing Effect (EffectParticle, EffectSound)
static void Cleanup()
Cleanup method to properly clean up the static data.
static void Init()
Initialize the containers.
ScriptCallQueue Class provide "lazy" calls - when we don't want to execute function immediately but l...
ScriptInvoker Class provide list of callbacks usage:
Module containing compiled scripts.
Serialization general interface. Serializer API works with:
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
proto native CGame GetGame()
array< string > TStringArray
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
class OptionSelectorMultistate extends OptionSelector class_name
void ParticleManager(ParticleManagerSettings settings)
Constructor (ctor)