Guild Wars 2 Wiki talk:Semantic MediaWiki/NPCs

From Guild Wars 2 Wiki
Jump to navigationJump to search

Stick notes everywhere and it'll be fine!--Relyk ~ talk > 10:44, 8 March 2013 (UTC)

NPC area-level pairs[edit]

Probably a discussion on the infobox itself as well. The list of locations and list of levels in the infobox doesn't really help much for presenting or grabbing information. We need to associate the area of the npc with the level or levels of the npc. With #arraymaps, we can store these records easily. The skill and abilities of the npc also vary with the level (and area I think), so we want to make entire subojects for the information. Of course, we currently break all this information into separate sections and then annotate the level for area and skills. Anet could've been nice to rename NPCs if they changed the NPC skills.--Relyk ~ talk > 22:30, 20 April 2013 (UTC)

That's probably a good idea. The downside is that it will require a ton of effort for researching all of the data. —Dr Ishmael User Dr ishmael Diablo the chicken.png 03:58, 9 June 2013 (UTC)
I have a feeling we will split articles by area or zone to make it somewhat more manageable and intuitive. Earth Elemental is just obscene. I know drops from enemies somewhat level-based, seeing how drops scaled during the upscaling of Southsun Cove. That may not be true in many cases.--Relyk ~ talk < 04:33, 9 June 2013 (UTC)
Crafting materials, containers, and trophies are tiered and scale with the creature level, although at some points there may be a chance to get either tier X or tier X+1 from the same level of creature (especially true with high level creatures and tier 5/6 fine materials). Equipment drops have a high chance to scale to your character level (I get at least 50%, probably more, L75+ items when running through 1-15 zones), but when they don't they're within 1 of the creature level; in any case, we don't normally document equipment drops since most creatures share equipment drop tables throughout a zone. —Dr Ishmael User Dr ishmael Diablo the chicken.png 05:35, 9 June 2013 (UTC)
(resurrection) if we were to introduce area-level pairs, would this only be used on foe pages? or on allies too, in which case we'd need to store area-level-hostility for each bit. -Chieftain AlexUser Chieftain Alex sig.png 19:00, 14 November 2013 (UTC)

removal of npc level annotation from npc infobox when multiple values used[edit]

(RSI) I used a brute force method to remove the level property from NPCs using commas, full stops, hyphens or dashes. Its made no difference to the already stored values, it just doesn't trigger Property:Has improper value for. -Chieftain AlexUser Chieftain Alex sig.png 21:05, 8 November 2013 (UTC)

Implementation with item drops[edit]

Storing the NPC level in {{drops}} doesn't solve the problem of filtering out by a level range, at least not the best approach perhaps. We query the item drop subobjects for NPCs that drop an item in a level range when we code {{dropped by}}. If we implement the mapping of a level to an area, we only need to present what areas the NPC of a certain level appears in, since the drop received only varies on the level of the NPC. The general problem for these kinds of issues is with mapping a level to an area on the NPC page, right? There are other queries we may want to do where the only variable is the level of the NPC since an area already maps to a specific level. The item drops and skill sets are two that come to mind.

If we store subobjects on the NPC page that maps an NPC to a location and level, we can filter out areas by level.

{{Dropped by|min level=x|max level=y}} (Filter automatically by the item level?)
--------------
{{#ask:[[Has NPC.Drops item::<Item>]][[Located in.Has level requirement::>x]][[Located in.Has level requirement::<y]]
|?Has NPC
|?Located in
|?Has level requirement
| format = template
| template = Dropped by result format
}}

{{Dropped by result format}}
----------------------------
<onlyinclude>
| {{{Has NPC}}}
| {{#show:{{{Has NPC}}}|?Has race}}
| {{{Located in}}} ( {{#show:{{{Located in}}}|?Has effective level}} )
</onlyinclude>

Where we create NPC location subobjects on the NPC page:

{{NPC location|<area>|<level>}}
-------------------------------
{{#subobject:location<x>
|Has NPC={{PAGENAME}}
|Located in={{{area|}}}
}}

To note: This doesn't track NPCs that have multiple levels in the same area, but I don't think that the drop table will change since it will still be the same version of the NPC. We can make item drop assumptions based on the level of the area the NPCs are in.

--Relyk ~ talk < 22:16, 11 September 2014 (UTC)