[IDEA] Talk to me!

Post » Thu Mar 11, 2010 1:05 am

I think that will require MWSE. One of the biggest pitfalls in the Morrowind game engine is that a generic object cannot detect other generic objects. Only unique objects can be called for distance checks in the scripting language, which would be how one would script this to happen.
I really think this sort of thing is down Fliggerty's alley.

I've done a lot of personal mods that are currently deemed "impossible" in Morrowind, so I know the ropes of the CS pretty well. Random greetings to the player is possible and something I am willing to do, if we could just brainstorm some ideas on what they might say and who might say it.
User avatar
Destinyscharm
 
Posts: 3404
Joined: Sun Jul 23, 2006 6:06 pm

Post » Thu Mar 11, 2010 10:31 am

Indeed, random greetings to the player already exist. It could be possible to add a ForceGreeting line to those for the special-feature NPC, and have them greet you that way, with a random greeting/question/comment. Even compliment you on your clothes or hit on you...

As for using MWSE, for NPC to NPC dialogue, yes, that will be required. It's quite simple to check a couple NPCs each frame for proximity to each other (for example, each NPC checks their distance to 1 other NPC every 4th frame, which shouldn't be too slow). If one is within range, there's the handy Say command which plays a sound bit and shows a messagebox for it automatically, and returns a value when they're done talking.

I can work on those scripts on and off if others write the dialogue...
Of course, we'd need some kind of organization to remember who's doing what. Perhaps take care of Seyda Neen as a proof-of-concept, then expand to other places?
User avatar
Alex Vincent
 
Posts: 3514
Joined: Thu Jun 28, 2007 9:31 pm

Post » Thu Mar 11, 2010 2:36 pm

Dialog with the Player is all the easy stuff, making it unique with variables will be the fun part.
Having NPCs greet is do-able also as Peachy said, just some scripting.

And for some ideas that we already have going, check Page One. We were kinda brainstorming yesterday.
User avatar
George PUluse
 
Posts: 3486
Joined: Fri Sep 28, 2007 11:20 pm

Post » Thu Mar 11, 2010 2:23 am

It shouldn't be location-specific, as the goal here (I think) is to add a global ability for all NPCs who meet certain criteria to talk to the player.

I'm taking a look at this right now (because I fully intend on doing it). It seems that the hardest thing for me to do right now is narrow down the NPC's to the point where I know they're generic. A lot of NPCs in the game are used for quests and such, and I don't want them saying something that might conflict with their personality.
User avatar
Claire Mclaughlin
 
Posts: 3361
Joined: Mon Jul 31, 2006 6:55 am

Post » Thu Mar 11, 2010 4:33 am

It shouldn't be location-specific, as the goal here (I think) is to add a global ability for all NPCs who meet certain criteria to talk to the player.

I'm taking a look at this right now (because I fully intend on doing it). It seems that the hardest thing for me to do right now is narrow down the NPC's to the point where I know they're generic. A lot of NPCs in the game are used for quests and such, and I don't want them saying something that might conflict with their personality.

There are lots of "fluff" NPCs. Might browse through http://www.uesp.net/wiki/Morrowind%3a%50eople?
User avatar
Cameron Garrod
 
Posts: 3427
Joined: Sat Jun 30, 2007 7:46 am

Post » Thu Mar 11, 2010 10:13 am

It shouldn't be location-specific, as the goal here (I think) is to add a global ability for all NPCs who meet certain criteria to talk to the player.

I'm taking a look at this right now (because I fully intend on doing it). It seems that the hardest thing for me to do right now is narrow down the NPC's to the point where I know they're generic. A lot of NPCs in the game are used for quests and such, and I don't want them saying something that might conflict with their personality.

I think some should be global, but the majority should definitely be unique. It will add character to specific NPCs.

The Wiki has lists of NPC by town/region, that would be the best list to look through to see who does what already. It would be funner to work with the most generic ones, because that opens up more possibilities.
edit: Alaisiagae posted the link :)

Also, I think this should be compatible with LGNPC. If carefully done, it would run along side it nicely.
User avatar
Paula Ramos
 
Posts: 3384
Joined: Sun Jul 16, 2006 5:43 am

Post » Thu Mar 11, 2010 4:46 pm

I think some should be global, but the majority should definitely be unique.

I might do that, but that seems to be more down LGNPC's alley. Specific responses from specific NPCs is not a priority at the moment (but certainly a possibility). My whole goal is to reduce the gaping line between a "generic" NPC and a "custom" NPC. My NPC Functionality project is dedicated entirely to that cause. That's why I really love this idea.

So far I have a couple ideas I might implement.
"Do you have the time?" Some people could ask that.
"Oh, you are so sickly/wounded/fatigued!" What if mages who liked you could heal you upon sight of your battered state of being? (This is already sort of implemented with NpcF but a little bugged I think. I could always expand on it to include disease and fatigue).
User avatar
Amy Cooper
 
Posts: 3400
Joined: Thu Feb 01, 2007 2:38 am

Post » Thu Mar 11, 2010 1:16 pm

Dialog with the Player is all the easy stuff, making it unique with variables will be the fun part.


That's pretty easy. Each NPC gets a script with a few local shorts. In the vocal greeting (which the engine calls), you can set the variables and then ForceGreeting to open dialogue. Have a greeting line based on the NPC or variables (or both), which will get said.
I'm not sure if that makes sense, but it's really simple.


It shouldn't be location-specific, as the goal here (I think) is to add a global ability for all NPCs who meet certain criteria to talk to the player.

It would have to involve adding scripts to the NPCs, so it wouldn't be location specific, but it would be done by location (as in, each part would be done). Or just going down the NPC list. But picking a city to finish first would give visible progress.



Also, I think this should be compatible with LGNPC. If carefully done, it would run along side it nicely.

It could be built on top of LGNPC... I don't know much about that, but it could be possible.
User avatar
Caroline flitcroft
 
Posts: 3412
Joined: Sat Nov 25, 2006 7:05 am

Post » Thu Mar 11, 2010 1:44 pm

@Peachykeen

When I said "fun" I meant it literally, not out of trepidation. :P
I really love creating dialog.

Also, not everything would need scripting. When ForceGreeting isn't involved, a lot could still be done to make unique responses based on Player's skills/factions/etc.
So it wouldn't be too script heavy in some cases.
User avatar
Angel Torres
 
Posts: 3553
Joined: Thu Oct 25, 2007 7:08 am

Post » Thu Mar 11, 2010 7:18 am

The way I intend on doing this wont require any scripts on NPCs. That's why this is possible. It'll be compatible with LGNPC for sure, it shouldn't conflict with anything (I try to make mods that are entirely self-sufficient and wont get in the way of other mods).
However, the frequency of this happening will be based on two variables: the Random100 global and the chance that an NPC speaks a voice greeting upon seeing the player.
User avatar
Euan
 
Posts: 3376
Joined: Mon May 14, 2007 3:34 pm

Post » Thu Mar 11, 2010 7:59 am

The way I intend on doing this wont require any scripts on NPCs. That's why this is possible. It'll be compatible with LGNPC for sure, it shouldn't conflict with anything (I try to make mods that are entirely self-sufficient and wont get in the way of other mods).
However, the frequency of this happening will be based on two variables: the Random100 global and the chance that an NPC speaks a voice greeting upon seeing the player.


That's possible, but somewhat more limiting. You'd have to do more in dialogue and be limited by the filters there.
To make NPCs talk to each other, I think scripting would be needed. Global possibly, but on NPCs would be easier.
User avatar
Steven Nicholson
 
Posts: 3468
Joined: Mon Jun 18, 2007 1:24 pm

Post » Thu Mar 11, 2010 4:52 am

Oh, well for NPCs to talk to one another, yeah that'd require scripting... scripting to the extremes of town-by-town or MWSE (the former of which is something myself and almost everyone else is unwilling to do and the latter I am unpracticed with). I thought we were still talking about NPC greeting player, like what was originally suggested. (This part I intend to do)


-So, I'll keep you guys posted here.-


-Okay, I got the proof of concept down. I managed to make almost every NPC in the game world tell me"Hi!" in the dialogue window as I walked past them. :)
--Now I took it a step further. Anyone capable of magic (witch, battlemage, healer, etc) and likes you (70-80 disp) will offer healing upon sight of a wounded player (<= 40% health). It works! No scripts on NPC's needed, so this means that any NPC that fits the aforementioned criteria will be that much more helpful to you by literally talking to you first and offering cures. Now just to expand this to diseases and maybe fatigue... This is done by hooking a short global script to the results field in the voice dialogue, followed by the setting of a variable. The variable will tell the script what to do - so a healer's voice entry will set this variable to "1", which is the script's code for telling the NPC "I am a healer, the player is wounded. Cast a cure!" I can use this script on any NPC (as it terminates itself ASAP) to have different NPCs do different things depending on who they are. So in addition to simply speaking with the player, I can have the entire Morrowind population cast a spell, attack, follow, or anything else upon sight.
User avatar
Richard Thompson
 
Posts: 3302
Joined: Mon Jun 04, 2007 3:49 am

Post » Thu Mar 11, 2010 12:00 pm

Oh, well for NPCs to talk to one another, yeah that'd require scripting... scripting to the extremes of town-by-town or MWSE (the former of which is something myself and almost everyone else is unwilling to do and the latter I am unpracticed with). I thought we were still talking about NPC greeting player, like what was originally suggested. (This part I intend to do)


-So, I'll keep you guys posted here.-


-Okay, I got the proof of concept down. I managed to make almost every NPC in the game world tell me"Hi!" in the dialogue window as I walked past them. :)
--Now I took it a step further. Anyone capable of magic (witch, battlemage, healer, etc) and likes you (70-80 disp) will offer healing upon sight of a wounded player (<= 40% health). It works! No scripts on NPC's needed, so this means that any NPC that fits the aforementioned criteria will be that much more helpful to you by literally talking to you first and offering cures. Now just to expand this to diseases and maybe fatigue... This is done by hooking a short global script to the results field in the voice dialogue, followed by the setting of a variable. The variable will tell the script what to do - so a healer's voice entry will set this variable to "1", which is the script's code for telling the NPC "I am a healer, the player is wounded. Cast a cure!" I can use this script on any NPC (as it terminates itself ASAP) to have different NPCs do different things depending on who they are. So in addition to simply speaking with the player, I can have the entire Morrowind population cast a spell, attack, follow, or anything else upon sight.

Wow! :bowdown:

You know what would be neat? If an NPC's disposition was raised if you cast Restore Health or Restore Fatigue on them. Ideally, the disposition would only be raised if they were wounded or fatigued, otherwise I can imagine a player possibly spamming Restore Fatigue instead of using Persuasion to raise disposition. :P
User avatar
Nomee
 
Posts: 3382
Joined: Thu May 24, 2007 5:18 pm

Post » Thu Mar 11, 2010 1:47 am

Another great and easily implemented idea. I have a system in which any NPC can talk to the player now from almost any condition - their own pain and suffering could be one of them. :) This is definitely possible.
User avatar
Vickytoria Vasquez
 
Posts: 3456
Joined: Thu Aug 31, 2006 7:06 pm

Post » Thu Mar 11, 2010 4:57 am

Very interested by this mod, and look forward to trying it out soon
User avatar
Emily Rose
 
Posts: 3482
Joined: Sat Feb 17, 2007 5:56 pm

Post » Thu Mar 11, 2010 10:35 am

I'll include it in the next NPCF release, which is almost ready. I've got the whole healing thing down (from PC to NPC and vice versa), I just need many more (generic and plausible) ideas.
-Oh I thought of one... okay... this'll take a whole bunch of cell checks but I think I'm willing to do it. Adventurers in caves and dungeons can ask to team up with the player, for safety/group dynamic sake. I remember talking these ordinators who were clearing out this daedric ruin and chatting them into following me so we could all work together. At the time I thought my own mod was awesome for letting me do that, but wouldn't it be much better if they came to you first?
User avatar
Monique Cameron
 
Posts: 3430
Joined: Fri Jun 23, 2006 6:30 am

Post » Thu Mar 11, 2010 4:01 pm

I'll include it in the next NPCF release, which is almost ready. I've got the whole healing thing down (from PC to NPC and vice versa), I just need many more (generic and plausible) ideas.
-Oh I thought of one... okay... this'll take a whole bunch of cell checks but I think I'm willing to do it. Adventurers in caves and dungeons can ask to team up with the player, for safety/group dynamic sake. I remember talking these ordinators who were clearing out this daedric ruin and chatting them into following me so we could all work together. At the time I thought my own mod was awesome for letting me do that, but wouldn't it be much better if they came to you first?

That's so cool. :ooo: Yeah, I noticed those Witchhunter Ordinators out there - they aren't for a Temple quest? Then, I suppose they could offer a bounty for clearing out the Shrine...? :unsure:

Could you make a stand alone version, too?
User avatar
katsomaya Sanchez
 
Posts: 3368
Joined: Tue Jun 13, 2006 5:03 am

Post » Thu Mar 11, 2010 10:21 am

Setting up the convos via MWSE would be easy and best of all, would allow mod-added NPCs to say thing. I'll mess around with those and see if they work out.

@ Casey Tucker: I know quite a few NPCs would offer such things, but they wouldn't be inclined to always heal you. I think it should be at a disposition of 90 or so that they'll come to you, maybe only if you have a rep above 10 or 20. At 80 they may offer when you talk to them, but wouldn't walk up and offer without either being a healer or you having a high enough reputation
User avatar
Joe Alvarado
 
Posts: 3467
Joined: Sat Nov 24, 2007 11:13 pm

Post » Thu Mar 11, 2010 7:38 am

I think if someone burst in bleeding from several wounds, most people would want to know what happened or help them somehow. Isn't it just normal?
User avatar
Charles Mckinna
 
Posts: 3511
Joined: Mon Nov 12, 2007 6:51 am

Post » Thu Mar 11, 2010 1:39 pm

Not really...
Quite a few people, especially in a bar or other place, would simply step out of the way.
Healers, possibly mages guild folks, and people in temples would certainly help. The average citizen would have a 50/50 chance of offering help or pointing and staring.
Imperial guards would come running to ask questions.
Thieves Guild members, anyone (who isn't a healer or bartender) in a bar, and a number of others wouldn't help.
User avatar
lucile davignon
 
Posts: 3375
Joined: Thu Mar 22, 2007 10:40 pm

Post » Thu Mar 11, 2010 9:04 am

It would def be interesting to see. I think it could be done fairly easily to
User avatar
Mrs Pooh
 
Posts: 3340
Joined: Wed Oct 24, 2007 7:30 pm

Post » Thu Mar 11, 2010 4:18 pm

I think it must depend on the player's race, with the "samerace" variable.

Ex: In a dunmer town or an ashlander camp, if the PC is a Dunmer OR is already Nerevarine, he would be helped or pitied until he found someone to heal him, and if he is neither the local Dunmer would do nothing, or maybe say something like "one outlander less".
User avatar
Inol Wakhid
 
Posts: 3403
Joined: Wed Jun 27, 2007 5:47 am

Post » Thu Mar 11, 2010 4:04 pm

I think it must depend on the player's race, with the "samerace" variable.

Ex: In a dunmer town or an ashlander camp, if the PC is a Dunmer OR is already Nerevarine, he would be helped or pitied until he found someone to heal him, and if he is neither the local Dunmer would do nothing, or maybe say something like "one outlander less".

In a sense, that would happen even if the PC was a Dunmer. Presumably your character isn't from Vvardenfell; even Dunmer from Mainland Morrowind are considered "outsiders."

Still, it would be a good idea to filter the healing to really high disposition, and maybe even class and/or race - or, perhaps more importantly, reputation and faction.

I agree with peachykeen; Vvardenfell's inhabitants are gritty and tough, I can't really see them helping an unknown outlander out of the pity of their hearts. Vvardenfell strikes me as a rugged frontier sort of place....

But, this does give an interesting idea: if you walk in to an establishment bleeding everywhere, maybe the owner (inn owner, shop owner) will approach you and ask you to leave until you stop bleeding all over the merchandise. :D
User avatar
CSar L
 
Posts: 3404
Joined: Fri Nov 09, 2007 9:36 pm

Post » Thu Mar 11, 2010 2:08 pm

I meant that the local Dunmer will be a little less unhelpful toward outlander dunmer than Imperials or Nords for exemple. They have a little less reason to dislike them (the main fault of outlander Dunmer being to be born at a wrong place).

As for when the player if officially named Nerevarine, I think than even if Dunmer still don't like him, they won't let him die before their eyes when he can die much more helpfully at Red Mountain ^^ (and in that case, keeping harassing him for staying idle in town instead of going to Red Mountain).

Still... Considering the number of filter proposed, it would take a hundred dialog entries by topic :
- NPC disposition (disposition above 80 (likes the player) / disposition above 50 (don't care) / disposition above 0 (hates the player))
- NPC race
- player samerace (NPC more friendly to someone of the same race and less to others)
- player race (if not of the same race, they are differences, like a Khajiit player talking to a Dunmer)
- NPC class (healer / adventurer / ordinator / ...)
- player class (commoner asking for a blessing of a priest player, )
(either a specific class or samerace / not samerace than the NPC)
- player samerace than the NPC (alchemist asking the player for advice to the player)
- player competences and skills (warrior asking some tips to the player is the player is stronger or better with long blades (and I think you can even raise the NPC stats to allow the player give some training))
- Main quest advancement (player outlawed by the Temple, player Hortator of the NPC's faction, )
- player rank in the NPC's guild or faction (pilgrim NPC asking about a far-away shrine to the player)
- NPC's rank in his guild or faction (low-ranking NPC asking for advice, faction-related rumor, gossip about an important NPC of the faction)
- and many more

That is a lot, and when you combine them that makes even more, for even if each function could have only two settings, true and false, you would end up with 2^12 possibilities only for those listed.
So I advice to make some choices rather than thinking to implement everything (which would not be bad in itself, but il would litteraly take ages...)

If the goal is to make the generic NPC more alive, I suggest to begin with creating the entries with the fewer requirement, and once that is done to increase progressively those requirements. To begin by what will be shared by everyone or almost every one, then by everyone in a place, etc.
To avoid having to create one entry by PC race, one can make one entry for the player of the same race (e.g. a cold one for dunmer to a dunmer player, without any other requirement), and a gereric entry for players not of the same race (which will include the custom races since it will not check the race of the player, but if he isn't of one race). After doing that, one can add some other entries for other races (dunmer to argonian player, to nord player), but if one don't there will still be the generic answer. There is often no need to make a different entry for each race (e.g. a dunmer NPC probably don''t care if the player is redguard or breton, unless he speaks about something related to those races). And after that, one can add as many extremely-precise-entries as he likes for a NPC of this race (from a Redoran guard asking a high-ranking Redoran if he wants him as an escort to a female dunmer alchemist of house Telvanni with a high personality competence speaking in Sadrith Mora to a male non-khajiit alchemist player with a better alchemy skill than her, and trying to charm him so that he will let slip his secrets... and if not actually casting a charm spell... not, that is only an example)

So... the point is that once there is enough ideas, there should be a list of the entries or types of entries needing some lines, so that there is no time wasted by writing what will not be included, or what would require ten other entries to be included.
User avatar
Tasha Clifford
 
Posts: 3295
Joined: Fri Jul 21, 2006 7:08 am

Post » Thu Mar 11, 2010 7:50 am

Please change the name. I have a mod named Talk to Me!

http://www.tesnexus.com/downloads/file.php?id=23334

http://planetelderscrolls.gamespy.com/View.php?view=Mods.Detail&id=7374

However, this mod sounds cool. :)
User avatar
Ebony Lawson
 
Posts: 3504
Joined: Fri Feb 16, 2007 11:00 am

PreviousNext

Return to III - Morrowind