KAs (Knowledge Areas) list and structure

From PSwiki
Revision as of 22:40, 6 September 2022 by Talad (talk | contribs)
Jump to navigation Jump to search

KA Structure and guidelines

Every area should have:

  • "<area>_basic" (example hydlaa_basic) containing:
    • locations and POI (example temple, winch, fountain, ...)
    • typical services: tavern, blacksmith, temple, merchants, ...
  • <area>_important_people: all major NPC of the area with their approximate location
  • greetings/goodbye not really requires as anyway every NPC has its own specific one

Existing KAs

random: There is a special KA on 20+ NPCs called "random", this seems to be used when NPC are thinking aloud and just randomly saying something. I don't remember how this is triggered.

All sentient NPCs (?):

  • general
Locations
Hydlaa:
  • Hydlaa_important_people
  • gods_basic_hydlaa
  • hydlaa_basic
  • goodbye01_hydlaa
  • goodbye02_hydlaa
  • goodbye03_hydlaa
  • greetings01_hydlaa
  • greetings02_hydlaa
  • hydlaa_townsperson
  • hydlaaplaza_townie
Ojaveda:
  • ojaveda_basic
  • gods_basic_ojaveda
  • greetings02_ojaveda-native
  • greetings01_ojaveda-native
  • goodbye01_ojaveda-native
  • goodbye02_ojaveda-native
  • akkaio_dockhands
  • ojaveda_plague
OjaRoad:
  • ojaroad_basic
  • goodbye01_ojaroad
  • greetings01_ojaroad
Arena:
  • arena_basic
  • arena_gladiator
  • goodbye01_arena
  • greetings01_arena
Gugrontid:
  • Gugrontid_basic
Amdeneir:
  • Amdeneir_Basic
Eagle Bronze Doors:
  • EagleBD_Basic
  • stone_labyrinths
  • about_polyuntri.
Death Realm
  • death_realm_basic
Gods: Races: Magic:
  • gods_generic_basic
  • about_laanx_sunshine
  • laanx_advanced
  • blackflame_fanatics
  • races_basic
  • nolthrir_basic
  • magic_basic


  • newbie (used by tutorial NPCs and few others, most answers are OOC)
  • winch_info (seems to be used by some merchants, not very consistently)
  • greeting_evil (used by Dark Wanderer and Nodramok)
  • merchant (used by Lerok Dilechi, Jashoky Dakarn) SHOULD BE REMOVED
  • lyeorire_fisk (is assigned to Archilaya Gurpleferd, seems to contain duplicates)


Proximity Guards:

  • Proximity_Guard_Checks_Oja
  • Proximity_Guard_Checks_Hydlaa
  • Proximity_Guard_Checks_Gug

Pet KAs:

  • Pet Groffel 1
  • Pet Yulbar 1
  • Pet Rivnak 1
  • Pet Drifter 1
  • Pet Serpent Gobble 1
  • Pet Eagle Gobble 1

NPC name typos or specific NPC group:

  • ash_brotherhood
  • Vuudjehn Korthel (its actually linked correctly on the NPC) -> Vuddjehn Korthel
  • Heedel Remains (its actually linked correctly on the NPC) -> Heedel's Remains
  • Skull (its actually linked correctly on the NPC) -> Mr Skull
  • Bread (its actually linked correctly on the NPC) -> Mr Bread


Tests:

  • AndrewTestNPC
  • AndrewTestNPC2

Useful queries

Find all the knowledge areas in the database not specific to NPCs, so the generic ones applicable to multiple NPCs:

select distinct(nka.area) from npc_knowledge_areas nka left join `characters` c on nka.area=CONCAT(c.name, " ",c.lastname) where c.name is null;

Find all KA defined in triggers that are not associated to any NPC (maybe we were working on those?):

select distinct(tr.area) from npc_triggers tr left join npc_knowledge_areas ka on tr.area=ka.area where ka.area is null;

Find all triggers without a response:

select * from npc_triggers tr left join npc_responses nr on tr.id = nr.trigger_id where nr.id is null;

Extract triggers and responses of one area:

select * from npc_triggers tr, npc_responses re where tr.id=re.trigger_id and tr.area ='hydlaa_townsperson'