Jump to content

[Released] Player Stats Elite!


- VJ -

Recommended Posts

Player Stats Elite

PSE is a Player Stat Panel With Changeable Layouts.

 

This script was coded for small interface size which can be changed under:

 

Configure -> Video -> Display -> Interface Size: "small"

 

Any questions feel free to join my TS: insanityepoch.co.uk

If im not online e-mail me and I'll join when I can.

I'm always happy to help!

 

Thanks

- VJ -

 

Layout 0

PSEL0.gif

 

Layout 1

PSEL1.gif

 

Layout 2

PSEL2.gif

 

Layout 3

PSEL3.gif

 

Layout 4

PSEL4.gif

 

Layout 5

PSEL5.gif

 

Layout 6

PSEL6.gif

 

 

 

https://github.com/VJ-B/Player_Stats_Elite

 

Current Ver: 1.7.2

Suggest a layout and I'll make it.

 

VJ's Player Stats has now been merged into PSE Layout 6. 

Link to comment
Share on other sites

i'm sure this can be done much better but it works perfect for me

 

/*-
 * Developers VJ - Developer - http://epochmod.com/forum/index.php?/user/17218-vj/
 * Edited by Gorgy WWW.Highlife.Gaming.com
 *
 * VJsPlayerStats.sqf Ver: 0.391.b
 * License:
 * All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
 * http://creativecommons.org/licenses/by-nc-sa/4.0/
-*/

serverTitle="---Your Server Name";
delay=0;

//No need to modify
waitUntil {!isNull player};
waitUntil {!(isNull (findDisplay 46))};
_PS = "VJs_PS" call BIS_fnc_rscLayer;
_PS cutRsc["VJs_PS","PLAIN"];

disableSerialization;
sleep delay;
[] spawn {
	while {true} do	{
	
		//Thirst
		if(EPOCH_playerThirst > 1875) then {Thirst_Icon_Path = 'Custom\img\Drink_1.paa' };
		if(EPOCH_playerThirst < 1875) then {Thirst_Icon_Path = 'Custom\img\Drink_0.75.paa'};
		if(EPOCH_playerThirst < 1250) then {Thirst_Icon_Path = 'Custom\img\Drink_0.5.paa'};
		if(EPOCH_playerThirst < 625) then {Thirst_Icon_Path = 'Custom\img\Drink_0.25.paa'};
		if(EPOCH_playerThirst < 250) then {Thirst_Icon_Path = 'Custom\img\Drink_0.1.paa'};
		
		//Hunger
		if(EPOCH_playerHunger > 3750) then {Hunger_Icon_Path = 'Custom\img\Food_1.paa'};
		if(EPOCH_playerHunger < 3750) then {Hunger_Icon_Path = 'Custom\img\Food_0.75.paa'};
		if(EPOCH_playerHunger < 2500) then {Hunger_Icon_Path = 'Custom\img\Food_0.5.paa'};
		if(EPOCH_playerHunger < 1250) then {Hunger_Icon_Path = 'Custom\img\Food_0.25.paa'};
		if(EPOCH_playerHunger < 500) then {Hunger_Icon_Path =  'Custom\img\Food_0.1.paa'};
		
		//Health
		if(damage player < 0.75) then {Health_Icon_Path = 'Custom\img\Health_1.paa'};
		if(damage player > 0.75) then {Health_Icon_Path = 'Custom\img\Health_0.75.paa'};
		if(damage player > 0.5) then {Health_Icon_Path = 'Custom\img\Health_0.5.paa'};
		if(damage player > 0.25) then {Health_Icon_Path = 'Custom\img\Health_0.25.paa'};
		if(damage player > 0.1) then {Health_Icon_Path = 'Custom\img\Health_0.1.paa'};
		
		//Energy
		if(EPOCH_playerEnergy > 1875) then {Energy_Icon_Path = 'Custom\img\Energy_1.paa'};
		if(EPOCH_playerEnergy < 1875) then {Energy_Icon_Path = 'Custom\img\Energy_0.75.paa'};
		if(EPOCH_playerEnergy < 1250) then {Energy_Icon_Path = 'Custom\img\Energy_0.5.paa'};
		if(EPOCH_playerEnergy < 625) then {Energy_Icon_Path = 'Custom\img\Energy_0.25.paa'};
		if(EPOCH_playerEnergy < 250) then {Energy_Icon_Path = 'Custom\img\Energy_0.1.paa'};
		
		
		
	

	
			if(!(isAbleToBreathe player)) then{
				oText = "Oxygen: ";
				oxygen = getOxygenRemaining player;
			}else{
				oText="Oxygen: ";
				oxygen="1";
			};
			
			if(isBurning player) then {
				bText = "You a Burning!";
			};
			if(isBleeding player) then {
				bText = "You a Bleeding!";
			};
			if((isBurning player) && (isBleeding player)) then{			
				bText = "You're burning & bleeding. Its just not your day is it!";
			};
			bText="Health: OK";
			
			
			

			
			
			((uiNamespace getVariable "VJs_PS")
			displayCtrl 200289)
			ctrlSetStructuredText parseText format
			

	
["

<t size='2.00' align='center' color='#E5E4E2'> %1 </t><br/><br/>
<t size='1.40' align='left'   color='#008C8C'>FPS: %2</t>
<t size='1.40' align='right'  color='#CC6900'>PLAYERS: %3</t><br/><br/>
<img size='3.4' align='center' image= '%16'/><br/><br/>
<img size='3.4' align='center' image= '%17'/><br/><br/>
<img size='3.4' align='center' image= '%18'/><br/><br/>
<img size='3.4' align='center' image= '%19'/><br/><br/>

<t size='1.60' align='center'   color='#E5E4E2'>[Server]</t><br/><br/>
<t size='1.40' align='center'   color='#FF00FF'>Server UpTime: %15</t><br/>
<t size='1.40' align='center'   color='#FF00FF'>TS: ---Your TS IP---  </t><br/><br/><br/><br/>

"
,serverTitle,round diag_fps,count playableUnits,damage player,EPOCH_playerHunger,EPOCH_playerThirst,EPOCH_playerEnergy,EPOCH_playerStamina,(getFatigue player),EPOCH_playerCrypto,mapGridPosition player,(text (oText)),oxygen,(text (bText)),serverTime, Thirst_Icon_Path, Hunger_Icon_Path, Health_Icon_Path, Energy_Icon_Path
];

			sleep 1;
	};
};

 

Icons (these still need some work):

https://www.dropbox.com/s/jhg9wsqi52izxzt/icons.rar?dl=0

 

Link to comment
Share on other sites

Hello i dont know whats the issue but i have gtx as my host and when i got to battleye folder i dont have a script.txt can you please provide a picture of what should i do i just starting scripting and i have no clue i dont have that script.txt file so how can i get it do i just make one or 1?

Default scripts.txt

 

7 "BIS_fnc_" !"initDisplay" !"getCfgSubClasses" !"animalBehaviour" !"guiEffectTiles_coef" !"GUImessage" !"guiEffectTiles" !"param" !"setIDCStreamFriendly" !"overviewauthor" !"diagAARrecord" !"diagKey" !"feedbackMain" !"missionHandlers" !"getServerVariable" !"missionFlow" !"initParams" !"initRespawn" !"missionTasksLocal" !"missionConversationsLocal" !"missionCon" !"preload" !"logFormat" !"recompile" !"moduleInit" !"feedback_allowPP" !"feedback_allowDeathScreen" !"feedbackInit" !"initMultiplayer" !"MP" !"displayMission" !"feedback_fatiguePP" !"respawnBase" !"dirTo" !"secondsToString" !"guiMessage_status" !"selectRespawnTemplate" !"guiMessage_defaultPositions" !"startLoadingScreen_ids" !"damageChanged" !"incapacitatedEffect" !"invRemove" !"relpos" !"inString" !"findSafePos" !"isPosBlacklisted" !"timeToString" !"distance2D" !"effectKilled" !"dynamictext" !"inAngleSector" !="_this call (uinamespace getvariable 'BIS_fnc_effectFired');"
7 "BIS_fnc_dynamictext" !", 0, 1, 5, 2, 0, 1] spawn bis_fnc_dynamictext;" !", 0, 0.4, 5, 2, 0, 2] spawn bis_fnc_dynamictext;" !"snil '_fnc_scriptName') then {_fnc_scriptName}"
7 forceRespawn
7 moveIn !="\"A3\functions_f\Misc\fn_moveIn.sqf\"" !="\"A3\functions_f\arrays\fn_removeIndex.sqf\"" !="player moveInAny _vehicle;\nEPOCH_antiWallCount = EPOCH_antiWallCount + 1;" !="[\"I_UAV_AI\", position _unit, [], 0, \"CAN_COLLIDE\"];\n_driver moveInAny _unit;"
7 attachTo !"EP_light attachTo [player];" !"_bomb attachTo [_unit, [0,0,0],\"Pelvis\"];" !"_dogHolder attachTo [_dog, [-0.2,1.2,0.7]];" !"EPOCH_staticTarget attachTo[player];" !"EPOCH_target attachTo[player];"
7 enableCollisionWith
7 hideObject !="_dogHolder hideobject true;" !="_dogHolder hideobject false;"
7 setFriend
7 setAmmo
7 setvelocity !="_bolt setPosATL _pos;\n_bolt setVelocity [0, 0, -10];" !="EPOCH_target setvelocitytransformation" !="_currentTarget setVelocity [0,0,-0.01];" !="_head setVelocity [random 2,random 2,10];" !="_vel = velocity this; _dir = getDir player; this setVelocity[(_vel select 0)+(sin _dir * 2),(_vel select 1)+(cos _dir * 2),(_vel select 2)];"
7 RscDebugConsole_watch
7 enableFatigue
7 setUnitRecoilCoefficient
7 setWeaponReloadingTime
7 allMissionObjects
7 callExtension
7 showCommandingMenu
7 assignAs
7 playableunits !="getDir _x, name _x];};}forEach playableUnits;};if" !"{getplayeruid _x == _ownerVar} count playableunits" !="lbSetData[21500, _index, netId _x];\n} forEach(playableUnits - [player]);"
7 allUnits !="allUnits-playableUnits;};if" !="{_x allowFleeing 0} forEach allUnits;" !="EPOCH_ESPMAP_TARGETS = allUnits + vehicles;"
7 allowDamage !="player allowDamage true;vehicle player allowDamage true;"
7 exec !="<execute expression=" !"RscDebugConsole_execute" !"execFSM" !"_executeStackedEventHandler" !"fn_execVM" !"fn_moduleExecute" !"fn_execRemote" !"fn_MPexec" !"bis_fnc_moduleExecute_activate" !"fn_tridentExecute" !"randomize_civ1" !"executed from" !"EPOCH_DebugGUI_exec" !"_handle = [_display] execVM _script;" !"execVM \"\A3\Structures_F\scripts" !="execVM \"\A3\Structures_F_EPC\Civ\PlayGround\scripts\Carousel_spin.sqf\""
7 addWeaponCargo
7 onMapSingleClick !="onMapSingleClick '';"
7 addMagazine !"addMagazineCargo" !="player addMagazine _craftItem;" !="player addMagazine \"jerrycanE_epoch\";" !="player addMagazine \"emptyjar_epoch\";" !="player addMagazine \"jerrycan_epoch\";" !="player addMagazine \"Hatchet_swing\";" !="player addMagazine [(_x select 0),(_x select 1)]" !="player addMagazine _x;"
7 addMagazineCargo !"_dogHolder addMagazineCargo [\"RabbitCarcass_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"Pelt_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"Venom_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"SnakeCarcass_EPOCH\", 1]" !"_dogHolder addMagazineCargo [\"ChickenCarcass_EPOCH\", 1]"
7 addItem !="player addItem _craftItem;" !="player addItem _x;"
7 addBackPack
7 removeAllWeapons
7 removeAllItems
7 removeAllActions
7 setTerrainGrid !="setTerrainGrid 25;"
7 setViewDistance !"setViewDistance 1600"
7 createGroup !="_grp = createGroup RESISTANCE;" !="if (isserver) then {\n_group = creategroup sidelogic;"
7 createVehicleCrew
7 createVehicleLocal !"\"#particlesource\" createVehicleLocal" !"\"#lightpoint\" createVehicleLocal" !"\"BloodSplat\" createVehicleLocal" !"[\"lightning1_F\", \"lightning2_F\"] call BIS_fnc_selectRandom;\n_lighting = _class createVehicleLocal"
7 createUnit !="_unit = _grp createUnit[(_arrUnits select _i), _pos, [], 0, \"FORM\"];" !="_driver = _grp createUnit[\"I_UAV_AI\", position _unit, [], 0, \"CAN_COLLIDE\"];"
7 createAgent !="_unit = createAgent[_unitClass, _targetPos, [], 256, \"FORM\"];" !="_unit = createAgent [_unitClass, _targetPos, [], 120, \"FORM\"];" !="_animal = createAgent[_randomAIClass, _animalPos, [], 5, \"NONE\"];" !="_unit = createAgent [\"Epoch_Cloak_F\", _pos, [], 0, \"CAN_COLLIDE\"];"
7 createTeam
7 createDialog !="createDialog \"InteractBank\";" !="createdialog \"SelectGender\";" !="_handled = createdialog _dialog;" !="if (!dialog) then {createDialog 'Skaronator_AdminMenu'};" !="if !(createdialog \"InteractItem\") exitWith {};" !="createDialog \"TapOut\";" !="if !(createdialog \"Trade\") exitWith {};" !="_ok = createdialog \"Interact\";" !="_ok = createdialog \"TradeNPCMenu\";" !="createDialog \"Epoch_myGroup\";" !="createDialog (if ((Epoch_my_GroupUID == \"\") && (Epoch_my_Group isEqualTo [])) then {\"EPOCH_createGrp\"} else {\"Epoch_myGroup\"});" !="createDialog \"GroupRequests\";"
7 deleteMarker
7 setMarker
7 createMarker
7 assignItem
7 forceAddUniform
7 removeAllMPEventHandlers
7 setDamage !="_sapper setDamage 1;\n_sBomb setDamage 1;"
7 setDammage
7 displaySetEventHandler
7 ctrlSetEventHandler !"BIS_fnc_guiMessage_status"
7 addMPEventHandler
7 addEventHandler !"displayAddEventHandler" !"ctrlAddEventHandler" !"FiredNear" !"EpeContactStart" !"InventoryClosed" !"GetOut" !"InventoryOpened" !"local" !"Respawn" !"Put" !"Take" !"Fired" !"Killed" !" [\"PostReset\",{BIS_EnginePPReset = true;} ];" !"_logic addeventhandler [\n\"local\""
7 displayAddEventHandler !"[_display] call _fnc_animate;" !"tVersion select 4) == \"Development\") then" !"_display displayaddeventhandler\n[\n\"mousemoving\"," !"(findDisplay 46) displayAddEventHandler [\"KeyDown\",\"true\"];" !"(findDisplay 46) displayAddEventHandler [\"KeyDown\",\"_this call EPOCH_KeyDown\"];" !"_display displayaddeventhandler [\"unload\",\"uinamespace setvariable ['BIS_fnc_guiMess" !="findDisplay -1337 displayAddEventHandler ['Unload'"
7 ctrlAddEventHandler !"rCfg >> \"refreshDelay\");" !" [\n\"draw\"," !" [\"buttonclick\"," !="(uiNamespace getVariable 'ESP_map') ctrlAddEventHandler['Draw', '_esp_targets = EPOCH_ESPMAP_TARGETS;"
7 removeAllEventHandlers !="ctrlRemoveAllEventHandlers" !="_vehicle removeAllEventHandlers \"GetOut\";"
7 removeAllMissionEventHandlers
7 ctrlRemoveAllEventHandlers !="(uiNamespace getVariable 'ESP_map') ctrlRemoveAllEventHandlers 'Draw';"
7 removeEventHandler !="displayRemoveEventHandler" !="player removeEventHandler ['Fired', 0];" !"_currentTarget removeEventHandler[\"EpeContactStart\", _onContactEH]" !" [_adminVar,objnull];\npublicvariable _adminVar;\nplayer removeeventhandler [\"respawn\",_respawn];"
7 displayRemoveEventHandler !"BIS_fnc_guiMessage_status"
7 switchCamera
7 remoteControl !"fn_moduleRemoteControl.sqf"
7 drawIcon3D !="drawIcon3D[\"\x\addons\a3_epoch_code\Data\Member.paa\",_color,_pos,1,1,0,_text,1,0.025,\"PuristaMedium\"];\n}forEach EPOCH_ESP_TARGETS;" !"drawIcon3D[format[\"\x\addons\a3_epoch_code\Data\UI\loading_bar_%1.paa\",_stability],_color,(getPosATL EPOCH_stabilityTarget),5,5,0,\"\",1,0.05,\"PuristaMedium\"];" !"drawIcon3D[format[\"\x\addons\a3_epoch_code\Data\UI\loading_bar_%1.paa\",_num],_color,_pos,4,4,0,\"\",1,0.05,\"PuristaMedium\"];" !"EPOCH_drawIcon3dStability" !"EPOCH_drawIcon3d" !"if (_condition) then {\ndrawIcon3D [_icon, _color, _position, _sizeX, _sizeY, _angle, _text,"
7 drawLine3D !"{\nfor [{_i = 1}, {_i < count _x}, {_i = _i + 1}] do {\ndrawLine3D [_x select (_i - 1), _x select _i, ((BIS_tracedShooter getVari"
7 ctrlCreate
7 ctrlDelete
7 ctrlClassName
7 ctrlModel
7 ctrlModelDirection
7 ctrlModelSide
7 ctrlModelUp
7 ctrlSetDirection
7 ctrlSetModel
7 deleteVehicleCrew !="[\"A3\functions_f\MP\fn_deleteVehicleCrew.sqf\",\".sqf\",0,false,false,false,\"A3\",\"MP\",\"deleteVehicleCrew\"]"
7 loadFile
7 selectPlayer !="selectPlayer _playerObject;"
7 setGroupIconsVisible
7 setGroupIconsSelectable
7 setGroupIconParams
7 addGroupIcon
7 EPOCH_whitelist
7 EPOCH_defaultVars_SEPXVar
7 EPOCH_group_upgrade_lvl_SVar
7 EPOCH_GROUP_Delete_PVS !="EPOCH_GROUP_Delete_PVS = [player,Epoch_personalToken];"
7 Dayz_GUI_R
7 dayz_originalPlayer
7 zZombie_Base
7 infiSTAR
7 GodMode
7 shazbot
7 _typeofHookMonky
7 _allocMemory
7 _d3d9multipliervariable
7 _runASM
7 _addGFX_hookD3D9eventhandler
7 _BEhookBYPASSBOB
7 JJMMEE_INIT_MENU
 

Link to comment
Share on other sites

I got this working with the images but there's a couple problems.  When your health/drink/food values go down it updates the images fine.  But if you drink or eat or heal yourself and the values go UP, then the whole thing disappears and won't come back.  Also, if you hit ` to bring up the stock debug monitor, this one also disappears and will not come back.  What's the best way to fix this?  Here's the current code I have.

 

/*-
 * Developers VJ - Developer - http://epochmod.com/forum/index.php?/user/17218-vj/
 * Edited by Gorgy WWW.Highlife.Gaming.com
 *
 * VJsPlayerStats.sqf Ver: 0.391.b
 * License:
 * All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
 * http://creativecommons.org/licenses/by-nc-sa/4.0/
-*/

serverTitle="DeAtHhOuSe: Bornholm";
delay=5;

//No need to modify
waitUntil {!isNull player};
waitUntil {!(isNull (findDisplay 46))};
_PS = "VJs_PS" call BIS_fnc_rscLayer;
_PS cutRsc["VJs_PS","PLAIN"];


disableSerialization;
sleep delay;
[] spawn {
	while {true} do	{
	
		//Thirst
		if(EPOCH_playerThirst > 1875) then {Thirst_Icon_Path = 'addons\status\icons\Drink_1.paa' };
		if(EPOCH_playerThirst < 1875) then {Thirst_Icon_Path = 'addons\status\icons\Drink_0.75.paa'};
		if(EPOCH_playerThirst < 1250) then {Thirst_Icon_Path = 'addons\status\icons\Drink_0.5.paa'};
		if(EPOCH_playerThirst < 625) then {Thirst_Icon_Path = 'addons\status\icons\Drink_0.25.paa'};
		if(EPOCH_playerThirst < 250) then {Thirst_Icon_Path = 'addons\status\icons\Drink_0.1.paa'};
		
		//Hunger
		if(EPOCH_playerHunger > 3750) then {Hunger_Icon_Path = 'addons\status\icons\Food_1.paa'};
		if(EPOCH_playerHunger < 3750) then {Hunger_Icon_Path = 'addons\status\icons\Food_0.75.paa'};
		if(EPOCH_playerHunger < 2500) then {Hunger_Icon_Path = 'addons\status\icons\Food_0.5.paa'};
		if(EPOCH_playerHunger < 1250) then {Hunger_Icon_Path = 'addons\status\icons\Food_0.25.paa'};
		if(EPOCH_playerHunger < 500) then {Hunger_Icon_Path =  'addons\status\icons\Food_0.1.paa'};
		
		//Health
		if(damage player < 0.75) then {Health_Icon_Path = 'addons\status\icons\Health_1.paa'};
		if(damage player > 0.75) then {Health_Icon_Path = 'addons\status\icons\Health_0.75.paa'};
		if(damage player > 0.5) then {Health_Icon_Path = 'addons\status\icons\Health_0.5.paa'};
		if(damage player > 0.25) then {Health_Icon_Path = 'addons\status\icons\Health_0.25.paa'};
		if(damage player > 0.1) then {Health_Icon_Path = 'addons\status\icons\Health_0.1.paa'};
		
		//Energy
		if(EPOCH_playerEnergy > 1875) then {Energy_Icon_Path = 'addons\status\icons\Energy_1.paa'};
		if(EPOCH_playerEnergy < 1875) then {Energy_Icon_Path = 'addons\status\icons\Energy_0.75.paa'};
		if(EPOCH_playerEnergy < 1250) then {Energy_Icon_Path = 'addons\status\icons\Energy_0.5.paa'};
		if(EPOCH_playerEnergy < 625) then {Energy_Icon_Path = 'addons\status\icons\Energy_0.25.paa'};
		if(EPOCH_playerEnergy < 250) then {Energy_Icon_Path = 'addons\status\icons\Energy_0.1.paa'};
		
_grid = mapGridPosition  player; _xx = (format[_grid]) select  [0,3]; 
_yy = (format[_grid]) select  [3,3];    

			((uiNamespace getVariable "VJs_PS")
			displayCtrl 200289)
			ctrlSetStructuredText parseText format
			
		
		["

			<t size='2.00' align='center' color='#E5E4E2'> %1 </t><br/><br/>
			<t size='1.40' align='left'   color='#008C8C'>FPS: %2</t>
			<t size='1.40' align='right'  color='#CC6900'>PLAYERS: %3</t><br/><br/>
			<img size='3.0' align='center' image= '%6'/><br/><br/>
			<img size='3.0' align='center' image= '%7'/><br/><br/>
			<img size='3.0' align='center' image= '%8'/><br/><br/>
			<img size='3.0' align='center' image= '%9'/><br/><br/>
			<t size='1.40' align='center'  color='#FFFFFF'>CRYPTO: %4</t><br/><br/>
			<t size='1.40' align='center'  color='#FFFFFF'>GRIDREF: %5</t><br/><br/>
			<t size='1.60' align='center'   color='#FE2E2E'>[TS Info]</t><br/><br/>
			<t size='1.40' align='center'   color='#FFFFFF'>216.52.148.11:9150  </t><br/>

		"
			,serverTitle,round diag_fps,count playableUnits,EPOCH_playerCrypto,format["%1/%2",_xx,_yy], Thirst_Icon_Path, Hunger_Icon_Path, Health_Icon_Path, Energy_Icon_Path
		];

			sleep 1;
	};
};

 

I think this has everything to do with the stock Epoch message that comes up in the center of the screen that informs you that your drink or food values have risen (Red Gull Consumed.  Drink +500 etc....)  that overrides it.  

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×
×
  • Create New...