Here is a CE table, from which you can access a lot of game variables
You must be registered to see the links
It is a bit messy and not easy to use, but very powerful, it basically allows you to find and edit most of the game variables. To toggle it, start the game and load a save, open the table with Cheat Engine, attach the game to it, then click the boxes in this order: "Gamemaker" (loading), "Tool" -> "Dump Object" (loading), "Create Memory Record" then you will have the list of game objects (for example obj_Undead, obj_Sasha etc.) and global variables under "BaseGame". For example the max HP is there below "BaseGame->maxhp".
View attachment 5125150
From there you can play with these variables and combine them with other CE features like Pause / Freeze variable etc. to explore what needs to be done to achieve a specific functionality. Once you manage to find which variables and what values should be edited, I can automate that in the dll (basically you just need to tell me variable X needs to be changed to Y when Z happens and I can add that to the .exe directly). I don't know how familiar you are with CE, if you're not then I'd say take some time to do the CE tutorial first (CE is a great tool to learn anyway it allows you to mod all games not just to Moon Rhapsody). You can mostly skip the sections about pointers and auto-assemble in the tutorial but know that I use them a lot (especially auto-assemble).
Let's take H-scene duration for example, if you inspect at the variables values as the game evolves (by pausing during H-scenes) you will very quickly realize the one controlling H-scene length is "BaseGame->cumlevel". It starts at 0 then increases while the heroine gets raped, and once it reaches a certain threshold it triggers the climax scene (the threshold is around 5 but seems to depend on the enemy). Now you can freeze "BaseGame->cumlevel" in CE, and you'll notice the H-scene goes on forever, so we can use it to extend H-scenes. This is actually what I did in the latest version of the dll I introduced this new config in the JSON "rapetimer_extend" which does just that, it basically just resets "cumlevel" to 0 a few times before it reaches the threashold, it does it N times, calibrated so that it extends the H-scene by N seconds (It would be cleaner to set the threshold directly to the H-scene duration we want but I didn't find the variable for it so I came up with this workaround, however this might be what causes bugged H-scenes for certain enemies that somebody reported earlier, maybe I need to reconsider this method). Unfortunately, I don't have time to play with it myself to find what is the right variable to edit / where the threshold is defined, but with the CE table you should be able to do it. This is for H-scene length not climax length, I haven't looked at the latter, but maybe try freezing "cumlevel" after climax and see if it extends it, it might be controlled by the same variable. Or maybe it's a different variable, try looking at the variables below "obj_screenKO" or "obj_gameover" (if you can't find the variable let me know as I maybe have a trick to find it).
Attached is also a very useful table with the function addresses (so you can place breakpoints but maybe it's a bit too advanced for now).