MBS - Map Zoom and Galv - MV Timed Message Popups

Acer2020

Villager
Member
Joined
May 1, 2012
Messages
23
Reaction score
20
First Language
English
Primarily Uses
Hello everyone, hope your all well. I'm having some compatibility issues with two plugins:
MBS - Map Zoom and MV Timed Message Popups.

Basically, the message popups work fine at normal scale. However, when I zoom into any map, the popups do not anchor to events as intended.
Unfortunately i'm not knowledgeable enough with JS to attempt to fix it myself.:aswt:
Any help or advice would be greatly appreciated. Thanks!

The plugins in question are:
https://forums.rpgmakerweb.com/index.php?threads/mbs-map-zoom.48267/
https://galvs-scripts.com/2016/03/23/mv-timed-message-popups/

I created a quick demo to showcase the problem. It's under 1MB:
 

Attachments

Acer2020

Villager
Member
Joined
May 1, 2012
Messages
23
Reaction score
20
First Language
English
Primarily Uses
Okay, made a bit of progress!

By adding
var scale = $gameMap.zoom;
this.scale = new PIXI.Point(scale.x, scale.y);
under line 442 of the Timed Message Popups plugin, the message boxes now zoom in with the screen.

Now trying to offset the window so it lines up with the target event.

upload_2019-2-27_22-47-59.png
 

bazrat

Pixel Game Maker MV
Veteran
Joined
Oct 15, 2018
Messages
240
Reaction score
168
First Language
English
Primarily Uses
Other
Okay, made a bit of progress!

By adding
var scale = $gameMap.zoom;
this.scale = new PIXI.Point(scale.x, scale.y);
under line 442 of the Timed Message Popups plugin, the message boxes now zoom in with the screen.

Now trying to offset the window so it lines up with the target event.

View attachment 110378
Wow thank you for posting this. These plugins are so important for my game and was giving me the same issue. Ive had some other weird issues with galvs plugins where his plugin will turn into another plugin. Message styles and timed message popups and cam control and zoom plugin do it. Its really bizarre. But man galv made some good plugins in his days!

Also dont know if you have this issue too but when you increase font size the times pop up window doesnt wrap the text real well

Keep posted if you find out anything else!
 
Last edited:

Acer2020

Villager
Member
Joined
May 1, 2012
Messages
23
Reaction score
20
First Language
English
Primarily Uses
Hahaha, glad to hear i'm not the only one wanting these plugins to work together! I've never had that experience with Galv's plugins transforming into others. That does sound bizarre.

I have, however, encountered the font size issue in the pop up window, and I have found some kind of temporary solution!

Change line 298 of Timed Message Popups plugin from
var h = this.fittingHeight(this._txtArray.length);
to
var h = this.fittingHeight(2);

That 2 can be replaced by whichever number you need to make the window look good with your font size.
The problem with this solution is that it changes the window size for all popups, not just the ones with big fonts. Again i'm far from a JS expert, but as I understand it the plugin extends the window size based only on the length of the message, and not on the height or size of the text.

I'll keep posting if I come across any more solutions. Holler if you also find anything. :ohappy:
 

bazrat

Pixel Game Maker MV
Veteran
Joined
Oct 15, 2018
Messages
240
Reaction score
168
First Language
English
Primarily Uses
Other
Thats good to know, what ive been doing is if the size is too big i hit return to go to a second line and add a space, that makes a blank link underneath it, still doesnt work perfect though :/

Another thing i would like to figure is how to get rid of the timedpop animation the window makes when it pops up. I have dialogue that happens back to back and i make it look like its on the same window(like a chat) and it would be awesome if it could just instantly pop (skip that short animation it makes) and make it look smoother
 

Acer2020

Villager
Member
Joined
May 1, 2012
Messages
23
Reaction score
20
First Language
English
Primarily Uses
The opening animation can be removed my changing line 307 of the message popups plugin from:
this.openness = 0;
to:
this.openness = 255;

Same problem as before though, this will remove the opening animation for all popups.
It's also worth noting that this doesn't remove the closing animation. However if you use the script call: Galv.Mpup.clear(); one frame before the popup window closes and immediately open a new pop up window after the script call, it will create the same effect as the absence of a closing animation.
 

bazrat

Pixel Game Maker MV
Veteran
Joined
Oct 15, 2018
Messages
240
Reaction score
168
First Language
English
Primarily Uses
Other
The opening animation can be removed my changing line 307 of the message popups plugin from:
this.openness = 0;
to:
this.openness = 255;

Same problem as before though, this will remove the opening animation for all popups.
It's also worth noting that this doesn't remove the closing animation. However if you use the script call: Galv.Mpup.clear(); one frame before the popup window closes and immediately open a new pop up window after the script call, it will create the same effect as the absence of a closing animation.
wow this is exactly what i needed. the opening one was the real problem because the way they overlap the closing one usually has no visual ques. duuuuude this is game changing. glad i stumbled upon this post lol :D
 

Acer2020

Villager
Member
Joined
May 1, 2012
Messages
23
Reaction score
20
First Language
English
Primarily Uses
wow this is exactly what i needed. the opening one was the real problem because the way they overlap the closing one usually has no visual ques. duuuuude this is game changing. glad i stumbled upon this post lol :D
Great news! Glad I could help and look forward to seeing how you use it in your future projects!
 

Wisestwol

Villager
Member
Joined
Nov 6, 2017
Messages
7
Reaction score
0
First Language
English
Primarily Uses
RMMV
Hey, I'm having essentially the same issue with this.

I'm using GALV's Message Styles for popup text and a permanent zoom plugin to basically force a lower resolution on the map while maintaining higher resolution menus.

I have the same problem with popups not anchoring to events. Did you ever find a way around this?
 

Ellie Jane

Veteran
Veteran
Joined
Mar 17, 2012
Messages
761
Reaction score
1,486
First Language
English (UK)
Primarily Uses
RMMV
Hi guys, I think I have solved it,

Edited the updateFloatPlacement function in Galv's message script, multiplying some figures by the MBS Map Zoom variables.

Code:
Window_Message.prototype.updateFloatPlacement = function() {
    if (!this._tailSprite) this.createWindowTail();
    if (this.pTarget == null) {
        this._tailSprite.opacity = 0;
        return;
    };
  
    if (this.openness < 255) this._tailSprite.opacity = 0;
    // Update the text box position

  
    // init pos X,Y
    var posX = this.pTarget.screenX() * $gameMap.zoom.x - this.width / 2;
    var posY = this.pTarget.screenY() * $gameMap.zoom.y + this.yOffset;
  
    // set posX
    if (posX + this.width > Graphics.boxWidth) {
        posX = Graphics.boxWidth - this.width;
    } else if (posX < 0) {
        posX = 0;
    };
    this.x = posX;
    this._tailSprite.x = this.pTarget.screenX() * $gameMap.zoom.x - this.x;
  
    // set posY
    if (posY + this.height > Graphics.boxHeight) {
        var maxY = Graphics.boxHeight - this.height;
        posY = Math.min(maxY,this.pTarget.screenY() * $gameMap.zoom.y - Galv.Mstyle.yOffet - this.height);
        this.tailPos = 0;
    } else if (posY < 0) {
        posY = Math.max(this.pTarget.screenY() * $gameMap.zoom.y + 15,0); // position box under when it hits top of screen
        this.tailPos = 2;
    } else {
        this.tailPos = $gameMessage._positionType;
    };
    this.y = posY;
  
  
    if (this.openness > 200) {
        if (this.tailPos == 1) { // MID
            this._tailSprite.opacity = 0;
        } else if (this.tailPos == 2) { // BOT
            this._tailSprite.y = 2;
            this._tailSprite.scale.y = -1;
            this._tailSprite.opacity += 50;
        } else if (this.tailPos == 0) { // TOP
            this._tailSprite.scale.y = 1;
            this._tailSprite.y = this.height - 2;
            this._tailSprite.opacity += 50;
        };
    };
  
    this.updateFloats(this.x,this.width,this.y,this.height);
};
Though I have not done much testing with this yet so I cannot take any responsibility if it breaks your game. I was also very sloppy and just edited my base script for this plugin, not sure how to make it an extra plugin you can just plug and play with.

Looks like this:

 

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

Latest Threads

Latest Posts

Latest Profile Posts

I've noticed that more videos on YouTube have these segmented bookmark things in the videos themselves. It's nice being able to jump to parts of a video you want, and to have them all clearly labelled.
Why you do this? Now I have to buy the new RPG Maker xD
I've always dreaded planning for my games so I just didn't plan at all. That... didn't work out after all. :kaosigh:
Turns out it can be kind of fun if you keep the scope small and don't take it way too seriously.
well... for the first time in months... I feel like my game is headed towards something again. I finally have it where I won't be drawing battle assets for the rest of the year...

Forum statistics

Threads
99,568
Messages
966,711
Members
131,218
Latest member
Xamond
Top