Titans of Ether
»  Forum

»  Homepage
»  Media
»  Timeline
»  Team

»  Calendar
»  Register


»  Log Out



Titans of Ether » TITANS OF ETHER » Ultima IX: Redemption » NPC sophistication? » Hello Guest [Login|Register]
Last Post | First Unread Post Print Page | Recommend to a Friend | Add Thread to Favorites
Go to the bottom of this page NPC sophistication? « Previous Thread | Next Thread »

User Profil
Message: | composed: 08-08-2021 19:42 Go to the top of this page Zum Ende der Seite springen
Sowser

Forum Ace
Member since: 03-10-2021
Posts: 85
Location: California

Sowser is offline

I guess this should probably go under "wish list" but I was wondering about the level of sophistication that the NPCs will have. With graphics just about maxed out this seems to be the area that RPGs can most improve upon. From the sound of Direhaggis' posts the dialog will be stellar and from Corv's posts from quite awhile ago the scripting will be better than most. What I'd like to see is a scenario where if I leave a magic sword laying on the floor of some guy's house that when I come back a week later it isn't still there. I don't know anything about scripting but instead could it end up in the guy's closet? Or even better be sold to the local weapons dealer and he now has a bit of gold tucked away? Or if it got very fancy he could spend some of his new gold on items from other dealers in the town and those would show up in the house. Any of these would be a great improvement over what seems to be the current options: the item sits there forever or it disappears into the void never to be seen again. Obviously the scripting in Morrowind is somewhat fixed but what about Oblivion for The New King?
PROFILE :: EMAIL :: SEARCH :: BUDDY QUOTE :: EDIT :: REPORT

User Profil
Message: | composed: 08-08-2021 20:21 Go to the top of this page Zum Ende der Seite springen
-Direhaggis- -Direhaggis- is a male

Titan of Ether
Member since: 17-09-2021
Posts: 1,031
Location: Madison, WI
Favourite Ultima: Ultima 7 Black Gate

-Direhaggis- is offline

I can't speak/write to your particular question. My sense is that the number of items * the number of NPC's near towns = way too many variables to keep track of.

More generally speaking to NPC sophistication:

The scripting is superbly done. Zini can obviously speak to the specifics better than I can, but I've been surprised by the relatively few constraints I or any other writer absolutely need to work under.

NPC dialogue sophistication, generally speaking, will be like Planescape:Torment or, say, the Baldur's Gate series far more than Bethesda's products. That means each -unique- NPC has a unique response for a keyword. Dozens of different circumstances can change responses; those changes can affect how a quest is completed, what is gained from it, etc. A full list would take too long. Some of the different variables that can change dialogue include:

*Gender

*Quest completion status NPC is related to

*Previousl quests completed successfully or not successfully

*Dialogue choices by the player over the course of the game that suggest a certain personality or style of play

*Selecting a keyword more than once

*Party members present or absent

*Inventory items present or absent

*Avatar's current clothing choice (or lack thereof)

-Generic- NPC's will generally have one thing to say. However, like the Icewind Dale series, some select generics will have items or quests for the Avatar to complete.


Direhaggis
Lead Writer/Editor
2D Art
PROFILE :: EMAIL :: SEARCH :: BUDDY QUOTE :: EDIT :: REPORT

User Profil
Message: | composed: 08-08-2021 21:01 Go to the top of this page Zum Ende der Seite springen
Sowser

Forum Ace
Member since: 03-10-2021
Posts: 85
Location: California

Thread Starter Thread Started by Sowser

Sowser is offline

Just the fact that you're invoking games like Planescape:Torment, Baldur's Gate, and Icewind Dale is very encouraging!
PROFILE :: EMAIL :: SEARCH :: BUDDY QUOTE :: EDIT :: REPORT

User Profil
Message: | composed: 09-08-2021 00:08 Go to the top of this page Zum Ende der Seite springen
-Direhaggis- -Direhaggis- is a male

Titan of Ether
Member since: 17-09-2021
Posts: 1,031
Location: Madison, WI
Favourite Ultima: Ultima 7 Black Gate

-Direhaggis- is offline

My style is probably most like PS: Torment. Anything I write will tend to be more text-heavy, although I've tried to make additional text optional just for those who want more background vs. more slash-hacky.

I honestly haven't played an RPG more recent than Vampire: Bloodlines. I just don't have the time. If anyone can recommend something currently out that really pushes boundaries, I might try to open up a few hours every other day.


Direhaggis
Lead Writer/Editor
2D Art
PROFILE :: EMAIL :: SEARCH :: BUDDY QUOTE :: EDIT :: REPORT

User Profil
Message: | composed: 09-08-2021 10:09 Go to the top of this page Zum Ende der Seite springen
Zini Zini is a male

images/avatars/avatar-2.gif

Titan of Ether
Member since: 08-09-2021
Posts: 397
Location: Germany
Favourite Ultima: Ultima 5 Warriors of Destiny

Zini is offline

@Sowser:
I am 90% sure, that the feature you describe would be possible, at least from a technical point of you (would need to make some experiments first to go up to 100%). At least when we go for the »selling the item« approach, it would be rather like the number of item + the number of NPCs near towns than the number of items * the number of NPCs near towns.
Though we usually listen to community input, I don't think this idea will make it into the game, because of two reasons:

What you propose sounds rather realistic. But being realistic isn't always desirable when making a game. Is it really desirable to have parts of the players equipment disappear? You could say, that it is the players fault, if he drops his stuff in some NPC's place. But still, I would find this feature rather frustrating.
Anyway, that is only my opinion and therefore arguable. The second reason, why I don't see this feature in Redemption, is far more important:

Currently I am doing the bulk of the worldbuilding. This is rather unfortunate, because it consumes pretty much all of my time, while I actually should do scripting instead. There is still a decent amount of feature scripting to be done (mostly finishing up scripts that were previously deferred because of missing models) and I am assigned with implementing all the (quite complex) quests, too. Under these circumstances I won't have time to add more stuff. The capacity of the current team simple doesn't allow it.

We will eventually finish Redemption, but unless 1-3 talented and dedicated worldbuilders pop up out of nowhere, the chances for even more fancy features are rather small.
PROFILE :: EMAIL :: SEARCH :: BUDDY QUOTE :: EDIT :: REPORT

User Profil
Message: | composed: 09-08-2021 18:41 Go to the top of this page Zum Ende der Seite springen
Sowser

Forum Ace
Member since: 03-10-2021
Posts: 85
Location: California

Thread Starter Thread Started by Sowser

Sowser is offline

Hey Zini, thanks for all the hard work. You're right it could be a pain in the butt to have to earn enough gold to buy back from the town merchant some piece of dropped equipment that turns out to be vital. Though scripting it so that the item ends up in the chest next to the bed rather than left on the floor (unless the npc is supposed to be a slob) wouldn't overly tax the player. What would be involved with the idea I had from a scripting standpoint? It seems like it would be pretty time intensive if done to the hilt. Wouldn't you have to assign a monetary value to each item, set up a proprietary system to direct the npc to sell the item to the correct dealer, and then base the gold received on that npcs modifiers for bargaining skills? Forget it, if you get around to it in The New King just have them throw it in the closet. On a separate note I noticed that while people in Britannia store things almost everywhere, chests, dressers, creates, barrels, desks, nightstands, tree knotholes... they never hide anything under the bed. Some sort of cultural taboo?

This post has been edited 1 time(s), it was last edited by Sowser: 09-08-2021 18:42.

PROFILE :: EMAIL :: SEARCH :: BUDDY QUOTE :: EDIT :: REPORT

User Profil
Message: | composed: 10-08-2021 12:12 Go to the top of this page Zum Ende der Seite springen
Zini Zini is a male

images/avatars/avatar-2.gif

Titan of Ether
Member since: 08-09-2021
Posts: 397
Location: Germany
Favourite Ultima: Ultima 5 Warriors of Destiny

Zini is offline

The idea I had in mind for implementing this feature involves some cheating on the player. The scripting language isn't powerful enough to implement it directly. Though I usually like to complain about the shortcomings of the MW scripting language, this isn't really the language's fault. A clean implementation of such feature would have to be done at source level (which is not an option for us). A scripting language, no matter how powerful, isn't really suitable.

Yes, we would need to assign a monetary value to each item (almost each item actually, since there is a certain type of item, which would need to be exempted from this feature). But that would be only a minor task. Even considering the NPC's bargaining skill wouldn't be much work. There are other tasks involved, that I can't really speak about without giving away trade secrets of the Titans of Ether.
In general it would work this way: When the player enters an interior cell (a building), a script would scan the room from dropped items and if they were dropped at a time, that was long enough ago, the item would be removed and the value added. That is not exactly what you proposed, but close enough. The player won't notice the difference unless he is explicitly looking for it.

Placing the item somewhere instead of selling it would make raise the complexity again from

number of different item + number of NPC housings

to

number of different items * number of NPC housings,

which would be quite devastating, unless I write a program to generate the scripts automatically, which I have done already for parts of the scripted features (with a script size of 30-40 KB per NPC schedule, this is the only way to go).
PROFILE :: EMAIL :: SEARCH :: BUDDY QUOTE :: EDIT :: REPORT

User Profil
Message: | composed: 14-08-2021 19:31 Go to the top of this page Zum Ende der Seite springen
Sowser

Forum Ace
Member since: 03-10-2021
Posts: 85
Location: California

Thread Starter Thread Started by Sowser

Sowser is offline

Zini, could the script remove the item and place it in a merchant's inventory? Wouldn't that scripting be essentially like a normal transaction you would make with said merchant face to face? (only the resulting gold ending up with an NPC) So are we going to see the "leave it where it's at" approach? It seems like in U7 some non essential items would disappear while the biggies stayed put. That might have been a glitch due to insufficient processing power though and not by design. I remember I left Rudyom's Wand in a random cave and had to methodically search the world for it after I realized I needed it.
PROFILE :: EMAIL :: SEARCH :: BUDDY QUOTE :: EDIT :: REPORT

User Profil
Message: | composed: 14-08-2021 22:56 Go to the top of this page Zum Ende der Seite springen
Zini Zini is a male

images/avatars/avatar-2.gif

Titan of Ether
Member since: 08-09-2021
Posts: 397
Location: Germany
Favourite Ultima: Ultima 5 Warriors of Destiny

Zini is offline

Those normal transactions aren't script controlled or script controllable. Unfortunately it won't work this way. Even adding stuff to the merchants inventory would require a huge script. My previous estimate for the complexity was based on the idea, that the NPC gets the money, but the item doesn't show up in any merchants inventory. He probably has already sold to it someone else (lame explanation, I know).

Moving the item to some merchant NPCs inventory, would raise the complexity even more. My previous estimate for this variant was a bit too optimistic. There are some more complications, that I didn't consider in my posting. Sorry!

Moving the item to another place in the same room would be almost impossible. Actually it could be done with a little trick, but it would take one frame per item, So, if the player drops a few hundred items in a room and he returns later, he could see the items disappear one by one, possibly for several seconds. Not what I would call a good implementation. And I don't really want to think about the resulting complexity. I don't want to get that depressed.

So, the answer is yes. Our current plan is the »leave it where it's at« approach. Anything else would mean a substantial amount of additional work and as I wrote before, we currently don't have the capacity for it.
PROFILE :: EMAIL :: SEARCH :: BUDDY QUOTE :: EDIT :: REPORT

Tree Structure | Board Structure
Titans of Ether » TITANS OF ETHER » Ultima IX: Redemption » NPC sophistication?
Jump to:




Forum Software: Burning Board 2.3.6, Developed by WoltLab GmbH