> [!infobox|center wfull] > # Dungeon of the Mad Mage > ![[dungeon of the mad mage cover.webp|320]] > ###### Campaign > | | | > | ---- | ---- | > | System | Dungeons and Dragons 5e | > | Calendar | [[Calendar of Harptos]] | > > | | | > | ---- | ---- | > | Start Date | 05/18/2022 | > | End Date | 10/22/2022 | > | Campaign Duration | 157 days | > | Number of Sessions | 16 | > > | | | > | ---- | ---- | > | Start ([[Calendar of Harptos\|Harptos]]) | 12/29/1490 | > | End ([[Calendar of Harptos\|Harptos]]) | 01/06/1491 | > | In-game Duration | 8 days | > > | | | > | ---- | ---- | > | Dungeon Master | [[Lup]] | ## Cast - [[Callista]] as [[Vih'zel Amreth]], a githyanki fighter (echo knight) - [[Jett]] as [[Manilfari du Cerceau]], an eladrin sorcerer (emotion lord) - [[Jett]] as [[Sumari]], a wildhunt shifter warden (verdant protector) - [[Rory]] as [[Fen Ruldegost]], an water genasi cleric (peace domain) ## All Characters ```base filters: and: - file.hasTag("Character") - note["Campaign"].contains(this) formulas: currentHarptos: this.file.properties["End (Harptos)"] relHarptosExists: if(note["Born (Harptos - Relative)"].isEmpty(),false,true) notBorn: if(note["Born (NY)"] || (note["Born (Harptos)"] - formula.currentHarptos).milliseconds < 0,false,true) nyAge: (date("3859-12-30") - date(note["Born (NY)"])) + (formula.currentHarptos - date("0001-01-01")) harptosAge: formula.currentHarptos - note["Born (Harptos)"] harptosAgeFloor: (formula.currentHarptos - note["Born (Harptos)"]).years.floor() harptosAgeCalc: if(formula.harptosAgeFloor <= 0,formula.harptosAge,formula.harptosAgeFloor + " years") relAge: formula.currentHarptos - note["Born (Harptos - Relative)"] relAgeFloor: (formula.currentHarptos - note["Born (Harptos - Relative)"]).years.floor() relAgeCalc: if(formula.relAgeFloor <= 0,formula.relAge,formula.relAgeFloor) age_in_years: if(note["Born (Harptos)"] && formula.notBorn == false,formula.harptosAgeCalc,if(note["Born (NY)"],formula.nyAge,"Born in "+formula.harptosAgeCalc)) rel_age_in_years: if(formula.relHarptosExists && note["Born (Harptos)"],formula.relAgeCalc,formula.age_in_years) age_in_years_incl_rel: if(formula.relHarptosExists,formula.rel_age_in_years + " (Truly " + formula.age_in_years + ")",formula.age_in_years) deathDate: if(note["Death Date (Harptos)"],note["Death Date (Harptos)"],note["Death Date (NY)"]) deathAgeInclRel: if(Status != "Dead" || note["Death Date (Harptos)"] > formula.currentHarptos,formula.rel_age_in_years,note["Death Age - Relative"] + " (Truly " + note["Death Age"] + ", Died " + formula.deathDate.format("MM/DD/YYYY") + ")") campaign_age: if(Status != "Dead" || note["Death Date (Harptos)"] > formula.currentHarptos,formula.age_in_years_incl_rel,if(formula.relHarptosExists,formula.deathAgeInclRel,note["Death Age"] + " (Died " + formula.deathDate.format("MM/DD/YYYY") + ")")) characterType: if(note["Character Type"].length == 2,"NPC",if(note["Character Type"].contains("Player Character"),"Player","NPC")) properties: file.name: displayName: Character formula.campaign_age: displayName: Age at Campaign End formula.characterType: displayName: Character Type views: - type: table name: Table groupBy: property: formula.characterType direction: DESC order: - file.name - formula.campaign_age - Status - formula.characterType sort: - property: formula.characterType direction: DESC - property: Status direction: ASC - property: file.name direction: ASC columnSize: file.name: 275 formula.campaign_age: 235 ``` ## Locations * [[Material Realms]] * [[Material Plane]] * [[Toril]] * [[Faerûn]] * [[Sword Coast]] * [[Waterdeep]] * [[Castle Ward]] * [[Yawning Portal]] * [[North Ward]] * [[Trollskull Alley]] * [[Trollskull Tavern]] * [[Undermountain]] * [[Skullport]] --- ## Page Tags/Properties **Tags:** #Campaign **Category:** [[Campaigns.base|Campaigns]]