RPGM Completed Magical Valkyrie Lyristia [v1.01] [ShiBoo! / Kagura Games]

3.70 star(s) 19 Votes

kin-kun

Active Member
Modder
Jul 10, 2020
963
2,288
For some reason i can save, but game cant see saves in save\load menu, is any1 have same problems? I use
If you exit to the loading screen does your save show up?

It may be something I missed while fixing how saves are cached.

Edit:
Found the issue, I'll put up a fix today.
 
Last edited:
  • Like
Reactions: DedL0l

gaiar31

Member
Oct 12, 2018
310
127
Ending 1 .. change to Lewd

Ending 2 .. Pregnancy by Monster [mid boss]

Ending 3 ... Rape and Kill by Boss samurai

Ending 4 ... Win Boss samurai


This game don't care she still virgin or no. if you can clear the game.

/me if she can Pregnancy by every character it will good idea.
 

kin-kun

Active Member
Modder
Jul 10, 2020
963
2,288
Magical Valkyrie Lyristia 1.01.02 Release (Unofficial Version)

⚠ Only basic sanity tests (does the game load, can you get through a battle) have been performed at this time. ⚠

You don't have permission to view the spoiler content. Log in or register now.
Downloads
PackageSizeLink
JOIPlay146.0M
Windows205.7M
Linux210.6M
You don't have permission to view the spoiler content. Log in or register now.
As always, please report any issues you find to me.
 

kin-kun

Active Member
Modder
Jul 10, 2020
963
2,288
Magical Valkyrie Lyristia 1.01.03 Release (Unofficial Version)

⚠ Only basic sanity tests (does the game load, can you get through a battle) have been performed at this time. ⚠

You don't have permission to view the spoiler content. Log in or register now.
Downloads
PackageSizeLink
JOIPlay146.0M
Windows205.7M
Linux210.6M
You don't have permission to view the spoiler content. Log in or register now.
As always, please report any issues you find to me.
 

The killing Goku

Active Member
Oct 20, 2019
872
590
KAGURAAAAAAAAAAA!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
FUCK THEM ... WHY THE FUCK CANT THEY MAKE A PATCH THAT DOESNT BREAK THE GAME FOR EVERYONE ELSE
They really shouldn't.

If they were to do so, then the game would be incompletely translated. Inviting more trouble.
You see it often with MTL games that some stuff is included in the RPGM save files. This ranging from costume names to item names and amounts and stuff like that.
Often changing stuff in a translation (be it MTL or otherwise) can completely break the saves of that game (or be totally undone by using an existing save that already has the stuff from before it was fixed).

RPGM uses a proprietary build format for their save files and none of that has, as of yet, been editable.
Save editors just manage to find some basic stuff like switches or stat values here and there, but none of the advanced stuff like that as far as I've seen.
I don't think even pro DEV's bother trying to hack the format either, as I've seen often that a 'new version' of a game in development 'breaks' the save files of an earlier version.
That's kind of the trade off you make by using only an existing editor/Engine that pretty much 'gives' you the gameplay OOB, rather than making something from scratch in Unity/Unreal/Whatever.

Same with dynamic scripting with Japanese tags and such. It would make sense that a full, professional translation goes and translates all of that rather than half butting it, leaving the Japanese tags and not touching the code.
Though I've not yet checked any Kagura releases for this, unpacking them and checking for this.

Also ... they don't make patches for Japanese games. They release and sell localized games.
So they literally can't 'break' anything for anyone else.
Whether or not you already pirated the Japanese games before hand really shouldn't be any of their concern. :sneaky:
 

kin-kun

Active Member
Modder
Jul 10, 2020
963
2,288
RPGM uses a proprietary build format for their save files and none of that has, as of yet, been editable.
:oops:

Where did you get this information?

RPG Maker MV and MZ take the JavaScript objects, dump them to JSON and then uses LZ-String on that.

It is absolutely readable.

In fact here's how you can take the save file and read the JSON:
Python:
#!/usr/bin/env python3
import lzstring
import json
import argparse
import os
import errno
import sys

sys.tracebacklimit = 0


def decode_rpgsave(save):
    lz = lzstring.LZString()
    decoded = lz.decompressFromBase64(save)
    parsed = json.loads(decoded)
    decoded = json.dumps(parsed, indent=4, sort_keys=True)
    return decoded


def encode_rpgsave(save):
    lz = lzstring.LZString()
    encoded = lz.compressToBase64(save)
    return encoded


def main():
    parser = argparse.ArgumentParser()
    parser.add_argument("-e",
                        "--encode",
                        help="Encode the decoded savefile",
                        action="store_true")
    parser.add_argument(
        "-o",
        "--output",
        help="Specify the output file instead of printing to stdout")
    parser.add_argument(
        "file", help="The rpgsave file which is either encoded / decoded")

    if len(sys.argv) == 1:
        parser.print_help(sys.stderr)
        sys.exit(0)

    args = parser.parse_args()

    if os.path.isfile(args.file) == False:
        parser.print_usage()
        raise FileNotFoundError(errno.ENOENT, os.strerror(errno.ENOENT),
                                args.file)
        sys.exit(1)
    else:
        f = open(args.file, "r")
    if args.encode == True:
        output = encode_rpgsave(f.read())
    else:
        output = decode_rpgsave(f.read())

    if args.output:
        with open(args.output, "w") as f:
            f.write(output)
    else:
        print(output)


if __name__ == '__main__':
    main()
The problem is it is a full dump of the game state. Meaning if switches/variables/text change those changes won't be reflected when the game data is loaded (which is why if you load a Japanese save it often will have various pieces that were saved as part of the game state and they will be presented to you untranslated.)

Depending on how the internals of the game are changed, the saves may or may not be compatible. Maintaining compatibility with the Japanese version isn't normally something Kagura cares about, so sometimes things work, but often times things just go wonky.

Also sometimes devs use this as an opportunity to clean up crap they had to leave in for backwards compatibility with on the initial version of the game because this is a place they plan on having a breaking change.
 

The killing Goku

Active Member
Oct 20, 2019
872
590
:oops:

Where did you get this information?

RPG Maker MV and MZ take the JavaScript objects, dump them to JSON and then uses LZ-String on that.

It is absolutely readable.

In fact here's how you can take the save file and read the JSON:
Python:
#!/usr/bin/env python3
import lzstring
import json
import argparse
import os
import errno
import sys

sys.tracebacklimit = 0


def decode_rpgsave(save):
    lz = lzstring.LZString()
    decoded = lz.decompressFromBase64(save)
    parsed = json.loads(decoded)
    decoded = json.dumps(parsed, indent=4, sort_keys=True)
    return decoded


def encode_rpgsave(save):
    lz = lzstring.LZString()
    encoded = lz.compressToBase64(save)
    return encoded


def main():
    parser = argparse.ArgumentParser()
    parser.add_argument("-e",
                        "--encode",
                        help="Encode the decoded savefile",
                        action="store_true")
    parser.add_argument(
        "-o",
        "--output",
        help="Specify the output file instead of printing to stdout")
    parser.add_argument(
        "file", help="The rpgsave file which is either encoded / decoded")

    if len(sys.argv) == 1:
        parser.print_help(sys.stderr)
        sys.exit(0)

    args = parser.parse_args()

    if os.path.isfile(args.file) == False:
        parser.print_usage()
        raise FileNotFoundError(errno.ENOENT, os.strerror(errno.ENOENT),
                                args.file)
        sys.exit(1)
    else:
        f = open(args.file, "r")
    if args.encode == True:
        output = encode_rpgsave(f.read())
    else:
        output = decode_rpgsave(f.read())

    if args.output:
        with open(args.output, "w") as f:
            f.write(output)
    else:
        print(output)


if __name__ == '__main__':
    main()
The problem is it is a full dump of the game state. Meaning if switches/variables/text change those changes won't be reflected when the game data is loaded (which is why if you load a Japanese save it often will have various pieces that were saved as part of the game state and they will be presented to you untranslated.)

Depending on how the internals of the game are changed, the saves may or may not be compatible. Maintaining compatibility with the Japanese version isn't normally something Kagura cares about, so sometimes things work, but often times things just go wonky.

Also sometimes devs use this as an opportunity to clean up crap they had to leave in for backwards compatibility with on the initial version of the game because this is a place they plan on having a breaking change.
I think it was quite obvious I was talking about the older engines that still popup often around here (VX/ACE). The rvdata shizzle.

Since the MV stuff these days they've gone the JS route. Makes it easier to add plugins too. Don't need the engine itself anymore to rebuild the whole game just to add right-click 'hide textbox' feature or something.
Haven't actually opened the rar on this one yet to check which version it is.
 

Alexander Krisnov

The Dead Commisar
Uploader
Sep 14, 2016
1,833
21,137
They really shouldn't.

If they were to do so, then the game would be incompletely translated. Inviting more trouble.
You see it often with MTL games that some stuff is included in the RPGM save files. This ranging from costume names to item names and amounts and stuff like that.
Often changing stuff in a translation (be it MTL or otherwise) can completely break the saves of that game (or be totally undone by using an existing save that already has the stuff from before it was fixed).

RPGM uses a proprietary build format for their save files and none of that has, as of yet, been editable.
Save editors just manage to find some basic stuff like switches or stat values here and there, but none of the advanced stuff like that as far as I've seen.
I don't think even pro DEV's bother trying to hack the format either, as I've seen often that a 'new version' of a game in development 'breaks' the save files of an earlier version.
That's kind of the trade off you make by using only an existing editor/Engine that pretty much 'gives' you the gameplay OOB, rather than making something from scratch in Unity/Unreal/Whatever.

Same with dynamic scripting with Japanese tags and such. It would make sense that a full, professional translation goes and translates all of that rather than half butting it, leaving the Japanese tags and not touching the code.
Though I've not yet checked any Kagura releases for this, unpacking them and checking for this.

Also ... they don't make patches for Japanese games. They release and sell localized games.
So they literally can't 'break' anything for anyone else.
Whether or not you already pirated the Japanese games before hand really shouldn't be any of their concern. :sneaky:
 

The killing Goku

Active Member
Oct 20, 2019
872
590
okay but...all the drama with the patch aside

it's not often that I unironically hope that they release a sequel to a random hentai game, but I kinda unironically hope they make a sequel to this. Plot actually got me invested .


System contents -----------
Frostia who appeared in the previous work Magic Fighting Princess Lilstia will play an active part as the main character this time.
So yeah ... it looks like it's sort of a sequel (though likely more of a side-story in the same universe).
 
  • Like
Reactions: Beggarman

n0b0di

Member
Nov 17, 2017
284
219
hey i miss Frostia, and decided to scroll some of Ixy twitter posts, then found her/his pixiv fanbox, i can't read japanese, but i think they are planning on release the trial of Frostia side story by the end of July?

the post:


It looks great imo
 
  • Like
Reactions: James Eveleth

sprayduster

Newbie
Jun 25, 2017
63
77
I'm getting a bug where after getting creampied by the enemy, no matter what, the chance of pushing them away is 0% even if I've used vigilance. is it just me?
 
3.70 star(s) 19 Votes