Креш сервера (логи)

rxki

Пользователь
Регистрация
5 Янв 2019
Сообщения
208
Симпатии
5
Пол
Мужской
Здравствуйте, господа. Наткнулся в логах на частую ошибку в плагине. Она и раньше была, но все было нормально и всё откладывал на потом посмотреть ее. А сегодня пару раз эта ошибка положила мне сервер... Я глянул, но моих "познаний" оказалось мало, что бы определить проблему... Прошу вашей помощи разобраться в косяке. Ошибка:

L 03/18/2019 - 22:52:42: [ENGINE] Invalid entity 203
L 03/18/2019 - 22:52:42: [AMXX] Displaying debug trace (plugin "td_turrets_engine.amxx", version "1.1 Rebuild")
L 03/18/2019 - 22:52:42: [AMXX] Run time error 10: native error (native "entity_get_edict")
L 03/18/2019 - 22:52:42: [AMXX] [0] td_turrets_engine.sma::GetTurretOwner (line 3942)
L 03/18/2019 - 22:52:42: [AMXX] [1] td_turrets_engine.sma::CheckIsPlayerInRange (line 2167)
 

Вложения

rxki

Пользователь
Регистрация
5 Янв 2019
Сообщения
208
Симпатии
5
Пол
Мужской
и вот еще, че нашел. скорее всего сервер упал именно по этой причине

L 03/19/2019 - 00:11:36: [ENGINE] Invalid entity 206
L 03/19/2019 - 00:11:36: [AMXX] Displaying debug trace (plugin "td_turrets_engine.amxx", version "1.1 Rebuild")
L 03/19/2019 - 00:11:36: [AMXX] Run time error 10: native error (native "entity_set_string")
L 03/19/2019 - 00:11:36: [AMXX] [0] td_turrets_engine.sma::TurretReloadTaskEnd (line 3193)
 

rxki

Пользователь
Регистрация
5 Янв 2019
Сообщения
208
Симпатии
5
Пол
Мужской
, тоесть, вот это if(pev_valid(xxx)!=2)return; нужно добавлять на строку выше везде, где выдает ошибку или как?
я не тот исходник скинул, там другие строки с ошибками((
если смотреть этот исходник, то эти же ошибки размещены так:
L 03/18/2019 - 22:52:42: [ENGINE] Invalid entity 203
L 03/18/2019 - 22:52:42: [AMXX] Displaying debug trace (plugin "td_turrets_engine.amxx", version "1.1 Rebuild")
L 03/18/2019 - 22:52:42: [AMXX] Run time error 10: native error (native "entity_get_edict")
L 03/18/2019 - 22:52:42: [AMXX] [0] td_turrets_engine.sma::GetTurretOwner (line 3919)
L 03/18/2019 - 22:52:42: [AMXX] [1] td_turrets_engine.sma::CheckIsPlayerInRange (line 2159)
L 03/18/2019 - 22:52:42: [ENGINE] Invalid entity 203
L 03/18/2019 - 22:52:42: [AMXX] Displaying debug trace (plugin "td_turrets_engine.amxx", version "1.1 Rebuild")
L 03/18/2019 - 22:52:42: [AMXX] Run time error 10: native error (native "entity_get_edict")
L 03/18/2019 - 22:52:42: [AMXX] [0] td_turrets_engine.sma::GetTurretOwner (line 3170)
L 03/18/2019 - 22:52:42: [AMXX] [1] td_turrets_engine.sma::CheckIsPlayerInRange (line 2159)
[DOUBLEPOST=1552954429][/DOUBLEPOST]там натупил чуть чуть, вот так правильно будет

L 03/18/2019 - 22:52:42: [ENGINE] Invalid entity 203
L 03/18/2019 - 22:52:42: [AMXX] Displaying debug trace (plugin "td_turrets_engine.amxx", version "1.1 Rebuild")
L 03/18/2019 - 22:52:42: [AMXX] Run time error 10: native error (native "entity_get_edict")
L 03/18/2019 - 22:52:42: [AMXX] [0] td_turrets_engine.sma::GetTurretOwner (line 3919)
L 03/18/2019 - 22:52:42: [AMXX] [1] td_turrets_engine.sma::CheckIsPlayerInRange (line 2159)
L 03/19/2019 - 00:11:36: [ENGINE] Invalid entity 206
L 03/19/2019 - 00:11:36: [AMXX] Displaying debug trace (plugin "td_turrets_engine.amxx", version "1.1 Rebuild")
L 03/19/2019 - 00:11:36: [AMXX] Run time error 10: native error (native "entity_set_string")
L 03/19/2019 - 00:11:36: [AMXX] [0] td_turrets_engine.sma::TurretReloadTaskEnd (line 3170)
 

rxki

Пользователь
Регистрация
5 Янв 2019
Сообщения
208
Симпатии
5
Пол
Мужской
, выдает ошибку при компилировании

1552984017145.png
 
K

kapangaIII

Переведи и посмотри в интернете подобные ошибки.
 

g52

Заблокированные
Пользователь
Регистрация
8 Июн 2018
Сообщения
367
Симпатии
57
rxki,
error 010
invalid function or declaration
неизвестная функция или декларация

warning 209
function "%s" should return a value
функция "%s" ничего не возвращает
 

rxki

Пользователь
Регистрация
5 Янв 2019
Сообщения
208
Симпатии
5
Пол
Мужской
, g52, уже решил. там просто не было взято в скобки содержимое паблика)
спасибо. закинул плагин, помониторю логи эти сутки и отпишусь
 
K

kapangaIII

Нет, где нет return #; в функциях, там не нужен #, пишешь просто return, а где есть return #; нужен return #;, # сам определяешь исходя из задачи.
 

rxki

Пользователь
Регистрация
5 Янв 2019
Сообщения
208
Симпатии
5
Пол
Мужской
, ну вот в таком виде оно не компилило, как сделано в исходнике, который ты скинул

public GetTurretOwner(iEnt)
if(pev_valid(iEnt)!=2)return 0;
return entity_get_edict(iEnt, EV_ENT_turret_owner);
а вот в таком виде скомпилилось

public GetTurretOwner(iEnt)
{
if(pev_valid(iEnt)!=2)return 0;
return entity_get_edict(iEnt, EV_ENT_turret_owner);
}
странно...
 
K

kapangaIII

Ну понятно дело что в этом случае нужны скобки.[DOUBLEPOST=1553010061][/DOUBLEPOST]public GetTurretOwner(iEnt)return pev_valid(iEnt)!=2?0:entity_get_edict(iEnt, EV_ENT_turret_owner);
Посмотри, скомпилит так или нет.
 

rxki

Пользователь
Регистрация
5 Янв 2019
Сообщения
208
Симпатии
5
Пол
Мужской
, скомпилило, так лучше будет?
 
K

kapangaIII

Разницы нет. Компилятор все равно сам решает как ему что располагать.
 
Сверху Снизу