в 0 0 0 многое срёт, в плане плагинов нужна корректная очистка контейнеров(итемы удаляй
Корректное" удаление Item это означает что после очистки контейнера нужно выполнить
C#:
ItemManager.DoRemoves();
DoRemoves - удаляет остатки Item, в том числе HeldEntity Item`а в default позиции.
Если не выполнять DoRemoves то Item удалится не полностью и HeldEntity останется в default позиции тем самым увеличивая количество Entity на сервере и нагружая сервер.
---
Данной проблемой пестрят всякие кривые редакторы лута/контейнеров/NPC.
DoRemoves это статический метод в классе ItemManager. Но не в коем случае не в классе Item.
Necrons написал(а):
Скорее всего это и есть причина - можно подробнее узнать как принудительно очистить ? потому что ентити растет с геометрической прогрессией =)
Находишь в коде методы вида
C#:
Remove()
или/и
C#:
inventory.itemList.Clear()
или/и
C#:
inventory.Clear()
И после них добавляешь
C#:
ItemManager.DoRemoves();
Главное, не надо добавлять DoRemoves в циклах, только хуже будет.
Проанализируй код и добавь его в нужных местах
Да это в точке 0,0,0 - я уже сам понял что срут туда и срут под текстуру острова поэтому походу это все насраное валяется под водой под текстурой на высоте минус 500 - как пофиксить ? это не только плагины это и сервак срет туда...
в 0 0 0 многое срёт, в плане плагинов нужна корректная очистка контейнеров(итемы удаляй)
в 0 0 0 многое срёт, в плане плагинов нужна корректная очистка контейнеров(итемы удаляй)
в смысле итемы удаляй ?
"Корректное" удаление Item это означает что после очистки контейнера нужно выполнить
C#:
ItemManager.DoRemoves();
DoRemoves - удаляет остатки Item, в том числе HeldEntity Item`а в default позиции.
Если не выполнять DoRemoves то Item удалится не полностью и HeldEntity останется в default позиции тем самым увеличивая количество Entity на сервере и нагружая сервер.
---
Данной проблемой пестрят всякие кривые редакторы лута/контейнеров/NPC.
спустя какоето время после вайпа проблема возвращается, у кого какие мысли есть на этот счет ?
"Корректное" удаление Item это означает что после очистки контейнера нужно выполнить
C#:
ItemManager.DoRemoves();
DoRemoves - удаляет остатки Item, в том числе HeldEntity Item`а в default позиции.
Если не выполнять DoRemoves то Item удалится не полностью и HeldEntity останется в default позиции тем самым увеличивая количество Entity на сервере и нагружая сервер.
---
Данной проблемой пестрят всякие кривые редакторы лута/контейнеров/NPC.
Скорее всего это и есть причина - можно подробнее узнать как принудительно очистить ? потому что ентити растет с геометрической прогрессией =)
как принудительно очистить ? потому что ентити растет с геометрической прогрессией =)
Ищи плагин, где работа идет с предметами.
Ищешь примерно такую строчку item.Remove() и меняешь на item.DoRemove()
Ищи плагин, где работа идет с предметами.
Ищешь примерно такую строчку item.Remove() и меняешь на item.DoRemove()
DoRemoves это статический метод в классе ItemManager. Но не в коем случае не в классе Item.
Скорее всего это и есть причина - можно подробнее узнать как принудительно очистить ? потому что ентити растет с геометрической прогрессией =)
Находишь в коде методы вида
C#:
Remove()
или/и
C#:
inventory.itemList.Clear()
или/и
C#:
inventory.Clear()
И после них добавляешь
C#:
ItemManager.DoRemoves();
Главное, не надо добавлять DoRemoves в циклах, только хуже будет.
Проанализируй код и добавь его в нужных местах
Like Реакции:Urust, Night_Tiger и Басотник
Я не спорю что есть метод
C#:
Item.Remove()
Но он динамический ( т.е. применим только к определенной Item ).
C#:
ItemManager.DoRemoves();
Же статический метод и по факту можно считать его "Сборщиком мусора" для Item.
Т.е. он удаляет HeldEntity для Item у которых оно есть ( это те Item которые мы держим в руках ( не путать с теми которые мы устанавливаем ) ) которая как раз и находится в Vector3(0, 0, 0) и которая не удаляется простым
C#:
Item.Remove()