Miss Control (Mv)

IRONNIC

Veteran
Veteran
Joined
Dec 24, 2017
Messages
30
Reaction score
2
First Language
French
Primarily Uses
RMMV
I need to modify the way miss is working. I whant miss to divide the dmg by 2 with a grey text. I am not a big fan of how miss work by default and I think dodging 100% of the damage is too good even if it doesnt happen often.

I whant Hit accuracy to become a good option for physical character rather then a necessity...

Do you think that possible to make a plugin for a better control of what
happen when you evade ? Some kind of miss or evasion control plugin ?

Thank you for your attention :)
 
Last edited:

IRONNIC

Veteran
Veteran
Joined
Dec 24, 2017
Messages
30
Reaction score
2
First Language
French
Primarily Uses
RMMV

IRONNIC

Veteran
Veteran
Joined
Dec 24, 2017
Messages
30
Reaction score
2
First Language
French
Primarily Uses
RMMV

caethyril

^_^
Veteran
Joined
Feb 21, 2018
Messages
2,088
Reaction score
1,508
First Language
EN
Primarily Uses
RMMZ
I wrote a quick plugin for this: view/download halfDmgOnMiss.js (Google Drive).
It's free to use and/or edit for whatever you like~

JavaScript:
/*:
 * @plugindesc Apply reduced damage on miss/evade.
 * @author Caethyril
 */

(function() {
'use strict';
    let missTone = [-92,-92,-92, 0];    // darker tone for "miss" damage popups
    let missMult = 0.5;                 // damage multiplier for "misses"
    let missFlag = false;               // used to track when to darken popups

    // Half damage on miss/evade
    (function(alias) {
        Game_Action.prototype.apply = function(target) {
            alias.apply(this, arguments);   // apply like default
            let result = target.result();
            if (!result.used) return;       // if not used, stop here
            if (!result.i****()) {          // if missed, manually do damage calculation
                missFlag = true;            // set flag so damage popup will be darkened
                result.missed = false;      // reset missed/evaded status
                result.evaded = false;
                if (this.item().damage.type > 0) {
                    result.critical = (Math.random() < this.itemCri(target));
                    var value = this.makeDamageValue(target, result.critical);
                    this.executeDamage(target, Math.floor(value * missMult));   // less dmg
                }
                this.item().effects.forEach(function(effect) {
                    this.applyItemEffect(target, effect);
                }, this);
                this.applyItemUserEffect(target);
            }
        };
    })(Game_Action.prototype.apply);

    // Apply greyscale to each digit if appropriate
    (function(alias) {
        Sprite_Damage.prototype.createChildSprite = function(baseRow, value) {
            let sprite = alias.apply(this, arguments);
            if (missFlag) sprite.setColorTone(missTone.slice());
            return sprite;
        };
    })(Sprite_Damage.prototype.createChildSprite);

    // Reset this plugin's flag when done with popup setup
    (function(alias) {
        Sprite_Damage.prototype.setup = function(target) {
            alias.apply(this, arguments);
            missFlag = false;
        };
    })(Sprite_Damage.prototype.setup);

})();

Edit: oh, ha, OK. Download it from the link, the code in the spoiler has been censored because I checked the "is Hit" method... :kaoslp:
 

IRONNIC

Veteran
Veteran
Joined
Dec 24, 2017
Messages
30
Reaction score
2
First Language
French
Primarily Uses
RMMV
It work thank you and sorry for the late realy late answer . I am realy happy with it , thats a realy cool plugin and i try to find something like that since 2018 . I like the evade gray damage , the only problem i have with it is once someone evade one attack, all the damage become gray even the normal one. Do you know how to fix that ?

Thank you you are awsome :)
 
Last edited:

caethyril

^_^
Veteran
Joined
Feb 21, 2018
Messages
2,088
Reaction score
1,508
First Language
EN
Primarily Uses
RMMZ
When you say "all the damage", do you mean:
  1. All damage for the rest of the battle?
  2. All damage to that target for the rest of the battle?
  3. All damage for that action (e.g. repeat attacks)?
  4. All damage for that hit (e.g. action effect multiple times in an action sequence)?
  5. Something else?
I tested points 1~4 with and without Yanfly's Battle Engine Core, including one action sequence with multiple consecutive action effect lines. I noticed that BEC will display "MISS" if the action misses, but the darker popups still seem to work OK for me, and not all popups are dark, even in the same action.

If you're seeing something different then maybe share what plugins you're using, as listed in the Plugin Manager. I suggest putting my little plugin somewhere near the bottom of the list, since it doesn't remove anything. :)
 

IRONNIC

Veteran
Veteran
Joined
Dec 24, 2017
Messages
30
Reaction score
2
First Language
French
Primarily Uses
RMMV
  1. All damage for the rest of the battle
but this problem was cause by the spoil censure version of your plugin I didnt realize i had both of them in the same time. So Never mind this issue I removed this version.

My problem is a new one. When I put my YEP_BattleEngineCore ON. The plugin dont work at all and I get normal miss but with a grey font. I have also YEP_X_BattleSysATB but i dont think thats the issue since he cant work without YEP_BattleEngineCore . The other plugin I use are Off right now so they doesnt seem to be a problem. I am trying to find the solution.
 
Last edited:

IRONNIC

Veteran
Veteran
Joined
Dec 24, 2017
Messages
30
Reaction score
2
First Language
French
Primarily Uses
RMMV
When I put it over the Battle engine core it work but I get the issue All damage are grey for the rest of the battle back for some reason. When I put it under the battle engine core I always got a grey miss text.
Maybe thats something with the core engine itself.

The suspect plugin to me are Yep_Battle_engine_Core or Yep_Core_engine.

I also try to restart them by redownload them but it doest work too.
 
Last edited:

ShadowDragon

Veteran
Veteran
Joined
Oct 8, 2018
Messages
2,895
Reaction score
1,029
First Language
Dutch
Primarily Uses
RMMV
you can try to modify MrTrivel_MinimumDmg which allow half dmg of the max on MISS,
while this plugin dont miss at all, but a min dmg of 1 to max of x (your choice)

if you can modify it to allow a formula, it can be nice though :)
 

caethyril

^_^
Veteran
Joined
Feb 21, 2018
Messages
2,088
Reaction score
1,508
First Language
EN
Primarily Uses
RMMZ
Ah, yep, I looked at the code a bit and it seems I might need a different approach for compatibility with Battle Engine Core. Will play around with it a bit and let you know if I can get something working. :kaoslp:

Do you happen to be using any other battle- or damage popup-related plugins?
 

IRONNIC

Veteran
Veteran
Joined
Dec 24, 2017
Messages
30
Reaction score
2
First Language
French
Primarily Uses
RMMV
Nothing for damage popup right now. Oh I just realize something. Only the visual aspect seem to be a problem. A Grey Miss overlap the half number cause even if it doesnt show the number , I still lose half HP like I whanted. I just cant see it corectly.
 
Last edited:

IRONNIC

Veteran
Veteran
Joined
Dec 24, 2017
Messages
30
Reaction score
2
First Language
French
Primarily Uses
RMMV
Maybe the problem is with those lines of code in Yanfly_BattleEngineCore.

-------

Game_Battler.prototype.startDamagePopup = function() {
var result = this.result();
if (result.missed || result.evaded) {
var copyResult = JsonEx.makeDeepCopy(result);
copyResult.hpAffected = false;
copyResult.mpDamage = 0;
this._damagePopup.push(copyResult);
}

------

or maybe this one

------

Sprite_Damage.prototype.setup = function(target) {
this._result = target.shiftDamagePopup();
var result = this._result;
if (result.missed || result.evaded) {
this.createMiss();
} else if (result.hpAffected) {
this.createDigits(0, result.hpDamage);
} else if (target.isAlive() && result.mpDamage !== 0) {
this.createDigits(2, result.mpDamage);
}
if (result.critical) {
this.setupCriticalEffect();
}
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

Couple hours of work. Might use in my game as a secret find or something. Not sure. Fancy though no? :D
Holy stink, where have I been? Well, I started my temporary job this week. So less time to spend on game design... :(
Cartoonier cloud cover that better fits the art style, as well as (slightly) improved blending/fading... fading clouds when there are larger patterns is still somewhat abrupt for some reason.
Do you Find Tilesetting or Looking for Tilesets/Plugins more fun? Personally I like making my tileset for my Game (Cretaceous Park TM) xD
How many parameters is 'too many'??

Forum statistics

Threads
105,863
Messages
1,017,053
Members
137,571
Latest member
grr
Top