Advertisement

RPG NPC AI, Scheduling and Needs...

Started by July 07, 2000 10:24 AM
55 comments, last by Ingenu 23 years, 10 months ago
again.

About the elves and goblins not liking each other, maybe that''s just a stereotype(int he game) and once they get to know each other that will change?


About npc''s and food. (I''m basing my thoughts on final fantasy type games) Maybe it''s not that person that has the food, but the house that has the food, so people living in the same house can split chores, such as wife gets this, husband gets that, while the kids just play all day, who they play with and where they shop (if multiple shops) is determined by the rating of the shop?

Well i''m not gonna post till i see good or bad replys...bye
I love the idea (expressed earlier) of NPCs being scheduled, and if anyone cares to hear my opinion, I have another interesting idea regarding messaging between NPCs. I''d say one would just want to represent speech as a universal communication that is recieved by all nearby NPCs and the player: An NPC who wanted to buy bread or whatever, would walk into a bread shop, and approach the counter and say, "I''d like to buy some raisin bread." Which would be broadcast to nearby players and NPCs.

The baker would respond via speech, such as, "That''ll be 4 gil," or "Sorry, I sold the last raisin bread a little while ago," or whatever, and the hungry NPC would get the idea and give money to him, upon which the baker would give him the bread. With messages and transactions being broadcast that way, NPCs could react to things happening around them. If another NPC is just outside and the door is open, she may hear the man buying bread and think, "Hmm, now that you mention it, I could really go for a loaf of bread right about now." Essentially my thought is that we need to make NPCs react more *visibly* to one another than just passing silent messages and objects from one NPC to another with little more than perhaps a "hungryman buys a loaf of bread."

Think of it this way: you don''t just walk into a bakery, hand some money to the guy behind the counter, and take a loaf of bread. (at least, I don''t.) More often, you walk in and if there''s not many people there, he says, "Hi, how can I help you?" Or if the room is packed, he might not even notice until you come to the end of the line. It''s always a dialogue rather than a plain old exchange, and if you tell the baker "gee, my dog died and I''m really depressed," someone else may overhear you and comment on it or be affected by it.

I doubt this makes any sense really, because I''m not sure what I''m saying myself, but owell. O;.


+------------------------------------------------
| Thp :: Threep2742@worldnet.att.net
| "Nature uses only the longest threads to
| weave her patterns, so each small piece
| of her fabric reveals the organization of
| the entire tapestry." -- Richard P. Feynman

+------------------------------------------------| Thp :: Threep2742@worldnet.att.net| "Nature uses only the longest threads to| weave her patterns, so each small piece| of her fabric reveals the organization of| the entire tapestry." -- Richard P. Feynman
Advertisement
I don''t think i want to play a bakery sim.
ok first, you can join our mailing list:*

If anyone wants to subscribe to the mailing list then NPCAI-subscribe@egroups.com is the address to send to. The main page for the group is http://www.egroups.com/group/NPCAI/ and to post you send to NPCAI@egroups.com.

second : gosh ! I forgot the children...
That''s not really a problem but this make me think we''ll need to have modular/configurable NPCs.

I think the idea of writing dialogs on screen are optionnal, so the system will propose some kind of dialogs but it''ll be up to the programmer to choose if he wants the dialogs to be visible on screen.

About the idea of the house containing food...
Good idea.
I''ll note that somewhere

Rating the shop and keeping everyone status to each other is something interesting.
And yes something like that is included in the porject.
see : http://www.multimania.com/ingenu/IAModule.txt this text file for more informations on what is or isn''t included

NPC have 5 senses like us real humans.
So they are able to hear any message send near them.
Maybe this message can change his task...
I''ll talk about that in the mailing list.


Please remember the NPC are for a RPG, not a sim''s like game






-* So many things to do, so little time to spend. *-
-* So many things to do, so little time to spend. *-
You could have NPC''s in sims... That would be memory innefficient, take ages to update etc. You may, however, put AI on the other player (ie, NPC) so that a computer could play. But I think that is way out of our grasp for a while


-Chris Bennett ("Insanity" of Dwarfsoft)

Check our site:
http://www.crosswinds.net/~dwarfsoft/
and our eGroup:
http://www.egroups.com/group/dwarfsoft
My thoughts on basic AI for an RPG are as follows:

Firstly shouldnt everything by based upon Stimuli and associated Responses? Stimuli can be external (man sees a bear), or internal (man becomes hungry).
Each response (corresponding to a stimulus based upon choices) is then broken up into goals. Hunger could be broken up into 3 high level goals. Find Food. Prepare Food. Eat Food.
Find food could then be broken down into sub-goals and so on. Goals would have relationships assigned to them (could be simple AND/OR/XOR operations).
Using this method, goals can be reused for different stimuli.
Plus new associations between Stimuli and responses can be made (based on viewing stimuli and responses from other entities) which creates learning.
And this all lends itself nicely to OOP.

Just a thought.
Advertisement
That''s the knid of system we are talking about and trying to programm

-* So many things to do, so little time to spend. *-
-* So many things to do, so little time to spend. *-
yeah, I like that...

"The road of excess leads to the palace of wisdom." --William Blake

"The road of excess also just ends making me tired because I'm too lazy" --Nazrix
Need help? Well, go FAQ yourself. "Just don't look at the hole." -- Unspoken_Magi
Have you join our mailing list, Nazrix ??
If you don''t already joined us, I hope you will :o)




-* So many things to do, so little time to spend. *-
-* So many things to do, so little time to spend. *-
Yes, I have

I haven''t had enough time to read all of them though. I should do that.

One idea I had last night for a more non-linear game:

What if we had a need-based system combined w/ a schedule, and the non-linear plots would only happen when NPCs actually come near each other in the world.

So, say one NPC is scripted to murder another NPC at some point of the game. And, the player is then told to avenge the death of the murdered NPC.

....(lame, but simple)....

Instead of this happening at a set point in the plot, it could only happen when the 1st NPC comes in contact w/ the 2nd NPC. And, since we''re using a need-based w/ a schedule, the NPCs would meet at different times each time you play because they''d probably have different needs each time you play. So, they''d find each other at different times.

This could also work with the NPCs exchanging information like dwarfsoft was speaking of. If the 2nd NPC is scripted to tell a confidential secret to another NPC, (and that''s why he gets killed) then he won''t get killed until he finds the NPC to tell the secret. And THAT would happen at different times in the game too. So, it may be a bit chaotic, but it would seem like the NPCs were more alive.



"The road of excess leads to the palace of wisdom." --William Blake

"The road of excess also just ends making me tired because I'm too lazy" --Nazrix
Need help? Well, go FAQ yourself. "Just don't look at the hole." -- Unspoken_Magi

This topic is closed to new replies.

Advertisement