Jump to content

[Release] Combat Logger Indicator


ToejaM

Recommended Posts

What does it do?

Broadcasts in the top right the name of the potential combat logger for all to see and changes some medical states on the offender.

 

LHKP8lgFR_4

 

How does it work?

If you're in combat and you logout unexpectedly for any reason that would usually set you unconscious when you log back in then you will be shouted out and have numerous things changed on you:

 

Blood set to 3000

Bleeding

Unconcious for 15 seconds.

 

You can set it to what you like if you know the medical states/code.

 

Remember

 

Those complaining about random crashes and bad internet, stop playing on potatos and dial up. Your problem with crashing and bad connectivity shouldnt punish legit players.

 

This merely modifys the combat log script from setting you unconcious to anything you want it to, with a message telling others.

 

There are of course going to be many false positives but people are already set unconcious for this already, this is just as above an adaptation of the script with a broadcast message. I'm sure with some tweaking it could have the message sent to only admins or select players if you didnt want it as a server broadcast.

 

I'd recommend only taking further action with video proof.

Credit

 

Credit to maca134 for the remote messages, I happened to be looking through the compile files and saw this about combat logging and wondered if I could change it. Found the medical changes and gave it a go, simple as that really.

 

Installation

 

If you want it to broadcast to the server who combat logged you're going to need this.

 

http://dayzepoch.com/forum/index.php?/topic/1026-server-side-hintglobalchat-fix-deathmsg-fix/

 

After you've done that, you need to modify this file: server_onPlayerDisconnect.sqf in dayz_server\compile\

 

 

Change this:

    _object setVariable["NORRN_unconscious",true, true];
    _object setVariable["unconsciousTime",300,true];


	#ifdef DZE_SERVER_DEBUG
    diag_log format["COMBAT LOGGED: %1 (%2)", _playerName,_timeout];
	//diag_log format["SET UNCONCIOUSNESS: %1", _playerName];
	#endif

	// Message whole server when player combat logs



	_message = format["PLAYER COMBAT LOGGED: %1",_playerName];
	[nil,nil,"per",rTITLETEXT,_message,"PLAIN DOWN"] call RE;
};

to this

    _object setVariable["USEC_BloodQty",3000]; // blood level
    _object setVariable["NORRN_unconscious",true, true]; // set unconcscious
    _object setVariable["unconsciousTime",15,true]; // unconcscious time
    _object setVariable["USEC_injured",true]; // bleeding
    #ifdef DZE_SERVER_DEBUG
    diag_log format["COMBAT LOGGED: %1 (%2)", _playerName,_timeout];
    #endif

// Message whole server when player combat logs
_hint = parseText format["<t align='center' color='#FF0033' shadow='2' size='1.75'>PLAYER COMBAT LOGGED</t><br/><t align='center' color='#ffffff'>%1 possibly just combat logged and has had their blood set to 3000, they're now bleeding and unconscious for 15 seconds when they reconnect.</t>",_playerName];
customRemoteMessage = ['hint', _hint];
publicVariable "customRemoteMessage";
};
Link to comment
Share on other sites

I run a PvE server.  Combat logging is something I don't have to worry about, but the anti combat log additions to work. Is there any way I can just shut off the new combat log addition as well as the old one where they would log in passed out? Nothing more irritating than when you log back in on a PvE server just to be passed out for several minutes and depending on where you logged there's a good chance you're going to end up dead by the time the hourglass runs out.  

 

 

Any help is much appreciated,

Chester

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 months later...
  • 1 month later...
  • 2 weeks later...
  • 2 years later...
  • 9 months later...

death mas script

/*
Remote messages by maca134 [[email protected]]

This allows you to send globalchat/hint/titlecut from the server to all or a specific player without having to use remote exec

(if you have resec.sqf then you can only do titletext via RE)

I wants to dp sidechat/groupchat too but it didnt work.

To install add '_nil = [] execVM "custom\remote_messages.sqf";' to your init.sqf inside the 'if (!isDedicated) then {' block.

Global chat can only be sent to a single user and requires 'enableRadio true;' in init.sqf

Here are some examples:

customRemoteMessage = ['globalChat', "say something in globalChat", _unit];
publicVariable "customRemoteMessage";

customRemoteMessage = ['titleCut', "say something in titleCut", _unit];
publicVariable "customRemoteMessage";

customRemoteMessage = ['hint', "say something in hint", _unit];
publicVariable "customRemoteMessage";

customRemoteMessage = ['titleCut', "say something in titleCut"];
publicVariable "customRemoteMessage";

customRemoteMessage = ['hint', "say something in hint"];
publicVariable "customRemoteMessage";

customRemoteMessage = ["titleText", "say something in hint"];
publicVariable "customRemoteMessage";

customRemoteMessage = ["titleText", "say something in hint", _unit];
publicVariable "customRemoteMessage";
*/

fnc_remote_message = {
    private ["_type", "_message", "_player"];
    _type = _this select 0;
    _message = _this select 1;
    if (count _this > 2) then {
        _player = _this select 2;
        if (_player == player) then {
            switch (_type) do {
                case "globalChat": {
                    player globalChat _message;
                };
                case "hint": {
                    hint _message;
                };
                case "titleCut": {
                    titleCut [_message, "PLAIN DOWN", 3];
                };
                case "titleText": {
                    titleText [_message, "PLAIN DOWN"]; titleFadeOut 10;
                };
            };
        };
    } else {
        switch (_type) do {
            case "hint": {
                hint _message;
            };
            case "titleCut": {
                titleCut [_message,"Plain Down",3];
            };
            case "titleText": {
                titleText [_message, "PLAIN DOWN"]; titleFadeOut 10;
            };
        };
    };
};

"customRemoteMessage" addPublicVariableEventHandler {(_this select 1) call fnc_remote_message;};

 

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
  • Discord

×
×
  • Create New...