D
Deleted member 436513
Guest
Guest
I'm not familiar enough with PowerShell to comment, but good job. From here you could add some kind of filter functionality into the section checking the lines and throw away everything that isn't a menu (ends withGot my script working and completed (with parallel processing, ooOOooOoo) and have the individual labels as .rpy files. Attached in case you want to take a peek. Previous upload was only half-complete because of a dumb logic error in my script (skipped every other label because stupid). Edit: removed some test labels I was using that aren't stock.
Included the label separator powershell script for reuse/posterity.
Haven't looked enough into the renpy parser to see if it can be used for mapping specifically.
:\n
but isn't a label), a Python block (starts with *\$
, excluding things like $ renpy.pause()
) or control flow (contains jump
or call
). Then tie those together, and you've got a complete map of the game's logic, like...
Which would ideally be a screen you get by hitting F11 or something in the Ren'Py IDE, which is a thing that exists in the parallel universe that isn't shit like ours.
Otherwise, the cheap solution would be to convert the label and jump statements into Twine code or some type of markup/charting language with everything inbetween kept as literal text lines, then loading the entire blob into an existing visual editor which would render the tree for you.

A proper Ren'Py oriented visual editor would be fucking sick though. Just imagine being able to filter dialogue/jumps/variables on and off at any time on that chart above, or clicking a line and having a debugger on the right side of your screen display which variables exist and what images have been placed onto the screen at that exact point, THEN clicking those and immediately jumping to the point where they've been defined or changed. Or you could use an import window to select a Photoshop file, have it automatically import all the frames of an animation and create a LiveComposite from the layers, then resize and move it into place on your screen in a matter of seconds. Or you could actually just GO TO A LINE by clicking on it, as opposed to reloading the game, holding Ctrl for five minutes, realizing you've gone too far, scrolling back with the mousewheel, realizing you've gone too far again and then mashing space to get there. OR, get this, you could rename a variable by just RENAMING IT, as opposed to having to Ctrl + F through 18 separate fucking files with a fucking regex search to rename all instances of
some_name
but not some_name_other
or "some_name"
or jump some_name
or $ some_name()
.Anyways, I'll stop derailing this thread now with shit that five people care about. Someone post MITY's new game so we have something to argue over.