>>32
In theory, you don't write any actual Python when scripting a Ren'Py game. All the dialogue, animations, and even UI layout are supposed to be done through a custom language that is parsed and expanded into a graph of Python objects. The engine traverses this graph to predict what assets need to be loaded at what points in the story, thus allowing you to play through the whole game without ever seeing a loading screen. This is not a bad idea on paper, and any competing VN engine should more or less aim for this same design.
The problems are with the implementation. The documentation is extensive, but not thorough, largely because the DSL layer is a leaky abstraction. You can "see through it" to numerous internal details of the engine itself. Interacting with some of these does involve writing Python. Understanding their behavior usually involves reading the source code. In some cases you have to write C and rebuild the entire engine to change how things work.
Introducing another language to this mess would not fix anything. Use Ren'Py with its DSL or throw it out completely and write something better from the ground up.