Meyst

Villager
Member
Joined
Aug 22, 2022
Messages
11
Reaction score
4
First Language
French
Primarily Uses
RMVXA
Hi everyone,

I am currently facing a (small but annoying) issue with a script I've been using, Quack's chatter messages.
The script is available on this link: Quack Chatter Messages script

The problem is as follows:
- I create an event, showing a normal message, I decide to show it in the middle of the screen.
- When testing, all works fine, but just after the message is closed (on pressing action button), the message appears for a very short duration at the bottom of the screen, like it's blinking once.

I tried displaying messages in other situations, whether I set it up in the middle or top of screen: the issue always comes back.
It does not appear when messages are setup on the bottom of the screen (but the blink wouldn't be visible, I guess).

I am using other scripts, notably Pop Message from Yami (as this chatter message script is an addon of it), YEA Message system and Yami Basic module, to get it all working properly.
The only issue I have faced with this script was a conflict between both scripts (Yami's pop message and Chatter messages) that led to the impossibility to save the game. I used the script proposed at the bottom of this page and it solved it.

I tested my project while removing some scripts, and it appeared that this Chatter message script is really the culprit.
Hence my request: can someone have a look at that Quack Chatter Messages script, and find out where the issue comes from? Is there a way to fix the script to avoid this annoying blinking?

Thanks everyone in advance!
 

Andar

Regular
Regular
Joined
Mar 5, 2013
Messages
39,283
Reaction score
11,467
First Language
German
Primarily Uses
RMMV
con you show a screenshot of your event page to see what exactly you commanded there?
 

Meyst

Villager
Member
Joined
Aug 22, 2022
Messages
11
Reaction score
4
First Language
French
Primarily Uses
RMVXA
Hi Andar,

Thank you for your attention. Please find below a screenshot of my event (it's in the cutscene)

1662387921986.png


It's in french; I start with displaying a message, no portrait/transparent background / middle of screen,
Then I teleport my hero to the map + local switch activated to end the event properly.
Also the event is set to Autorun.
 

Andar

Regular
Regular
Joined
Mar 5, 2013
Messages
39,283
Reaction score
11,467
First Language
German
Primarily Uses
RMMV
Please find below a screenshot of my event
no, that is not a screenshot of your event. that is a tiny cutoff of a partial screenshot, missing a lot of important information about event properties.
can you give us a full screenshot instead please? The language doesn't matter because we know which properties are where and what they most likely say.

by the way - is that transfer on the same map? If it goes to a different map the control switch may or may not be processed. because if the player leaves the map all events on the map get erased and it depends on the gameflow whether that event is long enough in memory to process the command after a transfer.
 

Meyst

Villager
Member
Joined
Aug 22, 2022
Messages
11
Reaction score
4
First Language
French
Primarily Uses
RMVXA
Additionally, please find below 2 screenshots:
1/ The message once all letters are written, before closing manually the message
screen1.png

2/ I managed to catch the short moment where the message displays at the bottom before fully disappearing:
screen2.png
 

Meyst

Villager
Member
Joined
Aug 22, 2022
Messages
11
Reaction score
4
First Language
French
Primarily Uses
RMVXA
no, that is not a screenshot of your event. that is a tiny cutoff of a partial screenshot, missing a lot of important information about event properties.
can you give us a full screenshot instead please? The language doesn't matter because we know which properties are where and what they most likely say.

by the way - is that transfer on the same map? If it goes to a different map the control switch may or may not be processed. because if the player leaves the map all events on the map get erased and it depends on the gameflow whether that event is long enough in memory to process the command after a transfer.

Sorry for the misunderstanding.
Here is a larger screenshot:
1662388584829.png

The hero is transferred to a different map, called C3.
I tried also on other maps without the transfer of the hero, and the same issue happened there.
But it is good to know, that once the player leaves, the event is erased. I'll check if another order would impact the issue.
 

Andar

Regular
Regular
Joined
Mar 5, 2013
Messages
39,283
Reaction score
11,467
First Language
German
Primarily Uses
RMMV
can you try the same message on a different map, just not as an autorun but manually triggered by the player approaching and action-triggering? And are there any other autoruns or parallel processes on that specific map?

Basically I want to check if this is a timing or looping problem. If not it is likely something in the scripts themselves, but that would go a bit beyond my current knowledge of Ace (haven't had it installed in about five to ten years).
 

Meyst

Villager
Member
Joined
Aug 22, 2022
Messages
11
Reaction score
4
First Language
French
Primarily Uses
RMVXA
I just tried again, with the player approaching and action-triggering as you suggested.
I reused the same map, but these is no parallel process on it, just that one event I added.
The issue still appears:
map2.png


I also tested on other maps, it appears also with normal message background.

Please find below the screenshot of the eventing:

1662394223933.png
 

kyonides

Reforged is laughable
Regular
Joined
Nov 17, 2019
Messages
1,740
Reaction score
888
First Language
English
Primarily Uses
RMXP
Just as a test, can you try to insert a new command below that window? Like Wait for and set it to a frame or 2... Does the message box jump also take place then?
 

Roninator2

Gamer
Regular
Joined
May 22, 2016
Messages
5,115
Reaction score
1,498
First Language
English
Primarily Uses
RMVXA
Does the message box jump also take place then?
I had tested that before with this.
I have a possible fix.
The issue seems to be from the chatter script where it does a clear function.
The message is not completely gone and the system tries to show it again in the default location.
@quack_msg_source.clear
which is a creation of Window_Quack_Message < Window_Message
Ruby:
  def initialize(msg_source, zz)
    super()
    self.z = zz
    @quack_msg_source = msg_source
which is pushed from Window_Message -> @quack_msgs.push(Game_Message.new)

When I was outputting the position for the message it would show
0
0
0
... for a message on top, then when closing the window more numbers show up
2
2

Then it was done.

I tested a lot of variations and if I put the position variable in the initialize instead of the clear then the problem is fixed, but then the position would not change unless you did another text window.
Short of using script commands if you need to change the window if you did script commands to show text, then I'm not sure, but this works as long as you use the default text box command.
But if you did a \bm message and then a normal message, the text would be at the same position as the \bm message.

Perhaps @kyonides can pick out what needs to change.

Ruby:
class Scene_Map < Scene_Base
  alias r2_chatter_pop_dispose_transfer pre_transfer
  def pre_transfer
    $game_message.clear_chatter
    $game_message.clear
    $game_message.position = 2
    r2_chatter_pop_dispose_transfer
  end
end
class Game_Message
  def initialize
    clear
    @visible = false
    @position = 2
  end
  def clear
    @texts = []
    @choices = []
    @face_name = ""
    @face_index = 0
    @background = 0
    @choice_cancel_type = 0
    @choice_proc = nil
    @num_input_variable_id = 0
    @num_input_digits_max = 0
    @item_choice_variable_id = 0
    @scroll_mode = false
    @scroll_speed = 2
    @scroll_no_fast = false
  end
end

The pre transfer was because I got an error when using a <cm:X> message and transferring.
But also gave a way to reset the position
 

Latest Threads

Latest Profile Posts

An optimal price for an indie game on Steam also needs to be accompanied by an optimal sales discount %. For a solo indie game, I think the optimal price is where it should be low enough that a single Steam card can be used to buy it, after tax. A few cents the wrong direction can potentially mean someone who was gifted a Steam card can't buy the game, then picks something else to buy.
I've been so lazy about doing art but I finally decided to buckle down and get some work done on the party!

aa312ffbcd667933.png

3d554012e96e4526.png
SallyFaceTest.png
Testing the first face in battle!

Forum statistics

Threads
134,684
Messages
1,249,697
Members
177,418
Latest member
peerawatz
Top