Scriptable Entities Design: Difference between revisions

From PSwiki
Jump to navigation Jump to search
Magodra (talk | contribs)
Magodra (talk | contribs)
Line 94: Line 94:
--> "Release Hired NPC"
--> "Release Hired NPC"
--> "Confirm Release"
--> "Confirm Release"
--> "Store and deactivate NPC"
--> "Store and deactivate Hired NPC"
--> (*)
--> (*)
</uml>
</uml>

Revision as of 18:02, 22 December 2013

This desing realize the Scriptable Entities functionality.

Player Use Cases

Hire NPC

Player target npc and enter "/hire" or selecting the Hire Icon from the Context Menu (See Context Menu Design). This open the Hire NPC Dialog where the user can:

  • Select services
  • See the price for hiring
  • Determine the length of the Hire
  • Create/Edit Custom Dialogues (See the Script Hired NPC use case for details.)

Activity Diagram

Select Service

Select service needed from a list of services.

  • Guard
  • Buy/Sell
  • Custom Dialogue

Script Hired NPC

Hired NPCs can be scripted. User open the hire dialog to enter new scripts for the NPC.

Activity Diagram

Extend Hire

Opening the hire dialog enable the Hiring Player to extend the hire period and pay the extra fee.

Activity Diagram

Define Locations

Enable the Hire to define locations used when scripting their hired NPCs. This would be Work Locations and Guard Locations.

To decide: Should this be implemented through the /location command? Enabling players to define locations, might need some kind of association so that when character/guild is deleted the location is deleted as well.

Activity Diagram

Release NPC

A NPC that is no longer needed can be released. This will be done from the Hire dialog.

Activity Diagram

NPC Use Cases

Guard

Perform Guard duties. Pre-programmed guard action. Player select working hours, working position, a number of check points and interval for checking thous.

NPC dialogue

Through Quest script syntax with user safe commands enabling custom scripts to be crated for the NPC.

Buy/Sell

NPC can sell and buy either personal or guild items.