[WIP] [TUTORIAL]Affection System

Started by GAX, June 30, 2008, 07:23:50 pm

Previous topic - Next topic

GAX

June 30, 2008, 07:23:50 pm Last Edit: July 26, 2008, 05:36:48 pm by GuardianAngelX72
Affection System
Version: 1.0
Type: Gameplay Enhancement



Introduction

Many people have played atleast one Dating Simulator game in their lives, so you should know how this works.  The affection system relies on variables for individual people in order to provide different outcomes in the game.  The higher the affection, the more a girl likes you.  This affection variable can be used for many things, from being items to events involving the two character that could be entering a contest, going on a date, or going to a love hotel and...nevermind.

This affection system is meant to help within RPGs to assist in adding somre more functions into the game, and can be especially useful in games where a character does not have an established love interest, but you want some form of romance in the game.


Features


  • Fairly simple system, but requires basic understanding of RPG Maker and variables.
  • Can be implemented in many ways to boost your games, not limitted to just friendships between characters, but could be used for Ally-Enemy system.
  • An interesting gameplay element, making the player decide carefully on their actions giving higher interactivity for the player.
  • You don't have to work with an SDK script ^^.



Screenshots

I'll include some later...


Demo

No Demo ready as of yet, be on the lookout.


Instructions

Create a Sample Character.  Depending on what you're using the system for, choose the style of character.  In this case a girl using the 118-Civilian18 character set.  Since this character is going to be a Love Interest character, we'll use two variables for her, a Friendship Variable and a Love Variable.  The Love Variable comes in later, for now let's start with the Friendship Variable.   Make the following conditional branch.

Conditional Branch: Variable [000X: Girl 1 Friendship]==0
@>Text: (This girl dresses fairly plain, but she's extremely adorable.)
@>Show Choices:  Introduce, Leave Alone
  : When [Introduce]
   @>Text: [Young Girl]
    :   :Um....hi...
    :   :(She looks extremely cute, but very shy too.)
   @>Control Variables: [000X: Girl 1 Friendship] +=1
   @>
  :When [Leave Alone]
  @>
: Branch End
Else
@>
Branch End
@>


By saying hi to the character, you've added the initial variable for the girl, so her friendship level would be "Introduced Self".  For this system, you can determine your own level values, but a simple one would be a 15 level system with a few ranks.


  • 0 = Stranger
  • 1 = Have Met
  • 2 = Familiar
  • 5 = New Friend
  • 10 = Good friend (Comfortable with accepting basic gifts)
  • 15 = Close Friend (Able to ask out on a date)


Now, as seen there's a point where it says Comfortable with Accepting Basic Gifts.  This would be just normal stuff, like food, accessories, etc., but nothing exravagant.  This will be explained in detail later.

(Working on Next Part...)



Credits and Thanks


  • GuardianAngelX72 for the basic system
  • Blizzard for hosting CP and thus allowing this systemto be displayed
  • No one else has helped yet...



Author's Notes

This is a work in progress, so please bear with me, I may not be able to update it a lot but it'll be done eventually.  Also, there is chances it may be buggy, so please, if you have any ways to improve this, I'll add your improvements and credit you in the creation of the system.



Rule 2: ShowHide
Quote from: Rule No.2Keep your signatures at reasonable size. The pictures in your signature may altogether be no more than 200kB and take up an area of 1600px2. That means 2 pictures of 400x200 are fine, one picture of 800x200 is fine and so on. Also your pictures height must not exceed 200 pixels, width can be as big as you want as long as your pictures match the other criteria. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Calintz


GAX


Rule 2: ShowHide
Quote from: Rule No.2Keep your signatures at reasonable size. The pictures in your signature may altogether be no more than 200kB and take up an area of 1600px2. That means 2 pictures of 400x200 are fine, one picture of 800x200 is fine and so on. Also your pictures height must not exceed 200 pixels, width can be as big as you want as long as your pictures match the other criteria. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Fantasist

Nice :)
You might also want to involve some 'luck' in the system by using the random function in the variable operations. How well the maker uses it might go a long way in replay value.
Do you like ambient/electronic music? Then you should promote a talented artist! Help out here. (I'm serious. Just listen to his work at least!)


The best of freeware reviews: Gizmo's Freeware Reviews




Starrodkirby86

This would be an original turn on the Dating Sims formula, but unfortunately of the ones I played (Albeit suck-ish) they never had a luck element. It was mainly choose the right choice/get it on. :naughty:

This is rather a suggestion supporting Fantasist, but if luck is involved, maybe the girl should some "AI". This would help all those lame otakus who think Dating Sims are like real women.  :roll:

This I know how to do already, but I'm watching closely. Enterbrain's old company part, ASCII made a Dating Sim Maker 95. I can't find it, but I heard it was notorious for H-Games. :/

What's osu!? It's a rhythm game. Thought I should have a signature with a working rank. ;P It's now clickable!
Still Aqua's biggest fan (Or am I?).




Fantasist

July 27, 2008, 01:10:45 am #5 Last Edit: July 27, 2008, 01:12:08 am by Fantasist
Well, the luck IS a primitive means of AI. We can code use many variables for a 'character' and change them too, which would be a pain not worth taking. I don't know about dating sims but this system can be used in other ways in games, like allies whose stats depend on the friendship, etc.
Do you like ambient/electronic music? Then you should promote a talented artist! Help out here. (I'm serious. Just listen to his work at least!)


The best of freeware reviews: Gizmo's Freeware Reviews




Blizzard

July 27, 2008, 06:09:53 am #6 Last Edit: July 27, 2008, 06:10:48 am by Blizzard
Here's an idea for the system structure:


  • Seeing the person every day will start repelling.
  • Repeating gifts have less effect after the second time.
  • Same gifts over and and over repell.
  • Simply gifts over and over repell because it seems as if you are trying to buy the person
  • Acting like you are the one who needs to be conquered makes her madly falling in love with you.
  • In the last case you have to "give in" and be ncie from time to time, you have to show the person that (s)he is succeeding.
  • "Meeting" other people repells the person if (s)he finds out (you can have a friend system or something like that and a gossip system, like people saw you on the street walking with somebody else and kissing)
  • Meeting friends of your love and how you act towards changes affection.
  • Breaking up will cause an impact on gossip, friends, your reputation and how likely it is that you can get back together.
  • You need a set of predefined reasons to break up. It's not too real, but better than nothing.
  • If your reason is valid by evaluating your progress on that person, the person can still stay friends. This can be done by evaluating the entire log of your affection. i.e. if you haven't talked much because (s)he didn't want to, you can say the reason that you're not on the same wavelength.


Hm... Maybe I exagarated it a bit (even though I'm not even close to reality)... :^_^': Anyway, the first four things are very easy to make. You simply need a few variables to keep track of when and how somebody gave gifts/met that person.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

GAX

Man, you guys, let's just make this a collaborative work.  Setup the  ideas you have and post them, I'll add them into the main tutorial in sections and ther can be  really crazy event system.

Rule 2: ShowHide
Quote from: Rule No.2Keep your signatures at reasonable size. The pictures in your signature may altogether be no more than 200kB and take up an area of 1600px2. That means 2 pictures of 400x200 are fine, one picture of 800x200 is fine and so on. Also your pictures height must not exceed 200 pixels, width can be as big as you want as long as your pictures match the other criteria. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Blizzard

I'm starting to think that the engine should be rather a script which has script calls that are called from the event. =/ Well, only if you are going to use my advanced ideas. xD
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

GAX

Might be a good idea.  Especially because if we work with a script, we could probably add something like an Affection Monitor or something like that.  Make it something that could have a call too, so you could either limit the monitor to a thing like a computer at your home area or save point, or put it in your menu.

Rule 2: ShowHide
Quote from: Rule No.2Keep your signatures at reasonable size. The pictures in your signature may altogether be no more than 200kB and take up an area of 1600px2. That means 2 pictures of 400x200 are fine, one picture of 800x200 is fine and so on. Also your pictures height must not exceed 200 pixels, width can be as big as you want as long as your pictures match the other criteria. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Satoh

Here's a thought, in order to make it versatile enough for an RPG, if you say or do too many bad choices, the character leaves the party entirely... (or refuses to ever speak with you or something...)

For that matter you could also use it as a way to recruit secret characters.... however, due to the scope of this idea... It probably would be better suited to a script...

I'd be willing to use it either way.
Requesting Rule #1: BE SPECIFIC!!

Light a man a fire and he'll be warm for a night...
Light a man afire and he'll be warm for the rest of his life... ¬ ¬;

My Resources

legacyblade

I actually think I might make a script with some of the features blizz mentioned. Dang, that'd be cool! It would be even cooler if you had "people" events that had hearing and sight range, which effected what gossip got picked up by said person. And depending on that person's relationships and personality, it would effect who the gossip would spread too. I don't think I'm that ambitious, but a feature rich affection system would be cool.

Blulightning

To add/comment on Blizzard's feature suggestions:

1) A script form would be nice. It would compact all the features, plus a cool window screen would be *sweet*
2) Different gifts for different people affect relationship differently. i.e. A girl who's allergic to chocolate would dislike you more if you got her chocolates
3) Marriage???

legacyblade

yeah, you could easily do a harvest moon style gift thing with an array. In fact, I think I have a few ideas on how to do it. If I'm not too busy over the weekend, I could try it (and the marriage would be easy with events.)

Memor-X

really everything suggested could be done with only Events, you'll need a DDNS to get time and Blizzards DDNS Take 2 would be perfect since it manages time, date, days, months and years, so you could have birthdays, aniverseries, other special holidays, where you can get rewards for doing something to the friend (such as a hug, a gift in return, a kiss or something more) ofcause, the window would have to be scripted (then the whole thing becoems the SDK's bitch) unless someone can build a scripted windows using events

QuoteDifferent gifts for different people affect relationship differently. i.e. A girl who's allergic to chocolate would dislike you more if you got her chocolates

Quoteyeah, you could easily do a harvest moon style gift thing with an array

you could do it with a common event actuly, here's a rough idea how it would be

NOTE: this is in Pseudocode code
show choices: talk, give item, leave
     choice: give item
          show choice: flowers, chocolate, blue feather
               choice: flowers
                    if flowers is owned then
                         relationship level +1
                         chnage items -1 flowers
                    else
                         show message: you don't have any flowers to give
               choice: chocolate
                    if choclocate is owned then
                         if switch <friends name> is on
                              show message: "what are you trying to do, you know i'm allergic to chocolate"
                              relationship level -2
                         else
                              relationship level +1
                              chnage items -1 chocolates
                    else
                         show message: you don't have any chocolates to give
               choice: blue feather
                    if blue feather is owned then
                         if relationship level is <marrage level>
                              show message: "ofcause i'll marry you"
                              chnage items -1 blue feather
                         else
                              show message: "ummm, i think we're not realy for that yet"
                    else
                         show message: you don't have any blue feather to give


ofcause this is only the give gift system, i know how the rest would go (in theory)

you'll have this in a comman event and call with whem you talk to the character, before you call the common event, you would have a switch for that character turned on, and when the relation level incresses or decresses, you'll have a condition to check for the switch that is on

infact, i've been workin on theories only for a system like this ready for a game i'll make where at a stage, you'll be able to date a character and the two of you can fuse together, this fusion form is as power as the relationship, if you and the character are madly in love, your invincible, if you fail to treat the character right, this fusion form will be easy for your enemy to defeat, ofcause, the one i work working on the theories for was for only 1 character to date but with some mods to the theory, it can be used for many more character, GuardianAngelX72, if you need help with this system i'm your guy

Blizzard

Yeah, ATES is based on the idea that you can use it interactively for different purposes. Sadly I don't have time to keep wokring on it and WcW seems to have disappeared again. ._.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.