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

Collection of RPG_RT bugs for compatibility #1486

Open
fmatthew5876 opened this issue Nov 6, 2018 · 42 comments
Open

Collection of RPG_RT bugs for compatibility #1486

fmatthew5876 opened this issue Nov 6, 2018 · 42 comments

Comments

@fmatthew5876
Copy link
Contributor

fmatthew5876 commented Nov 6, 2018

There are various RPG_RT bugs out there which may be depended on by different games. I've created this issue to catalog them. At some point we may want to enable a compatibility mode switch for some of these bugs if we find games need them.

Please list your known RPG_RT bugs here:

@CherryDT
Copy link

CherryDT commented Nov 6, 2018

I have a huge list.

Maybe I should do what I wanted to do a while ago while discussing how to approach any possible future fixes: Open a GitHub repo for RM2k(3) but for issues only, similar to https://github.com/Microsoft/wsl

Thing is just that it's a huge amount of work.

@Ghabry
Copy link
Member

Ghabry commented Nov 6, 2018

Flash saturation and Flash period (?) are not saved in the savegame.

int flash_sat; // RPGMaker bug: this isn't saved

In ShowPicture (2k only): When ShowPicture has no effect, then effects of MovePicture are ignored:

// Possibly a bug(?) in RM2k: if Show Picture command has no

The "Moving into an event triggers it's interpreter (for the "move away feature")" results in "Waits" to finish faster (twice as fast when one event/player runs into it, three times when 2 and so on):

// Placed after the interpreter update because multiple updates per frame are allowed.

Some japanese games use "-1" (which is the ID of the party when not in a Vehicle) as the target vehicle for "SetVehicle" which allows moving the party around (even across maps!) without triggering a transition. We don't fully emulate this (a normal teleport is executed):

// SetVehicleLocation moves the party, too, when she is in the referenced

We emulate all these bugs because this really breaks games when you don't do it!

@Ghabry
Copy link
Member

Ghabry commented Nov 6, 2018

iirc the "Target select" window in the game menu (where you select a party member to use a item/skill on in the menu) ignores the "Half SP cost" attribute and shows the full SP cost but when executing the value is correct (halved).

@CherryDT
Copy link

CherryDT commented Nov 6, 2018

Flash saturation and Flash period (?) are not saved in the savegame.
Player/src/game_screen.h

Are you sure? It should be saved as SaveScreen.flash_current_level and SaveScreen.flash_time_left

@Ghabry
Copy link
Member

Ghabry commented Nov 7, 2018

Are you sure

No Im not, just did a code search.

This bug here: #1391
Negative E values which allows "enemy attacks can heal" is broken across all RPG Maker versions. (the expected behaviour is mentioned in the help file :))

@fmatthew5876
Copy link
Contributor Author

Flash saturation and Flash period (?) are not saved in the savegame.
Player/src/game_screen.h

Are you sure? It should be saved as SaveScreen.flash_current_level and SaveScreen.flash_time_left

The easyrpg variables he refers to are for continuous flashing. You need copies of these 2 fields to tell the flasher how to repeat the flash. #1501

@fmatthew5876
Copy link
Contributor Author

Rm2k3 doesn't let you put all party members in the back using the Row command. At least 1 member must be in the front.

However, if you put some party members in the back row and then remove the front row members, you'll end up with a party with everyone in the back.

@Ghabry
Copy link
Member

Ghabry commented Nov 24, 2018

jrenlbf

via https://rpgmaker.net/forums/topics/17752/?post=634525#post634525

@fmatthew5876
Copy link
Contributor Author

All items that trigger skills use the source of the skill to the highest level member of the party (first one if same level).

That means that items that trigger skills that have usage == self will always be used on the highest level character in the party.

@fmatthew5876
Copy link
Contributor Author

Not sure if this is really a bug:

If an actor has an "Attack All" weapon and gets confused or provoked, he will only attack one ally or enemy.

@fmatthew5876
Copy link
Contributor Author

Create a skill with:

  • Heals Death
  • 0 power, phys, mag, var

Use it on a dead actor in battle in 2k3,

The actor will revive with 1hp, but the displayed green number will say -1 ❗

@fmatthew5876
Copy link
Contributor Author

Set a move route on the player which changes the player graphic. Then save and load the game.

Upon loading the hero graphic is reset.

@Tayruu
Copy link

Tayruu commented Jul 8, 2020

Here's a bug I observed a while back around panning and player movement.

tldr: Panning the map away from the player, then moving the player into that new camera frame, causes the camera to become offset until the player returns to the tile they were originally on.

Though frankly I doubt there's any game that makes use of this behaviour to necessitate replicating it.

@fmatthew5876
Copy link
Contributor Author

fmatthew5876 commented Aug 22, 2020

There's a big move route save game bug in RPG_RT.

Create an event with some movement type. Then put a move route on it and make it move. Before the move route finishes, save your game.

Now load the game. After the event finishing moving, it's movement frequency will be set to 0.

This happens because the originalMoveFrequency variable in RPG_RT is not saved. This value is set when a move route starts and used to restore the movement frequency when the move route ends. When you load game it gets initialized to 0 and then
restored to the movement frequency when move route finishes.

This affects the hero, vehicles, and events.

We fix this bug in Player

@fmatthew5876
Copy link
Contributor Author

RPG Maker editor only lets you do a maximum of 10 terrain damage per step. Given that hp can go into the thousands in 2k3, this makes terrain damage all but useless as a game mechanic.

@fmatthew5876
Copy link
Contributor Author

Item and Skill Usability bugs

  • Normal Skills are usable in the menu only if they heal hp, mp, or at least one state which persists after battle. Items which invoke normal skills are usable if they heap hp, mp, or any state.
  • 2k3: Equipment which invokes a skill is always usable in battle, regardless of the skills.
    • You can use this to invoke an escape or teleport in battle, which does nothing
    • You can use this to invoke a switch skill which would normally not be usable in battle
  • 2k3: Equipment which invokes a skill is usable on the map if and only if it targets self or allies.
    • This means for escape, teleport, and switch skills, they will only be usable in the menu if the scope is set to ally. This is not possible in editor unless you change them to normal type, change the scope, and then change them back to the original skill type.
    • This also means you can use switch skills normally only usable in battle.
  • In the menu, Items which invoke skills require that at least one member of your party is alive and can use the item. This makes sense as the actor would have to "use" the item on another actor for them to receive the effect. However this check is only done for normal skills. Escape, teleport, and switch skills invoked by items are always usable even if nobody in the party could actually use the item.

@fmatthew5876
Copy link
Contributor Author

Enemy AI Hidden Enemy Revive Bug

Enemy AI will try to use revive skills on both dead and hidden enemies. This is because RPG_RT check for Exists instead of only checking for death.

This bug exists in 2k and 2k3.

@fmatthew5876
Copy link
Contributor Author

fmatthew5876 commented Oct 12, 2020

2k Battle: Death + other states bug

Create a skill which inflicts death and poison. Set poison's rating to 100 so it's not removed with death. Now use this skill on an enemy.

The enemy with "die" twice. The bug is that the RPG_RT code repeats the "death" message and animation for all states inflicted by the skill instead of displaying the other state messages.

@fmatthew5876
Copy link
Contributor Author

fmatthew5876 commented Oct 14, 2020

2k3 Monster Blink + Death Bug

In 2k battle monsters do the blinking animation when they take damage, and then later fade out when they die.

In 2k3 because there are no messages or delays, when an enemy is killed it blinks and fades at the same time.

@fmatthew5876
Copy link
Contributor Author

fmatthew5876 commented Oct 14, 2020

Revive Skill effects bug

Create a skill which raises hp, sp, atk, def, spi, agi and revives with 50% hit rate.

This skill will raise the parameters of dead characters, even if the revive part fails.

This happens in 2k and 2k3, but is most obvious in 2k as you see the messages on the console.

@fmatthew5876
Copy link
Contributor Author

Item Sp recovery on dead allies bug

Medicine items which recover sp work on dead allies.

@CherryDT
Copy link

CherryDT commented Oct 14, 2020

Item Sp recovery on dead allies bug

Medicine items which recover sp work on dead allies.

Not sure if that's a bug though... Death doesn't otherwise affect SP, so it would make sense for example to top up a dead allie's SP with an item and then revive them with a skill (if my character with the reviving skill isn't ready first)

@Ghabry
Copy link
Member

Ghabry commented Oct 14, 2020

Is just not intuitive. I can't remember any other game I played where you can buff stats of dead actors.

So maybe it is a feature but it didn't age well 🤔

@fmatthew5876
Copy link
Contributor Author

Skill Usability States Bug

In Battle2k if you have a battler use a skill, and then something happens (example mp drain) which causes that skill to no longer be usable, the battler will do nothing that round.

This makes sense, but the way it's done skips checking for confuse, provoke, and processing states in general. The battler won't for example auto heal, or take poison damage, etc..

@fmatthew5876
Copy link
Contributor Author

fmatthew5876 commented Oct 25, 2020

2k3 Battle Actor Event triggering action bugs

Whenever a battler does an action, the battle interpreter runs events (1) before action, (2) immediately after a switch is activated by an item or skill and (3) and after the action, allowing different page conditions in each case.

Due to a bug in the way they separated actor algo processing from enemies to implement CBA, step (3) does not occur when an actor uses an item, defends, escapes, or does the row command

Details in #2405

@fmatthew5876
Copy link
Contributor Author

fmatthew5876 commented Oct 25, 2020

2k3 Battle Event Turns sequencing bug (Active ATB)

Create battle which event happens on turn 1 and another event that happens on turn 2 and has 1 enemy.

Right before the first battler acts, the turn will increment to 1, and the event will fire. Then the second battler, and the turn 2 event fires.

Now set atb to active, start the battle and enter the item or skill window. Stay in the window until the enemy atb fills up and they are ready to act, then perform the skill or item action.

What should happen:
Event pages reset, Turn 1 event fires, enemy acts, Event pages reset, Turn 2 event fires, actor acts

What does happen:
Event pages reset, Turn 2 event fires, enemy acts, actor acts

The reason is because the battle system incorrectly processes "next turn / reset pages" when a battler has a battle action scheduled and not when it runs. So anytime you can trigger multiple actions to queue up like this, events will run only once before all the actions and reflect the last turn numbers from all the queued actions.

@fmatthew5876
Copy link
Contributor Author

2k3 Battle Normal + First Strike vs Initiative / Surround differences

In all of these battle conditions, the actors start with full ATB and enemies with empty ATB.

The first strike flag has an additional behavior in that the enemies will never do anything until at least one actor performs an action. For Initiative/Surround the enemies will attack you if you wait for their ATB to fill up.

The reason this works is because RPG_RT will still count up enemy ATB in first strike, but as soon as they act it will cancel their action. The first strike flag is cleared whenever an actor acts, so that allows enemies to act.

The RPG Maker editor forbids you from changing the first strike flag when the condition is not "Normal", however you can change the battle to normal, set the first strike flag, and then change it to initiative or surround to get the first strike behavior for those.

RPG_RT does clear the first strike flag for back and pincer attacks.

@fmatthew5876
Copy link
Contributor Author

2k3 Battle enemy target branch command

The command has many bugs rendering it almost unusable. Details here: #2405 (comment)

@fmatthew5876
Copy link
Contributor Author

fmatthew5876 commented Oct 28, 2020

2k3 Battle Switch skill combo bug

Create a battle with 4 events, all activated by switch one, which print the page number and turn off the switch.

Crate one more event on turn 0 which enables a 3x combo for the hero for skill.

Finally, use a skill which activates switch 1.

What you would expect to see is "1", "2", "3". That is each time the skill is repeated the battle interpreter gets called again right after.

Instead due to some weird timing issues, you only get "1", "2"

@fmatthew5876
Copy link
Contributor Author

2k3 negative attribute absorb numbers bug

Use a skill with a negative attribute that also aborbs on an enemy.

Instead of showing a green healing number, RPG_RT will show a negative number in white, looking like negative damage.

@fmatthew5876
Copy link
Contributor Author

2k3 negative absorb

When an absorb skill effect is inverted by negative attributes, HP effect will heal the enemy but not affect the source. SP effect however will invert absorb, healing the enemy and hurting the source.

@Ghabry
Copy link
Member

Ghabry commented Apr 17, 2021

Invisible Gauge (Visual problem)

This affects battle 2k3 types with semi-transparent windows:

The gauge is drawn transparent but above the selection box. This means that the color of the gauge would be wrong because of the selection box as the draw order is "Background, Selection Box, Gauge, Text".

Instead of thinking about a solution they simply did not draw the gauge

1-fs8

@CherryDT
Copy link

I don't understand the issue, can you show a screenshot?

@Ghabry
Copy link
Member

Ghabry commented Apr 17, 2021

@CherryDT
Aded a picture as you can see for transparent there is no gauge shown for the highlighted entry.

@CherryDT
Copy link

Thank you

@Ghabry
Copy link
Member

Ghabry commented Apr 17, 2021

Garbage data in BattleTest equipment

Looks like the editor uses a 32 bit value for it but only initialized the lower 16 bit.

When I alter the battletest equipment the values saved are sometimes really high. The solution seems to be to strip of the upper 16 bit with "0xFFFF".

Needs a check what RPG_RT does. Maybe reads it directly in a 16 bit value which results in a truncation?

@Ghabry
Copy link
Member

Ghabry commented May 16, 2021

No repositioning for CBA multi-attacks

When doing a CBA attack with a multiplier (x2 or x3) and a "Move Towards Enemy" the hero will only move to the first enemy. When this enemy dies the hero will hit the other enemies but does not move to them. Looks like lazy programming.

@Ghabry
Copy link
Member

Ghabry commented May 16, 2021

CBA ranged attack with multiplier continues even when everything is dead

Preparation:

  1. Set the CBA multiplier to x2 or x3
  2. Set the CBA to Ranged
  3. Enable in the Item effects (Item database tab) the checkbox "Attack all enemies"

Execution:

  1. Start a battle test
  2. Attack the enemies with your CBA weapon. It should be a one-hit kill.
  3. After the 1st attack everything dies, but a 2nd attack is fully shown and a 3rd is interrupted by the victory animation 🤦

@Ghabry
Copy link
Member

Ghabry commented Oct 14, 2021

Menu cursor does not flash in battle

When the command window containing Attack, Skill, Defend etc. is focussed the cursor does not animate.

Well, do not think supporting this is worth it ^^'

@Ghabry
Copy link
Member

Ghabry commented Jun 1, 2022

Wrong cursor position when using Subset Skills

(Found by Dyluck):

Basically in RM2K3 after using a skill in battle, sometimes the cursor starts at a different skill on the next turn, instead of the last skill used. The reason is that the cursor will move down by a number determined by ALL skills the hero has, instead of what skills are in the current skill command window. So for example if your database has these skills:

  • Fire 1 (Magic)
  • Fire 2 (Magic)
  • Fire 3 (Magic)
  • Heal 1 (Priest)
  • Heal 2 (Priest)
  • Heal 3 (Priest)

...and your hero has all 6 skills and both the Magic and Priest command. Then if you use Heal 2 in battle for example, the cursor will see this at the 5th entry of all your skills, and so it will move down 5 spots in every skill window. So in the Magic window, the cursor ends up pointing at Fire 3. In the Priest window, the cursor ends up on Heal 3.

@Ghabry
Copy link
Member

Ghabry commented Feb 26, 2023

Escape/Teleport skill incorrect teleport behaviour

When these skills are used to change the map the behaviour appears to be similiar to the "Vehicle Teleport":

  • Pictures are not removed
  • Battle animations do not stop
  • (to be tested: active events are not set to 0)

Discovered by @Mimigris

@Mimigris
Copy link

Mimigris commented Sep 22, 2023

Transparency overflow on a picture

Using a transparency value over 100 for pictures will result in the display of various colours serving as an overlay depending on the value instead of being transparent.

See this video.

Used in some games, e.g. Helen's Mysterious Castle when beating a boss, or in Muma|Rope in the Proj map.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

5 participants