Page 1 of 1

Orbatext: A Level Name/Entry Text Fitter

Posted: Sat Jul 17, 2021 22:27
by Quirky Moron
So. Here's something I made back in 2018, but never got around to working on releasing until about a year ago.

Download: https://github.com/Anteproperispomenon/ ... t/releases

Source Code: https://github.com/Anteproperispomenon/Orbatext

I don't know whether there's another utility that already does this, but I didn't see anything when I briefly skimmed the KeenWiki.

Orbatext is a utility that automatically creates level entry and level name text patches, along with pointers to the level names/entries. What's useful is that it allows you to use the same text for both the level entry and the level name, when the level entry ends with the level name. This is accomplished by pointing to the same text block, but with different offsets into it.

e.g. For the Well of Wishes,

Code: Select all

Keen hopefully enters the Well of Wishes
^                         ^
|                         |
|                         +- Level Name Offset location
|
+ -------------------------- Level Entry Offset location
To do this, create a file with an entry/name pair for each level. If the entry ends with the name, put a pipe (|) just before the start of the level name. e.g.

Code: Select all

Keen hopefully enters\nthe |Well of Wishes
If the entry text does not end with the level name, separate them with two pipes, e.g.

Code: Select all

Keen bravely enters the\nBloog Control Centre,\nlooking for Molly||Bloog Control Centre
You can also just use the same text for both the level entry and the level name. In which case, just don't use any pipes at all.

Also, you can set the program to use part of the star wars text block if you're using up a lot of text.

You can see more details about the format in the included FORMAT.txt. There are also some example files given in the zip file, including ones for the original level sets of Keens 4-6.

Re: Orbatext: A Level Name/Entry Text Fitter

Posted: Sun Jul 18, 2021 20:16
by Nisaba
hey there Quirky Moron and welcome back to the forums,

thanks very much for sharing your level name editing tool. this is neat! I will update the wiki soon and add you utility to the list.
and yeah we do have quite similar tool that got released in 2016. you can check it out over here: https://keenwiki.shikadi.net/wiki/LNAMES

in the meantime the Keen Galaxy source-code was reverse engineered so that we theoretically don't have to patch the executable any longer. If your are interested in this topic as well make sure to check out this thread over here: viewtopic.php?f=4&t=11505

Off topic:
you might also be interested to know that one of your level-design modding attempts made it into a full playable mod. please enjoy: https://keenwiki.shikadi.net/wiki/Buried_in_Oblivion

Re: Orbatext: A Level Name/Entry Text Fitter

Posted: Tue Jul 20, 2021 15:00
by Quirky Moron
thanks very much for sharing your level name editing tool. this is neat! I will update the wiki soon and add you utility to the list.
and yeah we do have quite similar tool that got released in 2016. you can check it out over here: https://keenwiki.shikadi.net/wiki/LNAMES
Yeah, I saw that. I haven't tried it, but judging from the description, it doesn't allow you to to use the offset trick to use one text entry for both the entry text and the level name, or to use one text entry for more than one level.
in the meantime the Keen Galaxy source-code was reverse engineered so that we theoretically don't have to patch the executable any longer. If your are interested in this topic as well make sure to check out this thread over here: viewtopic.php?f=4&t=11505
Yeah, I'm aware of that; it's part of why I held off on releasing this for so long. I imagine for smaller levelpacks etc... that don't need to change much, one might still opt for ckpatch, since it doesn't need to be compiled for each change. Though, on the other hand, you could probably modify the source code to take things like level names, music mappings, etc... from external files.
you might also be interested to know that one of your level-design modding attempts made it into a full playable mod. please enjoy: https://keenwiki.shikadi.net/wiki/Buried_in_Oblivion
I saw that. Definitely funny to see something I made in elementary school made into a proper level. :o

Re: Orbatext: A Level Name/Entry Text Fitter

Posted: Tue Jul 20, 2021 18:06
by Fleexy
I happen to be working (very, very slowly) on a simple level pack and this utility looks like exactly what I need to do the patches, thanks!