Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Battle2k3 Notification window + frame delays #2357

Closed
fmatthew5876 opened this issue Sep 25, 2020 · 2 comments · Fixed by #2364
Closed

Battle2k3 Notification window + frame delays #2357

fmatthew5876 opened this issue Sep 25, 2020 · 2 comments · Fixed by #2364

Comments

@fmatthew5876
Copy link
Contributor

fmatthew5876 commented Sep 25, 2020

Just like in 2k battle, the 2k3 battle notifications have a mechanic where there are 2 times. There is a 2k3 battle "Wait" function which takes 2 parameters.

The first value is an unconditional wait. RPG_RT will always wait this number of frames. The second value is a conditional wait. RPG_RT will wait for those frames unless you press the decision key or the shift key. Finally, during this wait if you hold the escape key, it will pause the battle until you release the key.

For example if a wait is (10, 80), it will wait 10 frames, and then 80 additional frames, which can be skipped if decision key is pressed, or delayed indefinately if escape is held.

Notification Messages

The notifcation window is what pops up and dissapears for battle start, skills etc.. This window is followed by a Wait(t1, t2) which dictates how long it is displayed. While you can use the input keys to affect the wait, you cannot interact directly with this message window.

Battle End Messages

This window shows victory, defeat, exp, gold, and items. This is a regular message window, with a single line. It responds to key input like any other regular message box does. You progress using the decision key and wait is not used here.

Input Keys

All input keys react to whether the key down or up state, not the event of key pressing.

Input Action
Decision Immediately cancels the window after the first wait frames have passed
Shift Same as decision
Escape The notification window is kept open and the battle scene is paused for as long as you hold the escape key. The frame timer however still ticks down to 0.

Waits and notifications

Battle Phase Message Waits Details
Init Start (10, 80) On battle start if the start message is not empty
Init BattleInitiative (30, 70) Immediately after battle start. If condition is initiative, surround, or normal and the first_strike flag is set
Init (30, 70) If BattleInitiative message was not displayed, and the condition is back or pincers, does a wait with no message
Victory (30, 30) After playing victory music, but before displaying the battle awards (exp, gold, item, etc..) the game pauses for 30 frames with no message.
Defeat (60, 60) After playing game over music, but before displaying defeat message, the game pauses for 60 frames with no message.
EndBattleScene (30, 30) Only in battle test mode! After the battle ends and the screen is erased. If battle test mode, RPG_RT waits 30 frames while screen is erased before exiting. I guess this is to make it so the RPG_RT window doesn't disappear immediately after transitioning out, maybe the application exit a bit more smooth.
EscapeFailure EscapeFailure (10, 30) If actor escape command failed
EscapeSuccess (10, 30) When processing escape action, waits immediately after playing flee sound effect
Action "Double Attack " (10, 40) When a monster does a double attack, before the action is processed
Action "Defend" (10, 40) When a monster defends, before the action is processed
Action "Observe" (10, 40) When a monster observers, before the action is processed
Action "Charge Up" (10, 40) When a monster charges, before the action is processed
Action "Self-Destruct" (10, 40) When a monster self destructs, before the action is processed
Action "Escape" (10, 40) When a monster escapes, before the action is processed
Action Skill name (15, 50) When a skill or skill item is used
Action Item Name (10, 40) When a non-skill item is used

DynRPG Address:

Address Class Function Comment
004974C4 SceneBattle Wait Has all above described wait mechanics
@ghost
Copy link

ghost commented Sep 27, 2020

Added a PR (#2364) which tries to fix this issue.

@fmatthew5876
Copy link
Contributor Author

fmatthew5876 commented Sep 29, 2020

This Wait(30,30) after screen erase in battletest mode also happens in 2k battle system.

@Ghabry Ghabry added this to the 0.6.3 milestone Oct 11, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging a pull request may close this issue.

3 participants