EasyRPG / Player

RPG Maker 2000/2003 and EasyRPG games interpreter
https://easyrpg.org/player/
GNU General Public License v3.0
1.01k stars 192 forks source link

HH3: some sounds, animations, actions (events?) not appearing or appearing incorrectly #985

Closed vicusdanielson closed 5 years ago

vicusdanielson commented 8 years ago

Greetings! Just as I wrote in the title, some sounds, animations, actions/events? (I meant e.g. the boss's attack animation, boosting himself) do not appear or they appear but incorrectly. Game name: Heaven and Hell Episode 3 I uploaded 2 videos of my playing (I re-encoded the videos to lower quality for smaller size): Smartphone one (where the issues occur) / Laptop one (which is the correct/how it should be) Smartphone I played on: Xiaomi Redmi Note 2 Android version: 5.0.2 LRX22G, MIUI version: 7.4 by xiaomi.eu (6.5.19 Developer)

So the things which I noticed to be incorrect on the smartphone one:

Please keep up your great work! These issues might appear on different rm2k games.

Ghabry commented 8 years ago

Thanks for your detailed bug report, not many are of such quality.

When battles start that beeping sound doesn't get slowed (for some reason it's made like that fast and normally it plays slower - the "pitch" in the rm2k is set to lower)

Pitch for sound is not implemented yet: Issue #895

On the battle screen the names, etc appear with a "%S" at their end (e.g. Martyr%S attacks the enemy, Kharan 7%S %V damage sustaned)

The game uses the new RPG Maker 2000 release (English version). We don't fully support this yet. I'm surprised that somebody found a game using it. Issue #588

The "Animal Summoning III" spell of the common enemies doesn't do its grrr* sound

Ok

When I "Run away" from battles, it doesn't do its sound and running away is much more successful (maybe I just have better luck)

Could be luck, we use the same algorithm afaik. The sound is indead missing.

"AutoBattle" always does the basic attack, normally it does the strongest attack That's on purpose. Some people are happy that it only does basic attack and now you complain :D.

Okay we need some compromise (I hate it when AutoBattle drains my SP)

The basic attack does damage one time, normally it does two times

Double attack is not implemented yet. Issue #480

After I used a spell the next time I attack it doesn't select it automatically when I select Fight/NirvanaSwd (e.g. I used "Sun Flare" spell at 5:10 then next time I attacked at 5:20 it didn't auto-select that spell but always the first one instead

Ok

When a spell misses on an enemy it doesn't show like "it missed" or "he avoided" (e.g. when the Templar avoids Kharan's "Dead Sword" spell)

Ok

The boss, Abel always just boosts himself (the values of the boosts are incorrect too, e.g. "Attack Pwr -1, ArmorClass 25"), never attacks (I even killed him XD, got the "Debugger" then that battle restarted)

Could you give us a savegame close to that Boss?

vicusdanielson commented 8 years ago

Hiho!

That's on purpose. Some people are happy that it only does basic attack and now you complain :D.

Okay we need some compromise (I hate it when AutoBattle drains my SP)

Actually I hate it too :I but then it wouldn't be compromise so..... here's my deal.!?%: I wouldn't really care if the auto-re-select works for skills 83

Could you give us a savegame close to that Boss?

Unfortunately you cannot save in the "intro", there are no save points (white-filled circle in blue flame). Well, it takes about 5 minutes from "New Game" to get there, like in the videos.

vicusdanielson commented 8 years ago

Hello!

The things that are changed in the game in the latest version of the easy rpg now (0.5.0-52) from the last version I reported:

I will keep reporting if something changes, even if this is made by the newer Rpg Maker 2000 English release.

Ghabry commented 7 years ago

The escape formula is indeed wrong due to some errors in RPG Advocates help file translation. Attached the correct formula.

// When ally has 70% of enemy agi or less flee chance is 0%
// 100% -> 50% flee
// 200% -> 100% flee

int ally_agi = Main_Data::game_party->GetAverageAgility();
int enemy_agi = Main_Data::game_enemyparty->GetAverageAgility();

float to_hit = 1.5f - ((float)enemy_agi / ally_agi);

if (to_hit < 0.0f) {
to_hit = 0.0f;
}

// Every failed escape is worth 10% higher escape chance
to_hit += to_hit * Game_Battle::escape_fail_count * 0.1f;

to_hit *= 100;

this->success = Utils::GetRandomNumber(0, 99) < (int)to_hit;

Belongs in this if-block: https://github.com/EasyRPG/Player/blob/master/src/game_battlealgorithm.cpp#L1398

carstene1ns commented 7 years ago

Here is a patch to add the escape sound effect. Only tested in the hh3 (2k) game, not 2k3:

--- a/src/scene_battle_rpg2k.cpp
+++ b/src/scene_battle_rpg2k.cpp
@@ -641,6 +641,9 @@ void Scene_Battle_Rpg2k::Escape() {
                escape_success = escape_alg.Execute();
                escape_alg.Apply();

+               if (escape_success)
+                       Game_System::SePlay(Game_System::GetSystemSE(Game_System::SFX_Escape));
+
                battle_result_messages.clear();
                escape_alg.GetResultMessages(battle_result_messages);

diff --git a/src/scene_battle_rpg2k3.cpp b/src/scene_battle_rpg2k3.cpp
index 26a8710a..450925ec 100644
--- a/src/scene_battle_rpg2k3.cpp
+++ b/src/scene_battle_rpg2k3.cpp
@@ -943,6 +943,7 @@ void Scene_Battle_Rpg2k3::Escape() {
                ShowNotification(battle_result_messages[0]);
        }
        else {
+               Game_System::SePlay(Game_System::GetSystemSE(Game_System::SFX_Escape));
                Game_Temp::battle_result = Game_Temp::BattleEscape;

                // ToDo: Run away animation
Ghabry commented 7 years ago

Because Escape inherits from BattleAlgorithm one could also use "GetResultSe()" here, but Escape doesn't overload this yet.

carstene1ns commented 6 years ago

This one might have fixes in #1373.

fmatthew5876 commented 6 years ago

The boss, Abel always just boosts himself (the values of the boosts are incorrect too, e.g. "Attack Pwr -1, ArmorClass 25"), never attacks (I even killed him XD, got the "Debugger" then that battle restarted)

This battle is very special in that all of the enemy attacks are entirely scripted with switches and battle events. This was done to give the enemy attack animations which is not normally possible in the DBS. This battle is probably a good test case for battle events in easyrpg.

This enemy has the following configuration.

enemy

So according to the bug report, ABEL DRAW UPON is being selected every round instead of only the first round.

As for the boost values being incorrect, that ability is one of the only ones which is not a battle event. Its just a regular buff.

draw

I am the developer of this game, so if you need more information about any of these please ask. I have not yet tested easyrpg at all myself.

fmatthew5876 commented 6 years ago

I just tested this with the latest player binary and can report these results:

The boss, Abel always just boosts himself (the values of the boosts are incorrect too, e.g. "Attack Pwr -1, ArmorClass 25"), never attacks (I even killed him XD, got the "Debugger" then that battle restarted)

I can break this down further.

Btw, this battle can be tested easily in player

Player64.exe --battle-test 18

In general the battle system in rm2k mode is much slower. The pacing is off somehow.

When battles start that beeping sound doesn't get slowed (for some reason it's made like that fast and normally it plays slower - the "pitch" in the rm2k is set to lower)

The battle encounter sound effect is set to tempo 50. It works in EasyRPG if I start a New Game. It still does not work if load a saved game. My saved games were created by RPG_RT, not sure if that makes a difference.

When I "Run away" from battles, it doesn't do its sound and running away is much more successful (maybe I just have better luck)

This appears to be fixed.

I'm finding lots of other small bugs, which I'll make a new issue for.

carstene1ns commented 6 years ago

We have some battle related pull requests open, might be worth to check after merging.

fmatthew5876 commented 6 years ago

I tried it with this build:

The only thing it fixes is that DUHM now correctly boosts Abel's stats by 70. Also the general slowness of rm2k battles is fixed which is great!

carstene1ns commented 6 years ago

(ticked sound and message checkboxes in original issue description)

fmatthew5876 commented 5 years ago

I did some more testing here. All of the original issues are fixed (except autobattle, but thats a separate topic).

However, there are still more problems with this battle

vicusdanielson commented 5 years ago

Event doesn't progress at the boss battle in the SkyFlow building after Sirran says "Destroy these creatures for me.. They are no longer needed!"

I uploaded the save file (works on android). Just walk north to the next area then walk north till you trigger this event. Save01.zip

fmatthew5876 commented 5 years ago

The steal 3 times issue is surely #1652

I will look at the skyflow thing. That sounds event/move route related in which case it may already be fixed by one of the outstanding PRs

fmatthew5876 commented 5 years ago

I've confirmed the game does hang before the second boss battle. This is caused by #1612 which is already fixed by #1687.

Thanks for the bug report!

fmatthew5876 commented 5 years ago

Everything here should now be fixed in the continuous build except the flash screen issues in the intro boss battle.

fmatthew5876 commented 5 years ago

Unfortunately, this is still broken. The screen flash is off by 1 frame in the battle PR.

This animation is caused by a battle event.

Fixing this will require some careful repositioning of screen update w.r.t. to animations without breaking #1753

frame00000074 frame00000075 frame00000076

fmatthew5876 commented 5 years ago

This is fixed for real by #1788