I think everyone uses the start stats of 50. I can show you a way how to include the stats in a way they will never get over 100 or below 0, and how to include special names as well.
The best would be to use this:
In the startup, create the following variables:
*create met_Jill false
*create Jill 0
*create Jill2 ""
*create met_Jack false
*create Jack 0
*create Jack2 ""
*create met_Tom false
*create Tom 0
*create Tom2 ""
*create Unknown 0
You can leave out the âmet_Jillâ part for example, if you want to show the Relationships even before youâve met the character already. Personally, I like to just leave it to âUnknownâ, and they will be revealed once the Character has been met in the future. If you decide to not use the âUnknownâ part, just leave that out as well.
You wonât need any more in the Startup File, and thus we go to the ChoiceScriptStats File.
There you should include the following just like I instruct you below, or else you will be in a loop.
*temp JackText ""
*temp JillText ""
*temp TomText ""
[b]Relationships[/b]
*if met_Jill = false
*stat_chart
percent Unknown
*if met_Jill = true
*gosub relJill
*set JillText ("Jill "&Jill2)
*stat_chart
percent Jill ${JillText}
*if met_Tom = false
*stat_chart
percent Unknown
*if met_Tom = true
*gosub relTom
*set TomText ("Tom "&Tom2)
*stat_chart
percent Tom ${TomText}
*if met_Jack = false
*stat_chart
percent Unknown
*if met_Jack = true
*gosub relJack
*set JackText ("Jack "&Jack2)
*stat_chart
percent Jack ${JackText}
*goto continue
*label relJill
*if (Jill > 100)
*set Jill 100
*if (Jill < 0)
*set Jill 0
*if (Jill >= 85)
*set Jill2 "(Ally)"
*if (Jill >= 75) and (Jill < 80)
*set Jill2 "(Great)"
*if (Jill >= 60) and (Jill < 75)
*set Jill2 "(Good)"
*if (Jill >= 50) and (Jill < 60)
*set Jill2 "(Neutral)"
*if (Jill >= 35) and (Jill < 50)
*set Jill2 "(Bad)"
*if (Jill >= 25) and (Jill < 35)
*set Jill2 "(Really Bad)"
*if (Jill < 25) and (Jill > 0)
*set Jill2 "(Enemy)"
*if (Jill = 0)
*set Jill2 "(Nemesis)"
*return
*label relTom
*if (Tom > 100)
*set Tom 100
*if (Tom < 0)
*set Tom 0
*if (Tom >= 85)
*set Tom2 "(Ally)"
*if (Tom >= 75) and (Tom < 80)
*set Tom2 "(Great)"
*if (Tom >= 60) and (Tom < 75)
*set Tom2 "(Good)"
*if (Tom >= 50) and (Tom < 60)
*set Tom2 "(Neutral)"
*if (Tom >= 35) and (Tom < 50)
*set Tom2 "(Bad)"
*if (Tom >= 25) and (Tom < 35)
*set Tom2 "(Really Bad)"
*if (Tom < 25) and (Tom > 0)
*set Tom2 "(Enemy)"
*if (Tom = 0)
*set Tom2 "(Nemesis)"
*return
*label relJack
*if (Jack > 100)
*set Jack 100
*if (Jack < 0)
*set Jack 0
*if (Jack >= 85)
*set Jack2 "(Ally)"
*if (Jack >= 75) and (Jack < 80)
*set Jack2 "(Great)"
*if (Jack >= 60) and (Jack < 75)
*set Jack2 "(Good)"
*if (Jack >= 50) and (Jack < 60)
*set Jack2 "(Neutral)"
*if (Jack >= 35) and (Jack < 50)
*set Jack2 "(Bad)"
*if (Jack >= 25) and (Jack < 35)
*set Jack2 "(Really Bad)"
*if (Jack < 25) and (Jack > 0)
*set Jack2 "(Enemy)"
*if (Jack = 0)
*set Jack2 "(Nemesis)"
*return
*label continue
Now, here you can write whatever else you want to include to your Statscreen, but do not write anything between the *goto and *label continue part, or else it wonât be shown. As soon as the Player opens the stat screen in the game, the script will first look if we even have met any of the ROâs above. If yes, it will jump to the label with their Name (relJack, for example), and look how good their relationship with the MC currently is. Depending on that, it will include a special word afterwards to show how high or low the RS is. Once it is finished, it will jump over the same part to not create a loop and will continue at the label âcontinueâ
Of course, you would probably need to change the descriptions, I used the one I have in FAWR, and there itâs rather Ally and Nemesis instead of best Friend.
For further questions, just continue to ask x)