DayZ Debug Monitor

P1-Kashwak

Member
Help an discussion for DayZ debug monitor takes place here...

Can confirm this works with the latest 1.7.6.1 build with Chernarus.
Took exactly 5 minutes to set up.
Thanks :)

My modified version that shows an advanced debug monitor for admins and a regular one for normal players is here:
https://github.com/nomadichayward/DayZ_Dual_Admin_Debug_Monitor

ALL questions about my version here please.

NOTE: If you can't get my version working, please stick to using P1-Kashwak's version as it's less fiddly and more straight forward. My version has been confirmed to work by several independent server owners now, so if you're having issues go over the README again.

HOTKEY ADVICE:
Options > Controls > Custom Controls > (assing your hotkey to User Action 20)


By "trigger" are you talking on/off style? i.e. hit it once it's on, hit it again and it's off, because looking at the code I have nfi how that would work so this is basically allowing you to change the allocated key?

by trigger i mean you hit the key and it pops up on the screen and then goes away after anywhere from 35-40 secs.

I have talked to a lot of players and they like it like that cause not everyone wants to see the debug monitor, that is why i setup 2 versions.

Now you might be able to change the timeout but I have not messed with it.
 
Yeah I thought it was an on/off function which would be nice, users are complaining that they have to keep hitting the button to turn it back on but others don't want it.

I might have to find where the time value is for it.
 
@P1-Kashwak: Don't suppose you have a list of possible variables we can used in the debug display, like fps, server time etc. ?

Added: No worries, found the list. :)
 
UrbanSkaters i tried to use your debug and got a "something went wrong" error, checked my RPT and found this..

Code:
Error in expression <erUID vehicle player) in ["1111","2222",]) then {
player_spawn_2 = compile prepr>
Error position: <]) then {
player_spawn_2 = compile prepr>
Error Missing [
File mpmissions\__CUR_MP.fallujah\init.sqf, line 39
Error in expression <erUID vehicle player) in ["1111","2222",]) then {
player_spawn_2 = compile prepr>
Error position: <]) then {
player_spawn_2 = compile prepr>
Error Missing [
File mpmissions\__CUR_MP.fallujah\init.sqf, line 39
Error in expression <erUID vehicle player) in ["1111","2222",]) then {
player_spawn_2 = compile prepr>
Error position: <]) then {
player_spawn_2 = compile prepr>
Error Missing [
File mpmissions\__CUR_MP.fallujah\init.sqf, line 39
Error in expression <erUID vehicle player) in ["1111","2222",]) then {
player_spawn_2 = compile prepr>
Error position: <]) then {
player_spawn_2 = compile prepr>
Error Missing [
File mpmissions\__CUR_MP.fallujah\init.sqf, line 39
Error in expression <750, 6, 4]; setToneMapping "Filmic";
 
 
 
if ((getPlayerUID vehicle player) in ["1>
Error position: <if ((getPlayerUID vehicle player) in ["1>
Error if: Type Array, expected Bool
File mpmissions\__CUR_MP.fallujah\init.sqf, line 39
"DEBUG: loadscreen guard started."
"DEBUG: loadscreen guard ended with timeout."
Error in expression <erUID vehicle player) in ["1111","2222",]) then {
player_spawn_2 = compile prepr>
Error position: <]) then {
player_spawn_2 = compile prepr>
Error Missing [
File mpmissions\__CUR_MP.fallujah\init.sqf, line 39
Error in expression <erUID vehicle player) in ["1111","2222",]) then {
player_spawn_2 = compile prepr>
Error position: <]) then {
player_spawn_2 = compile prepr>
Error Missing [
File mpmissions\__CUR_MP.fallujah\init.sqf, line 39
Error in expression <erUID vehicle player) in ["1111","2222",]) then {
player_spawn_2 = compile prepr>
Error position: <]) then {
player_spawn_2 = compile prepr>
Error Missing [
File mpmissions\__CUR_MP.fallujah\init.sqf, line 39
Error in expression <erUID vehicle player) in ["1111","2222",]) then {
player_spawn_2 = compile prepr>
Error position: <]) then {
player_spawn_2 = compile prepr>
Error Missing [
File mpmissions\__CUR_MP.fallujah\init.sqf, line 39

any suggestions?
 
yes

Code:
// INIT.SQF
 
/*
    INITILIZATION
*/
startLoadingScreen ["","RscDisplayLoadCustom"];
cutText ["","BLACK OUT"];
enableSaving [false, false];
 
//REALLY IMPORTANT VALUES
dayZ_instance = 1583;                    //The instance
dayzHiveRequest = [];
initialized = false;
dayz_previousID = 0;
 
//disable greeting menu
player setVariable ["BIS_noCoreConversations", true];
//disable radio messages to be heard and shown in the left lower corner of the screen
enableRadio false;
 
 
//Load in compiled functions
//call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\variables.sqf";                //Initilize the Variables (IMPORTANT: Must happen very early)
call compile preprocessFileLineNumbers "debug\variables.sqf";                //Initilize the Variables (IMPORTANT: Must happen very early)
progressLoadingScreen 0.1;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf";                //Initilize the publicVariable event handlers
progressLoadingScreen 0.2;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\setup_functions_med.sqf";    //Functions used by CLIENT for medical
progressLoadingScreen 0.4;
//call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf";                //Compile regular functions
call compile preprocessFileLineNumbers "debug\compiles.sqf";                //Compile regular functions
progressLoadingScreen 1.0;
 
 
"filmic" setToneMappingParams [0.153, 0.357, 0.231, 0.1573, 0.011, 3.750, 6, 4]; setToneMapping "Filmic";
 
// EDIT THE UID's below with those of you and your admins.
// They should look something like this ["342812","239081"] when done.  Delete or add as required.
if ((getPlayerUID vehicle player) in ["######","######"]) then {
player_spawn_2 = compile preprocessFileLineNumbers "debug\playerstats.sqf";
} else {
player_spawn_2 = compile preprocessFileLineNumbers "debug\playerstats2.sqf";
};
 
if ((!isServer) && (isNull player) ) then
{
waitUntil {!isNull player};
waitUntil {time > 3};
};
 
if ((!isServer) && (player != player)) then
{
  waitUntil {player == player};
  waitUntil {time > 3};
};

the ###### are mine and my admins ID's
 
That init appears to have a huge chunk of code missing from the bottom. I'm not familiar with that map, but I do know this goes at the bottom of every map I've ever edited for:

Code:
if (isServer) then {
    _serverMonitor =    [] execVM "\z\addons\dayz_code\system\server_monitor.sqf";
};
 
if (!isDedicated) then {
    //Conduct map operations
    0 fadeSound 0;
    waitUntil {!isNil "dayz_loadScreenMsg"};
    dayz_loadScreenMsg = (localize "STR_AUTHENTICATING");
 
    //Run the player monitor
    _id = player addEventHandler ["Respawn", {_id = [] spawn player_death;}];
    _playerMonitor =    [] execVM "\z\addons\dayz_code\system\player_monitor.sqf";
};

Try this:

Code:
// INIT.SQF
 
/*
    INITILIZATION
*/
startLoadingScreen ["","RscDisplayLoadCustom"];
cutText ["","BLACK OUT"];
enableSaving [false, false];
 
//REALLY IMPORTANT VALUES
dayZ_instance = 1583;                    //The instance
dayzHiveRequest = [];
initialized = false;
dayz_previousID = 0;
 
//disable greeting menu
player setVariable ["BIS_noCoreConversations", true];
//disable radio messages to be heard and shown in the left lower corner of the screen
enableRadio false;
 
 
//Load in compiled functions
//call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\variables.sqf";                //Initilize the Variables (IMPORTANT: Must happen very early)
call compile preprocessFileLineNumbers "debug\variables.sqf";                //Initilize the Variables (IMPORTANT: Must happen very early)
progressLoadingScreen 0.1;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf";                //Initilize the publicVariable event handlers
progressLoadingScreen 0.2;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\setup_functions_med.sqf";    //Functions used by CLIENT for medical
progressLoadingScreen 0.4;
//call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf";                //Compile regular functions
call compile preprocessFileLineNumbers "debug\compiles.sqf";                //Compile regular functions
progressLoadingScreen 1.0;
 
 
"filmic" setToneMappingParams [0.153, 0.357, 0.231, 0.1573, 0.011, 3.750, 6, 4]; setToneMapping "Filmic";
 
// EDIT THE UID's below with those of you and your admins.
// They should look something like this ["342812","239081"] when done.  Delete or add as required.
if ((getPlayerUID vehicle player) in ["######","######"]) then {
player_spawn_2 = compile preprocessFileLineNumbers "debug\playerstats.sqf";
} else {
player_spawn_2 = compile preprocessFileLineNumbers "debug\playerstats2.sqf";
};
 
if ((!isServer) && (isNull player) ) then
{
waitUntil {!isNull player};
waitUntil {time > 3};
};
 
if ((!isServer) && (player != player)) then
{
  waitUntil {player == player};
  waitUntil {time > 3};
};
 
if (isServer) then {
    _serverMonitor =    [] execVM "\z\addons\dayz_code\system\server_monitor.sqf";
};
 
if (!isDedicated) then {
    //Conduct map operations
    0 fadeSound 0;
    waitUntil {!isNil "dayz_loadScreenMsg"};
    dayz_loadScreenMsg = (localize "STR_AUTHENTICATING");
 
    //Run the player monitor
    _id = player addEventHandler ["Respawn", {_id = [] spawn player_death;}];
    _playerMonitor =    [] execVM "\z\addons\dayz_code\system\player_monitor.sqf";
};
 
i can get ingame now, but for some reason the debug monitor fades after 30ish seconds which i assume its ment to but i cant seem to bring it back up again.
 
@ phenom I have looked all over for a way to extend the HINT timeout but can not figure it out.

@Urban great work there mate, If you don't mine I can add your admin debug to the github and convert it to all the other map.
 
@Phenom , you need to assign the User Action 20 to a key in Custom Controls. That will bring back the debug monitor when you need it. It will fade away though, but that's the trigger version for you :)

@P1-Kashwak , sure I'd be happy to share it with the community. Thanks.
 
Users complained about the debug menu being there, others complained it wasn't there, with the new "time" based system they complained about having to constantly push the key.... you get the idea.

Now it's set so it's off by default, hit key X once it's on for good, hit key X again and it's off.
 
Ok, I understand that I put the debug folder into the server pbo, but what do I add to the other files? I've modified my mission.sqm and description.ext files so I don't want to overwrite them with the attached files.
 
@betterdead take a look at the init.sqf file there you will see all the changes I have made. and just change your init.sqf file to match it.
 
Ok, I understand that I put the debug folder into the server pbo, but what do I add to the other files? I've modified my mission.sqm and description.ext files so I don't want to overwrite them with the attached files.

I would compare P1-Kashwaks ini.sqf file with your own (ignore the mission pbo and description files). Change or add any lines in there , then if you want to use my custom build just go here and follow the instructions.
 
@betterdead take a look at the init.sqf file there you will see all the changes I have made. and just change your init.sqf file to match it.

I must be doing something wrong. I added the debug folder and made the changes to my init.sqf file but nothing happens when I hit Insert. This is with Lingor 1.3.
 
P1-Kashwak take a look at functions.sqf, specifically the "if (_dikCode " section, so just create your own and include your debug menu in there.
 
Hey I've added everything properly but it seems to not work for non-admins, and i had a thing happen where only half the admins added received the admin monitor, and the other half didn't have anything appear.
edit: this is the always on one btw, not the trigger.
 
Hey I've added everything properly but it seems to not work for non-admins, and i had a thing happen where only half the admins added received the admin monitor, and the other half didn't have anything appear.
edit: this is the always on one btw, not the trigger.

I can confirm this as well. It only works for admins, regular players do not have the debug monitor with the always on version.
 
Back
Top