
Сообщение от
CrusherTan
Да вы поглядите на мега-умника. Во-первых, причем тут C#? Во-вторых, с эмулятором типа мангос-тринити вообще когда-нибудь приходилось работать? try catch там бесполезен, ну не крашнется сервер, зато потом вместо полей перса и прочего в базу запишется мусор, потому что вместо аварийного завершения работы сервер продолжил работать и хрен знает теперь, как и что там могло произойти.
Неоптимизированный код, естественно, проект мангос, чьим форком является тринити - основа нашего ядра и миллиона других фришардов, включая панд, создавался для ОБУЧЕНИЯ, а не для фришардов, там люди писали, лишь бы работало хоть как, им это было интересно, увидеть лут в мобе, увидеть как кастуется спелл, такие банальные сейчас мелочи. Все ваши бинарные резисты, шаттеркомбы и прочие ПвП замуты, суть правильной работы которых вы судорожно выискиваете во всем источникам - никто о них даже и не думал. Там никакой сетевой код, там никакая работа с БД, там очень много чего работает не так как надо. Но выбора нет. Написать новое ядро за короткий срок нереально, еще сколько времени уйдет на отладку всех проблем.
Насчет апдейтов, я стараюсь просматривать все, что могу быстро чинить, чиню сразу, что не могу, расставляю приоритеты для себя.
- Оптимизирована ф-ция поиска игрока по имени.
Это возвращена функция с тринити, т.к текущая функция, написанная мной для предотвращения частых крашей (а может и не она) стала внезапно давать увеличение серверной задержки.
А насчет висперов - это антиспам система, связанная с чатом в целом. Будут доработки.
Насчет крашей - сервер будет падать всегда, см.выше почему, тут добавляются еще и потоки, т.к ядро не было изначально рассчитано под многопоточность и тем более близзлайк кластерность (это когда каждая карта - независимая часть ворлд потока, краш в ЦЛК, отваливается ЦЛК зона, а мир продолжает стоять, условно), то это было впилено насильно. И поэтому откатываются все предложения о тест реалме, потому что толку НЕТ. Там нет потоков, потому что надо минимум 1500 человек. Где взять 1500 человек, шарящих в механике игры и как ими управлять?
Насчет размашистых ударов - я начинал их делать, ядро не давало возможности реализовать такой механизм на 100% правильно, я так и не придумал или античитом был занят, потом ушел в продолжительный отпуск, что-то делал Ramusik, я вернулся, все-таки реализовал механизм с наименьшими потерями, и сейчас вроде неплохо работает
Надеюсь разьяснил все и ответил за все, к чему прикасался