RevoLand
Member-
Content count
17 -
Donations
0.00 EUR -
Joined
-
Last visited
Community Reputation
11 NeutralAbout RevoLand
-
Rank
Bambi
Recent Profile Visitors
1255 profile views
-
RevoLand started following Request: Floating player names/icons, Disable Friendly Fire (FF) for Groups, Floating player names/icons (group only/all) and and 2 others
-
Paying for a *working* custom anti-death/delirium script
RevoLand replied to Karmafied's topic in Programming
Sure, i will see what i can do. -
Paying for a *working* custom anti-death/delirium script
RevoLand replied to Karmafied's topic in Programming
Use this: /** * Exile Mod * exile.majormittens.co.uk * © 2015 Exile Mod Team * * This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/. */ private["_unit","_selectionName","_amountOfDamage","_sourceOfDamage","_typeOfProjectile"]; _unit = _this select 0; _selectionName = _this select 1; _amountOfDamage = _this select 2; _sourceOfDamage = _this select 3; _typeOfProjectile = _this select 4; _isDeliriumActive = true; _neededDamageToActivateDelirium = 0.98; deliriumMinutes = 1; minimumDamageToRestoreFromDeliriumStatus = 0.85; restoreFullHealthAfterDelirium = true; deliriumCameraShakeStrength = 8; deliriumCameraShakeFrequency = 50; if (_isDeliriumActive) then { if ((damage _unit) + _amountOfDamage > _neededDamageToActivateDelirium && !(player getVariable ["deliriumActive", false])) then { player setVariable ["deliriumActive", true]; player allowDamage false; player setDamage _neededDamageToActivateDelirium; _amountOfDamage = 0; systemChat format ["You are DELIRIUM now for %1 minutes!", deliriumMinutes]; enableCamShake true; _amountOfDamage; _this spawn { _endTime = time + (deliriumMinutes * 60); while{minimumDamageToRestoreFromDeliriumStatus <= damage player && time <= _endTime} do { addCamShake [deliriumCameraShakeStrength, deliriumMinutes * 60, deliriumCameraShakeFrequency]; uiSleep 1; if (time >= (_endTime - 2)) then {player setDamage 1;}; }; systemChat "You are no longer DELIRIUM"; player allowDamage true; enableCamShake false; resetCamShake; if (restoreFullHealthAfterDelirium) then {player setDamage 0;}; player setVariable ["deliriumActive", false]; }; }; };So, if there is less time than 2 seconds to end delirium and user still didn't recover from delirium status player will get killed. -
Paying for a *working* custom anti-death/delirium script
RevoLand replied to Karmafied's topic in Programming
Well yeah, you never mentioned about how to/when to kill player so we can't die, hahaha. Okay, if i didn't understand wrong you can just change this line like this: if (restoreFullHealthAfterDelirium) then {player setDamage 0;} else {player setDamage 1;};So if you set restoreFullHealthAfterDelirium to false, it will kill the player when you out of delirium. -
Open your config.cpp, add the code i have given below to class CfgExileCustomCode: ExileClient_object_player_event_onHandleDamage = "client\ExileClient_object_player_event_onHandleDamage.sqf";It should look like this: https://dl.dropboxusercontent.com/s/i09voizbeagjzpf/20-Salı-WC752I6j22.png?dl=0 And content of ExileClient_object_player_event_onHandleDamage.sqf: /** * Exile Mod * exile.majormittens.co.uk * © 2015 Exile Mod Team * * This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/. */ private["_unit","_selectionName","_amountOfDamage","_sourceOfDamage","_typeOfProjectile"]; _unit = _this select 0; _selectionName = _this select 1; _amountOfDamage = _this select 2; _sourceOfDamage = _this select 3; _typeOfProjectile = _this select 4; if ((leader (group _unit) == leader (group _sourceOfDamage)) && (_unit != _sourceOfDamage)) then { _amountOfDamage = 0; _amountOfDamage; };Here you go, no more FF to your teammates
-
Paying for a *working* custom anti-death/delirium script
RevoLand replied to Karmafied's topic in Programming
Okay so i was able to create Delirium script you wanted, but i don't want money unless you really insist. Here you go; Open your config.cpp, add the code i have given below to class CfgExileCustomCode: ExileClient_object_player_event_onHandleDamage = "client\ExileClient_object_player_event_onHandleDamage.sqf";It should look like this: https://dl.dropboxusercontent.com/s/i09voizbeagjzpf/20-Salı-WC752I6j22.png?dl=0 And content of ExileClient_object_player_event_onHandleDamage.sqf: /** * Exile Mod * exile.majormittens.co.uk * © 2015 Exile Mod Team * * This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/. */ private["_unit","_selectionName","_amountOfDamage","_sourceOfDamage","_typeOfProjectile"]; _unit = _this select 0; _selectionName = _this select 1; _amountOfDamage = _this select 2; _sourceOfDamage = _this select 3; _typeOfProjectile = _this select 4; _isDeliriumActive = true; _neededDamageToActivateDelirium = 0.98; deliriumMinutes = 1; minimumDamageToRestoreFromDeliriumStatus = 0.85; restoreFullHealthAfterDelirium = true; deliriumCameraShakeStrength = 8; deliriumCameraShakeFrequency = 50; if (_isDeliriumActive) then { if ((damage _unit) + _amountOfDamage > _neededDamageToActivateDelirium && !(player getVariable ["deliriumActive", false])) then { player setVariable ["deliriumActive", true]; player allowDamage false; player setDamage _neededDamageToActivateDelirium; _amountOfDamage = 0; systemChat format ["You are DELIRIUM now for %1 minutes!", deliriumMinutes]; enableCamShake true; _amountOfDamage; _this spawn { _endTime = time + (deliriumMinutes * 60); while{minimumDamageToRestoreFromDeliriumStatus <= damage player && time <= _endTime} do { addCamShake [deliriumCameraShakeStrength, deliriumMinutes * 60, deliriumCameraShakeFrequency]; uiSleep 1; }; systemChat "You are no longer DELIRIUM"; player allowDamage true; enableCamShake false; resetCamShake; if (restoreFullHealthAfterDelirium) then {player setDamage 0;}; player setVariable ["deliriumActive", false]; }; }; };You are free to edit and distribute as you want, also all feedback is welcome. -
Do you have @cupweapons active and working at both of client & server?
-
Sure, i don't think posting it publicly is forbidden so here you go: https://steamcommunity.com/id/revoland/
-
Here is an updated script for playerNames which adds distance to names if preferred. Group only: Show to all players: Script for all players is not tested yet, if anyone test and report me the status i will be very happy. Every improvements are welcome. Free to edit & distribute as you want.
-
Hey again, can you give a test to this script to see if it works? playerNames.sqf nameDistance = _this select 0; showDistance = _this select 1; while {true} do { _currentPlayerCount = count allPlayers; waitUntil { _currentPlayerCount > 1; }; ShowPlayerNames = addMissionEventHandler ["Draw3D", { _players = allPlayers; { if (!(isNull _x) && (isPlayer _x) && (_x != player)) then { _distance = cameraOn distance _x; _alpha = (1-(_distance/nameDistance)); _clr = [1, 1, 1, _alpha]; _crew = crew (vehicle _x); _name = ''; { if (_x != player) then { _name = format ['%3%1%2', ['', format ['%1, ', _name]] select (_name != ''), name _x, ['', format ['[%1] ', round(player distance _x)]] select (showDistance)]; }; } forEach _crew; _veh = vehicle _x; _bbr = boundingBoxReal _veh; _p1 = _bbr select 0; _p2 = _bbr select 1; _maxHeight = (abs ((_p2 select 2) - (_p1 select 2))) * 1.25; _pos = visiblePosition _veh; _pos set[2,(_pos select 2) + _maxHeight]; drawIcon3D['', _clr, _pos, 0, 0, 0, _name, 1, 0.03]; // texture (null), color (_clr), position (_pos), width (0), height (0), angle (0), text (_name), shadow (1), textSize (0.03), font, textAlign, drawSideArrows }; } forEach _players; }]; _currentPlayerCount = count allPlayers; waitUntil { _currentPlayerCount != count allPlayers; }; removeMissionEventHandler ["Draw3D", ShowPlayerNames]; sleep 1; };
-
Sure, i will take a look asap.
-
Here is an updated script for playerNames which adds distance to names if preferred. initPlayerLocal.sqf: [15000 // maximum distance to show name ,true // show distance to player? (false = dont show) ] execVM "addons\scripts\playerNames.sqf";playerNames.sqf: nameDistance = _this select 0; showDistance = _this select 1; while {true} do { waitUntil { count units (group player) > 1; }; ShowGroupMemberNames = addMissionEventHandler ["Draw3D", { _members = units (group player); { if (!(isNull _x) && (isPlayer _x) && (_x != player)) then { _distance = cameraOn distance _x; _alpha = (1-(_distance/nameDistance)); _clr = [1, 1, 1, _alpha]; _crew = crew (vehicle _x); _name = ''; { if (_x != player) then { _name = format ['%3%1%2', ['', format ['%1, ', _name]] select (_name != ''), name _x, ['', format ['[%1] ', round(player distance _x)]] select (showDistance)]; }; } forEach _crew; _veh = vehicle _x; _bbr = boundingBoxReal _veh; _p1 = _bbr select 0; _p2 = _bbr select 1; _maxHeight = (abs ((_p2 select 2) - (_p1 select 2))) * 1.25; _pos = visiblePosition _veh; _pos set[2,(_pos select 2) + _maxHeight]; drawIcon3D['', _clr, _pos, 0, 0, 0, _name, 1, 0.03]; // texture (null), color (_clr), position (_pos), width (0), height (0), angle (0), text (_name), shadow (1), textSize (0.03), font, textAlign, drawSideArrows }; } forEach _members; }]; _memberCount = count units (group player); waitUntil { count (units (group player)) != _memberCount; }; removeMissionEventHandler ["Draw3D",ShowGroupMemberNames]; sleep 1; };
-
Wow, that rage, for "just a marker". Edit: Well ofc you have right to get angry about stolen content but as you know Bohemia keeps the mpmission system so almost everything is visible to whoever connects to your server unless it is a server addon. So all you can do is be friendly, share and do not rage to whoever stole your content, instead be happy because you wrote this lines; even they don't know.
-
Try this one; add to top of your initPlayerLocal.sqf [12000] execVM "addons\scripts\playerNames.sqf";12000 = distance to see player names in group playerNames.sqf nameDistance = _this select 0; while {true} do { waitUntil { count units (group player) > 1; }; ShowGroupMemberNames = addMissionEventHandler ["Draw3D", { _members = units (group player); { if (!(isNull _x) && (isPlayer _x) && (_x != player)) then { _distance = cameraOn distance _x; _alpha = (1-(_distance/nameDistance)); _clr = [1,1,1,_alpha]; _crew = crew (vehicle _x); _name = ''; { if(_forEachIndex == 0) then { _name = _name + format['%1',name _x]; } else { if(alive _x) then {_name = _name + format[', %1',name _x];}; }; } forEach _crew; _veh = vehicle _x; _bbr = boundingBoxReal _veh; _p1 = _bbr select 0; _p2 = _bbr select 1; _maxHeight = (abs ((_p2 select 2) - (_p1 select 2))) * 1.25; _pos = visiblePosition _veh; _pos set[2,(_pos select 2) + _maxHeight]; drawIcon3D['',_clr,_pos,0,0,0,_name,1,0.04]; }; } foreach _members; }]; _memberCount = count units (group player); waitUntil { count (units (group player)) != _memberCount; }; removeMissionEventHandler ["Draw3D",ShowGroupMemberNames]; sleep 1; };Let me know about result/performance.
-
performance Server FPS ++ Remove Trigger and use this Script until 0.9.36
RevoLand replied to etrex2k4's topic in Scripts
Hello, i just made an improved version of this thing. If anyone would interest here you go: Put this to top of initPlayerLocal.sqf and edit as you like (current positions are default exile safe zones, altis, 0.9.35) [[ [14600, 16797.2, 22.35] ,[2998.06, 18175.5, 3.7756] ,[23334.6, 24188.9, 4.00956] ] // safe zone positions [x,y,z] ,150 // distance (range) ,5 // sleep thread for ] execVM "addons\scripts\safeZones.sqf";safeZones.sqf private ["_safeZones", "_distance", "_sleep"]; _safeZones = _this select 0; _distance = _this select 1; _sleep = _this select 2; while {true} do { { _distanceToSafe = player distance2D _x; if (_distanceToSafe <= _distance) then { systemChat "Entered to safe zone"; [] call ExileClient_object_player_event_onEnterSafezone; waitUntil { player distance2D _x > _distance; }; [] call ExileClient_object_player_event_onLeaveSafezone; systemChat "Leaved from safe zone"; }; } forEach _safeZones; sleep _sleep; };also if you add "sleep 30;" before onLeaveSafeZone event, it should be like the upcoming version 0.9.36 SS: Btw, i am still very newbie at SQF coding so please forgive me if there is anything wrong with the codes. I've tested codes myself and they do work fine for me. -
Please use spoilers, problem should be at here:
- 1 reply
-
- 1