Hello from KeypressingMonkey!

KeypressingMonkey

New Member
Sep 12, 2020
4
4
Untitled.png
Hi everyone,

I'm new here, but not that new to VNs and development in general. I'm a programmer by trade and I have written a program that I hope many of you will find useful: A renPy debugger.
I have the file hosted where I hope to raise some funds to create my own game and help pay for my rent in these trying times.

# What does the renPyDebugger do?
In essence I have come to realize that renPy has a lot of potential for human errors - worse yet errors that are syntactically correct but will cause issues while playing the game:
  • Background images used in the code but not available in the /images/ folder. This will report errors and also raise a note whenever a similar spelling is detected to help with typos.
  • Characters referenced but not defined, again with similar spelling note (right now this will only report upper/lowercase similarities, but I want to extend this)
  • Variable names used but not declared (including those defined in inline-ifs in menus and such!)
  • Warning for variables that are declared but never used
  • Warnings for unreachable code (labels that are defined but never jumped to)
  • Error for jumps that are defined but the associated label does not exist.
  • Error for images that are different from the game's resolution (common error for all the people who render in 4k and downscale to 1080p)
All these errors cost a lot of time and thanks to the way renPy works (all script files get merged into one, images being hard-coded strings that may or may not be inside the folder) these errors can make it into the final game without anyone noticing. I am fairly certain that this script can save you hours of your time over a project and deliver a much better quality game.

# Upcoming features:
  • Check for sounds, voices, music that are referenced in the script but are missing in folder.
  • Make image checker work with space-separated image names (who in their right minds uses this?! Use underscores, people!). I still want to support that though since it's officially viable
  • Do some light checking for misspelled variable names (for example underscore instead of camelCase notation and such). Maybe I can even implement a typo correction library or something, but that is definitely something I'll put behind other improvements.
  • Report mismatched variable types (for example trying to assign "test" to a boolean)
  • Report overly large images (there is really no need to have 16mb full-sized renders.)
  • Report common errors like lower-case "True" in booleans
  • Make script compatible with customized RenPy installations that have images in other folders etc. 90% of people probably use the default structure and this script works fine with that, but if your game uses customly written python this will not work well yet. I will work on that for the next release as soon as I figure out a good way to exclude python code from the renpy code.
  • Your suggestions!​

# installation:
Just place the downloaded file into your /game/ folder and run it, it will create a text file containing your errors and warnings in the same folder.

# Outro
I sincerely hope that I can save you guys a lot of time with this script, I know it has made my own life drastically easier as I work on games and now I sat down to convert the script into a real program that other people can use without a lot of hassle. Please let me know if you have any feature requests or stumble over a bug. Oh, and have fun, have a nice day!
 
Last edited: