A place for Ren'Py tutorials and reusable Ren'Py code.
Forum rules
Do not post questions here!
This forum is for example code you want to show other people. Ren'Py questions should be asked in the Ren'Py Questions and Announcements forum.
-
Karunakku
- Newbie
- Posts: 7
- Joined: Sun Nov 15, 2015 12:03 am
-
Contact:
#1
Post
by Karunakku » Sat Oct 08, 2016 8:18 pm
So, I found how to make special things happen when you choose sepcial names. This can be used when the player chooses the name of someone special to the MC(They could talk to you like they would to this person, considering you are them!), for easter eggs(Ex:. You write Poop and the game tells you you're immature and you go back to the name menu) or it could be used so the player can't use the name of an existing character.
I don't even know how to explain it, so I put some basic explanation in the code itself:
Code: Select all
p "Hey, my name is Potato!"
$ player_name = renpy.input("And you, what's your name?") #Name insert is here
$ player_name = player_name.strip()
if player_name == "":
$ player_name= "Mashed boi" #This is the name you will have if you enter nothing
$ name="other"
if player_name == "Fries":
$ name="secret" #The access to the secret dialogue because of your name
if player_name == "fries":
$ name="secret" #Also avaible without the caplocks
else:
$ name="other" #When you enter anything else
if name == "secret": #You enter this anytime you want a secret dialogue
p "Oh, h-hey Fries senpai!"
if name == "other": #And this for the average ones
p "I didn't even know other things than potatoes were a thing!"
After some bug checking, I discovered that the blank space name only stays unbothered when you put it first. Or else your secret names won't work!
Last edited by
Karunakku on Sat Oct 08, 2016 8:36 pm, edited 1 time in total.
-
Katy133
- Miko-Class Veteran
- Posts: 704
- Joined: Sat Nov 16, 2013 1:21 pm
- Completed: Eight Sweets, The Heart of Tales, [redacted] Life, Must Love Jaws, A Tune at the End of the World, Three Guys That Paint, The Journey of Ignorance, Portal 2.5.
- Projects: The Butler Detective
- Tumblr: katy-133
- Deviantart: Katy133
- Soundcloud: Katy133
- itch: katy133
- Location: Canada
-
Contact:
#2
Post
by Katy133 » Sat Oct 08, 2016 8:33 pm
I've made a tutorial for that
here too, if the screenshots help.

-
Divona
- Miko-Class Veteran
- Posts: 678
- Joined: Sun Jun 05, 2016 8:29 pm
- Completed: The Falconers: Moonlight
- Organization: Bionic Penguin
- itch: bionicpenguin
-
Contact:
#3
Post
by Divona » Sat Oct 08, 2016 11:51 pm
Karunakku wrote:You write Poop and the game tells you you're immature and you go back to the name menu
Push it to the next level. Set:
Code: Select all
define persistent.worthless = False
......
if player.name == "Poop" or player.name == "poop":
p "You're immature. I don't want to talk to you anymore!"
$ persistent.worthless = True
$ renpy.quit()
and then...
Code: Select all
label start:
if persistent.worthless == True:
p "You're immature. Go away!"
$ renpy.quit()
......
Oh, I'm so evil. Don't try this at home.
You can also do:
Code: Select all
if player.name[:4].lower() == "poop":
So it doesn't matter if player name their character "Poopalicious" or "Poopmaster", it will always trigger.

Completed:

-
Katherine
- Newbie
- Posts: 17
- Joined: Mon Oct 31, 2016 2:27 pm
-
Contact:
#4
Post
by Katherine » Mon Dec 05, 2016 1:13 am
Divona wrote:Karunakku wrote:You write Poop and the game tells you you're immature and you go back to the name menu
Push it to the next level. Set:
Code: Select all
define persistent.worthless = False
......
if player.name == "Poop" or player.name == "poop":
p "You're immature. I don't want to talk to you anymore!"
$ persistent.worthless = True
$ renpy.quit()
and then...
Code: Select all
label start:
if persistent.worthless == True:
p "You're immature. Go away!"
$ renpy.quit()
......
Oh, I'm so evil. Don't try this at home.
You can also do:
Code: Select all
if player.name[:4].lower() == "poop":
So it doesn't matter if player name their character "Poopalicious" or "Poopmaster", it will always trigger.

would this also work if they tried a set of combinations of capital and lower case? (example would "PoOp, POOP, poop, etc." be treated the exact same? or would I have to code for all of those?)
-
Katherine
- Newbie
- Posts: 17
- Joined: Mon Oct 31, 2016 2:27 pm
-
Contact:
#5
Post
by Katherine » Mon Dec 05, 2016 10:53 am
okay I tried this using my own names and got the following error:
Code: Select all
I'm sorry, but an uncaught exception occurred.
While running game code:
File "game/script.rpy", line 89, in script
if name == "other":
File "game/script.rpy", line 89, in <module>
if name == "other":
NameError: name 'name' is not defined
-- Full Traceback ------------------------------------------------------------
Full traceback:
File "game/script.rpy", line 89, in script
if name == "other":
File "C:\Users\Katherine\Downloads\renpy-6.99.11-sdk\renpy\ast.py", line 1647, in execute
if renpy.python.py_eval(condition):
File "C:\Users\Katherine\Downloads\renpy-6.99.11-sdk\renpy\python.py", line 1670, in py_eval
return py_eval_bytecode(code, globals, locals)
File "C:\Users\Katherine\Downloads\renpy-6.99.11-sdk\renpy\python.py", line 1665, in py_eval_bytecode
return eval(bytecode, globals, locals)
File "game/script.rpy", line 89, in <module>
if name == "other":
NameError: name 'name' is not defined
Windows-8-6.2.9200
Ren'Py 6.99.11.1749
Blood of Betrayal 1.0
here is my script for the section. maybe I typed something in wrong?
Code: Select all
label start:
$ Damien_Points = 0
$ Matthew_Points = 0
$ Sam_Points = 0
$ Erik_Points = 0
$ James_Points = 0
$ Energy_Points = 75
$ Sanity_Points = 90
$ Family_Points = 0
$ Transform_Points = 0
$ player_name = renpy.input("What is your name?")
$ player_name = player_name.strip()
if player_name == "":
$ player_name= "Katherine"
$ name="other"
if player_name [:4].lower == "mika":
$ name="secret"
if name == "other":
jump story
if name == "secret":
if persistent.mika1== false:
P "Huh . . ?"
P "Who are you?"
P "It doesn't matter."
P "Just go away."
P "I don't want to relive what that monster did to me."
$ persistent.mika1 = true
return
elif persistent.mika2== false:
P "Wha-?"
P "Why are you back?"
P "Don't you understand that I don't want to talk?"
P "Just leave me alone."
$ persistent.mika2 = true
return
elif persistent.mika3 == false:
P ". . ."
return
Users browsing this forum: No registered users