Прямая проверка работы WR-10//1-5-я серия заточек...///
-
без какой-нить програмки кликалки проверка WR весьма геморное занятие
а использование такого запрещено
так-что если кто и проверит это на больших кол-вах 1000+ то вряд ли он будет обнародовать информациюпроще наверно все-таки проследить в коде эмуля какие функции вызываются и как оно точит. оттолкнуться можно от точащего НПС.
-
Taekwon Boy, Если ты читал все - то должен был заметить, что на 450 я уже это сделал... 300 - смитом и 150 бардом... А закончить собираюсь на 2000... Т.е. 1000 на смита и 1000 для сравнения бардом... Я считаю это количество достаточным для более-менее точных выводов. А публикация результатов - как видишь идет в процессе выполнения.
Так что - любой имеющий мозги может прочитать и пересчитать сам...
Что же до кодов - то я достаточно долго лазал по разным сайтам... Никто еще ни разу не привел в качестве аргументов ничего кроме отдельных фрагментов кода... Архив с кодами эмулятора - я находил, но объем его таков - что вряд ли кто-то его раскрутит быстрее чем за 1-2 месяца розысков, если изначально не знать что именно и где искать.
Так что - мое мнение - прямая проверка быстрее даст результаты... 1-2 недели кликанья по 1.5 часа в день - и дело в шляпе... Ну еще немного кк расходов на эксперимент - и все...
-
Закончена заточка на +8 - во второй контрольной серии барда... На +9 и +10 - еще не закончено в этой серии...
Бард показал 67% выход... Т.е. заточил 67 ножиков из 100 на +8.... -
Болтовня. Но код я вижу придется поискать самому.
-
абракадавр, пока что болтовня только у тебя... Ищи - найди и проанализируй - вот тогда это будет дело...
Естественно код тебе самому искать надо - а ты как хотел?А пока - я свое дело делаю...
Закончена 2-я контрольная серия Барда... Сравнение 2-х полных серий по итоговому результату пока в пользу барда... При заточках на +8 и +10 по ск4возным результатам - впереди бард и только на переточке +9 - смит с его ВР=10 чуть-чуть обошел барда...
Впрочем - по моему все эти флюктуации в пределах погрешности...
-
@Bububu:
абракадавр, пока что болтовня только у тебя... Ищи - найди и проанализируй - вот тогда это будет дело...Естественно код тебе самому искать надо - а ты как хотел?
А пока - я свое дело делаю...
Закончена 2-я контрольная серия Барда... Сравнение 2-х полных серий по итоговому результату пока в пользу барда... При заточках на +8 и +10 по ск4возным результатам - впереди бард и только на переточке +9 - смит с его ВР=10 чуть-чуть обошел барда...
Впрочем - по моему все эти флюктуации в пределах погрешности...
Я таки поискал
Анализировал я eAthena 5703 (правда не разбираюсь в их версиях), где прямо в комментариях было написано цитирую
[code:kjvu8m82]/*==========================================- Weapon Refining - Taken from jAthena
*------------------------------------------
*/[/code:kjvu8m82]
Думаю, что можно с высокой вероятностью предположить что у нас так же (у нас ведь jAthena ?????)
Итак, момент истины. Всего две строчки!
[code:kjvu8m82]...
per = percentrefinery [ditem->wlv][(int)item->refine];
per += (sd->status.job_level-50)/2; //Updated per the new kro descriptions.
...[/code:kjvu8m82]
В percentrefinery (это заранее определенный массив) бонус в 10 наличествует.
А дальше обычная проверка с этим самым числом
[code:kjvu8m82]if (per > rand() % 100) {
item->refine++;
...[/code:kjvu8m82]Пенальти от джоба! Ужас.
Выводы любопытнейшие:- Твой бард может точить лучше смита с WR 10
- Мастерсмит с джобом порядка 70 и WR 10 имеет бонус аж в 20%
P.S. Брал вот тут
- Weapon Refining - Taken from jAthena
-
Кстати, огласи пожалуйста джобы смита и барда если не секрет
-
А где здесь про WR и вообще заточку у нпс? Вроде как тут фрагмент кода, описывающий вероятность заточки оружия скиллом Weapon Refine МСа...
-
...
Итак, момент истины. Всего две строчки![code:11kkgzqe]...
per = percentrefinery [ditem->wlv][(int)item->refine];
per += (sd->status.job_level-50)/2; //Updated per the new kro descriptions.
...[/code:11kkgzqe]
В percentrefinery (это заранее определенный массив) бонус в 10 наличествует.
...
...[/code]Где ты брал - это совершенно понятно...
Непонятно с чего ты решил что в таблице percentrefinery присутствует бонс от WR=10... Если это заранее определенный массив - то он ничего не знает о том каким именно персонажем я приду к НПС-у... И обрати внимание на 2-ю строку... Если ты пришел в эту точку с JobLvl-ом менее 50 - то твой процент уменьшается!. Из этого следует только одно - этот фрагмент не имеет ровно никакого отношения к 1-й профе Смита.... Смит может иметь джоб левел не выше 50... Вероятно - этот фрагмент действует только для адвансов у которых джоб до 70-ти, но это как раз никто и не оспаривает - это прописано в описании профы White Smit - только он точит шмот без всякого НПС-а - сам...
Собственно говоря - насчет заранее определенного массива - ты совершенно прав...
Вот на этот фрагмент многие уже ссылались не один раз:Код:
if (getequippercentrefinery(@part) <= rand(100)) goto Lfail;
*А getequippercentrefinery(@part) берётся из таблицы: *
*Код: *// Database for upgrading items.
// Stats per level for safe upgrade, Stats per level after safe limit, Safe level limit, Lv.1 %, Lv 2 %, Lv.3%, ect...
// Armor defense is done in percentage (ie 70 = .7 def)
// Weapons are whole numbers (ie 3 = 3 atk)70, 4,4, 100,100,100,100, 60, 40, 40, 20, 20, 10, // Armor
2, 3,7, 100,100,100,100,100,100,100, 60, 40, 20, // Lv.1 Weapons
3, 5,6, 100,100,100,100,100,100, 60, 40, 20, 20, // Lv.2 Weapons
5, 8,5, 100,100,100,100,100, 60, 50, 20, 20, 20, // Lv.3 Weapons
7,14,4, 100,100,100,100, 60, 40, 40, 20, 20, 10, // Lv.4 WeaponsТолько вот выводы сделаны гораздо более квалифицированные: а именно:
- В таблице нет ни слова про профессию...
- Неписи все равно какая именно профа пришла точить шмот.
Я - кстати - на этих выводах особенно не настаиваю... Я их решил просто проверить
Так что - извини парень - ты слишком торопишься и хочешь просто подогнать результат под свои убеждения...
Короче - твои аргументы не канают а уж выводы - вообще детские...*Калхас * - cовершенно прав. Твой фрагмент для адванса и к НПС-у, которого мы почти все используем - отношения не имеет.
Ровно так же - согласно общеизвестной информации - джоб левелы и вообще статы - на заточку у НПС-а не влияют вообще.
-
Для того, чтобы не было уклонений в сторону от темы топа, сделаю напоминание:
Цель данной темы - прояснить темный вопрос с WR=10 для профы Смита... Скилы Вайт Смита (т.е. адванс профы) - просьба рассматривать отдельно... Для тех кто забыл еще одно напоминание: Смит умеет точить шмот ровно так как и все остальные - у НПС и никак иначе... Вот мы и вясняем тут - учитывает ли НПС при заточке скилы Смита или не учитывает.
-
Естесственно я тороплюсь и выкладываю сырые непроверенные результаты (в том числе чтобы остальные проверили)
Да, я ошибся и НПС вызывает другую функцию - она зовется getequippercentrefinery в скрипте и buildin_getequippercentrefinery собственно в коде. Отдает она percentrefinery[уровень предмета(0-4 включая броню)][текущая_заточка]
Вот здесьfor(j=0;j<MAX_REFINE && split[j];j++)
percentrefinery**[j]=atoi(split[j+3]);**
**
**
**
**Эти значения берутся из таблицы, указанной Bububu выше, больше нигде не меняются.
**
**
**
НО это все не имеет никакого значения до тех пор, пока мы не узнаем, насколько изменися сам скрипт НПС. В той версии скрипта можно точить сразу на несколько пунктов, у нас не так. -
@абракадавр:
Естесственно я тороплюсь и выкладываю сырые непроверенные результаты (в том числе чтобы остальные проверили)...
Дорогой - а ты не торопись... Торопливых - смею тебя заверить - тут и без тебя хватало всегда... Тебе собственно это сказали сразу - непроверенных и неполных данных полно и без твоих усилий... Опубликованных, но ничем не подтвержденных фрагментов(кроме мнения авторов публикации) - всегда на эту тему хватало...
Зачем их преумножать? Никому неинтересно искать твои ошибки в твоих выводах, поэтому прежде чем выкладывать их - потрудись их проверить со всех сторон так, чтобы они были бесспорными. К примеру не стоит писать, что: "В percentrefinery (это заранее определенный массив) бонус в 10 наличествует.", если ты в эту таблицу даже не потрудился заглянуть... Лично я вот вовсе не собирался публиковать тот фрагмент кода, который привел в ответе тебе - ибо я не считаю его 100% достоверным, я просто был вынужден его привести благодаря твоим усилиям в порядке возражения на то, что в этой таблице "бонус в 10 процентов наличествует". Никак он в этой таблице не наличествует и наличествовать не мог - слишком усложнится такая таблица из-за того, что в ней надо будет отличать профы Смита и Мастер Смита от всех остальных...
Гораздо логичнее - если мы точим у НПС - предполагать, что итоги заточки зависят только от свойст самого НПС и никак не зависят от того - кто к нему пришел... И НПС-у все равно - нуб принес ему броньку или 99/50 лвл... Думаю - что и у Мастер Смита результат заточки у НПС подчинен тем же самым процентам - что и у всех остальных, а приведенный тобой фрагмент кода - это другой вариант, когда Мастер Смит точит что-то сам и не просит это сделать НПС.
-
абракадавр, ты не прав (на всякий случай перевожу на современный русский - убей себя об стену, выпей яду и т.д.).
Вот соотвутствующие куски кода из jAthena, которые не менялись уже очень много версий.
Это релевантная часть скрипта НПЦ, которые производят апгрейдят:
[code:32p18ruk]if ( getequippercentrefinery(@part)<=rand(100) ) {
failedrefitem @part;
close;
}
successrefitem @part;[/code:32p18ruk]Внутри getequippercentrefinery() используется status_percentrefinery(), наиболее интересный кусок которой выглядит так:
[code:32p18ruk]percent=percentrefinery[itemdb_wlv(item->nameid)][(int)item->refine];
percent += pc_checkskill(sd,BS_WEAPONRESEARCH);[/code:32p18ruk]Если в процессе адаптации jAthena под мотр этот код не менялся, то при заточке у кузнеца скил WR учитывается.Единственный вывод, который можно сделать из исходного кода:
WR безусловно влияет на шансы заточки при помощи НПЦ, если используется оригинальная jAthenaМенялись ли эти функции при адаптации jAthena для МОТРа - одному сами знаете кому известно.
На всякий случай вод еще пара интересных кусков кода.
Релевантный кусок кода из функции skill_weapon_refine, которая отвечает за работу скила вайтсмита, при помощи которого вайтсмит может апгрейдить оружие:
[code:32p18ruk]if(atn_rand()%10000 < status_percentrefinery_weaponrefine(sd,&sd->status.inventory[idx])) {
skill_success_weaponrefine(sd,idx);
} else {
skill_fail_weaponrefine(sd,idx);
}[/code:32p18ruk]И вот интересующая нас/вас часть функции status_percentrefinery_weaponrefine():
[code:32p18ruk]percent = percentrefinery[itemdb_wlv(item->nameid)][(int)item->refine]*100 + (joblv - 50)*50;
if(battle_config.allow_weaponrearch_to_weaponrefine) {
percent += pc_checkskill(sd,BS_WEAPONRESEARCH)*100;
}[/code:32p18ruk]battle_config.allow_weaponrearch_to_weaponrefine - это настройка из файла конфигурации, которая по умолчанию равна 0 (false). Так что если конфигурацию не править, то у вайтсмитов при заточке собственным скилом будет только (анти)бонус от джоба. -
@X-Oleg:
Вот соотвутствующие куски кода из jAthena, которые не менялись уже очень много версий.Это релевантная часть скрипта НПЦ, которые производят апгрейдят:
[code:2303kac0]if ( getequippercentrefinery(@part)<=rand(100) ) {
failedrefitem @part;
close;
}
successrefitem @part;[/code:2303kac0]Внутри getequippercentrefinery() используется status_percentrefinery(), наиболее интересный кусок которой выглядит так:
[code:2303kac0]percent=percentrefinery[itemdb_wlv(item->nameid)][(int)item->refine];
percent += pc_checkskill(sd,BS_WEAPONRESEARCH);[/code:2303kac0]Значит я зря предположил, что в eAthena и jAthena эти куски одинаковые. Тогда да.
А нет ли рабочей ссылочки на код jAthena? -
X Oleg
Во-первых давай не уклоняться от темы - я уже просил об этом... Это значит что все кроме рассмотрения скила кузнеца Weapon Research - пускаем побоку или выносим в отдельную тему...
А во вторых в сказанном тобой:
@X-Oleg:
....Вот соотвутствующие куски кода из jAthena, которые не менялись уже очень много версий.
Это релевантная часть скрипта НПЦ, которые производят апгрейдят:
[code:5gk7falw]if ( getequippercentrefinery(@part)<=rand(100) ) {
failedrefitem @part;
close;
}
successrefitem @part;[/code:5gk7falw]Внутри getequippercentrefinery() используется status_percentrefinery(), наиболее интересный кусок которой выглядит так:
[code:5gk7falw]percent=percentrefinery[itemdb_wlv(item->nameid)][(int)item->refine];
percent += pc_checkskill(sd,BS_WEAPONRESEARCH);[/code:5gk7falw]Если в процессе адаптации jAthena под мотр этот код не менялся, то при заточке у кузнеца скил WR учитывается.Единственный вывод, который можно сделать из исходного кода:
WR безусловно влияет на шансы заточки при помощи НПЦ, если используется оригинальная jAthenaМенялись ли эти функции при адаптации jAthena для МОТРа - одному сами знаете кому известно.
... <остаток не по теме топа - удален...
Твой вывод строго говоря некорректен потому, что в добавке к percent используется функция pc_checkskill(sd,BS_WEAPONRESEARCH);, которая содержит 2 параметра и:
- она пока что неизвестно что делает - сама функция она к примеру имеет право возвращать тождественный ноль;
- неясно назначение параметра sd и его взаимодействие со значением скила BS_WEAPONRESEARCH...
Так что писать о безусловном влиянии скила - даже при условии что код не изменялся - пока рано... Код-то как раз скорее всего никем на МОТР-е не изменялся, но вот заметить действие этого скила на многократных заточках - пока что никому не удалось.
Если первая часть кола в твоей цитате - вообще говоря совпадает со всеми публикациями на эту тему, которые я встречал, то вторая им противоречит, поэтому - либо давай более полные цитаты, либо указывай на источник данной информации и давай ссылки на имеющиеся в нем франменты кода - чтобы их можно было посмотреть и оценить их достоверность. Иначе ценность твоей инфы немногим выше цитат абракадабра и тех противоречивых сведений, которые подвигнули меня на прямую проверку этого скила статистическими методами...
PS: Собственно говоря X Oleg не привел никакой новой информации,кроме той что уже публиковалась в прошлом(замечу - к тому же исказив ее немного):
<!-- m --><a class="postlink" href="http://forum.motronline.com/viewtopic.php?p=277495&highlight=percentrefinery#277495">http://forum.motronline.com/viewtopic.p ... ery#277495</a><!-- m -->И которая не дает веских оснований для обоснованных выводов.
-
Bububu, pc_checkskill просто возвращает уровень запрошенного скила. Я не буду тебе или еще кому-то копировать сюда весь исходный код жафины, благо он доступен абсолютно бесплатно, и любой человек может воспользоваться google или хотя бы поиском по этому форуму, чтобы найти его.
Твоя заметка про "исказив её не много" вообще не в тему. Потому что то, что я запостил - куски кода, скопированные из исходного текста жафины, а не какого-либо поста на форуме.
Твой вывод строго говоря некорректен ...
Твоё желание проверить на практике, правильно ли работает компилятор c++ и правильно работает процессор(ы) на серверном компьютере, которые в итоге исполняют этот код, похвально. Ведь в конце концов нальзя исключать такой вариант, что Спакум&Co модифицировали именно эти куски кода.
-
X Oleg, я свою позицию выше высказал... Твоя аргументация - достаточно поверхностна и только повоторяет что уже было сказано 10 раз...
Ну какой серьезный человек скажет такое:"pc_checkskill просто возвращает уровень запрошенного скила." - не приводя фрагмента соответствующего кода? Откуда это видно? :roll:
Если тебе к сказанному добавить нечего - то извини уж меня за то, что у тебя аргументы неубедительны. Прежде всего в них слишком много необоснованных утверждений. Рассуждать о том, что делает pc_checkskill - Не приводя никаких текстов - это произвольное допущение. Ты называешь функцию status_percentrefinery() в то время как на самом указанный тобой текст содержит другая функция pc_percentrefinery(), которая в свою очередь использует pc_checkskill. Возможно в твоей версии кода это и так, но тогда неверно твое же утверждение о том, что эта часть давно не менялась... Я уже просто не говорю о том, что из процитированного тобой и в обсуждении на которое я дал ссылку совершенно неочевидно, что именно этот кусок кода используется неписью при заточке... В общем как ни крути - и указанная мной ссылка и твои аргументы не более чем просто предположения не дающие убедительного ответа на поставленный в топе вопрос. Я именно потому и оставил это на потом - до завершения прямого эксперимента - что все эти аргументы не раз обсуждались, но доказательством они не являются. Неубедительны они, если к делу подходить профессионально.
Меня интересует механика работы скила именно на МТОР-е... Даже если допустить, что ты проанализируешь весь код (я лично сомневаюсь что ты это сделаешь) - и убедительно докажешь, что в твоем коде этот скилл учтен в работе НПС-а, то дальше тебе придется объяснять как так выходит что статистической проверки на МОТР-е твое доказательство не выдерживает?
Меня не интересуют версии - меня интересуют результаты... Поэтому строго говоря пока все приведенно тобой выше никак не отвечает на вопрос топа и к делу не относится... для демонстрации некоторой эрудиции возможно годится, если убрать недочеты, но никак не годится для доказательства того, что у нас скилл работает. Я именно поэтому этот путь оставил на потом.
PS: Кстати если хочешь могу тебе дать ссылки еще на пару серверов, которые построены на том же исходном коде и на которых этот скилл БС-а никогда не работал и не работает как по мнению игроков, так и по мнению админов.
-
Bububu, я вижу ты ни в программировании не разбираешься, ни в пользовании поисковыми системами. Иначе бы ты уже сам давно нашел исходный код жафины. Ни один нормальный человек постить его тебе тут целиком не будет. Я привел ровно те куски, которые описивают изучаемую тобой проблему.
Твой бред про недочеты достал уже. На всякий случай повторю еще раз: я не пишу какую-то отсебятину, я копирую куски кода из реально работающего эмулятора.
Специально для тех, кто не умеет пользоваться google:
<!-- m --><a class="postlink" href="http://ravak.madcow007.com/">http://ravak.madcow007.com/</a><!-- m -->
<!-- m --><a class="postlink" href="http://sourceforge.net/projects/jathena">http://sourceforge.net/projects/jathena</a><!-- m -->Если не сможешь разобраться, то купи какую-нибудь книжку по с/с++.
Если разберешься (я лично сомневаюсь что ты это сделаешь), то замени в файле map/status.c в функции int status_percentrefinery(struct map_session_data *sd,struct item *item)
[code:29bullzi]percent=percentrefinery[itemdb_wlv(item->nameid)][(int)item->refine];
percent += pc_checkskill(sd,BS_WEAPONRESEARCH);[/code:29bullzi]на
[code:29bullzi]percent = 10 * pc_checkskill(sd,BS_WEAPONRESEARCH);[/code:29bullzi]Потом перекомпилируй эмулятор и попробуй что-нибудь заточить персонажем с WR=0 и c WR=10. -
X Oleg, изучаемую мной проблему на МОТР-е описывают пока что только результаты проделанных мной экспериментов - еще незаконченных кстати...
Я подчеркиваю - именно на МОТР-е... Твои же аргументы - если они и соответствуют чему-то - то только некоему абстрактному эмулятору и расходятся с результатами прямых проверок пока что - причем на все 100%...Да я именно настойчив и педантичен к аргументам - тут я возражать не буду... И спорить с тобой - пожалуй тоже не буду Тебе хочется верить в твою непогрешимость - верь на здоровье...
Только тогда сделай все-таки милость - прекрати теоризирование и цитирование ощеизвестных фрагментов - они были известны всем желающим еще до начала моих прямых проверок... Ничего нового для ответа на вопрос топа эти теоризирования не дают... Я не против новых аргументов как за, так и против учета скила WR=10, но я категорически против бесконечного повторения общеизвестных кусков кода...
Еще я против прямого хамства к каковому отношу твой последний пост и пост tanardino, Вам не нравится мой топ - дело Ваше - просто обходите его тогда.... Но - при попытках повторения постов вроде Ваших последних - я обязательно воспользуюсь синей кнопкой... Мое дело решать чем, как и в какой последовательности мне заниматься, а никак не Ваше...
Итак - предлагаю вернуться к обсуждению темы топа или покинуть данный топ... Любая не относящаяся к теме топа информация здесь будет рассматриваться как помеха... А тема простая:* Работает ли скилл WR=10 у Симта на МОТР-е или не работает.... *... Любые другие обсуждения здесь - нежелательны и буду считать помехой...
-
tanardino, устное предупреждение.