Патч 37а8.7
Добавлено: 02 май 2013, 00:05
Я тут вижу, что люди не понимают, что произошло с последним мегапатчем. И почему оно так произошло. Разъясняю
Сейчас я полностью переделываю систему хранения юнитов. Это нужно для введения новых фишек в игру. Поскольку система хранения юнитов - это одна из основополагающих подсистем в игре, по ходу приходится переделывать и всё, что с этим связано. Т.е. фактически - ВСЁ, кроме обвязки: экономику, очереди, флоты итд итп. Обвязка - это система "друзей", "заметки", "чат" и прочее, что не связано с юнитами. Работа огромнейшая, длительная, слабоподъемная - поэтому выполняется в несколько этапов.
В частности - я переписал систему расчёта пополнения ресурсов - патч 37a7. В ходе переписывание было выявлены некоторые баги, математические просчёты, а так же изменён алгоритм применения бонусов к добыче. В частности:
1. Изменен алгоритм применения бонусов - теперь нет разницы между ресурсами - бонусы на добычу (напр. хм... Технолог) увеличивают добычу всех ресурсов равномерно.
2. Математический просчёт - при увеличении добычи шахт бонусами (напр. Технолог) их потребления ресурсов не увеличивалось. Это принципиально неверно. Исправлено - теперь Технолог так же увеличивает потребление шахт. Отсюда берёт свои корни нынешний энергетический кризис. При чем - чем больше скорость сервера, тем хуже кризис
3. Баг: термоядерная электростанция продолжала работать даже при отсутствии дейтерия на планете! Исправлено: при недостаточном количестве дейтерия на планете ТЭ не дает энергии. Как следствие, её "выхлоп" равен нулю. Неочевидное следствие - теперь запустить добычу на планете, на котором электричество добывается только на ТЭ и отсутствует дейтерий, просто так невозможно. Самый простой вариант - привести дейтерия, достаточного для покрытия энергобаланса ТЭ. Более сложный вариант - потихоньку "раскочегаривать" ТЭ в ручном режиме: установить добычу всего на 0%, затем добычу ТЭ и дейтериевой шахты по 10%. Далее возможны варианты:
а) Запуск "с толчка" - привести чутку дейтерия для покрытия энергобаланса ТЭ
б) Дать "прикурить" - построить спутников или СЭС в минимальном объеме для старта добычи дейтерия
в) Поставить "на зарядку" - ждать, пока естественным образом не накопится дейтерий за счет базовой добычи
4. По ходу выплыл старый фичебаг - неправильный расчет производства ресурсов ПРИ ОТОБРАЖЕНИИ. Т.е. отображение "запаздывает" на одно обновление. ПОДЧЕРКИВАЮ - эта фичебага затрагивает ИСКЛЮЧИТЕЛЬНО отображение производства. Сам расчёт происходит нормально. Корни этой фичебаги тянутся еще с давних пор. Нельзя даже сказать, что это - бага, поскольку это было сделано намеренно, что бы не нагружать комп дополнительными расчётами. С тех пор движок прошел большой путь и стал заметно быстрее работать - поэтому переделка такого поведения в ближайших планах
5. Сюда же наложилось своеобразная работа Глюкобага с обновлением страниц - иногда могут наблюдаться "скачки" в отображении. С этими проблемами - к разработчикам Глюкобага. Я их решить не могу
Следующий патч 37а8.7 добавил написанную с нуля очередь исследований. В будущем этот код будет постепенно дописан и распространен на все очереди. Почему так?
1. Новая система хранения юнитов требует совершенно другого кода для очереди
2. Планируется введение дополнительных очередей: разделение очереди Верфи на очередь Верфи и очередь Обороны. Возможно - и на очередь Ракет. Не вижу никакого смысла писать разный код для, по сути, одного и того же
3. Будет реализована очередь исследований - посредством дополнительного модуля. Возможно будут добавлены настройки очередей в админку - я пока над этим думаю
Почему я вылил все эти изменения сразу на живой сервер? Да потому, что тестовый сервер - мертвый. За редчайшим исключением никто не ходит на него тестировать новые обновления. Например - недавно я просил протестировать патч 37а8.7 и отписаться. Сделал это ОДИН человек!
Отдельные личности писали, что они, бедняги, страдают и уходят в РО, "пока всё не нормализируется". Это крайне странный и глупый шаг в свете вышесказанного - уходя в РО и не помогая тестировать обновления они лишь сами отодвигают момент, когда "все нормализируется". Самое смешное, что в данном конкретном варианте они наказали себя сами - тщательная проверка кода показало отсутствие ошибок в расчете начисления ресурсов! Т.е. такая матмодель и будет впредь.
Это всё, что я хотел сказать. Обсудить новость можно в теме viewtopic.php?f=4&t=2475
Сейчас я полностью переделываю систему хранения юнитов. Это нужно для введения новых фишек в игру. Поскольку система хранения юнитов - это одна из основополагающих подсистем в игре, по ходу приходится переделывать и всё, что с этим связано. Т.е. фактически - ВСЁ, кроме обвязки: экономику, очереди, флоты итд итп. Обвязка - это система "друзей", "заметки", "чат" и прочее, что не связано с юнитами. Работа огромнейшая, длительная, слабоподъемная - поэтому выполняется в несколько этапов.
В частности - я переписал систему расчёта пополнения ресурсов - патч 37a7. В ходе переписывание было выявлены некоторые баги, математические просчёты, а так же изменён алгоритм применения бонусов к добыче. В частности:
1. Изменен алгоритм применения бонусов - теперь нет разницы между ресурсами - бонусы на добычу (напр. хм... Технолог) увеличивают добычу всех ресурсов равномерно.
2. Математический просчёт - при увеличении добычи шахт бонусами (напр. Технолог) их потребления ресурсов не увеличивалось. Это принципиально неверно. Исправлено - теперь Технолог так же увеличивает потребление шахт. Отсюда берёт свои корни нынешний энергетический кризис. При чем - чем больше скорость сервера, тем хуже кризис
3. Баг: термоядерная электростанция продолжала работать даже при отсутствии дейтерия на планете! Исправлено: при недостаточном количестве дейтерия на планете ТЭ не дает энергии. Как следствие, её "выхлоп" равен нулю. Неочевидное следствие - теперь запустить добычу на планете, на котором электричество добывается только на ТЭ и отсутствует дейтерий, просто так невозможно. Самый простой вариант - привести дейтерия, достаточного для покрытия энергобаланса ТЭ. Более сложный вариант - потихоньку "раскочегаривать" ТЭ в ручном режиме: установить добычу всего на 0%, затем добычу ТЭ и дейтериевой шахты по 10%. Далее возможны варианты:
а) Запуск "с толчка" - привести чутку дейтерия для покрытия энергобаланса ТЭ
б) Дать "прикурить" - построить спутников или СЭС в минимальном объеме для старта добычи дейтерия
в) Поставить "на зарядку" - ждать, пока естественным образом не накопится дейтерий за счет базовой добычи
4. По ходу выплыл старый фичебаг - неправильный расчет производства ресурсов ПРИ ОТОБРАЖЕНИИ. Т.е. отображение "запаздывает" на одно обновление. ПОДЧЕРКИВАЮ - эта фичебага затрагивает ИСКЛЮЧИТЕЛЬНО отображение производства. Сам расчёт происходит нормально. Корни этой фичебаги тянутся еще с давних пор. Нельзя даже сказать, что это - бага, поскольку это было сделано намеренно, что бы не нагружать комп дополнительными расчётами. С тех пор движок прошел большой путь и стал заметно быстрее работать - поэтому переделка такого поведения в ближайших планах
5. Сюда же наложилось своеобразная работа Глюкобага с обновлением страниц - иногда могут наблюдаться "скачки" в отображении. С этими проблемами - к разработчикам Глюкобага. Я их решить не могу
Следующий патч 37а8.7 добавил написанную с нуля очередь исследований. В будущем этот код будет постепенно дописан и распространен на все очереди. Почему так?
1. Новая система хранения юнитов требует совершенно другого кода для очереди
2. Планируется введение дополнительных очередей: разделение очереди Верфи на очередь Верфи и очередь Обороны. Возможно - и на очередь Ракет. Не вижу никакого смысла писать разный код для, по сути, одного и того же
3. Будет реализована очередь исследований - посредством дополнительного модуля. Возможно будут добавлены настройки очередей в админку - я пока над этим думаю
Почему я вылил все эти изменения сразу на живой сервер? Да потому, что тестовый сервер - мертвый. За редчайшим исключением никто не ходит на него тестировать новые обновления. Например - недавно я просил протестировать патч 37а8.7 и отписаться. Сделал это ОДИН человек!
Отдельные личности писали, что они, бедняги, страдают и уходят в РО, "пока всё не нормализируется". Это крайне странный и глупый шаг в свете вышесказанного - уходя в РО и не помогая тестировать обновления они лишь сами отодвигают момент, когда "все нормализируется". Самое смешное, что в данном конкретном варианте они наказали себя сами - тщательная проверка кода показало отсутствие ошибок в расчете начисления ресурсов! Т.е. такая матмодель и будет впредь.
Это всё, что я хотел сказать. Обсудить новость можно в теме viewtopic.php?f=4&t=2475