This topic was originally made under Script Requests. Though the solution provided by the community were extremely helpful to anyone looking to mod TyranoScript games. So I’ve moved it under howto for better visibility.
I wonder whether it’s possible to integrate scripts into Tyranoscript games. There are a great deal of eroge out there that were made this engine (aside from the RPGMaker we all know and loved).
For me the game I really like to see an integration for is RJ221783 by MountBatten, which is a JOI-style game with decent interactivity. The character moves and change speed / positions on her own and will edge you when you are about to cum. You need to last until a set threshold or you lose.
I can imagine this work so well if paired with scripts. However scripting to a recorded footage like how we usually do will just miss the charm of it as a interactive game.
A shallow dig into the game’s file tells me they were made up with video loops, so there’s probably a chance for pairing these with scripts. However I have no idea with coding or Tyranoscripts so I’m not sure how to proceed.
Would be highly appreciated if anyone can come up with a modding solution for this engine. That could mean a great portion of the Doujin games on DLsite will be able to sync with toys!
Credits to @to4st , codes are based on ButtplugImplementation.js from Succubus Academia mod.
Download Custom Player from the link above
Edit “Game Directory/tyrano/plugins/kag/kag.tag_ext.js”
2-1. It’s really hard to read, just beautify js file using https://beautifier.io/
2-2. Add code into “Game Directory/tyrano/plugins/kag/kag.tag_ext.js” file line 1
(change gameName to anything you want)
I think the executable is exported using TyranoRider (what people use for Tyrano V4). I tried to use that and pack modified files back into an executable, which crashes after the loading screen… More research needed.
Here’s the modified file. Rename to .js kag.tag_ext.txt (42.1 KB)
And I’ve noticed that in these .tpatch files there are videos as well. Some of them already exists under data\video whilst some are not. I wonder what these are for…
If a videos have the same prefix like ‘3-4-4-1-2_抽送_速い’, they are likely videos with the same pattern.
Filtering with “抽送_速い” didn’t worked as they seems like same video but there were some frame differences.
After some tinkering it worked. Awesome
Many thanks to @to4st and @affqprow!
Started making scripts. There are a lot of videos but most share the same pattern. Spent more effort organising and renaming files than actual scripting.
The only problem I’ve noticed so far is that there seems to be a considerable delay, which becomes very noticeable at fast movement (it will feels like the strokes are basically inverted). Not sure if this can be overcome…
Under \resources folder find “app.asar”. Unpack it. Modify the same “kag.tag_ext.js” mentioned above. You can repack it using 7zip, or just leave them in the app folder.
Game works and the custom player detects it pretty well.
This quote does not seem to work for the game I’m modding (the one mentioned above). Is there any other event listener other than “pause” such as “stopped” or “removed”?
This code had an effect. It does stop the script playback if one attends the pause menu. But it also stops script playback whenever the scene has been switched.
(The game had a cross-fade transition between scenes which makes the previous video stops after the new one begins to play. Could this be the cause of this issue?)