Цитата(Sergius Grey @ 11.3.2015, 0:49)
На сервере сейчас Expansion.SE
Хочется эльфийских стен при строительстве дома, клиент поддерживает и ранка тоже, если изменить на Expansion.ML.
Но это не выход, так как я ввожу лишь нужные фишки ML, а остальные не хочется.
Поиск по всем скриптам на проверку мл (core.ml) не дало результатов, кроме фундамента из МЛ, его ввел. Просмотрел все скрипты на проверку МЛ, не нашел ни одного контекста в котором речь шла бы о стенах и тому подобное.
Есть большие подозрения, что замешан здесь скрипт ComponentVerification, и его строка:
Код
public bool CheckValidity( byte val )
{
return ( val == 0 || (ExpansionInfo.CurrentExpansion.CustomHousingFlag & val) != 0 );
}
Собственно оно считывает с ExpansionInfo о текущей версии, которая у меня SE, а не ML.
Если в этом замешан этот скрипт, то как мне его заставить считывать инфу с ML версии, при этом оставив в CurrentExpansion.cs Expansion = Expansion.SE ?
Или это не этот скрипт за это отвечает? Если нет то ткните носом пожалуйста.
Никак, стандартными средствами это не возможно - при логине клиент и сервер согласуют список поддерживаемых фич, собственно свойство Expansion как раз и нужно для определения отсылаемого набора фич клиенту и для вариации изменений в логике и протоколе. Собственно за все отвечает набор флагов в пакете 0xB9 (Supported Features), НО эти сами флаги сделаны для удобства EA а не вашего, так что одним флагом там врубается вся пачка изменений SA, ES, HS, ML и тд и тп начиная с тайлов домов заканчивая новыми пакетами изменениями интерфейса, расами и прочим.
PS Вообще странная проблема - почему бы не включить тупо ML\SA\HS и просто не убрать то что не нужно? Да там и убирать толком нечего, изменения тех части в целом всегда идут на пользу, а из того что может помешать лишь новые навыки\классы\расы, которые в крайнем случае можно убрать.. Можно даже кнопки переключения рас при генерации персонажа спрятать поменяв их гампы.