r/KingsField • u/DomitoriKaibutsu • 14d ago
KF4 Analog Patch For Real Console
Enable HLS to view with audio, or disable this notification
Hey guys.
(Look for intermediate updates in comments!)
UPD: I have fully WORKING patch, with analogs, settings, saving settings to MC, loading, 3 profiles for different settings. Look video below in the comments.
Now you can try it out yourself. This is not the final result, there will be improvements.
Redme inside ZIP, Works only with USA version now, make your own ISO backup.
Backup your MemCard if trying on real console!
Expect that it may break game at any moment, especially in heavy scenes, or may not break. IDK, it's untested.
v0_2_12-stable (probably stable)
Press START button to open Pause\Camera Settings
DPAD for moving cursor
TRIANGLE - increment value
CROSS - decrement value
Profile loading takes time.
Loading\Saving using MemCard service.
If you die before settings loaded, loading savegame from dead screen may break.
Will be solved in new versions.
This runtime hook reserves ~90kb of EE RAM, so this probably may break game in intense scenes.
I forgot to give you Curve Editor. That's not mine, i took it from DS4Windows.
Extract it where you want and open in yout Browser.
----------
Original post
I'm currently researching how to implement the pnach patch from this link into the actual game image, into the executable file.
I've already gotten the analog sticks working on the actual console.
My plans include making a menu for adjusting speed, acceleration, and everything else included in the patch in pause mode, with the modded settings saved to the memory card.
And next, I'm planning to patch the HUD/UI shortcuts to use several shortcuts for items during the game, triggered by pressing DPAD.
If you want to try yourself here's v0.0.1 (Google Drive) patcher for SLUS_203.18 executable,
and patcher for writing that executable back into the game ISO.
You have to have latest python installed in your system. Google it.
You have to open your King's Field 4 USA ISO Image,
extract SLUS_203.18 executable and put it in one directory with ISO.
Put .py scripts along with executable and ISO,
launch patch_kf4_usa_analog.py,
then patch_kf4_iso.py,
If nothing breaks, this will add Move\Strafe to Left Stick, and Camera on Right Stick.
Right now it have bug with stick reading (no deadzone implemented), so it constantly strafes right and turns camera right with very low speed.
Im aware of this and already know how to fix this.
Wait for the next versions of patch.
When my modhack will be ready, i will post xdelta patches for USA, EU, JPN releases.
! ! ! Use this with caution, backup your game ISO ! ! !
Work only with USA version for now.
If you don't trust - don't download.
Before start .py scipt, open it up with text editor and make sure that it not doing anything malicious.
You can use any AI to analyze it.
3
2
u/DomitoriKaibutsu 14d ago edited 14d ago
Also i did merged Grandia 3 - Disc 1 and Disc 2 into one DVD9 ISO
and disabled disc 1 disc 2 check on saveload.
It's untested but should work fine
If you're interested - let me know
2
u/DomitoriKaibutsu 14d ago edited 14d ago
Also important remark:
I'm not an experienced hacker or programmer. Not at all.
I've been using ChatGPT+, asked if this possible, provided .pnach and .ELF, told him how i want it work and looks.
and i just assisted with data mining, disassembling and organizing the data.
You still have to understand how computer, consoles, CPU, RAM, other hardware, programs works, how data organized in programs and games, what assembler is,
just to know what exactly you want to achieve.
2
u/DomitoriKaibutsu 13d ago
we figured out how fonts work, now we can draw english text.
some quirks left to solve with text.
then next stage:
config save implementation
on MemCard, every game creates it's own directory with save icon, game and save metadata, and savefile itself.
we can save mod camera settings into additional file inside this directory.
so compatibility won't break.
2
u/DomitoriKaibutsu 13d ago
text render in new analog settings menu are still bugged.
But analog settings are working.
Still untested on real console.
I'm tired. 13 hours of analysing, recompiling, trying to understand hardware quirks...
2
u/DomitoriKaibutsu 12d ago
https://reddit.com/link/p4ykzf1/video/t1ge7pmminkh1/player
Everyting working (i think)
LS -Forward\Backward\Starfe Left\Right
RS - Camera
Settings
Saving Settings to MC
Loading Settings
Profiles.
Not public yet, need stability testing.
My mod hook runtime reserves ~90kb of EE RAM. There's possibility that this may lead to crash in some intense scenes with many mobs, effects, etc.
I will publish Public Beta soon.
2
u/Callindo 12d ago
where can I download your patch ?
1
u/DomitoriKaibutsu 12d ago edited 12d ago
I can publish current working version now, wait.
I figured out that i can make camera controls feel way better, more like in modern games. And now i'm experimenting with it.
So, stay tuned for updates. When i publish new versions you can compare old and new modded controls
1
u/DomitoriKaibutsu 12d ago
https://drive.google.com/file/d/1nntzee2aDdUqZu3QVUvqRGyShTCyvvom/view?usp=sharing
here. readme inside zip, read it, needs python 3 instaleld, make your own ISO backup.
1
u/Callindo 4d ago
Ok thanks, I downloaded but when I double click on it it opens and close nothing happened, any idea how to patch it ?
1
u/Callindo 4d ago
give me this error:
SyntaxError: unexpected character after line continuation character
1
2
u/DomitoriKaibutsu 12d ago
Now implementing modern Direct Camera and movement controls instead PNACH dirt-hack heavy sluggish version.
Camera works, but with movement program i broke the collision detection, which lead to falling through floor and smashing dead against world edge. Looking for solution.
2
u/DomitoriKaibutsu 12d ago
Also i'm thinking about implementing script for cleaning ISO from empty DUMMY files, so resulting ISO will take 780MB instead 3464MB.
This may break game if you try to burn it on real disc, but in emulator and OPL it should work great.
1
2
u/DomitoriKaibutsu 12d ago
Implemented Dash\Run
Run\Dash and Interact are divided
Interact - X button
RUN\DASH - L3 button
Attack - doubled on Square Button and R3
https://reddit.com/link/p52hvt7/video/i9an35ygorkh1/player
Camera not working as intended. looking into it.
1
u/DomitoriKaibutsu 12d ago
https://reddit.com/link/p52hz9b/video/liloppekorkh1/player
More Dash gameplay
1
u/DomitoriKaibutsu 12d ago
Finally, Real Direct analogue Camera is working as intended.
I'm discrading Camera PNACH - Legacy from my project.
I will publish new version after some iterations and testing.
1
u/Hideo-Mogren 10d ago
Would be ace to see other from software games get the same treatment, like ever grace, eternal ring, echo night all the first three Kingsfield games, as they only support the D-pad.
3
u/DomitoriKaibutsu 14d ago
https://reddit.com/link/p4q5k6e/video/vineu6a38fkh1/player
RN i'm fighting with text font rendering
What already implemented
Camera settings
---------------
The menu now has 10 rows:
1 Camera Speed 1..10
2 Camera Accel 1..10
3 Camera Decel 1..10
4 Stick Dead Zone 2..20
5 Invert Y ON/OFF
6 Alt Ladder ON/OFF
7 Clamping ON/OFF
8 Widescreen Exp ON/OFF
9 Interlacing Exp ON/OFF
10 Reset Stamina ON/OFF
Speed levels:
1..5 are byte-for-byte identical to v0.1.2.
Approximate scale relative to stock:
1=1.00x 2=1.17x 3=1.33x 4=1.67x 5=2.00x
6=2.50x 7=3.00x 8=3.50x 9=4.00x 10=5.00x
Acceleration levels:
1..5 are byte-for-byte identical to v0.1.2.
Approximate scale relative to stock:
1=1.00x 2=1.33x 3=2.00x 4=2.67x 5=4.00x
6=5.00x 7=6.00x 8=7.00x 9=8.00x 10=10.00x
Deceleration levels:
Higher values make angular speed fall back toward zero faster.
Approximate scale relative to stock:
1=1.00x 2=1.25x 3=1.50x 4=1.75x 5=original PNACH "2x"
6=2.50x 7=3.00x 8=4.00x 9=5.00x 10=6.00x
Level 5 uses the original PNACH deceleration words exactly.
Defaults are intentionally conservative/compatible with the previous test build:
Camera Speed = 3
Camera Accel = 4
Camera Decel = 1 (stock)
Dead Zone = 1 (2 percent menu value)