Mr. Bubu's Visual Walkthrough has most of them listed. But this one I discovered inspecting a saved file on this
You must be registered to see the links
. Having a basic knowledge of Ren'Py commands also help, but, to check variables, just type the name hereof in the console and it'll output its status; to change it, type "{name of variable} = {value you want}". "True" and "False" are case-sensitive. To enable the console, just create a file with whatever name you want, but with a .rpy extension (for instance, "console.rpy") and put it in your game folder with the code below (spaces matter -- every new line adds 4 spaces):
Python:
init -1:
python hide:
config.developer = True
Then, press "shft+O" and, voilà, you have your console enabled.
(This works for most games and not only BaDIK, though, sometimes, you have to change the init value.)
You can check other variables with this
You must be registered to see the links
. Scripts for BaDIK are mostly in the "scripts.rpa" or "scripts_season2.rpa" packages (.rpa are like .zip files wherein many files are packaged inside, the code files are either .rpy or .rpyc, the latter being the compilated version of the former.)
Other fun things you can do in the console:
Let's say you like minigames a lot, especially the "Clean the Pink Rose Label":
View attachment 3224332
Now you can play it whenever you want! Just open the console and type:
... and, voilà, you're ready to entertain yourself!
(This works for any scene that has a label in it; you just have to look at the code, find the label, and type "jump {label name}".)
Now... Those are mostly for memes but entertaining nonetheless. You can make any character say whatever you want, like this:
View attachment 3224337
The perfectionist way is to find the appropriate character code (in the example above, it was "ta"), and then, for instance, you type:
Python:
ta "Hmm... It smells like ass... I like it!"
And, voilà, Tara will obey your commands and say whatever you want her to say. The list of characters is in separate script files inside the .rpa packages called "characters.rpyc" (two files) and "characters_season2.rpyc" (the most complete is the Season 3 one), but you can just type any name between quotes and it will work (though it will use the standard color):
Python:
"Tara" "Hmm... It smells like ass... I like it!"
You can also create fake menus, like the one below:
View attachment 3224340
Though similar to the one in the game, this menu is fake because you can never have all the options. To create it, just type:
Python:
menu:
"Isabella":
pass
"Jill":
pass
"Josy & Maya":
pass
"Sage":
pass
"Others":
pass
"I don't wanna choose! Fuck DPC!" if False:
pass
Now, the trick. The console is just for one-line commands. To create a menu like this, type one line (for instance, "menu:") and press enter. Every time the console finds a ":", it will change the prompt to "..." and will create the indentation (the spaces) for you. Then, just type the following line (for instance, "Isabella:"; no need to add spaces, because, as I said, the indentation was created for you) and press enter again. It will create another indentation and, then, if you want to create a fake menu, just type "pass" (a command that does nothing but has to be there, otherwise, you'll get an error). Then press enter two times to create another option (the first time, you create a new line to add another command in case you need it; the second, you go back to the menu block, aligned with "Isabella:", so you can add another option, for instance, "Jill". In the last line, you have to press enter three times.
The "if False" at the end of the last option is to create a disabled option. For you to see it, you have to type "config.menu_include_disabled = True".
And that's all for "Hacking Ren'Py Games in Real Time 101". Next episode there'll be a minigame about it in the form of a test.