Dynamic NPC System

Dynamic NPC System

No permission to download
Built using the Latest ServUO Project
Optional Plugin requires UOOpenAI Installed
Dynamic NPC


The Dynamic NPC is designed to enhance the player's vendor experience by offering rewards for consistent usage of the NPC vendor. The vendor has been integrated with an aging and skill system, where player activity can increase the vendor's skill, resulting in better rewards for the player. To keep the experience fresh, the vendors will age, and when they reach a certain age, they will pass away and their child will take over, inheriting some of the parent's skills and customer records.

Each vendor keeps track of their own records for each player, so they know who their best customers are and can offer rewards accordingly, such as gold, extra items, modified gifts, and decor artifacts (two per profession, for a total of 100 artifacts). Additionally, there are 52 profession GM Gold Sashes available as rewards. However, these artifacts are not simply given away - players will have to complete tasks given by the vendors, such as fetching items or killing creatures, in order to earn them.

There are a large number of random tasks available for players to complete, and the vendors will offer them based on usage. Other notable systems include the ability to toggle basic vendors to only be available during certain hours, a debug system to help with troubleshooting as the project grows, and the UOOpenAI plugin, which allows for the integration of AI into all vendors.


Plug and Play

*There is a settings script in the main folder, for those wanting to adjust key settings!

UOOpenAI - Uncomment the script in Plugin folder & Commands/DynCMDSpeech.cs
uncomment all code which will then activate UOOpenAI for vendors!

Admin Commands

[DebugDynVendor - Turns On/Off Debug
[FindVendor <Vendor Name> - Find vendor by Name, opens Props & Profile Info
[RunTest <Vendor Name> - Runs Task Tester on a vendor by Name

Player Verbal Vendor Commands

hello/bye - response is loyalty based

record - gets there vendor record
task - gets task info if on or not
accept task & cancel task
vendor name> sent me
task complete
or task done

Future Plans

This system is not finished, More to come!
Give Feedback!
First release
Last update
0.00 star(s) 0 ratings

More resources from Kita