Notes
The Black Claw is a cult of Hircine worshippers seeking to destabilize the Empire and Skyrim to win Reach independence.
They are spreading the gift of Lycanthropy almost indiscriminately and unleashing feral newbloods near settlements and population centers to sow terror. They are accompanied by several hagravens.
They are located in a redoubt southwest of Falkreath to be closer to the empire.
Associated:
LIST FROM ""
WHERE contains(file.tags, "npc") AND (contains(organizations, this.file.link) OR contains(organizations, this.file.name))Child Organizations:
LIST FROM ""
WHERE contains(file.tags, "organization") AND (contains(parent, this.file.link) OR contains(parent, this.file.name))Possible Locations:
const cur = dv.current();
const curNames = new Set(
[cur.file.name, ...(cur.file.aliases ?? [])].map(s => s.toLowerCase())
);
// Parse a value (link object or quoted string like "[[Page|Alias]]") → canonical page name
function toName(v) {
if (v?.path) return v.path.split("/").pop().replace(/\.md$/,"").toLowerCase();
if (typeof v === "string") {
let s = v.trim().replace(/^"(.*)"$/,"$1");
const m = s.match(/^\[\[([^|\]]+)(?:\|[^]]*)?\]\]$/); // [[Page]] or [[Page|Alias]]
s = (m ? m[1] : s).split("/").pop().replace(/\.md$/,"");
return s.toLowerCase();
}
return String(v ?? "").toLowerCase();
}
// Return a displayable value: real link if the page exists, else plain text
function toDisplay(v) {
const name = toName(v);
const p = dv.page(name);
return p ? p.file.link : name;
}
const results = [];
for (const page of dv.pages()) {
const isSelf = page.file.path === cur.file.path;
const tags = page.file?.tags ?? [];
const isCharacter = tags.includes("npc") || tags.includes("#npc");
const aff = Array.isArray(page.organizations) ? page.organizations : [page.organizations ?? []];
const matchesAff = aff.some(v => curNames.has(toName(v)));
if (isSelf || (isCharacter && matchesAff)) {
const locs = Array.isArray(page.locations) ? page.locations : [page.locations ?? []];
for (const l of locs) results.push(toDisplay(l));
}
}
// Deduplicate by path (for links) or lowercase text
const uniq = [...new Map(results.map(v => [v?.path ?? String(v).toLowerCase(), v])).values()];
dv.list(uniq);