Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Need help?

    Create a topic in the appropriate section
    Don't write everything in the chat!
  • Take a look at the marketplace

    There you can buy
    everything related to game servers
  • Don't want a ban?

    Please read our rules
    Don't disturb the order!
  • Sell or buy?

    Use services of the guarantor
    We will make your deal safe
  • 0
rss_adm

Релог в технике над базой и попадание внутрь базы

Всем привет!

Заметил такую особенность, есть люди которые любят проникать в чужие базы следующим образом:

 

Прилетают например на моззи, зависают над крышей, релогаются, итог - оказываются внутри чужой базы.

 

Кто нибудь сталкивался, есть ли решение этой проблемы и каково само это решение?

 

Вопросы:

1) Как сделать так чтобы игрок при выходе оказывался на крыше, а не на земле внутри базы?

2) Либо как сделать так чтобы игрока убило если он нажимает альт+ф4 находясь в технике или ждет отсчета и жмет выход

 

Спасибо!

Share this post


Link to post
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Вообще то он и так должен оказаться на крыше...

 

Варианты:

1. При заходе на сервер, проверять, нет ли рядом ПлотПоле, если есть - телепорт на 50м.

2. Есть проверка на сервере, что игрок вышел в логаут находясь в технике, при таком выходе, менять координаты в скриптом в БД, пере сохраняя игрока в +50м от места логаута. Кстати, это спасет игроков, если вылетел в технике. Смотри скрипт синхронизации игрока. - Берем координаты игрока, меняем на случайные от его точки + 50м, вызываем скрипт пере сохранения - синхронизации.

3...

Share this post


Link to post
Share on other sites



  • 0

по части убить по alt-f4

если используете инфистар, что в структуре антихака можно на эту комбинацию сделать килл.

Если интересно, буду дома завтра, посмотрю и выложу свой код.

Share this post


Link to post
Share on other sites
  • 0

по части убить по alt-f4

если используете инфистар, что в структуре антихака можно на эту комбинацию сделать килл.

Если интересно, буду дома завтра, посмотрю и выложу свой код.

Да, инфистар используется. Выложите код посмотреть. Я сделал чтобы убивало при выходе из игры находясь в технике, но это не выход.. 

Share this post


Link to post
Share on other sites
  • 0

по части убить по alt-f4

если используете инфистар, что в структуре антихака можно на эту комбинацию сделать килл.

Если интересно, буду дома завтра, посмотрю и выложу свой код.

Выложите пожалуйста 

Share this post


Link to post
Share on other sites
  • 0

Вот как это выглядит у меня (версия инфистара v1414)

 

 

 

 

"+_randvar4+" = {
            _bkey = _this select 0;
            
            _log = format['<infiSTAR.de>: You have pressed a forbidden Key! (%1)',_bkey];
            cutText [_log,'WHITE IN'];
            hint _log;
            systemchat _log;
            for '_start' from 0 to 5 do {disableUserInput true;};
            if("+str _LBK+")then
            {
                _log = format['BadKey: %1',_bkey];
                _name = 'DEAD';if((alive player)&&(getPlayerUID player != ''))then{_name = name player;};
                [_name,getPlayerUID player,'SLOG_BK',toArray (_log)] call "+_randvar1537+";
            };
            uiSleep 3;
            for '_stop' from 0 to 5 do {disableUserInput false;};
        };
        if("+str _UIM+")then
        {
            "+_randvar6+" = {
                _key = _this select 1;
                _shift = _this select 2;
                _ctrl = _this select 3;
                _alt = _this select 4;
                _handled = false;
                if(_key == "+str _ODK+")exitWith{[] spawn fnc_debugX0;_handled=true;true};
                _handled
            };
        }
        else
        {
            "+_randvar6+" = {
                _key = _this select 1;
                _shift = _this select 2;
                _ctrl = _this select 3;
                _alt = _this select 4;
                _handled = false;
                
                _fnc_punish_combatlog = {
                    _isInCombat = player getVariable['startcombattimer',0];
                    if(str _isInCombat != '0')then
                    {
                        [player,'sick'] spawn player_death;
                        player setHit['Body',1];
                    };
                };
                
                if(_key == "+str _ODK+")exitWith{[] spawn fnc_debugX0;_handled=true;true};
                if("+str _RCK+")then
                {
                    if(_key == "+str _OpenMenuKey+")exitWith{['AdminMenu Key'] spawn "+_randvar4+";_handled=true;true};
                    if(_key == 0xC7)exitWith{['Home - Known to start HackMenus'] spawn "+_randvar4+";_handled=true;true};
                    if(_key == 0x3B)exitWith{['F1 - Known to start HackMenus'] spawn "+_randvar4+";_handled=true;true};
                    if(_key == 0x3C)exitWith{['F2 - Known to start HackMenus'] spawn "+_randvar4+";_handled=true;true};
                    if(_key == 0x3D)exitWith{['F3 - Known to start HackMenus'] spawn "+_randvar4+";_handled=true;true};
                    if(_shift)then
                    {
                        if(_key == 0x4A)exitWith{['Shift + Minus to LowFPS/Dupe'] spawn "+_randvar4+";_handled=true;true};
                        if(_key == 0x19)exitWith{['Shift + P to CombatLog'] spawn "+_randvar4+";call _fnc_punish_combatlog;_handled=true;true};
                    };
                    if(_alt)then
                    {
                        if(_key == 0x57)exitWith{['ALT-F11'] spawn "+_randvar4+";_handled=true;true};
                        if(_key == 0x3E)exitWith{['ALT-F4 to CombatLog'] spawn "+_randvar4+";call _fnc_punish_combatlog;_handled=true;true};
                    };
                };
                _handled
            };
 

Share this post


Link to post
Share on other sites
  • 0

Решил проблему тем, что в файле на сервере server\compile\server_onPlayerDisconnect.sqf после строк:

if (!isNull _playerObj) then {

	_playerPos = getPosATL _playerObj;
	_characterID =	_playerObj getVariable ["CharacterID","0"];
	_timeout = _playerObj getVariable["combattimeout",0];

Добавил:

 _newPos = [_playerPos, 80, 100, 10, 0, 20, 0] call BIS_fnc_findSafePos;

 

 

И под:

	if (vehicle _playerObj != _playerObj) then {
		_playerObj action ["eject", vehicle _playerObj];
		_invehicle = true;

Добавил: 

		_playerObj setVariable["USEC_injured", true];
		_playerObj setVariable["NORRN_unconscious",true, true];
		_playerObj setVariable["unconsciousTime",200,true];
		_playerObj setpos _newPos;

И засунуть _newPos в секцию private

 

Телепортирует на 80 метров в радиусе выхода из техники включает кровотечение и бессознанку. Может кому поможет. Всем спасибо.

Edited by rss_adm (see edit history)

Share this post


Link to post
Share on other sites
  • 0

Решил проблему тем, что в файле на сервере server\compile\server_onPlayerDisconnect.sqf после строк:

if (!isNull _playerObj) then {

	_playerPos = getPosATL _playerObj;
	_characterID =	_playerObj getVariable ["CharacterID","0"];
	_timeout = _playerObj getVariable["combattimeout",0];

Добавил:

 _newPos = [_playerPos, 80, 100, 10, 0, 20, 0] call BIS_fnc_findSafePos;

 

 

И под:

	if (vehicle _playerObj != _playerObj) then {
		_playerObj action ["eject", vehicle _playerObj];
		_invehicle = true;

Добавил: 

		_playerObj setVariable["USEC_injured", true];
		_playerObj setVariable["NORRN_unconscious",true, true];
		_playerObj setVariable["unconsciousTime",200,true];
		_playerObj setpos _newPos;

И засунуть _newPos в секцию private

 

Телепортирует на 80 метров в радиусе выхода из техники включает кровотечение и бессознанку. Может кому поможет. Всем спасибо.

Сделай гайд в отдельной теме. Многие благодарны думаю будут  :good:

Share this post


Link to post
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

  • Similar Content

    • By BorizzK
      Накатал по быстрому для себя и своих ребят от нефиг делать, тк в командировке и дейзить возможности нет, только удаленно ковырять сервер
      Внутри настройки через переменные
      путь к базе сервера и инстанс ид берет из конфига сервера (нужно настроить имя файла и путь в файле)
      Мониторит сервер по названию окна, сохранив pid
      При вылете в 90% случаев корректно убивает процесс
      При перезапуске так же
      При каждом старте с 0 и при перезапусках делает бэкапы баз/настроек/
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • By Scofild142rus12
      В каком папке dayz_server в распакованном, виде находится где поставить, новую базу ФНГ и как поменять место расположение ёё? ПОДСКАЖИТЕ ПЛИЗ  
    • By W0LF
      Сабж собственно. Для ручного оружия работает:
      _weapon = "AKM_Kobra_DZ"; _unit_magazine_name = getArray (configFile >> "CfgWeapons" >> _weapon >> "magazines"); systemChat format["%1:",_weapon]; {systemChat format["%1",_x];} forEach _unit_magazine_name; Однако для техники не работает:
      _car = "ArmoredSUV_PMC_DZE4"; _car_magazine_name = getArray (configFile >> "CfgVehicles" >> _car >> "magazines"); systemChat format["%1:",_car]; {systemChat format["%1",_x];} forEach _car_magazine_name; Что не так?
    • By Litt3n
      Как сделать год мод на определенную базу?
      Или чтобы в радиусе определенного плота все постройки были в год моде?
  • Our picks

×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.