[CSDM] Sentry guns: native error (native "entity_get_edict")

Сообщения
44
Реакции
15
Ошибка
L 10/08/2019 - 20:28:48: Start of error session.
L 10/08/2019 - 20:28:48: Info (map "cs_italy") (file "addons/amxmodx/logs/error_20191008.log")
L 10/08/2019 - 20:28:48: [ENGINE] Invalid entity 95
L 10/08/2019 - 20:28:48: [AMXX] Run time error 10 (plugin "npc_sentryguns.amxx") (native "entity_get_edict") - debug not enabled!
L 10/08/2019 - 20:28:48: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 10/08/2019 - 20:29:55: [ENGINE] Invalid entity 108
L 10/08/2019 - 20:29:55: [AMXX] Run time error 10 (plugin "npc_sentryguns.amxx") (native "entity_get_edict") - debug not enabled!
L 10/08/2019 - 20:29:55: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 10/08/2019 - 20:30:55: String formatted incorrectly - parameter 4 (total 3)
L 10/08/2019 - 20:30:55: [AMXX] Run time error 25 (plugin "mapsmenu.amxx") - debug not enabled!
L 10/08/2019 - 20:30:55: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 10/08/2019 - 20:40:37: Start of error session.
L 10/08/2019 - 20:40:37: Info (map "de_dust2") (file "addons/amxmodx/logs/error_20191008.log")
L 10/08/2019 - 20:40:37: [ENGINE] Invalid entity 74
L 10/08/2019 - 20:40:37: [AMXX] Displaying debug trace (plugin "npc_sentryguns.amxx", version "2.0")
L 10/08/2019 - 20:40:37: [AMXX] Run time error 10: native error (native "entity_get_edict")
L 10/08/2019 - 20:40:37: [AMXX] [0] npc_sentryguns.sma::server_frame (line 815)
ОС
Windows
Amx Mod X
AMX Mod X 1.9.0.5249 (http://www.amxmodx.org)
Authors:
David "BAILOPAN" Anderson, Pavol "PM OnoTo" Marko
Felix "SniperBeamer" Geyer, Jonny "Got His Gun" Bergstrom
Lukasz "SidLuke" Wlasinski, Christian "Basic-Master" Hammacher
Borja "faluco" Ferrer, Scott "DS" Ehlert
Compiled: Jun 19 2019 13:31:53
Built from: https://github.com/alliedmodders/amxmodx/commit/6cecb34
Build ID: 5249:6cecb34
Core mode: JIT+ASM32
Билд
Protocol version 48
Exe version 1.1.2.7/Stdio (cstrike)
ReHLDS version: 3.6.0.672-dev
Build date: 17:31:06 Jun 5 2019 (1880)
Build from: https://github.com/dreamstalker/rehlds/commit/0c8d3d7
ReGamedll
ReGameDLL version: 5.9.0.362-dev
Build date: 20:19:32 Jun 21 2019
Build from: https://github.com/s1lentq/ReGameDLL_CS/commit/b669a39
Версия Metamod
Metamod-r v1.3.0.128, API (5:13)
Metamod-r build: 17:47:54 Aug 24 2018
Metamod-r from: https://github.com/theAsmodai/metamod-r/commit/0cf2f70
Список метамодулей
[ 1] Reunion       RUN   -    reunion_mm_i386.so         v0.1.0.133      ini  Start Never
[ 2] ReAuthCheck RUN - reauthcheck_mm_i386.so v0.1.6 ini Start Never
[ 3] Rechecker RUN - rechecker_mm_i386.so v2.5 ini Chlvl ANY
[ 4] AMX Mod X RUN - amxmodx_mm_i386.so v1.9.0.5249 ini Start ANY
[ 5] Revoice RUN - revoice_mm_i386.so v0.1.0.32 ini Start Never
[ 6] ReSemiclip RUN - resemiclip_mm_i386.so v2.3.9 ini Chlvl ANY
[ 7] hackdetector RUN - hackdetector_amxx_i386.so v0.15.328.lite pl4 ANY ANY
[ 8] CStrike RUN - cstrike_amxx_i386.so v1.9.0.5249 pl4 ANY ANY
[ 9] FakeMeta RUN - fakemeta_amxx_i386.so v1.9.0.5249 pl4 ANY ANY
[10] Ham Sandwich RUN - hamsandwich_amxx_i386.so v1.9.0.5249 pl4 ANY ANY
[11] Engine RUN - engine_amxx_i386.so v1.8.1.3746 pl4 ANY ANY
[12] Fun RUN - fun_amxx_i386.so v1.9.0.5249 pl4 ANY ANY
[13] ReCSDM RUN - csdm_amxx_i386.so v3.6 pl4 ANY ANY
Список плагинов
[  1] Admin Base              1.9.0.5249  AMXX Dev Team     admin.amxx       running
[ 2] [CSDM] Amxmodmenu 1.0 NoNameNPC npc_amxmodmenu. running
[ 3] [GSDM] Mute System 1.0 NoNameNPC npc_mutesystem. running
[ 4] [CSDM] NextMap 1.0 AMXX Dev Team nextmap.amxx running
[ 5] [CSDM] Maps Menu 1.0 AMXX Dev Team mapsmenu.amxx running
[ 6] [CSDM] Players system 1.0 AMXX Dev Team plmenu.amxx running
[ 7] [CSDM] Admin Votes 1.0 AMXX Dev Team adminvote.amxx running
[ 8] [CSDM] Nextmap Chooser 1.0 AMXX Dev Team mapchooser.amxx running
[ 9] unknown unknown unknown npc_hero.amxx running
[ 10] [CSDM] Sentry guns 2.0 NoNameNPC npc_sentryguns. debug
[ 11] unknown unknown unknown npc_lasermine.a debug
[ 12] unknown unknown unknown npc_mines.amxx debug
[ 13] unknown unknown unknown npc_laserfence. debug
[ 14] unknown unknown unknown npc_dispenser.a debug
[ 15] [CS] Player Models API 1.2 WiLS cs_player_model running
[ 16] Map Manager RU 1.2.2 Mistrick mapmanager_ru.a running
[ 17] Menu Modifical 1.0 NoNameNPC meni_modifical. running
[ 18] unknown unknown unknown npc_timevote.am running
[ 19] unknown unknown unknown npc_money.amxx running
[ 20] unknown unknown unknown npc_donate.amxx running
[ 21] unknown unknown unknown npc_main_menu.a debug
[ 22] [CSDM] Vip-System 1.0 NoNameNPC npc_sustem.amxx running
[ 23] unknown unknown unknown effects.amxx running
[ 24] GunGame AMMO 2.2 Prayer gg_ammo.amxx running
[ 25] unknown unknown unknown npc_afk.amxx running
[ 26] unknown unknown unknown npc_flags.amxx running
[ 27] Parachute 1.0 NoNameNPC npc_parachute.a running
[ 28] unknown unknown unknown npc_autoteam.am running
[ 29] unknown unknown unknown npc_hpap.amxx running
[ 30] [GunGame] Chat System 1.0 NoNameNPC chat.amxx running
[ 31] ReCSDM Main 3.6 ReCSDM Team csdm_main.amxx running
[ 32] unknown unknown unknown npc_equip.amxx running
[ 33] ReCSDM Spawns 3.6 ReCSDM Team csdm_spawn_pres running
[ 34] ReCSDM Misc 3.6 ReCSDM Team csdm_misc.amxx running
[ 35] ReCSDM Stripper 3.6 KWo csdm_stripper.a running
[ 36] ReCSDM Protection 3.6 BAILOPAN csdm_protection running
Автор плагина
JGHG & GlobalModders.net Scripting Team
Версия плагина
0.5.3
Исходный код
for (new i = 0; i < tempSentriesNum; i++)
{
//if (entity_get_float(tempSentries[i], EV_FL_nextthink) < g_game
sentry_pendulum(tempSentries[i], g_deltaTime)
if (entity_get_edict(tempSentries[i], SENTRY_ENT_SPYCAM) != 0)
{
entity_get_vector(tempSentries[i], EV_VEC_angles, angles)
entity_set_vector(entity_get_edict(tempSentries[i], SENTRY_ENT_SPYCAM), EV_VEC_angles, angles)
}
}
Всем привет, поставил пушки на ксдм и заметил баг, если стрелять прямо по шапке пушки то сервер крашит, пытался ставить проверку на валидность но не помогло(возможно я плохо сделал проверку)
 
Сообщения
658
Реакции
462
Помог
10 раз(а)

[0] npc_sentryguns.sma::server_frame (line 815)

прикольно

как-то так
PHP:
for (new i = 0, pSpyCam; i < tempSentriesNum; i++)
{
    if (tempSentries[i] <= 0)
        continue;
    
    if (!pev_valid(tempSentries[i]))
        continue;

    //if (entity_get_float(tempSentries[i], EV_FL_nextthink) < g_game
    sentry_pendulum(tempSentries[i], g_deltaTime);

    pSpyCam = entity_get_edict(tempSentries[i], SENTRY_ENT_SPYCAM);

    if (pSpyCam > 0)
    {
        if (pev_valid(pSpyCam))
        {
            entity_get_vector(tempSentries[i], EV_VEC_angles, angles)
            entity_set_vector(entity_get_edict(tempSentries[i], SENTRY_ENT_SPYCAM), EV_VEC_angles, angles)
        }
    }
}
 
Сообщения
72
Реакции
10
Попробуйте
Код:
for (new i = 0; i < tempSentriesNum; i++)
{
    if(!is_valid_ent(tempSentriesNum[i]))
    {
        continue;
    }
    //if (entity_get_float(tempSentries[i], EV_FL_nextthink) < g_game
    sentry_pendulum(tempSentries[i], g_deltaTime)
    entity_get_vector(tempSentries[i], EV_VEC_angles, angles)
    entity_set_vector(entity_get_edict(tempSentries[i], SENTRY_ENT_SPYCAM), EV_VEC_angles, angles)
}
 
Сообщения
658
Реакции
462
Помог
10 раз(а)
NoNameNPC, не помог от падения или от лог еррора?
логично
 
Сообщения
44
Реакции
15
BalbuR, лога нету и падение сервера тоже не пропало
8 Окт 2019
Попробуйте
Код:
for (new i = 0; i < tempSentriesNum; i++)
{
    if(!is_valid_ent(tempSentriesNum[i]))
    {
        continue;
    }
    //if (entity_get_float(tempSentries[i], EV_FL_nextthink) < g_game
    sentry_pendulum(tempSentries[i], g_deltaTime)
    entity_get_vector(tempSentries[i], EV_VEC_angles, angles)
    entity_set_vector(entity_get_edict(tempSentries[i], SENTRY_ENT_SPYCAM), EV_VEC_angles, angles)
}
Не помогло, решить проблему с крашем сервера, при компиляции были ошибки, исправил строчку:
"if(!is_valid_ent(tempSentriesNum))" <--- С ошибкой при компиляции
"if(!is_valid_ent(tempSentries))" <--- Без ошибки при компиляции
 

ifx

Сообщения
330
Реакции
149
Помог
4 раз(а)
NoNameNPC, полная версия исходного когда будет или по огрызку кода гадать надо? :)
 
Сообщения
658
Реакции
462
Помог
10 раз(а)
проблема точно не в этой части кода
при краше не отобразит амхх лог еррор
 
Сообщения
72
Реакции
10
NoNameNPC, не if(!is_valid_ent(tempSentriesNum)) , а if(!is_valid_ent(tempSentriesNum[i]))
 
Сообщения
658
Реакции
462
Помог
10 раз(а)
Nunfy
tempSentriesNum
это не массив, тем более не энтити, а счетчик
 
Сообщения
658
Реакции
462
Помог
10 раз(а)
Я думаю проблемный код здесь

func_breakable при health <= 0.0 переходит в неосязаемое состояние
тут есть блок на получение урона при health <= 0.0, но нет удаления. Проверка по-моему так же кривая
не увидел где в коде удаляется шапка сентригана

PHP:
RegisterHam(Ham_TakeDamage, "func_breakable", "Laser_TakeDamage")


public Laser_TakeDamage(victim, inflictor, attacker, Float:damage, bit_Damage)
{
    if(!pev_valid(victim)) return HAM_IGNORED
    
    static ClassName[32]
    pev(victim, pev_classname, ClassName, charsmax(ClassName))
    if (equal(ClassName, "sentrybase")) 
    {
        if(!is_user_connected(attacker)||(get_user_team(attacker)==entity_get_int(victim, BASE_INT_TEAM)&&attacker!=GetSentryPeople(entity_get_edict(victim, BASE_ENT_SENTRY), OWNER))) 
            return HAM_SUPERCEDE
        
        new Float:g_Health
        pev(victim, pev_health, g_Health)
        if(g_Health<=0.0) return HAM_SUPERCEDE
        if (g_Health <= damage &&!get_user_hero(attacker)&&GetSentryPeople(entity_get_edict(victim, BASE_ENT_SENTRY), OWNER)!=attacker)
        {
            set_task(3.0, "task_reward", attacker+967465)
        }
    }
    else if (equal(ClassName, "sentry")) 
    {
        if(!is_user_connected(attacker)||(get_user_team(attacker)==entity_get_int(victim, SENTRY_INT_TEAM)&&attacker!=GetSentryPeople(victim, OWNER))) 
            return HAM_SUPERCEDE
            
        new Float:g_Health
        pev(victim, pev_health, g_Health)
        if(g_Health<=0.0) return HAM_SUPERCEDE // тут по идее нужно удалять объект
        if (g_Health <= damage &&!get_user_hero(attacker)&&attacker!=GetSentryPeople(victim, OWNER))
        {
            set_task(3.0, "task_reward", attacker+967465)
        }
    }
    return HAM_IGNORED
}
}
8 Окт 2019
код конечно ужасный
 
  • Нравится
Реакции: ifx
Сообщения
44
Реакции
15
BalbuR, если до завтра не найду решение буду делать другие пушки, меня тоже не устраивают пушки, если ломать базу то всё нормально, если ломать корпус именно бок то всё тоже нормально ломает, а если прям по крыше именно самую верхнюю часть то краш сервера происходит.
 

ifx

Сообщения
330
Реакции
149
Помог
4 раз(а)
NoNameNPC, от миррора поищи пушки, они точно рабочие. А по поводу башни и основы, там если порыть код, видно что это 2 ентитти и соотв 2 модели. Кроме cssb вроде никто так и не сделал единую ентити/модель пушек. Отсюда и миллион лишних строчек и проверок

Радиус может сделал, но у него код закрыт плагинов, я его не ставил
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу