Дата: Среда, 27.08.2014, 04:01 | Сообщение # 1
На тему завышения статов было много топиков , но все забросаны комментами , топики превращены в кашу, там ничего не понятно и т.д. Поэтому я решил создать на эту тему свой топ. Итак: 0. Правила завышения/занижения статов. 1. Как завысить статы шмота. 2. Как занизить статы шмота. 3. Как завысить какойто определенный стат. 4. Как занизить какойто определенный стат.
0. Завышение статистик шмота происходит через sql запрос как на тринити так и на мангосе (помоему... лично я работаю с тринити) в базу world. Всегда следует помнить во избежание ошибок , что если мы сделали sql запрос на завышение стата, то еще один sql запрос будет умножать уже и без того завышенные статы. Поэтому перед тем как делать sql запросы тщательно перепроверьте все строки , и заливать sql запросы лучше по одному (например сначало на завышение статов, потом на занижение определенного стата.... все по очереди а не сразу.... так спокойнее))
1. Вот sql запрос на завышение всех характеристик шмота :
Код UPDATE item_template SET stat_value1=stat_value1*N; UPDATE item_template SET stat_value2=stat_value2*N; UPDATE item_template SET stat_value3=stat_value3*N; UPDATE item_template SET stat_value4=stat_value4*N; UPDATE item_template SET stat_value5=stat_value5*N; UPDATE item_template SET stat_value6=stat_value6*N; UPDATE item_template SET stat_value7=stat_value7*N; UPDATE item_template SET stat_value8=stat_value8*N; UPDATE item_template SET stat_value9=stat_value9*N; UPDATE item_template SET stat_value10=stat_value10*N;
Этот sql запрос завышает ВСЕ статы шмота в N раз (N - переменная , ставим сколько хотим ... если вместо N поставим 3 то статы будут завышены в 3 раза и тому подобное. Думаю понятно) *ПРИМЕЧАНИЕ* каждая строчка со stat_value1 , stat_value2 и т.д. отвечает не за какойто определенный стат (например stat_value1 увеличивает силу и т.п.) , каждая строчка stat_value1 и т.п. отвечает за очередь стата в шмотке. Взять любую шмотку.... например меч Армагеддон , тогда stat_value1 будет увеличивает Силу, stat_value2 Выносливость, stat_value3 - рейтинг крит. удара, stat_value4 - скорость. Думаю понятно....
2. чтобы занизить статы шмота (думаю это пригодится для тех кто уже завысил и хотят исправить все) выполняем sql запрос
Код UPDATE item_template SET stat_value1=stat_value1/N; UPDATE item_template SET stat_value2=stat_value2/N; UPDATE item_template SET stat_value3=stat_value3/N; UPDATE item_template SET stat_value4=stat_value4/N; UPDATE item_template SET stat_value5=stat_value5/N; UPDATE item_template SET stat_value6=stat_value6/N; UPDATE item_template SET stat_value7=stat_value7/N; UPDATE item_template SET stat_value8=stat_value8/N; UPDATE item_template SET stat_value9=stat_value9/N; UPDATE item_template SET stat_value10=stat_value10/N;
Этот sql запрос занижает ВСЕ статы шмота в N раз (N - переменная , ставим сколько хотим ... если вместо N поставим 3 то статы будут занижены в 3 раза и тому подобное.)
3. Как завысить какойто определенный стат (далее будет написано зачем это пригодится) выполняем sql запрос:
Код UPDATE `item_template` SET `stat_value1`=`stat_value1`*N where stat_type1 in (M); UPDATE `item_template` SET `stat_value2`=`stat_value2`*N where stat_type2 in (M); UPDATE `item_template` SET `stat_value3`=`stat_value3`*N where stat_type3 in (M); UPDATE `item_template` SET `stat_value4`=`stat_value4`*N where stat_type4 in (M); UPDATE `item_template` SET `stat_value5`=`stat_value5`*N where stat_type5 in (M); UPDATE `item_template` SET `stat_value6`=`stat_value6`*N where stat_type6 in (M); UPDATE `item_template` SET `stat_value7`=`stat_value7`*N where stat_type7 in (M); UPDATE `item_template` SET `stat_value8`=`stat_value8`*N where stat_type8 in (M); UPDATE `item_template` SET `stat_value9`=`stat_value9`*N where stat_type9 in (M); UPDATE `item_template` SET `stat_value10`=`stat_value10`*N where stat_type10 in (M);
Где М - id определенного стата (например 35 - рес , 36 - хаст. если заменить М на 35 то будет завышен стат реса в N раз) а N - переменная , ставим сколько хотим. (Если вместо N поставим 3 то стат будет завышен в 3 раза и тому подобное.)
4. Заниженые определенного стата:
Код UPDATE `item_template` SET `stat_value1`=`stat_value1`/N where stat_type1 in (M); UPDATE `item_template` SET `stat_value2`=`stat_value2`/N where stat_type2 in (M); UPDATE `item_template` SET `stat_value3`=`stat_value3`/N where stat_type3 in (M); UPDATE `item_template` SET `stat_value4`=`stat_value4`/N where stat_type4 in (M); UPDATE `item_template` SET `stat_value5`=`stat_value5`/N where stat_type5 in (M); UPDATE `item_template` SET `stat_value6`=`stat_value6`/N where stat_type6 in (M); UPDATE `item_template` SET `stat_value7`=`stat_value7`/N where stat_type7 in (M); UPDATE `item_template` SET `stat_value8`=`stat_value8`/N where stat_type8 in (M); UPDATE `item_template` SET `stat_value9`=`stat_value9`/N where stat_type9 in (M); UPDATE `item_template` SET `stat_value10`=`stat_value10`/N where stat_type10 in (M);
Где М - id определенного стата (например 35 - рес , 36 - хаст. если заменить М на 35 то будет занижен стат реса в N раз) а N - переменная , ставим сколько хотим. (Если вместо N поставим 3 то стат будет занижен в 3 раза и тому подобное.)
Дополнительно: UPDATE item_template SET armor=armor*N; - Броня UPDATE item_template SET dmg_min1=dmg_min1*N; - минимальный дамаг первого урона оружия UPDATE item_template SET dmg_max1=dmg_max1*N; -максимальный дамаг первого урона оружия UPDATE item_template SET dmg_min2=dmg_min2*N; - минимальный дамаг второго урона оружия UPDATE item_template SET dmg_max2=dmg_max2*N; - максимальный дамаг второго урона оружия UPDATE item_template SET block=block*N; - Блок завышение брони, блока, дамага от оружия в N раз. Для занижения этих статистик меняем " * " на " / ".
А так же вот ID статов 0 ITEM_MOD_MANA 1 ITEM_MOD_HEALTH 3 ITEM_MOD_AGILITY 4 ITEM_MOD_STRENGTH 5 ITEM_MOD_INTELLECT 6 ITEM_MOD_SPIRIT 7 ITEM_MOD_STAMINA 12 ITEM_MOD_DEFENSE_SKILL_RATING 13 ITEM_MOD_DODGE_RATING 14 ITEM_MOD_PARRY_RATING 15 ITEM_MOD_BLOCK_RATING 16 ITEM_MOD_HIT_MELEE_RATING 17 ITEM_MOD_HIT_RANGED_RATING 18 ITEM_MOD_HIT_SPELL_RATING 19 ITEM_MOD_CRIT_MELEE_RATING 20 ITEM_MOD_CRIT_RANGED_RATING 21 ITEM_MOD_CRIT_SPELL_RATING 22 ITEM_MOD_HIT_TAKEN_MELEE_RATING 23 ITEM_MOD_HIT_TAKEN_RANGED_RATING 24 ITEM_MOD_HIT_TAKEN_SPELL_RATING 25 ITEM_MOD_CRIT_TAKEN_MELEE_RATING 26 ITEM_MOD_CRIT_TAKEN_RANGED_RATING 27 ITEM_MOD_CRIT_TAKEN_SPELL_RATING 28 ITEM_MOD_HASTE_MELEE_RATING 29 ITEM_MOD_HASTE_RANGED_RATING 30 ITEM_MOD_HASTE_SPELL_RATING 31 ITEM_MOD_HIT_RATING 32 ITEM_MOD_CRIT_RATING 33 ITEM_MOD_HIT_TAKEN_RATING 34 ITEM_MOD_CRIT_TAKEN_RATING 35 ITEM_MOD_RESILIENCE_RATING (рес, устойчивость) 36 ITEM_MOD_HASTE_RATING (Хаст. (весь)) 37 ITEM_MOD_EXPERTISE_RATING 38 ITEM_MOD_ATTACK_POWER 39 ITEM_MOD_RANGED_ATTACK_POWER 40 ITEM_MOD_FERAL_ATTACK_POWER (У друидов пухи дают другое количество силы атаки, через этот ID можно завышать или занижать этот показатель) 41 ITEM_MOD_SPELL_HEALING_DONE 42 ITEM_MOD_SPELL_DAMAGE_DONE 43 ITEM_MOD_MANA_REGENERATION 44 ITEM_MOD_ARMOR_PENETRATION_RATING 45 ITEM_MOD_SPELL_POWER 46 ITEM_MOD_ HEALTH_REGEN 47 ITEM_MOD_SPELL_PENETRATION 48 ITEM_MOD_BLOCK_VALUE
Пример операции завышения статов: 1. Выполняем запрос на завышение всех статов (запрос номер 1 см. выше) 2. Хотим занизить рес и хаст ( выполняем запрос номер 4 см. выше) Выполняем запросы ПООЧЕРЕДИ. Они будут одинаковы но в одном будет стоять id реса (35) а в другом id хаста (36) ТУТ МЫ ВДРУГ ЗАХОТЕЛИ СДЕЛАТЬ ВСЕ КАК БЫЛО 3. Выполняем обратные запросы. Сначало завышаем хаст и рес до уровня других статов, ну на сколько занизили на столько и завышаем теперь (выполняем запрос номер 3) 4. Ну а теперь просто занижаем все статы до начального уровня. На столько на сколько завышали в первом запросе. (выполняем запрос номер 2)
Все запросы делать в базу world. Спасибо за внимание.
|