User:Chieftain Alex/sandbox2

From Guild Wars 2 Wiki
Jump to: navigation, search

Area pages[edit]

Current area page:

= "A" Area page =
{{Location infobox
| name = A area page
| within = Southsun Cove
| type = Area
| level = 80
}}

== NPCs ==
=== Allies ===
==== Services ====
;Vendors
* {{vendor|Banker}}

==== Other ====
;Charr
* [[Leeroy Snarlclaw]]
;Humans
* [[Deborah]]
* [[Fat Tony]]

New area page:

= "A" Area page =
{{Location infobox
| name = A area page
| within = Southsun Cove
| type = Area
| level = 80
}}

== NPCs ==
=== Allies ===
==== Services ====
;Vendors
* {{npc location|Banker|bank}}

==== Other ====
;Charr
* {{npc location|Leeroy Snarlclaw}}
;Humans
* {{npc location|Deborah}}
* {{npc location|Fat Tony}}

NPC pages[edit]

Current NPC page:

{{NPC infobox
| image = ...
| location = A area page; B area page
}}

== Locations ==
;[[Kryta]]
* [[Queensdale]]
** [[A area page]]
* [[Southsun Cove]]
** [[B area page]]

Current NPC page:

{{NPC infobox
| image = ...
}}

== Locations ==
{{npc location list}}

Template options[edit]

Approved: Option 1[edit]

Template:npc location[edit]

{{#if: {{{2|}}} | {{vendor icon|{{{2}}}}} }} [[{{{1}}}]] {{#set: Locates NPC={{{1}}} }}

Template:npc location list[edit]

{{#ask: [[Locates NPC::{{PAGENAME}}]] | format = ul }}

Pros:

  • Simple to read on Special:Browse
  • Easy to query for

Cons:

  • Using different property to "Located in" which has wide adoption across wiki for all Context types -- templates would need editing anyway, might as well edit to point at new property.
  • Can't set coordinates or map-specific services for each NPC -- but are we that bothered?

Rejected: Option 2[edit]

Template:npc location[edit]

{{#if: {{{2|}}} | {{vendor icon|{{{2}}}}} }} [[{{{1}}}]] {{#subobject: npc{{#var:npc counter}} | Locates NPC = {{{1}}} | Located in tree = <same as area page; area name> | Has NPC coordinates = [x,y] }}

Template:npc location list[edit]

{{#ask: [[Locates NPC::{{PAGENAME}}]] | format = ul }}

Pros:

  • Can set coordinates to ask for which NPC is where
  • Can reuse existing property "Located in"
  • Can set separate service per area for an NPC - fixes issue with renown heart npcs who reappear in LWS4

Cons:

  • Obfuscates which NPC is located in which area
  • Subobjects have a tendency to lead to cache issues, especially if you set properties that are the result of other properties (looking at you "Located in tree")
  • Need to chain property queries to get things specific to NPC like icon or level (is this an issue? -- could just set the service icon in the subobject too)