А я вот давно ещё поменял проценты выпадения втор. навыков в txt, результат считаю более чем успешный. Причем можно не только магов заставить учить только магические навыки, но и по фракциям сделал изменения, например в инферно больше шансов выучить магию огня, а в некрополисе земли...
Quote:А я вот давно ещё поменял проценты выпадения втор. навыков в txt, результат считаю более чем успешный. Причем можно не только магов заставить учить только магические навыки, но и по фракциям сделал изменения, например в инферно больше шансов выучить магию огня, а в некрополисе земли...
It's not about forcing someone to learn certain skills, a new skill system is for extended gameplay, more choices, more diversity and just something new to play

totkotoriy, Привет,подскажи в каком txt правил,хочу тоже отбалансить.....?
@ALEXALEX3434 open HCTRAITS.txt from H3bitmap.lod with Text Table editor.
@totkotoriy now I think I understood what you meant, you just changed the chance to acquire a certain skill to zero for some classes, good idea

didn't think about that
(23.03.2019 13:42)ALEXALEX3434 Wrote: [ -> ]totkotoriy, Привет,подскажи в каком txt правил,хочу тоже отбалансить.....?
HCTRAITS.TXT
Только надо строго следить, чтобы 100% было, иначе вообще неразбериха будет.
И учитывать, что Мудрость и стихии магам предлагаются вне очереди.
hippocamus, 100% не понял,в сумме?
hippocamus, Можно подробнее, плиз.
Насчитал у каждого класса более 100% изначально.Если исключить мудрость и стихии то менее 100%.
Как правильно править?
Если больше 100%, то игра сама пересчитывает. Только тогда у навыка с вероятностью 25% - будет, допустим, 21.733333% реально и так далее.
Надо сделать, чтобы было в сумме 100, везде - чтобы ожидания соответствовали написанному. В ХотЕ вроде сделано.
hippocamus, Так говорю же,например у рыцаря изначально 107% в сумме(я еще ничего не менял),почему так? Файл тхт из даты.
Или какой то навык считать не надо?
или может изначально ничего не работает.....
(24.03.2019 22:34)ALEXALEX3434 Wrote: [ -> ]hippocamus, Так говорю же,например у рыцаря изначально 107% в сумме(я еще ничего не менял),почему так? Файл тхт из даты.
Или какой то навык считать не надо?
или может изначально ничего не работает.....
Да нет, всё так и есть. В оригинале ошибки.
Из-за подобных ошибок текстовиков, например, ИИ-священник может никогда не нападать на героя (агрессивность равна нулю, из-за ошибки прочтения 0,8 вместо 0.8). В Хоте это правилось, лучше взять оттуда.
Quote:hippocamus, Так говорю же,например у рыцаря изначально 107% в сумме(я еще ничего не менял),почему так? Файл тхт из даты.
Потому что это не проценты, а тупо условные баллы, сумма которых ста равна быть не обязана
hippocamus, feanor, Противоречите друг другу, один говорит что не более 100 ,другой что можно любые цифры ставить.
Идея была увеличить вероятности магии огня -у инферно,земли у некро,воды у людей и т.д.
Вопрос актуален,как сделать чтобы Работало?!
Quote:hippocamus, feanor, Противоречите друг другу, один говорит что не более 100 ,другой что можно любые цифры ставить.
Во-первых, есть два вида источников, я и неправильные. Во-вторых, меньше слушай, больше пробуй и думай.
Если в оригинале сумма 107, как там может быть "не больше ста", алё.
Указанные в текстовике баллы суммируются, по ним методом рулетки выбирается нужный навык.
Ида выдала лапшу вместо кода, но в целом понятно
Code:
if ( v12 <= 0 )
{
LABEL_49:
v5 = v27;
LABEL_50:
v20 = 0;
v19 = 0;
while ( 1 )
{
v21 = v5->SSkill[v19];
if ( v21 >= maxSkillLev || v21 < v29 || v19 == SkipSkill )
goto LABEL_59;
if ( v28[v19] )
break;
v22 = v26->ProbSSkill[v19];
if ( !v26->ProbSSkill[v19] )
goto LABEL_56;
LABEL_58:
v20 += v22;
LABEL_59:
++v19;
if ( v19 >= 28 )
{
if ( v20 )
{
v23 = Random(1, v20); //рандом не по фиксированному числу, а по вычисленной сумме!
result = 0;
while ( 1 )
{
v24 = v5->SSkill[result];
if ( v24 < maxSkillLev )
{
if ( v24 >= v29 && result != SkipSkill )
break;
}
LABEL_73:
++result;
if ( result >= 28 )
return -1;
}
if ( !v28[result] )
{
v25 = v26->ProbSSkill[result];
if ( !v26->ProbSSkill[result] )
{
LABEL_70:
if ( v5->SSkill[result] > 0 )
v25 = 1;
}
v23 -= v25;
if ( v23 <= 0 )
return result;
goto LABEL_73;
}
v25 = 0;
goto LABEL_70;
}
return -1;
}
}
v22 = 0;
LABEL_56:
if ( v5->SSkill[v19] > 0 )
v22 = 1;
goto LABEL_58;
}
Т.е. достаточно поднимать баллы в нужной колонке, и шанс увеличится. Если стремаешься - ну, подними на пару баллов нужную магию, и ту же пару баллов убери у какого-нибудь орлоглаза или первой помощи.