Java Mobile enters the scene of TASing!
Forgotten Warrior is a side-scroller game released in 2005 for mobile phones. A boy tries to rescue his girl. The beginning and the ending of the story look somewhat hilarious, but anyway, it's looks like a fairytale. 18 levels across 3 different terrains.
An alternative encode with Windows 98 booting and the launch of FreeJ2ME-Plus can be watched
here.
Game objectives
- Pacifist (technically)
- Takes damage to save time
Control
If you jump, you have to re-press your movement key before you land, or else you stop upon landing.
You lose some time at the end of each jump. That's why walking is faster overall.
If a projectile hits you, you save 6 frames or lose 10 frames, depending on which direction you were moving. The projectile push you away, not back.
Combat
Jump-kicking is slower than jumping. Any combat makes you stand dead on your tracks. That's why the run is marked pacifist.
Taking potions make you invincible for a brief moment. Deathblow provides invincibility too, but this attack takes some time, is performed automatically and you can't cancel it.
Chests
In a regular chest, you can get either gold (15-40), a HP potion or a MP potion. There are also special chests with prescribed items inside.
Jumping over a chest is faster than picking up a HP portion by 7 frames and gold by 9 frames.
Enemies
There are only 2 types of enemies: those who strike you with a lightning from their hands, and those who throw projectiles. While in the air, enemies can't hit you, but at the beginning/ending of a jump, they can.
If an enemy attacks you (a lightbulb balloon appears), it's on the same height as you and there is no obstacles on its way, it shortly transitions after you once you leave the screen.
RNG
The RNG seed is set at the moment you launch the game. Chest items get pre-selected and enemies do different actions and may appear on neighboring screens.
The RNG of wandering fires is consistent. It always starts from the same position and moves where it's intended to move.
Game speed
The game offers 5 levels of speed. This manages the game internal framerate:
- Level 1 = 7 fps,
- Level 2 = 12 fps,
- Level 3 = 17 fps,
- Level 4 = 22 fps,
- Level 5 = 27 fps.
I chose the default game speed, because it feels more relatable to how we played the game on our phones.
Game compatibility with FreeJ2ME-Plus
It starts with uncapped framerate, which goes beyond what the game has to offer. To normalize the framerate, you need to save the settings.
Verification movie
I don't know whether my plan will be taken as basis, but I thought it through and found it OK.
To begin with, you should install Windows 98 according to
this BizHawk guide. The resulting .hdd hashes must match the ones provided in the guide:
MD5: 799C395887E12B00DB1E15F9DF09FD98
SHA-1: 3A523B859054C68B7C6E60CBAD5BF1F0EE86862F
Now the preparation begins. I divided it into three parts.
- Part 1 is common for any preparation for J2ME TAS making/encoding.
- Part 2 is customizable, but it serves as preparatory to bring the emulator, the game and the launching .bat script in place, so the actual TAS doesn't spend time on the installation.
- Part 3 is TAS playback itself.
1. Install Windows installer (InstMsiA.exe) and Java Runtime Environment 6 Update 7. All information is described within this user file, including XML bundle sample and the .conf file.
UserFiles/Info/639163483683257131
Special thanks to:
feos: Claiming for judging.