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
MeinCain

Обнуление хуманити

Доброго времени суток!

 

Подобная тема уже поднималась, но не увидел нигде вразумительного ответа.

 

Обратил внимание, что периодически у некоторых игроков обнуляется хуманити после смерти. Не всегда. Не у всех. Но такое случается.

 

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

 

Спасибо.

Share this post


Link to post
Share on other sites

16 answers to this question

Recommended Posts

  • 0

Обнуление хумки после смерти, если игрок не перезашел на сервер вызвано недоработанными процедурами в БД насчет очистки мертвых игроков после каждого рестарта.

Share this post


Link to post
Share on other sites





  • 0

В процедур БД ищите удаление мертвых игроков и сделайте это значение дней 3 лучше.

Share this post


Link to post
Share on other sites
  • 0

 

В процедур БД ищите удаление мертвых игроков и сделайте это значение дней 3 лучше.

 

Есть такая процедура, но она 21 день. 

 

Сейчас у игрока, который по совместительству является моим знакомым,  уточнил как все было, цитирую:

Я воевал на болотах, настрелял 7к хумки. После того как меня убили и я заспавнился, хумка откатилась

Вот ситуация. То есть я даже погорячился про рестарты.

Share this post


Link to post
Share on other sites
  • 0

Найди его последний труп в бд и посмотри значение хумки. Если труп с кривой хумкой - то проблема скорее всего в библиотеке бд hive

Edited by RedLink (see edit history)

Share this post


Link to post
Share on other sites
  • 0

и было бы кстати показать лог сервера, где фигурирует смерть нагибатора

Share this post


Link to post
Share on other sites
  • 0

 

Найди его последний труп в бд и посмотри значение хумки.

 

Вот это, к сожалению, не знаю как можно посмотреть.

 

А лог убийства:

20:34:27 "PLAYERHIT: B 1-1-D:1 (Нагибатор) REMOTE was hit by B 1-1-F:1 (Другой игрок) REMOTE with M240 from 94.6201m with 1.35411 dmg"
20:34:34 "PLAYERHIT: B 1-1-D:1 (Нагибатор) REMOTE was hit by B 1-1-F:1 (Другой игрок) REMOTE with M240 from 86.3598m with 1.36824 dmg"
20:34:37 "PKILL: Нагибатор was killed by Другой игрок with weapon M240 from 86.3598m"
20:34:37 "PDEATH: Player Died xxxidнагибатораxxx"
20:34:45 "infiSTAR.de PlayerDisconnected: _uid: xxxidнагибатораxxx   _name: Нагибатор"
20:34:45 "[LOST-SERVER]: Получено: STRING (xxxidнагибатораxxx), Отправлено: STRING (xxxidнагибатораxxx)"
20:34:45 "[LOST-SERVER]: Disconnect: Нагибатор (xxxidнагибатораxxx) Object: B 1-1-D:1 (Нагибатор) REMOTE, _characterID: 966 Position: [-7239.67,19539.3,0.245575]"
20:34:53 "CLEANUP: Deleted 1 Loot Piles out of 147"
20:35:01 "infiSTAR.de PlayerConnected: ["xxxidнагибатораxxx","Нагибатор"]"

Share this post


Link to post
Share on other sites
  • 0

В БД character_data есть. Там информация о всех персонажах сервера (мёртвых и живых)

Там и надо смотреть изменение хуманити

Share this post


Link to post
Share on other sites
  • 0

Еще такой момент, уточнил сейчас: хумка обнулилась не полностью. Обнулилось только то, что он настрелял перед смертью персонажа.

Share this post


Link to post
Share on other sites
  • 0

Тогда проблема с синхронизацией с БД

А это уже та же проблема, как и у Киловата.

Но в данной теме я полный нуб

Share this post


Link to post
Share on other sites
  • 0

 

Тогда проблема с синхронизацией с БД

Беда в том, что это не происходит на постоянной основе. А раз от раза. 

Share this post


Link to post
Share on other sites
  • 0

Беда в том, что это не происходит на постоянной основе. А раз от раза. 

Зависит от онлайна?

Share this post


Link to post
Share on other sites
  • 0

 

Зависит от онлайна?

Как я посмотрел, в этот момент на сервере не было много народу в том и дело. То есть даже непонятно, от чего это может зависеть. В принципе, откуда ветер дует вполне понятно: не успевают данные записаться в бд. Но вопрос: почему? Что этому может препятствовать? Как определить, где собака порылась? 

Share this post


Link to post
Share on other sites
  • 0

Как я посмотрел, в этот момент на сервере не было много народу в том и дело. То есть даже непонятно, от чего это может зависеть. В принципе, откуда ветер дует вполне понятно: не успевают данные записаться в бд. Но вопрос: почему? Что этому может препятствовать? Как определить, где собака порылась? 

Я пофиксил ошибки случайно, вот пример, было так

_newObject setVariable ["bodyUID", _playerID, true];

изменил на

_newObject setVariable["bodyUID", _playerID, true];

я не знаю почему, но мне помогло. Игроки сказали, что все нормализовалось и проблем с откатами нет. Также я правил

dayz_players set [count dayz_players,_playerObj];
_playerObj setVariable["CharacterID",_characterID,true];
_playerObj setVariable["humanity",_humanity,true];
_playerObj setVariable["humanity_CHK",_humanity];
_playerObj setVariable["lastPos",getPosATL _playerObj];
dayzPlayerLogin2 = [_worldspace,_state,_randomSpot];
_clientID = owner _playerObj;
if (!isNull _playerObj) then {
	_clientID publicVariableClient "dayzPlayerLogin2";
	if (isNil "PVDZE_plr_SetDate") then {
		call server_timeSync;
	};
	_clientID publicVariableClient "PVDZE_plr_SetDate";
};

Из-за setVariable и publicVariableClient проблемы с синхронизацией, откатами и прочим. Т.е они использовались у меня не там, где надо, в следствии чего и проблемы.

Share this post


Link to post
Share on other sites
  • 0

Я пофиксил ошибки случайно, вот пример, было так

_newObject setVariable ["bodyUID", _playerID, true];

изменил на

_newObject setVariable["bodyUID", _playerID, true];

я не знаю почему, но мне помогло. Игроки сказали, что все нормализовалось и проблем с откатами нет. Также я правил

dayz_players set [count dayz_players,_playerObj];
_playerObj setVariable["CharacterID",_characterID,true];
_playerObj setVariable["humanity",_humanity,true];
_playerObj setVariable["humanity_CHK",_humanity];
_playerObj setVariable["lastPos",getPosATL _playerObj];
dayzPlayerLogin2 = [_worldspace,_state,_randomSpot];
_clientID = owner _playerObj;
if (!isNull _playerObj) then {
	_clientID publicVariableClient "dayzPlayerLogin2";
	if (isNil "PVDZE_plr_SetDate") then {
		call server_timeSync;
	};
	_clientID publicVariableClient "PVDZE_plr_SetDate";
};

Из-за setVariable и publicVariableClient проблемы с синхронизацией, откатами и прочим. Т.е они использовались у меня не там, где надо, в следствии чего и проблемы.

а что ты поменял?)

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 pekar0201
      Как сделать так, дабы игрок мог купить определённый товар, когда он достигнет определённого количества хуманити (К примеру, -10к)???
    • By Boom
      Скинули скрин сказали что хз как такое произошло
      Куда копать? Погуглил ничего не нашёл
      Нужны ли RPT?
      от чего хумка не округлилась? 

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • By cjanton
      Универсальный плагин для сбрасывания количества смертей или смертей с фрагами. С ним достаточно прописать в общем или командном чате команду. Пример
       
      ВНИМАНИЕ: У вас должен быть установлен Metamod + SourceMod
      Установка:
      1) Переместите или скопируйте файл "Resetscore+_v1.5.1.sp" в директорию addons\sourcemod\scripting сервера.
      2) Скомпилируйте плагин. Переместите или скопируйте полученный файл Resetscore+_v1.5.1.smx в директорию addons\sourcemod\plugins сервера.
      3) Автоматическое создание конфигурационного файла от плагина по пути cstrike\cfg\sourcemod сервера.

      CVARs:
      sm_resetscore_mode - Выключение плагина "0", сброс только смертей "1", сброс только счёта "2", всего "3".
      sm_resetdeath_command - Список ваших команд для сброса смертей (разделять ", ").
      sm_resetscore_command - Список ваших команд для сброса счёта (разделять ", ").
      sm_resetscore_forced - Форсировать обнуление (рекомендуется только в CS:GO).
      sm_resetscore_annonce - Без сообщений "0", только о сбросах "1", только объявление "2" или "-2", полный показ "3" или "-3".

      Команды для сброса смертей:
      !rd, 1rd, !кв, 1кв или resetdeath
      Команды для сброса счета:
      !rs, 1rs, !кы, 1кы или resetscore

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • By pekar0201
      Стоит ESS V2
      Нужно дабы определённую точку спавна могли выбирать только бандиты и герои у которых 25к, -25к и больше хуманити соответственно. (А не только,к примеру, бандит, либо только герой)
      Вот к примеру есть точка:
      ["Зеленогорск",[1607,7804,0],0,-25000]
      Нужно дабы её могли использовать и бандиты у которых хуманити меньше 25к, и герои, у которых хуманити выше 25к.
      Собственно вопрос, как это реализовать?
      За помощь ставлю +! :)
  • 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.