NPC should have social + knowledge graphs

Discussion in 'Avatars & NPCs' started by smack, Dec 27, 2013.

Thread Status:
Not open for further replies.
  1. smack

    smack Avatar

    Messages:
    7,077
    Likes Received:
    15,288
    Trophy Points:
    153
    To make NPC's "smarter" I had suggested in a few posts that they have the concept of social graphs, so I'll expand on this idea in this new thread. This would aid in these areas:

    - conversation system
    - schedules
    - knowledge sharing

    Conversation System
    When talking to an NPC, you are limited by the keywords in his internal dictionary. If you ask him about something he doesn't know, you'll get a "huh" type response. To make NPC's smarter, the social graph will enable him to learn new keywords against his "friend's" dictionaries that he's learned about. So instead he can respond with something to the effect of "I don't know anything about that, but <name> might" since he learned about that when he met up with his NPC friends.

    Schedules
    NPCs will presumably have a schedule of some kind that they repeat daily or weekly or whenever. This would aid in determining where he goes and who he meets up with. It gives the NPCs more "life" to them rather than just going from point A to B to C and repeating that daily. NPCs can perhaps gain new friends and thereby increases his social graph and further adds to his knowledge. It is only during this schedule that knowledge is shared.

    Knowledge Sharing
    As part of that NPC schedule, when he visits his "friends", they would share knowledge they've gained. If they learn your name, they can tell their friends who you are. Wouldn't it be neat if you met the barkeep's friend and he said "Oh, hey there <your name>, I've heard about you from my friend <name>". So when the two NPCs "talk" they would share info about you that they've learned. And they would then share keywords they've learned from their friends, thereby expanding their dictionaries of not just what they know, but who knows what to help guide you. NPC 1 is friends with NPC 2. NPC 2 is friends with NPC 3. NPC 1 and NPC 3 aren't friends but via NPC 2, they've gained knowledge from each other when they both go visit NPC 2 as part of their "schedule".

    Of course flags could be set on keywords if they're shareable or whatever.

    NPCs could become smarter, develop a history with you, and share that knowledge of you, perhaps your disposition towards them (don't cuss at them!) and maybe even your actions (completing quests they've given to you) to their NPC friends, who in turn will open up a ton of possibilities to interact with.

    It's a really organic way of enhancing NPCs through an innovative conversation input system. It's how we interact with in real life, sharing knowledge and stories about each other to our friends.
     
  2. Violation Clauth

    Violation Clauth Avatar

    Messages:
    3,247
    Likes Received:
    7,594
    Trophy Points:
    165
    Gender:
    Male
    Fairly sure they have all of this already ;)
     
  3. Miracle Dragon

    Miracle Dragon Legend of the Hearth

    Messages:
    2,957
    Likes Received:
    6,313
    Trophy Points:
    165
    Gender:
    Male
    Location:
    Currently: Zhongxian, Chongqing, China
    Yes, this sounds wonderful. I believe it could take time, but spending time creating the simulation is a huge part of what I believe will make this game enjoyable for many if not most of the fans of the old series.
     
  4. rune_74

    rune_74 Avatar

    Messages:
    4,786
    Likes Received:
    8,324
    Trophy Points:
    153
    These are all things I agree with and expect in the game to be honest. The one interesting thing in ultima 7 was ever npc had a reason for being there or a "family unit as well as a home...they weren't just a vendor or sign post. I'm hoping they do that within the game...make it so the NPC's actually matter and exist in the cities.
     
    Miracle Dragon likes this.
  5. smack

    smack Avatar

    Messages:
    7,077
    Likes Received:
    15,288
    Trophy Points:
    153
    Would love to hear from Lum on this! I still have a lot more detail to post about how each system works with this social graph.

    And here's another system that can be improved: quests. Because of the social and knowledge graph, NPCs can share their knowledge about quests, and even your progress on them (since they gave it to you). The wider the social graph, the more widely spread your quest activity is. Now you can ask other NPCs about the quest and depending on how much knowledge was shared, they can assist you just as the original NPC would. There may be some aspects that aren't shared so you'd have to go back to that NPC, but that would depend on the quest design and of course the story design. This would increase social interaction with NPCs and increase immersion, giving the world and its NPCs more life to them. The extreme consequence of this is that now NPCs can even die and your quest would not be broken or auto-fail. As that dead NPC's friends also have knowledge of your quest, they can pick it up from there and assist you until you complete it. And that would also depend on the quest/story design if that was allowable. Sometimes knowledge is lost permanently and that should be ok (e.g. the Fall, the cataclsym) and cause your quest to fail -- but failure only in the sense that the quest has ended.
     
    Miracle Dragon likes this.
  6. smack

    smack Avatar

    Messages:
    7,077
    Likes Received:
    15,288
    Trophy Points:
    153
    Given some ideas on the IRC chat, this design proposal is now formally known as the SmackTalk system. :)
     
    Miracle Dragon and monkeysmack like this.
Thread Status:
Not open for further replies.