Roguedeus

It's never too late to procrastinate...
Veteran
Joined
Mar 19, 2013
Messages
546
Reaction score
113
First Language
English
Primarily Uses
N/A
@Moogle_X


By the way. If someone is using this plugin, along with Equipment Learning plugin, they need to make sure this plugin is BELOW Equipment Learning.


Otherwise this function:


Moogle_X.TEB.Game_Actor_onBattleStart = Game_Actor.prototype.onBattleStart;
Game_Actor.prototype.onBattleStart = function() {
Moogle_X.TEB.Game_Actor_onBattleStart.call(this);
this.tebApplyInitBattleStateParty();
};


will cause issues with reported AP gains.


I am really still learning JS, but I think its because onBattleStart is normally a Game_Battler function. The Game_Actor version should invoke the derived class function normally, but for some reason it isn't.


This function... (from equipment learning)


Moogle_X.EQL.Game_Battler_onBattleStart = Game_Battler.prototype.onBattleStart;
Game_Battler.prototype.onBattleStart = function() {
Moogle_X.EQL.Game_Battler_onBattleStart.call(this);
this._eqlBattleAp = 0;
this._eqlNewSkill = [];
console.log("Moogle_X.EQL.Game_Battler_onBattleStart: " + this._eqlBattleAp);
};


Is being called as it should be.


But these functions... (from equipment learning)


Game_Actor.prototype.eqlGainAp = function(value) {
var total = value * this.eqlApBoost();
total = Math.round(total);
if ($gameParty.inBattle()) {
this._eqlBattleAp += total;
}
this.equips().forEach(function(eq) {
if (eq) {
eq.eqlSkill.forEach(function(skillId) {
if (!this._eqlAp[skillId]) this._eqlAp[skillId] = 0;

// Danger Zone (START)
if (!this.eqlCantLearnSkill($dataSkills[skillId])) {
this._eqlAp[skillId] += total; // Original code.
this.eqlCheckMastery(skillId); // Original code.
eval($dataSkills[skillId].eqlApGainEval);
}
// Danger Zone (END)

}, this);
}
}, this);
};

Game_Actor.prototype.eqlBattleAp = function() {
return this._eqlBattleAp;
};




Are iterating a the Game_Actor scope. Rather than the Game_Battler one. Which normally isn't an issue... Until Game_Actor gets its own onBattleStart function. For some reason, it breaks the aliasing...


Again... my best guess. :)
 
Last edited by a moderator:

Animebryan

Need more resources!
Veteran
Joined
Jul 31, 2012
Messages
458
Reaction score
243
First Language
English
Primarily Uses
RMMZ
Any chance of making Piercing Magic usable on skills & items too? Like how in the Final Fantasy series, the Ultima spell ignores reflect (items too for items that produce a spell's effect as well).
 
Last edited by a moderator:

miyanke

Veteran
Veteran
Joined
Dec 2, 2015
Messages
73
Reaction score
12
First Language
Spanish
Primarily Uses
RMMZ
How could I set one of these traits to be learned and used when a character reach a certain level in a class?
 

Moogle_X

Veteran
Veteran
Joined
Apr 25, 2015
Messages
157
Reaction score
320
First Language
English
@Roguedeus


I keep track of all the "new trait codes" that I used. I actually started from 110 instead of 127. There is no specific reason for it really. As long as nobody else use those numbers, it's fine.


If you are curious, this is the list of "new trait codes" that I used so far.

Game_BattlerBase.TRAIT_DIE_ZERO_MP   = 110;
Game_BattlerBase.TRAIT_ELEMENT_BOOST   = 111;
Game_BattlerBase.TRAIT_EQS_SLOT_PLUS = 112;
Game_BattlerBase.TRAIT_EQS_LIMIT_PLUS = 113;
Game_BattlerBase.TRAIT_EQL_AP_BOOST = 114;
Game_BattlerBase.TRAIT_PSV_COOLDOWN_DURATION = 115;
Game_BattlerBase.TRAIT_PSV_STYPE_COOLDOWN_DURATION = 116;
Game_BattlerBase.TRAIT_PSV_GLOBAL_COOLDOWN_DURATION = 117;
Game_BattlerBase.TRAIT_PSV_COOLDOWN_RATE = 118;
Game_BattlerBase.TRAIT_PSV_STYPE_COOLDOWN_RATE = 119;
Game_BattlerBase.TRAIT_PSV_GLOBAL_COOLDOWN_RATE = 120;
Game_BattlerBase.TRAIT_PSV_COOLDOWN_CHANGE = 121;
Game_BattlerBase.TRAIT_PSV_STYPE_COOLDOWN_CHANGE = 122;
Game_BattlerBase.TRAIT_PSV_GLOBAL_COOLDOWN_CHANGE = 123;
Game_BattlerBase.TRAIT_PSV_WARMUP_CHANGE = 124;
Game_BattlerBase.TRAIT_PSV_STYPE_WARMUP_CHANGE = 125;
Game_BattlerBase.TRAIT_PSV_GLOBAL_WARMUP_CHANGE = 126;
Game_BattlerBase.TRAIT_TEB_VICTORY_CRY = 127;
Game_BattlerBase.TRAIT_TEB_CATNIP = 128;
Game_BattlerBase.TRAIT_TEB_IBS = 129;
Game_BattlerBase.TRAIT_TEB_IBSP = 130;
Game_BattlerBase.TRAIT_TEB_DISCOUNT = 131;
Game_BattlerBase.TRAIT_TEB_OVERCHARGE = 132;
Game_BattlerBase.TRAIT_OBS_AP_BOOST = 133;
Game_BattlerBase.TRAIT_TEB_STATIC_HP_REGEN = 134;
Game_BattlerBase.TRAIT_TEB_STATIC_MP_REGEN = 135;
Game_BattlerBase.TRAIT_TEB_BER_HP_STATIC = 136;
Game_BattlerBase.TRAIT_TEB_BER_HP_PERCENTAGE = 137;
Game_BattlerBase.TRAIT_TEB_BER_MP_STATIC = 138;
Game_BattlerBase.TRAIT_TEB_BER_MP_PERCENTAGE = 139;
Game_BattlerBase.TRAIT_TEB_PIERCING_MAGIC = 140;
Game_BattlerBase.TRAIT_TEB_IGNORE_COUNTER = 141;
Game_BattlerBase.TRAIT_TEB_NATURAL_CURE = 142;
Game_BattlerBase.TRAIT_TEB_SPELLBOUND = 143;
Game_BattlerBase.TRAIT_TEB_STATIC_PARAMETER_BONUS = 144;
Game_BattlerBase.TRAIT_TEB_FHB_RATE = 145;
Game_BattlerBase.TRAIT_TEB_FHB_STATIC = 146;
Game_BattlerBase.TRAIT_TEB_BER_TP_STATIC = 147;
Game_BattlerBase.TRAIT_TEB_BER_TP_PERCENTAGE = 148;
Game_BattlerBase.TRAIT_TEB_CHB_RATE = 149;
Game_BattlerBase.TRAIT_TEB_CHB_STATIC = 150;
Game_BattlerBase.TRAIT_TEB_MANA_SWITCH = 151;
Game_BattlerBase.TRAIT_TEB_POWER_SWAP = 152;
Game_BattlerBase.TRAIT_TEB_GUARD_SWAP = 153;



About actor's onBattleStart function...


I wonder if making new onBattleStart method for Game_Actor is a bad idea or not.


I am still new to JavaScript as well. Currently, my approach in scripting is basically "as long as it works, it's ok".


I don't really take consideration about "code efficiency" and stuff like that. :p
 

Luth

Veteran
Veteran
Joined
Apr 29, 2014
Messages
132
Reaction score
56
First Language
French
Primarily Uses
What about :


-a "Sturdy" (Pokémon) ability : When the HP of the character are 100%,  he can't get one-shot, and will survive with 1 hp.


-a "Protect Girls" (Final Fantasy IX) ability : It's actually the same thing than "Substitute" that covers an ally when low, but it's specific to girls. Being able to protect a specific ally would be great : Based on a variable (for a friendship system ?), between members of a race, protects youngers etc.


-a "Auto-Life" (Final Fantasy IX... again !) ability : Once a character reaches 0 HP with "auto-life" on them, they will automatically revive with low hp. Occurs once per battle.


Do you think you would be able to make it :)  ?
 

moldy

Veteran
Veteran
Joined
Nov 15, 2015
Messages
193
Reaction score
29
First Language
English
Primarily Uses
Owesome :>


Is there a way to combine Full HP Bonus and Regeneration so if an actor is full HP by the end of each of their turns, the whole party regenerates some HP? This is from Etrian Odyssey.
 

Ilan14

Veteran
Veteran
Joined
Nov 28, 2015
Messages
220
Reaction score
69
First Language
Spanish
-a "Sturdy" (Pokémon) ability : When the HP of the character are 100%,  he can't get one-shot, and will survive with 1 hp.



This just reminded me of the Second Chance skill of Kingdom Hearts, which allowed a character to keep 1 HP after recieving a normally fatal attack. I think this one would be also a good trait to add to the plugin. 
 

Luth

Veteran
Veteran
Joined
Apr 29, 2014
Messages
132
Reaction score
56
First Language
French
Primarily Uses
This just reminded me of the Second Chance skill of Kingdom Hearts, which allowed a character to keep 1 HP after recieving a normally fatal attack. I think this one would be also a good trait to add to the plugin. 



Yes, Kingdom Hearts is pretty awesome, it's actually my favorite along FF9 :)


Reminds me of another ability from FF9 : "Restore HP" - If the user has 1/6 of his max HP or less and takes damage from an enemy attack and survive, he recovers 50% of his max HP.
 

Grilled Mormons

Villager
Member
Joined
Feb 15, 2016
Messages
12
Reaction score
0
First Language
English
Primarily Uses
N/A
ff13 had a few interesting ones.


Pack mentality - This could be a trait that activates if all party members belong to the same race.


Jungle Law - Trait that has different effect depending on if the actor has higher/lower hp than target.


Role resonance - Activates depending on how many party members share the same role.


Ally KO - Trait activates if an ally falls.


Ethereal Mantle/Magic Damper - 100% resistance to a type of attack unable to be healed with magic.
 
Last edited by a moderator:

Chorvaqueen

Professional Tonio Apologist
Member
Joined
Nov 7, 2015
Messages
28
Reaction score
20
First Language
English
Primarily Uses
RMVXA
>Saw RO as the reference, I'm extremely pleased.

Thank you, I was looking for a way to implement discounts exactly as the RO merchant's passive skill.
 

M.I.A.

Goofball Extraordinaire
Veteran
Joined
Jul 13, 2012
Messages
917
Reaction score
785
First Language
English
Primarily Uses
I really dig the Discount and Overcharge!! Now I have to squeeze them into my project. :)

Great work!!
-MIA
 

Raol

Cat Magic Wizard
Veteran
Joined
Dec 10, 2017
Messages
50
Reaction score
98
First Language
Italian
Primarily Uses
RMMV

Alphaistimz

AlphaDio Production
Veteran
Joined
Jul 19, 2018
Messages
96
Reaction score
10
First Language
Indonesian
Primarily Uses
RMMV
hi @Moogle_X
I'm looking for a plugin which has flat parameter bonuses. However, I have SKILL parameter which is in the same degree with atk, def, etc while completely removing MP. (Maybe it works if the parameters are named 'parameter 1', 'parameter 2', and so on
Does yours work for my case? I've found another plugin for that, but the author told me that it won't work for my case...
 

WolfTJD

Villager
Member
Joined
Jul 12, 2014
Messages
12
Reaction score
3
First Language
English
Primarily Uses
RMMV
That Discount and Overcharge was something I needed, but didn't know until I saw it in print ...

Thanks for this GREAT plugin!!
 

Latest Threads

Latest Posts

Latest Profile Posts

Devil May Cry-Style Action Shooter in RPG Maker 2000! | RPG Maker News #75

So many good stat names, how do people chose!? :p
I am often just about to give in and ask for help in the forums, when I eventually figure things out myself. Spent almost the whole day with a minor issue, but in the and it's so satisfying that I didn't need to open a thread :D


First time for my AI to do a voice-over for a developer diary.
It has been a long way to make a voice so beautiful.:kaojoy:
The voice in some old trailers is just disastrous. :kaoswt2:

Forum statistics

Threads
112,344
Messages
1,067,616
Members
145,989
Latest member
VladoZ
Top