Русское сообщество по скриптингу

Ed_alloc: No Free Edicts

Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.

Модераторы: Subb98, liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.

Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.

Ed_alloc: No Free Edicts

Сообщение gaha » 24 окт 2010, 17:22

Возникает такая ошибка за 2-10 минут до конца карты, проблема возникла после установки мода, исходник прикреплю, требуется исправить. Судя по "гуглу" (какой-то плагин не удаляет энтити и они заканчиваются)
Так же пробывал добавить в строку запуска -num_edicts, но тогда за те же 2-10 минут до конца карты выкидывает игроков с ошибкой Host_Error: CL_EntityNum: 1222 is an invalid number, cl.max_edicts is 1215

Пс: за деньги конечно.
Аватара пользователя
gaha
 
Сообщения: 13
Зарегистрирован: 21 авг 2010, 16:38
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Re: Ed_alloc: No Free Edicts

Сообщение gaha » 26 ноя 2010, 18:40

Плагин server_preformance
Аватара пользователя
gaha
 
Сообщения: 13
Зарегистрирован: 21 авг 2010, 16:38
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Re: Ed_alloc: No Free Edicts

Сообщение gaha » 04 дек 2010, 18:22

Может за пару килорублей все же ктонить сможет помочь?
Аватара пользователя
gaha
 
Сообщения: 13
Зарегистрирован: 21 авг 2010, 16:38
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Re: Ed_alloc: No Free Edicts

Сообщение DJ_WEST » 07 дек 2010, 10:11

Там в функции смерти игрока есть:
[pawn]
            
else
            {
                
player_spawnItem(id)
                
player_award(killerREWARD_KILL"for killing")
            }
 
[/pawn]
Попробуй закомментировать player_spawnItem(id).
Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.
Аватара пользователя
DJ_WEST
Администратор
 
Сообщения: 3641
Зарегистрирован: 22 авг 2009, 00:38
Благодарил (а): 48 раз.
Поблагодарили: 2209 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Left 4 Dead
Left 4 Dead 2

Re: Ed_alloc: No Free Edicts

Сообщение gaha » 07 дек 2010, 18:51

Не помогло, может это и нормально в данном моде, при выдаче оружия прибавляются ентити, тобишь пистолет и ружье (возможно и нож), при убийстве должны эти ентити отниматься, но делается только -1 и при исчезновении выкинутого оружия -1


Пс: DJ_WEST подскажи как сюда отладку добавить, может логи что покажут
Код: Выделить всё

        new ent = -1

        while((ent = find_ent_by_class(ent, "weaponbox")) > 0)
        {
            task_remove(ent)
            entity_remove(ent)
        }

        ent = -1

        while((ent = find_ent_by_class(ent, ITEM_CLASSNAME)) > 0)
        {
            task_remove(ent)



Пробовал методом тыка:
закоментил строку give_item(id, g_szWeaponEntity[iWeapon])
появляюсь только с ножом, при харакири ентити не растут, убил -1, появился +1, тобишь сумма ентитей одна и та же. Появился только с ножом, купил калаш (+1 ентитя), пистолет (+1 ентитя), когда киляю себя с оружием в руках, отнимается (-1 ентитя), возрождаюсь с ножом (+1 ентитя) затем исчезает калаш с земли (-1 ентитя) Получается где то 1 ентитя зависла, либо пистолет, либо нож, либо сама "модель" игрока Так как калаш исчезает с земли и при этом отнимается ( 1 ентитя) то можно считать что примари оружие удаляется корректно , при киле себя тоже отнимается ентитя, это либо нож, пистолет, либо "модель" игрока.



через 5 минут :-)
Эксперимент 2

закомментировал дополнительно строки:
// if(get_pcvar_num(pCvar_ctf_spawn_knife))
// give_item(id, g_szWeaponEntity[W_KNIFE])

Появляюсь без ножа и оружия, когда киляю себя и появляюсь, ентити никак не изменяются.
Покупаю калаш и пистолет (+2 ентити) киляю себя (ентити не меняются) после возрождения ентити не меняются (видимо из-за того что я пустой) потом исчезает калаш (-1 ентитя)
Вывод: ножа нет, калаш исчезает, при харакири кол-во ентить не меняется, куда то теряется пистолет, тобишь секондари оружие.


через 15 минут
ППС: еще по эксперименту 2, если купить одно оружие и кильнуть себя, то оно выкидывается и получается (+1ентитя) Если пистолет и калаш, то при самоубийстве ентити не прибавляются, но калаш на земле (даже если было в руках не АК, а пистолет) и потом исчезает, отнимая 1 ентитю.
Аватара пользователя
gaha
 
Сообщения: 13
Зарегистрирован: 21 авг 2010, 16:38
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Re: Ed_alloc: No Free Edicts

Сообщение Arseny » 07 дек 2010, 23:47

ТС, попробуй в строке запуска -num_edicts 4095
Аватара пользователя
Arseny
 
Сообщения: 34
Зарегистрирован: 18 сен 2010, 13:13
Откуда: Украина
Благодарил (а): 22 раз.
Поблагодарили: 3 раз.
Опыт программирования: Около 3 месяцев
Языки программирования: Counter-Strike 1.6

Re: Ed_alloc: No Free Edicts

Сообщение gaha » 08 дек 2010, 08:29

Так же пробовал добавить в строку запуска -num_edicts, но тогда за те же 2-10 минут до конца карты выкидывает игроков с ошибкой Host_Error: CL_EntityNum: 1222 is an invalid number, cl.max_edicts is 1215
Аватара пользователя
gaha
 
Сообщения: 13
Зарегистрирован: 21 авг 2010, 16:38
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Re: Ed_alloc: No Free Edicts

Сообщение DJ_WEST » 08 дек 2010, 15:34

Да может этот плагин непавильно информацию об объектах выводит. Ты пробовал эти эксперименты на сервере стандартном без модов?
Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.
Аватара пользователя
DJ_WEST
Администратор
 
Сообщения: 3641
Зарегистрирован: 22 авг 2009, 00:38
Благодарил (а): 48 раз.
Поблагодарили: 2209 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Left 4 Dead
Left 4 Dead 2

Re: Ed_alloc: No Free Edicts

Сообщение gaha » 08 дек 2010, 19:01

Пробывал, там по ентитям все четко, правильно-неправильно выводит, но в итоге на сервере почти 1400 ентитей в итоге сервер падает, а если прописать в строку запуска -num_edicts 4095 то кидает игроков, видимо у них тоже порог ентитей стоит.

Да тут по логике - появился с 3мя ентитями и если меня убили должно 3 ентити отняться, а отнимается всего 2.
Аватара пользователя
gaha
 
Сообщения: 13
Зарегистрирован: 21 авг 2010, 16:38
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Re: Ed_alloc: No Free Edicts

Сообщение DJ_WEST » 10 дек 2010, 09:27

Там есть объекты класса: ctf_item, ctf_flagbase, ctf_flag. Так вот нужно бы написать проверку в каждом раунде, сколько их число каждого вида. Можно по сути вообще перед концом раунда делать цикл по всем объектам и удалять оружия и вот такие объекты.
Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.
Аватара пользователя
DJ_WEST
Администратор
 
Сообщения: 3641
Зарегистрирован: 22 авг 2009, 00:38
Благодарил (а): 48 раз.
Поблагодарили: 2209 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Left 4 Dead
Left 4 Dead 2

Re: Ed_alloc: No Free Edicts

Сообщение gaha » 06 янв 2011, 20:31

Наконец-то меня выручил один программист, 30 минут работы, 2тыщи и всё ровно :-)
Аватара пользователя
gaha
 
Сообщения: 13
Зарегистрирован: 21 авг 2010, 16:38
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.

Пред.

Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и гости: 11