Данные NPC в БД.

Теги:
 
+
-
edit
 

Balancer

администратор
★★★★★
Их выправление взял на себя J-3
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Evdo

новичок
Я вот заметил что у многих НПС в базе занижен параметр HP я сравнивал примерно с офф данными, и люди довольно таки неплохо пользуют это, я подумал пока не будет найдены и справлены данные может сделать так ?

Update npc set hp = '550' where (level='20' AND type='l2Monster' AND hp<'500');
Update npc set hp = '600' where (level='21' AND type='l2Monster' AND hp<'550');
Update npc set hp = '650' where (level='22' AND type='l2Monster' AND hp<'600');
Update npc set hp = '700' where (level='23' AND type='l2Monster' AND hp<'650');
Update npc set hp = '730' where (level='24' AND type='l2Monster' AND hp<'700');
Update npc set hp = '780' where (level='25' AND type='l2Monster' AND hp<'750');
Update npc set hp = '800' where (level='26' AND type='l2Monster' AND hp<'790');
Update npc set hp = '830' where (level='27' AND type='l2Monster' AND hp<'810');
Update npc set hp = '870' where (level='28' AND type='l2Monster' AND hp<'830');
Update npc set hp = '900' where (level='29' AND type='l2Monster' AND hp<'850');
Update npc set hp = '950' where (level='30' AND type='l2Monster' AND hp<'900');
Update npc set hp = '1050' where (level='31' AND type='l2Monster' AND hp<'1020');
Update npc set hp = '1120' where (level='32' AND type='l2Monster' AND hp<'1070');
Update npc set hp = '1180' where (level='33' AND type='l2Monster' AND hp<'1120');
Update npc set hp = '1220' where (level='34' AND type='l2Monster' AND hp<'1180');
Update npc set hp = '1270' where (level='35' AND type='l2Monster' AND hp<'1200');
Update npc set hp = '1300' where (level='36' AND type='l2Monster' AND hp<'1250');
Update npc set hp = '1350' where (level='37' AND type='l2Monster' AND hp<'1300');
Update npc set hp = '1420' where (level='38' AND type='l2Monster' AND hp<'1350');
Update npc set hp = '1500' where (level='39' AND type='l2Monster' AND hp<'1450');
Update npc set hp = '1550' where (level='40' AND type='l2Monster' AND hp<'1500');
Update npc set hp = '1600' where (level='41' AND type='l2Monster' AND hp<'1550');
Update npc set hp = '1670' where (level='42' AND type='l2Monster' AND hp<'1640');
Update npc set hp = '1740' where (level='43' AND type='l2Monster' AND hp<'1750');
Update npc set hp = '1810' where (level='44' AND type='l2Monster' AND hp<'1780');
Update npc set hp = '1920' where (level='45' AND type='l2Monster' AND hp<'1880');
Update npc set hp = '1980' where (level='46' AND type='l2Monster' AND hp<'1950');
Update npc set hp = '2050' where (level='47' AND type='l2Monster' AND hp<'2000');
Update npc set hp = '2150' where (level='48' AND type='l2Monster' AND hp<'2070');
Update npc set hp = '2250' where (level='49' AND type='l2Monster' AND hp<'2150');
Update npc set hp = '2400' where (level='50' AND type='l2Monster' AND hp<'2250');
Update npc set hp = '2450' where (level='51' AND type='l2Monster' AND hp<'2400');
Update npc set hp = '2500' where (level='52' AND type='l2Monster' AND hp<'2450');
Update npc set hp = '2550' where (level='53' AND type='l2Monster' AND hp<'2500');
Update npc set hp = '2600' where (level='54' AND type='l2Monster' AND hp<'2550');
Update npc set hp = '2650' where (level='55' AND type='l2Monster' AND hp<'2600');
Update npc set hp = '2700' where (level='56' AND type='l2Monster' AND hp<'2650');
Update npc set hp = '2800' where (level='57' AND type='l2Monster' AND hp<'2700');
Update npc set hp = '2880' where (level='58' AND type='l2Monster' AND hp<'2800');
Update npc set hp = '2940' where (level='59' AND type='l2Monster' AND hp<'2880');
Update npc set hp = '3000' where (level='60' AND type='l2Monster' AND hp<'2900');
Update npc set hp = '3100' where (level='61' AND type='l2Monster' AND hp<'3000');
Update npc set hp = '3200' where (level='62' AND type='l2Monster' AND hp<'3100');
Update npc set hp = '3300' where (level='63' AND type='l2Monster' AND hp<'3200');
Update npc set hp = '3400' where (level='64' AND type='l2Monster' AND hp<'3300');
Update npc set hp = '3500' where (level='65' AND type='l2Monster' AND hp<'3400');
Update npc set hp = '3570' where (level='66' AND type='l2Monster' AND hp<'3500');
Update npc set hp = '3620' where (level='67' AND type='l2Monster' AND hp<'3570');
Update npc set hp = '3700' where (level='68' AND type='l2Monster' AND hp<'3620');
Update npc set hp = '3800' where (level='69' AND type='l2Monster' AND hp<'3700');
Update npc set hp = '3900' where (level='70' AND type='l2Monster' AND hp<'3800');
Update npc set hp = '4000' where (level='71' AND type='l2Monster' AND hp<'3900');
Update npc set hp = '4100' where (level='72' AND type='l2Monster' AND hp<'4000');
Update npc set hp = '4200' where (level='73' AND type='l2Monster' AND hp<'4100');
Update npc set hp = '4300' where (level='74' AND type='l2Monster' AND hp<'4200');
Update npc set hp = '4500' where (level='75' AND type='l2Monster' AND hp<'4300');
Update npc set hp = '4600' where (level='76' AND type='l2Monster' AND hp<'4500');
Update npc set hp = '4800' where (level='77' AND type='l2Monster' AND hp<'4600');
Update npc set hp = '5000' where (level='78' AND type='l2Monster' AND hp<'4800');
Update npc set hp = '5200' where (level='79' AND type='l2Monster' AND hp<'5000');
Update npc set hp = '5500' where (level='80' AND type='l2Monster' AND hp<'5200');

будет хоть более мение похоже на офф, а то когда у 60 лвл 1300 НР это не дело
И кстате атака и защита тоже занижена только вот даже примерно посмотреть негде какая должна быть
и на первое время с ними также поступить а то быстро люди качаются чар 40лвл свободно валит 60 лвл

И еще запросы меняют значения только у монстров не касаясь рейд босов.

если согласны то исправте плиз в сборке.
 
+
-
edit
 

Balancer

администратор
★★★★★
можно что-то в таком духе :)

update npc set hp = exp(1.38*power(level, 1/3) + 2.6) where hp < exp(1.38*power(level, 1/3) + 2.6) and level >=20;

:)
… чтобы понять рекурсию, нужно сперва понять рекурсию …  
+
-
edit
 

Balancer

администратор
★★★★★
Думаю, это лучше не в сам датапак, а в tools.sql :)
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Evdo

новичок
:) я знаниями сильно не плещю что в голову пришло то и написал, хотя предпологал что можно проще сделать :), учусь так сказать. не знал что в запросах целые формулы писать можно.
 
+
-
edit
 

Balancer

администратор
★★★★★
Я и сам не блещу :) Например, почти наверняка можно избежать двухкратной записи одной и той же формулы (в изменениях и в условиях), но как - пока не знаю :D
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Evdo

новичок
Balancer:
Я и сам не блещу :) Например, почти наверняка можно избежать двухкратной записи одной и той же формулы (в изменениях и в условиях), но как - пока не знаю :D
 

Ты не мог бы подсказать каким образом ты выводил эту формулу, и что из себя представляет power(),
щас сижу пытаюсь сварганить другую формулу для patak, но каряво както получается все не сходится начало с концом. данные кстате в инете нашел только с С1 по patak, тоже примерно подогнать хочу, а формула все не выходит, чтото неправыельно делаю как всегда :)
 
+
-
edit
 

Balancer

администратор
★★★★★
>Ты не мог бы подсказать каким образом ты выводил эту формулу

Провёл просто аппроксимацию вида f1(y) = a*f2(x) + b для разных f1, f2 и подобрал зависимость с лучшим коэффициентом корреляции.

> и что из себя представляет power(),

Возведение в степень. power(x, 1/3) - возведение в степень 1/3, т.е. извлечение кубического корня.

>щас сижу пытаюсь сварганить другую формулу для patak

Давай мне набор данных - аппроксимирую :) Вообще, под это дело слепил программку на Java, но она ещё весьма сырая.

>данные кстате в инете нашел только с С1 по patak, тоже примерно подогнать хочу, а формула все не выходит, чтото неправыельно делаю как всегда :)

На L2WH поищи. Свяжись с Artful на форуме. Сабжевым вопросом сейчас он со своей командой занимается.
… чтобы понять рекурсию, нужно сперва понять рекурсию …  

Evdo

новичок
>Провёл просто аппроксимацию
честно говоря я и слова то такого не знал но смысл его понял :) стыдно мне

>Возведение в степень. power(x, 1/3) - возведение в степень 1/3, т.е. извлечение кубического корня.
понял

>Давай мне набор данных - аппроксимирую :) Вообще, под это дело слепил программку на Java, но она >ещё весьма сырая.

Я тут уже в ручную так сказать формулу подобрал вот

update npc set patk = (69*level/42*exp(level/28)) where patk < (69*level/42*exp(level/28)) and level >=20 AND type='l2Monster';
update npc set matk = (33*level/42*exp(level/28)) where matk < (33*level/42*exp(level/28)) and level >=20 AND type='l2Monster';
update npc set pdef = (98*level/26*exp(level/88)) where pdef < (98*level/26*exp(level/88)) and level >=20 AND type='l2Monster';
update npc set mdef = (112*level/42*exp(level/186)) where mdef < (112*level/42*exp(level/186)) and level >=20 AND type='l2Monster';

Может все таки обновить пока мобов до такого состояния а то многовато слабых мобов с высоким лвл получается, всеравно временно.
а программку аппроксимирования я б всеравно по пользовал :) если можно
 
CZ DarrrAngel #13.03.2006 19:49
+
-
edit
 

DarrrAngel

новичок
Работал очень долго со статами Фактически каждого омба "вылизывал".получил вот такую базу
Нуб - это тот что много просит но ничего не предлагает.Не предлогайте мне яду,я давно помер,токо вот душа не даёт покоя.Надо в этой жизни сделать что то чвое.Например сервер ;)  
CZ DarrrAngel #13.03.2006 20:00
+
-
edit
 

DarrrAngel

новичок
И маленькое дополнение ;)
Нуб - это тот что много просит но ничего не предлагает.Не предлогайте мне яду,я давно помер,токо вот душа не даёт покоя.Надо в этой жизни сделать что то чвое.Например сервер ;)  

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru