From 29c065193627bb85bc838b50f5c7d255e5894d85 Mon Sep 17 00:00:00 2001 From: skotlex Date: Wed, 8 Feb 2006 01:53:52 +0000 Subject: - Removed the max level configs from battle/exp.txt - Now NPC_POWERUP uses SC_INCATKRATE instead of SC_EXPLOSIONSPIRITS for enhancing damage. Instead of +1k atk per skilllv, it is +50% atk per skilllv. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5220 54d463be-8e91-2dee-dedb-b68131a5f0ec --- Changelog-Trunk.txt | 4 ++++ conf-tmpl/battle/exp.conf | 14 ++------------ src/map/skill.c | 5 +++-- src/map/status.c | 10 ++++++---- 4 files changed, 15 insertions(+), 18 deletions(-) diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index be54eec80..f3f8165d0 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -5,6 +5,10 @@ IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. EV GOES INTO TRUNK AND WILL BE MERGED INTO STABLE BY VALARIS AND WIZPUTER. -- VALARIS 2006/02/07 + * Removed the max level configs from battle/exp.txt [Skotlex] + * Now NPC_POWERUP uses SC_INCATKRATE instead of SC_EXPLOSIONSPIRITS for + enhancing damage. Instead of +1k atk per skilllv, it is +50% atk per + skilllv. [Skotlex] * Fixed char server changing the save/last point to new grounds in certain situations. [Skotlex] * Fixed SG_STAR_ANGER not getting it's damage bonus at all. [Skotlex] diff --git a/conf-tmpl/battle/exp.conf b/conf-tmpl/battle/exp.conf index 513d5eeab..494081d08 100644 --- a/conf-tmpl/battle/exp.conf +++ b/conf-tmpl/battle/exp.conf @@ -25,6 +25,8 @@ // 1000 miliseconds is 1 second. // Unless otherwise specified, the minimum value is 0 for all // features. +//Note 4: The max level of classes is specified in the exp table. +// See files db/exp.txt and db/exp2.txt to change them. //-------------------------------------------------------------- // Rate at which exp. is given. (Note 2) (Note 3) @@ -87,15 +89,3 @@ disp_zeny: no // If no, an equation will be used which preserves statpoints earned/lost // through external means (ie: stat point buyers/sellers) use_statpoint_table: yes - -// Maximum levels. The actual maximum level you can acquire is the minimum between the max -// defined by the experience table and these values. -// If a character has a level higher than this maximum, it will not be reverted, it just won't -// be able to get any more levels. -// The @/# and script commands to level up will be capped by these max, not by the exp table's. -//NOTE: The default max base is left at 255 to avoid problems with already existing chars. -//NOTE: Advanced Job level refers only to advanced second classes (not high novice/first-class) -max_base_level: 255 -max_job_level: 50 -max_super_novice_level: 99 -max_advanced_job_level: 70 diff --git a/src/map/skill.c b/src/map/skill.c index 2b4ab9394..789eb1f62 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -5225,8 +5225,9 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in pc_breakshield(dstsd); break; - case NPC_POWERUP: //NPC”š—ô”g“® - status_change_start(bl,SC_EXPLOSIONSPIRITS,skilllv,0,0,0,skilllv * 60000,0); + case NPC_POWERUP: + // +25% attack per skill level? It's a guess... [Skotlex] + status_change_start(bl,SC_INCATKRATE,25*skilllv,0,0,0,skilllv * 60000,0); // another random guess xP clif_skill_nodamage(src,bl,skillid,skilllv,1); status_change_start(bl,SC_INCALLSTATUS,skilllv * 5,0,0,0,skilllv * 60000,0); diff --git a/src/map/status.c b/src/map/status.c index 1a7dbb3d6..4ae4b81f7 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -2140,8 +2140,6 @@ int status_calc_watk(struct block_list *bl, int watk) watk += watk * 3; if(sc->data[SC_NIBELUNGEN].timer!=-1 && bl->type != BL_PC && (status_get_element(bl)/10)>=8) watk += sc->data[SC_NIBELUNGEN].val2; - if(sc->data[SC_EXPLOSIONSPIRITS].timer!=-1 && bl->type != BL_PC) - watk += (1000*sc->data[SC_EXPLOSIONSPIRITS].val1); if(sc->data[SC_CURSE].timer!=-1) watk -= watk * 25/100; if(sc->data[SC_STRIPWEAPON].timer!=-1 && bl->type != BL_PC) @@ -4536,7 +4534,9 @@ int status_change_start(struct block_list *bl,int type,int val1,int val2,int val val4 = gettick(); //Store time at which you started running. calc_flag = 1; break; - + case SC_INCATKRATE: /* ATK%㸠*/ + if (bl->type == BL_MOB) + sc->opt3 |= 8; //Simulate Explosion Spirits effect for NPC_POWERUP [Skotlex] case SC_CONCENTRATE: /* W’†—ÍŒüã */ case SC_BLESSING: /* ƒuƒŒƒbƒVƒ“ƒO */ case SC_ANGELUS: /* ƒAƒ“ƒ[ƒ‹ƒX */ @@ -4558,7 +4558,6 @@ int status_change_start(struct block_list *bl,int type,int val1,int val2,int val case SC_INCFLEERATE: /* FLEE%㸠*/ case SC_INCMHPRATE: /* MHP%㸠*/ case SC_INCMSPRATE: /* MSP%㸠*/ - case SC_INCATKRATE: /* ATK%㸠*/ case SC_INCMATKRATE: case SC_INCDEFRATE: case SC_INCSTR: @@ -5196,6 +5195,9 @@ int status_change_end( struct block_list* bl , int type,int tid ) case SC_ENERGYCOAT: /* ƒGƒiƒW?ƒR?ƒg */ sc->opt3 &= ~4; break; + case SC_INCATKRATE: //Simulated Explosion spirits effect. + if (bl->type != BL_MOB) + break; case SC_EXPLOSIONSPIRITS: // ”š—ô”g“® sc->opt3 &= ~8; break; -- cgit v1.2.3-70-g09d2