Well, you wanted to know the boring details, so here it is!
When you talk a NPC, there’s several different things going on:
– Their standard portrait will come up
– There will be a tab system that lets you shuffle through options to choose what you want to do with the NPC (talk, gift, emoticon, questionnaire)
– When talking to the NPC, he’ll draw dialogue from a common event that decides which dialogue needs to show up
– Each piece of dialogue will have their own portrait (for NPCs there’s 6 different portraits, for bachelors it’s unlimited), bachelors get a heart as well
– Each of the actions (talk, gift, emoticon, questionnaire), if performed, will add to the NPC’s Daily Relationship Points
And that’s basically how interacting with NPCs will go. You can talk to them twice a day to up the Daily RP, gifting and using the emoticon & questionnaire can only be used once a day. At the end of the day (when you go to bed, or at 0:00) the Daily RP will be added to the real Relationship Points (I explained this before), which is what really counts. The DRP will then be reset again.
Not talking to NPCs every day will deduct points from their DRP. If the DRP becomes negative, you can’t do anything else besides talk to them anymore (they refuse to accept gifts and won’t answer to questions etc.). To get it back to positive, just talk to them every day until they accept gifts again. Negative DRP will have a limit, so at the most it’ll take 3 days of talking to get them back up to positive.
Daily Relationship Points, if negative, won’t be deducted from the Relationship Points, ever. So you don’t have to worry about lowering their scores with you. Only the positive counts.
So anyways, I’ve been trying to get all of these systems working together. The portrait system is well on its way (using placeholder images), the backbone of the dialogue system is complete, and the DRP is being worked on as well. So far, it is all working together, so that’s a huuuuge step forward. Here’s what it looks like at the moment:
In the above screenshot, that’s the standard screen that will pop up if you interact with a NPC. You can press the arrows keys (up and down) to choose what you want to do. You can talk, give gifts, perform an action, ask a question or say something. You can also exit out of it by pressing the X button (or the B button). There are images on the right to show you which choice is selected.
When that screen pops up, you have not yet talked to the NPC, you have to actually select talk (which is as easy as pressing the Z/Space/Enter button again right after interacting with them) to raise the daily quota for talking to them.
I’m working on a little bit of everything at the same time, since they’re all pretty much connected to each other. As always, Bill is my test subject, so he’s the only one who’s got the portrait system as well as the dialogue system set up (though it’s easy to just copy & paste, aside from the actual dialogue).
Many thanks to IceDragon who’s always tweaking his variable images script to suit my needs (he had to edit it so that certain pictures show above the text window for example), and to Sky00Valentine for making the tab system script so that I can shuffle through options during a text command.
Edit: right, I forgot to mention. A while ago I asked if time should stop if you talk to a NPC. An overwhelming majority voted yes, but there were a few who voted no. This has now become an option that you can change at a whim in the options menu. By default, it is on, which means time stops.