Restart Heart (18+ Visual Novel)
Brought to you by QueenLilithPrime and Fluorescent Red Studios
It is illegal and unethical for anyone below the age of 18 to interact with anything regarding this visual novel.
Summary
After a seriously messy break-up, you're on the market again. Except, you really don't want to open up to anyone. You just want to move on and live your life. But life has other plans, and so do your new 'friends.' Will you open up your heart again and accept someone new into it? Will you keep your new friends as just that, friends? Things start to get a little dicey when you realize someone is stalking you.
Game Disclaimer and Trigger Warning
This game also involves strong language, sexual content, unsettling themes, cheating, non-player character pregnancy, kidnapping, gaslighting, stalking, blackmail, emotional manipulation, 4th wall breaks, intentional glitching, after-affects of emotional abuse, mentions of disordered eating, and death.This game is intended for Mature Audiences only, viewer discretion is advised.
Creator Note:
This game depicts unhealthy and abusive situations that are often on the subtle side. It is not intended for those scenarios to be portrayed as positive or healthy. Once the final game has been completed, every ending will give statistics on abuse in order to bring the player back down to reality. While yanderes as a trope can be fun and angsty, it is important to remember that real life can be affected by fiction that you enjoy and this game is not an excuse to take abuse or abusive behavior lightly. While many endings will not be abusive, there are also many abusive endings. Take caution and use your discretion while playing. Not all red flags are obvious but at the end of the day the game is primarily yandere.
Restart Heart Schedule
Please note that unless it has a specified date these are estimates, I as the developer am very sick and often times struggle to stay on schedule due to my illnesses. Thank you for your patience!
Date | Summary | Status |
---|---|---|
July 8th, 2022 | Day 1 Demo | Released |
Sept 22, 2022 | Day 2 Demo | Released |
Oct 29, 2022 | Day 3 Demo | Released |
Late March 2023 | Day 4 Demo | Released |
Spring-Summer 2023 | Hiatus | Ongoing |
Early Summer 2024 | Day 5-6 release to Patreons, Separate Short Demo for new players | |
Late Summer 2024 | Day updates | |
Early Fall 2024 | Work with translators/Fix all bugs | |
Late Fall 2024 | Create Walkthrough for each ending | |
Dec 1, 2024 | Full Game Release |
Restart Heart Credits
Coded using the Ren'py Engine.
All code written by QueenLilithPrime except for:
Image Gallery - ZeilLearnings
Voice Blips - CutieSigh
Kinetic Text - Wattson
Iconography, Symbols and GUI Assets by QueenLilithPrimeCharacter Designs and Assets by QueenLilithPrimeBackgrounds and CG Art by QueenLilithPrimeSound Effects and Music Composition by QueenLilithPrimeMerch Designs by QueenLilithPrime
Storyline and Plot by QueenLilithPrimeNSFW Scenes written by QueenLilithPrime, Gummyghosting, CrypticFingers, and ItsYaBoiCharacter Backstories by QueenLilithPrimeCultural Advisory and Sensitivity: TheTiredSiFormer Cultural Advisory/Sensitivity:
Gummyghosting, HydroPingu, YourGovernmentSushi, MocchiMai, CommuLi, Rainey
Restart Heart Development Goals
The plans for Restart Heart are as follows!
15 Days in Total
Multiple Endings
7 Date-able Characters
More than 7 NSFW Scenes
PC, Linux, Mac, Android, and Web Distributions
There will also be a paid version of Restart Heart! (Original 1080p game will always remain free) The paid version will include:
4K Graphics
NSFW CGs
Extra 18+ Scenes
A fun 'social media' mechanic that gives more information on characters, hints on how to earn affection with them, and information on their personal lives!
All Four DLCs Built-In (If they are made)
There are also 4 possible DLCS planned for Restart Heart that will hopefully be released with the final game.
Wedding Shower DLC where you go through the events of the night before the game starts that reveals everything that happened to the player
Wedding DLC with cultural weddings depending on which character you decide to marry
Sleep-over DLC where you get to spend a night at the characters house (Not NSFW)
Blizzard Shut-In DLC
The game will be translated into a minimum of 4 languages with hopes of a number of other languages as well.
Spanish (Latin American and hopefully European)
Chinese (Most likely Mandarin and possibly Cantonese)
Japanese
Korean
And ideally including languages my characters can speak!
Vietnamese (Blaire)
Bengali/Bengla (Sammy)
Russian (Chris)
Brazilian Portuguese (Steph)
French (Bess)
Arabic (Bess)
Hausa (If I'm really lucky! (Bess))
These will all most likely come out after the initial English release of Restart Heart on Dec 1st, 2024. However they will hopefully all be available in due time!
Frequently Asked Questions
How many characters are Dateable?
7!
Ezra, Blaire, Sammy, Chris, Steph, Bess, and Kenneth
Are there any other characters in Restart Heart?
Sarah! MC's younger sister. Both MC and Sarah were adopted.
While there are other characters that appear in game, they are mostly for short snippets and will not be affecting lore/plot very much.
What are the characters sexualities?
All the dateable characters are canonically bi/pan! They are also all open to poly relationships if enough communication is present.
Are the characters okay with an Aromantic and/or Asexual MC?
Yes! All characters are comfortable with an aro and/or ace MC.
Every relationship should be able to stand own its own without sex :)
(in my opinion at least)
What is MC's name?
By default your name is Sugar Dust! Older sibling of Sarah Dust.
Your first name is customizable!
What is customizable about MC?
Name, Pronouns, Virginity Status, Genitalia, Affectionate Terms, Relationship Titles, and more.
I do plan on implementing more Pronouns and Genitalia options in the future.
How often do you check socials for posts about the game?
I'm bad at checking social media and replying to DMs, so please tag me in things! And feel free to send me an extra DM if I haven't gotten back to you!
I also have a hard time with tumblr tags and I forget about twitter tags a lot, so please... Tag me! <33
Will you ever make a version for minors?
Absolutely not! Never! I might make a version for youtubers to not get flagged for language, but my game will never be for minors! Ever!
Where/When is the game set?
The first day of the game is December 1st, 2024! It's set in a country similar to the United States however it's a universe where it's not the United States.
Anything else? Feel free to let me know!
Generic Character Information
Note: All character Birthdays, Ages, and Pronouns are listed in game on the character menu screen
Name | Height | Age | Birthday | Pronouns |
---|---|---|---|---|
Ezra | 6'5 (195.6cm) | 24 | October 31st | He/They |
Blaire | 5'6 (167.7cm) | 24 | October 16th | She/Her |
Sammy | 5'4 (162.6cm) | 23 | February 25th | They/Them |
Chris | 6'3 (190.5cm) | 22 | September 1st | He/Him |
Steph | 6'1 (185.5cm) | 23 | January 7th | They/Them |
Bess | 5'8 (172.7cm) | 29 | April 27th | She/They |
Kenneth | 5'6 (167.7cm) | 24 | April 20th | He/Him |
Sarah | 5'3 (160.2cm) | 18 | December 15th | She/Her |
Other Character Information
This chart includes full names, ethnicities, and other quick facts about the characters
The quick facts may or may not be relevant to the game depending on the character
Full Name | Ethnicity | Job | Notes |
---|---|---|---|
Ezra Galverton | British American | Engineer | Primary Yandere |
Blaire Nguyen | Vietnamese | Freelance Programmer | Has a pet rabbit |
Sammy Maitra | Indian/Bengali | Graduate Student | Hates technology |
Chris Rogovsky | Russian | Student/Varsity Football Player | Your roommate |
Steph Ferreira-Costa | Brazilian | Adult Film Actor | Your Childhood Best Friend |
Bess Hassan | Nigerien | Your Boss! | Trans Muslim Woman |
Kenneth Goodfellow | European American | Head of HR | Your Ex |
Sarah Dust | European American | Student | Your little sister |
Coding Help from the Developer of Restart Heart
I won't gatekeep coding! Anything below feel free to adjust and use for your own purposes!
Just remember that all characters included are my own property and you cannot use my characters and their likeness for profit.
If you use this for your own code you don't have to credit me but I would appreciate it if you did!
Resources
What do you use for coding?
I use Ren'py 8 with VSCode.
Where did you get...
Image Gallery Code - ZeilLearnings
Kinetic Text Code - Wattson
How do you learn Ren'py?
Ren'py comes with a built-in tutorial game that gives you lots of code and examples you can use freely within your own game. You can also search in the Lemmasoft Forums for Ren'py help, and there's even a Ren'py Discord Server where you can ask for help on things. Ren'py Tom even has a website with more extensive explanations called Ren'py Documentation.
I also highly suggest learning the basics of Python, which is the coding language Ren'py is based on.
Characters and Player
How do you code the voice blips into the name?
I use callback code from Ren'py! I've adjusted it a bit from the original but I still use that code as the base!
There are three different variants used in Restart Heart for voice blips.
These voice blips are different pitches, and I usually use Blip 1 for masculine voices, Blip 2 for androgynous voices, and Blip 3 for feminine voices.
Code Examples
init -1 python:
def blip1(event, **kwargs):
if event == "show":
renpy.music.play("audio/blip1.ogg", channel="sound", loop=True)
elif event == "slow_done" or event == "end":
renpy.music.stop(channel="sound") def blip2(event, **kwargs):
if event == "show":
renpy.music.play("audio/blip2.ogg", channel="sound", loop=True)
elif event == "slow_done" or event == "end":
renpy.music.stop(channel="sound") def blip3(event, **kwargs):
if event == "show":
renpy.music.play("audio/blip3.ogg", channel="sound", loop=True)
elif event == "slow_done" or event == "end":
renpy.music.stop(channel="sound")
How do you define your characters and use them?
I have two variables for my characters in RH in order to include pronouns in their name titles when they're speaking!
When characters or the player is referring to a character by name, I'll use the double letter variant, but whenever a character is speaking I'll use the single letter variant.
Why do you use single and double letter variable names?
It saves me time when typing so that I don't have to type out a characters name! It also makes variables easier on me since if the player inputs the same name as a character, that character's name gets changed!
Code Examples
define a = Character("[aa] (He/Him)", color="#99DDFF", callback=blip1)
define b = Character("[bb] (She/They)", color="#087762", callback=blip3)
define c = Character("[cc] (They/Them)", color="#ffafaf", callback=blip2)
define d = Character("[dd] (She/Her)", color="#FF4444", callback=blip3)
define e = Character("[ee] (He/They)", color="#cf9fff", callback=blip1)
define f = Character("[ff] (They/Them)", color="#3e4ad1", callback=blip2)
define k = Character("[kk] (He/Him)", color="#6c5b30", callback=blip1)
define aa = "Chris"
define bb = "Bess"
define cc = "Sammy"
define dd = "Blaire"
define ee = "Ezra"
define ff = "Steph"
define kk = "Kenneth"
a "How are you feeling? Was your date with [ee] nice?"
How do you set up player inputs?
There are quite a few ways do to player inputs for their names but this is how I prefer to do things!
Why do you use name.title()?
This makes sure that no matter how the player inputs their name (i.e. NAME, name, nAmE) it will always be properly capitalized! These are called python string methods!
.capitalize()
capitalizes the first letter of the string
.upper()
makes the entire string uppercase
.lower()
makes the entire string lowercase
.swapcase()
swaps all the lowercase to uppercase and all the uppercase to lowercase
.strip()
removes any leading spaces or trailing spaces
.title()
capitalizes the first letter of every word
Code Examples
define y = Character("[name] ([prn1!c]/[prn2!c])", whobold = True, color="#ffffff", callback=blip2)define z = Character("{size=-15}{i}Your Thoughts...{/size}{/i}", whatprefix="{i}{size=-5}", what_suffix="{/i}{/size}", color="#7a7a7a")
python:
name = renpy.input("What's my name again?") name = name.strip() or "Sugar" name = name.title()
What is the !c for?
It's called a conversion flag! You can use them in [ ]'s to adjust the variable.
!c
capitalizes the first letter
!u
makes it entirely uppercase
!l
makes it entirely lowercase
How do you do the name easter eggs?
This is one of the first things I tried to learn how to do in ren'py because I thought it was very fun to see in games!
All you have to do is use your name variable (I use name for simplicity) and use if statements!
You can see I can rename characters using my double letter variable, and this way their pronouns are unaffected.
I can also tease players who don't input any names! If you don't input and simply hit enter it'll automatically set your name to Sugar and includes an Easter Egg about Ezra naming you (This also occurs if you input your name as Sugar). If you input something along the lines of Name or Player you'll get another easter egg as shown to the right.
Code Examples
if name == "Ezra":
"There's already a character named Ezra, so... "
extend "their name is now Ezekiel."
$ ee = "Ezekiel"elif name == "Chris" or name == "Christopher":
"There's already a character named Chris, so... "
extend "their name is now Cole."
$ aa = "Cole"elif name == "Name" or name == "Y/n" or name == "Y/N" or name == "Yn" or name == "MC" or name == "Mc" or name == "Me" or name == "You" or name == "Player":
"fuck, really?... fine." "..." "Nope, I can't have you being named that." "Fuck it"
extend "... I'm renaming you." $ name = "Sugar"
Pronoun Code (and Genitalia Code for 18+ Games)
If you copy this please credit me on this, as it took me a lot of work to get this set up right!
How do you make custom pronouns?
So I wrote all of this pronoun code myself because other set-ups for pronouns didn't really make sense for me. I write RH primarily in second-person and I'm not great with grammar...
So all of this is what makes sense to me, it might not make sense to you but that's okay!
Each of the variables are as follows:
Variable Name | Generic | Feminine | Masculine |
---|---|---|---|
gender | nonbinary | woman | man |
title1 | partner | girlfriend | boyfriend |
title2 | spouse | wife | husband |
prn1 (subjective) | they | she | he |
prn2 (objective) | them | her | him |
prn3 (possessive) | their | her | his |
prn4 (reflexive) | themselves | herself | himself |
pronounstyle | plural | single | single |
Each of the 18+ variables are as follows:
Variable Name | Generic | Feminine | Masculine |
---|---|---|---|
genitalia | other/intersex | vagina | penis |
underwear | underwear | panties | boxers |
breasts | nipples | breasts | nipples |
chest | chest | breasts | chest |
So how do you use these in text?
With the pronouns all you'd have to do is use them like other variables! I would suggest something like...
if pronounstyle == "single":
a "[prn1]'s an adult! [prn1] can think for [prn4]."
elif pronounstyle == "plural":
a "[prn1]'re an adult! [prn1] can think for [prn4]."
Which would spit out,
"He's an adult. He can think for himself"
"She's an adult! She can think for herself."
"They're an adult they can think for themselves."
What about 18+ scenes?
Alrighty so with 18+ scenes you can either entirely make them 100% ungendered/sexed or make alternate texts for different types and scenes.
I personally have a hard time writing scenes with descriptions when I have to leave things out, so I go the long way and write seperate scenes for different genitalia. However, I still use the other variables within those same scenes.
Remember when you're writing 18+ scenes, especially in VN's where people are meant to have a self-insert they are playing as, that you should always take the utmost care in handling intimate scenes and gender/identity.
Many players who are trans, non-binary, or gay often struggle to see representation within media and want to use these medias in the same way others do, as an escape. So please take care to listen to feedback from players and always be inclusive in your works.
Players shouldn't have to misgender themselves or deal with misgendering or uncomfortable gender/sex scenes simply because of they don't have any choice.
If you have made it this far, I'm assuming you plan to use the pronoun selection and possibly the genitalia selection I have coded. So please listen when I say that it's important that the player character be someone they can insert themselves into.
If you have a preset character that the player will play as, that's perfectly fine as long as people are aware of that ahead of time, especially in dating games. However, if you want a player to be able to self-insert you need to not assign attributes to them.
All MC's will have their own personality simply because of the nature of writing a story, even for self-inserts. But you can't assign traits like straight hair, impose a skin tone, weight or height, or assume the sex/gender of your players.
Players don't want to experience dysphoria when playing a game, so you need to keep that in mind. Especially when writing 18+ scenes. Many players may lose interest in your product if they are forced into a binary/sex that they are not a part of.
Obviously we all have our own demographics that we are pandering to, but in games where you can be inclusive, you should.
Ramble over, sorry lmao.
Code Examples
Will be updated soon to reflect updated custom screen in-game!
- August 11, 2023
Sprites
My method for Sprites
When making sprites, the best way for expanding choices and options for yourself in the future development of a game is to have all of the parts separated.
There should be separate images for Eyes, Mouth, Brows and other Facial/Expressive Indicators like Sweat, Blush, or Anger symbols.
Noses can usually be kept on the base sprite as they usually don't move around the face, but if your art style does have noses move, you can add those as well!
When doing expressions and adding the additions like blushing or sweat or other markers of expression there are a few ways you can do it but I would suggest blush being on the bottom and other expression parts to be on top, with the additives above all the others.
For the base sprites that have no face, you can do different outfits, hairstyles, or poses. For example, in Restart Heart I have basic outfits for the date-able characters!
Fully clothed
No Jacket
Only Pants
"Naked" (i.e. only underwear)
Swimsuit
And with the way I set up expressions, It's easy to add new outfits such as Bunny Suits, Maid Dresses, and other costumes.
Code Examples
Basic Expression
image ezra_expression_neutral =Composite(
(640, 1080),
(0, 0), "ezra/browsneutral.png",
(0, 0), "ezra/eyesdirect.png",
(0, 0), "ezra/mouthneutral.png")
Other Expressions
image ezra_expression_horny3 =Composite(
(640, 1080),
(0, 0), "ezra/otherblush100.png",
(0, 0), "ezra/browsneutral.png",
(0, 0), "ezra/eyeshearts.png",
(0, 0), "ezra/mouthanxious.png",
(0, 0), "ezra/othersweat.png")
Full Sprites
image ezra neutral = Composite(
(640, 1080),
(0, 0), "ezra/full.png",
(0, 0), "ezra_expression_neutral")
Animating Blinks
image ezra_eyes_direct:
"ezra/eyesdirect.png"
choice:
4.5
choice:
3.5
choice:
1.5
"ezra/eyesclosed.png"
.25
repeat
Then you would put ezra\_eyes\_direct
in the ezra\_expression_neutral
instead of "ezra/eyesdirect.png"
Why do you use (640, 1080)?
The (640, 1080) is the size of the images for sprites. I personally use 640x1080 sized images for the sprites in the standard version of Restart Heart and 1280x2160 for the 4k version.
What does choice do and why is it used in animating?
It randomizes the length from the chosen lengths you put! So the blinks in that example can be between 4.5, 3.5, and 1.5 seconds apart
What does the .25 at the end mean?
How long the final image is held for.
Why do you have your sprites set up like this and not as their own images?
Doing it this way allows for expressions to be consistent across outfits, and these forms of expressions can be animated.
Why are some images named with spaces and others named with underscore's?
The images named with spaces are images that use ren'py built in tagging function, that allows you to use the show/hide function to its fullest! Further information on it can be found here.
Restart Heart Music
Restart Heart Fan Content
What I'm comfortable with
You are allowed to create fan-content for Restart Heart however you cannot use my characters or universe for profit.What does this mean?
I don't mind if artists do commissions of my characters if requested by their client, however selling merchandise of my game and it's characters is not allowed.As for subscription only content like Patreon or Ko-Fi, if you're posting primarily Restart Heart content I'm not okay with it, but as long as it's not the primary posts I don't mind.Please remember I am an indie game developer and official merchandise for Restart Heart is available!
I'm comfortable with a lot of types of fan-content, but please be cautious when making fan-content. If you make fan accounts please make that clear and do not imitate the official accounts.If you make something triggering please tag it with the appropriate warnings, and please do NOT draw any of my characters in non/dub-con situations.I will also make this clear, none of my characters would ever be interested in a minor in any way shape or form. It is not only illegal but also immoral for anyone below the age of 18 to interact with or consume content from the game or related to the game itself.In general, when making fan content please be conscientious.
How to interact
If you click on the icons above, you can find out the official Restart Heart Socials for different sites. You're more than welcome to tag me in your fan content and I will check it out and most likely repost it when I get the chance!
Are there any official references and assets that are available to be used for making fan-content?
Yup! Two of those sources are on this website! Art References are here and Sheet Music is here!I also have the sheet music available as png's within the game files itself! It's in the audio folder.I also post assets on the Clip Studio Asset Store! I personally use Clip Studio Ex so it's easy for me to upload them there.RH Eye Asset Set Content ID: 1979285
RH Cast 3D Model Set Content ID: 1979272
Stance on AI bots or generations
Absolutely not. Nothing related to Restart Heart may be put into any AI generator or bot. This includes chat bots and writing prompts.
I am an artist and a writer, you are more than welcome to commission me through ko-fi if you want something specific.
Contact Form
Creator and Developer
Queen Lilith Prime
You are allowed to create fan-content for Restart Heart however you cannot use my characters or universe for profit.What does this mean?
I don't mind if artists do commissions of my characters if requested by their client, however selling merchandise of my game and it's characters is not allowed.Please remember I am an indie game developer and official merchandise for Restart Heart is available!