2014-11-19
@vlad20012
Issue #17 Упрощена команда почанкового профилирования - достаточно ввести chunkdebug top, и, если почанковое профилирование еще не запущено, оно запустится, и через 20 тиков будут выведены результаты
vlad20012 committed on 19 Nov 2014
@vlad20012
Issue #17 #31 Добавлен почанковый профилировщик (команда chunkdebug): статистика очищается раз в 600 тиков (30 секунд), за это время определяется наибольшая пиковая нагрузка; усредненная нагрузка счититается как и в uptime - за 20 тиков.
vlad20012 committed on 19 Nov 2014
2014-11-18
@vlad20012
Issue #13 Оптимизированы коллекции профилировщика
vlad20012 committed on 18 Nov 2014
@vlad20012
Issue #31 улучшена команда genworld: мир генерируется участками радиусом 6 чанков, чтобы происходила не только генерация ландшафта, но и популяция чанков
vlad20012 committed on 18 Nov 2014
@vlad20012
Вызов события ServerConnectionFromClientEvent перемещен к моменту окончания загрузки данных игроков, как этого ожидают моды (BuildCraft)
vlad20012 committed on 18 Nov 2014
2014-11-17
@vlad20012
Issue #10 не добавляем в список бэкапа миры, вхожящие в состав других миров
vlad20012 committed on 17 Nov 2014
@vlad20012
Issue #10 Имя папки основного мира заменяется на worlds/world для совместимости с модами, неправильно ее использующими (CustomNPCs)
vlad20012 committed on 17 Nov 2014
@vlad20012
Максимальное количество чанков, сохраняемое за тик, увеличино до 64 (на современных SSD это вполне приемлимо; неплохо бы сделать это число адаптивным, как с отсылкой чанков)
vlad20012 committed on 17 Nov 2014
@vlad20012
Issue #31 Исправлена команда генерации мира: при отсутствии барьера не запускается зацикленная бесполезная "генерация"
vlad20012 committed on 17 Nov 2014
@vlad20012
Исправлено падение сервера при создании мира с включенным выводом сообщений о синхронной загрузке чанков
vlad20012 committed on 17 Nov 2014
@vlad20012
Issue #31 Добавлена команда genworld, генерирующая мир в пределах барьера или в радиусе от игрока
vlad20012 committed on 17 Nov 2014
@vlad20012
Возвращен ChunkProviderServer.loadedChunks для совместимости с модами, которые требуют его наличия (ChickenChunks, GalacticCraft)
vlad20012 committed on 17 Nov 2014
2014-11-16
@vlad20012
Исправлена утечка памяти в CodeChuckenLib (ему было необходимо событие сохранения при каждой выгрузке чанка, у нас не каждый выгруженный чанк сохраняется)
vlad20012 committed on 16 Nov 2014
@vlad20012
Возвращена полная обфускация для совместимости с модами, агрессивно патчащими код майна. Без бинарных патчей номера строк кода не затираются, так что цели все равно выполняются
vlad20012 committed on 16 Nov 2014
2014-11-15
@vlad20012
Issue #11 Исправлено NPE при отсутствии барьера
vlad20012 committed on 15 Nov 2014
@vlad20012
Issue #11 Добавлен мировой барьер (круглый или прямоугольный, пока только не дает игроку выйти за пределы); возможность располагать несколько барьеров в одном мире
vlad20012 committed on 15 Nov 2014
2014-11-10
@vlad20012
Исправлено форматирование времени
vlad20012 committed on 10 Nov 2014
@vlad20012
Отремонтированы все блоки ForgeMultipart (поломанные в c39934). Этот мод напрямую обращается к chunkTileEntityMap и вносит изменения прямо в Map.Entry, так что очень сложно перехватить эти изменения. Костыль в виде переноса всех изменений после загрузки чанка вполне работоспособен
vlad20012 committed on 10 Nov 2014
2014-11-09
@vlad20012
Issue #8 При асинхронной загрузке, если чанк не существует, генерируем его сразу, а не на следующем тике
vlad20012 committed on 9 Nov 2014
@vlad20012
Issue #16 Исправлен спавн спрутов
vlad20012 committed on 9 Nov 2014
@vlad20012
Issue #29 Исправлены циклически зависимости чанков - при проверке зависимости учитывается только BindState, вся цепочка зависимостей не трассируется. Это не проблема, т.к. зависимости между чанками нужны только как костыль для ликвидации синхронных загрузок чанков устаревшими чанклоадерами
vlad20012 committed on 9 Nov 2014
@vlad20012
Issue #29 Реализована концепция зависимостей чанков: чанку может быть добавлена зависимоть (к примеру, другой чанк или любой другой объект), и он не будет выгружен до тех пор, пока не будет снята зависимость.
vlad20012 committed on 9 Nov 2014
@vlad20012
Добавлены автосообщения, возможность вывода информации о нагрузке на сервер автосообщением; исправлен баг - нагрузка на первом тике не устанавливается на over9000%. И знаки процента не вынесены в лангфайл, чтобы они становились того же цвета, что и параметры шаблона.
vlad20012 committed on 9 Nov 2014
2014-11-08
@vlad20012
Issue #31 Добавлены команды restart javagc custmsg (сообщения рестарта пока захардкожены); в вывод uptime добавлена пиковая нагрузка за секунду
vlad20012 committed on 8 Nov 2014
@vlad20012
Issue #31 Добавлена частичная русская трансляция
vlad20012 committed on 8 Nov 2014
2014-11-07
@vlad20012
Исправлено падение сервера при спавне монстров днем на открытой местности, находящейся ниже 2 уровня от дна мире
vlad20012 committed on 7 Nov 2014
@vlad20012
Issue #8 Уменьшено количество синхронных загрузок чанков при популяции мира путем увеличения требуемого сгенерированного радиуса до 2х чанков. Полностью избавиться от синхронных загрузок при генерации, видимо, невозможно, так что лучше генерировать мир заранее
vlad20012 committed on 7 Nov 2014
@vlad20012
Issue #31 Исправлено сообщение команды MultiWorld
vlad20012 committed on 7 Nov 2014
@vlad20012
Issue #8 Убраны IO операции при проверке наличия чанка в файле региона (проверка целостности и так выполнится асинхронно)
vlad20012 committed on 7 Nov 2014
@vlad20012
Issue #8 Исправлена синхронная загрузка чанков при отправке пакетов данных TileEntity некоторых кривых модов (в основном GregTech) (может привести к замедлению отсылки чанков, нужно рассмотреть другие варианты)
vlad20012 committed on 7 Nov 2014