Module:Ep/Decoder


This array tracks all valid episode code prefixes and the corresponding campaign, season, or episode type that they represent. This data is used by Module:Ep/Matcher to validate an episode code, usually in a call to {{ep}}, {{ep ref}}, or {{ep time}}, as well as Module:Ep/Info and Module:Infobox Episode to return campaign or season information given an episode code.

Whenever a new campaign, show, or season comes out, new episode code prefixes should be added here. For more detailed directions about updating other fields for new shows or seasons, please see Help:Maintaining data modules.

Field names[edit source]

  • title: the name of the show or campaign. Used to construct campaignName and campaignNamePlain in Ep/Info and linkedList in Infobox Episode
  • italics: whether the title should be displayed in italics
  • titleLink: the actual wikipage where the show resides. Inferred to be title if nil. Used to construct campaignLink in Infobox Episode
  • infoboxTitle: display text for episode type before the episode number. Inferred to be title if nil. Used to construct campaignLink in Infobox Episode instead of campaignName, which comes from title.
  • listLink: link to the list of episodes. Inferred to be title if nil. Used to construct linkedList in Infobox Episode
  • listTitle: display text for listLink. Inferred to be listLink if nil. Used to construct linkedList in Infobox Episode
  • category: corresponding episode category. Required and not inferred. Used in Infobox Episode
  • codeFormat: currently only in use for Midst, set a custom display of the parenthetical in {{ep}} to something other than the unformatted episode code. For example, {{ep|Midst1x01}} becomes "Unrise" (Midst 1x01).
  • noTranscript: 'true' if transcripts should not be downloaded for campaign. Currently LVM & 4SD. Used by VOD script
  • transcriptCategory: Category:Transcripts sub-category, if any, for campaign. Used by VOD script
  • thumbnailCategory: Category:Episode thumbnails sub-category, if any, for campaign. Used by VOD script
  • latest: The episode name in Module:Ep/Array for the latest episode for campaign. Used by VOD script
  • navbox: Navigation template for campaign. Used by VOD script
  • seasons: information about each of the seasons for a show. Used to return season for Ep/Info and to construct seasonDisplay for Infobox Episode
    • page: the exact pagename of the wiki page for that season, if it exists.
    • name: if the displayed season name is anything other than "Season [number]", which is the default
    • italics: whether the season name belongs in italics (defaults to false)
  • arcs: information about the arcs in longer campaigns, used to thematically divide up long lists of episodes. Not currently in use, but Module:Ep/Info can read and interpret arc information from episode codes.
    • arcNum: arc number
    • title: the name of the arc
    • startEpisode: the arc's first episode number
    • endEpisode: the arc's last episode number

New example entry[edit source]

To add a new show code, you can copy and paste the code block below:

    ['CODE'] = {
        ['title'] = 'SHOW TITLE',
        ['italics'] = true, -- delete for campaigns
        ['titleLink'] = 'SHOW PAGE', -- delete if show pagename same as title
        ['infoboxTitle'] = 'INFOBOX TITLE', -- delete if show name in infobox is the same
        ['listTitle'] = "EPISODE LIST TITLE",
        ['listLink'] = "EPISODE LIST PAGENAME", -- delete if same as listTitle
        ['category'] = 'EPISODE CATEGORY',
        ['codeFormat'] = "''{campaign}'' {season}x{epNum}", -- delete if same format as CODExNN
        ['noTranscript'] = true, -- delete if there are transcripts
        ['transcriptCategory'] = 'TRANSCRIPT CATEGORY', -- delete if goes in generic category
        ['thumbnailCategory'] = 'THUMBNAIL CATEGORY', -- delete if goes in generic category
        ['latest'] = 'EPISODE LATEST NAME', -- delete if not releasing new episodes
        ['navbox'] = 'Nav-NAME',
        
        --[[ Only add below if there are seasons/chapters
        ['seasons'] = {
        	['1'] = {
        		['page'] = "SEASON 1 PAGENAME",
        		['name'] = "NAME", -- delete if same as page
        		['italics'] = true, -- delete if Season 1, Chapter 1, etc
        	},
        	['2'] = {
        		['page'] = "SEASON 2 PAGENAME",
        		['name'] = "NAME", -- delete if same as page
        		['italics'] = true, -- delete if Season 1, Chapter 1, etc
        	},
        	['3'] = {
        		['page'] = "SEASON 3 PAGENAME",
        		['name'] = "NAME", -- delete if same as page
        		['italics'] = true, -- delete if Season 1, Chapter 1, etc
        	},
        },
        ]]--
    },

Make sure to preserve the spacing/indentation and the quotation marks, replacing everything in all-caps. Note that in Lua, everything on one line after -- or multiple lines between --[[]]--is read as a comment and will not affect the array.


return {
	-- new entries go below this line
    ['1'] = {
        ['title'] = 'Campaign 1',
        ['listLink'] = 'List of Campaign 1 episodes',
        ['category'] = 'Campaign 1 episodes',
        ['transcriptCategory'] = 'Campaign 1 transcripts',
        ['thumbnailCategory'] = 'Campaign 1 episode thumbnails',
        ['arcs'] = {
            {
            	['arcNum'] = 1,
                ['title'] = 'Kraghammer and Vasselheim',
                ['startEpisode'] = 1,
                ['endEpisode'] = 23,
            },
            {
            	['arcNum'] = 2,
                ['title'] = 'The Briarwoods',
                ['startEpisode'] = 24,
                ['endEpisode'] = 38,
            },
            {
            	['arcNum'] = 3,
                ['title'] = 'The Chroma Conclave',
                ['startEpisode'] = 39,
                ['endEpisode'] = 83,
            },
            {
            	['arcNum'] = 4,
                ['title'] = 'Taryon Darrington',
                ['startEpisode'] = 84,
                ['endEpisode'] = 99,
            },
            {
            	['arcNum'] = 5,
                ['title'] = 'Vecna',
                ['startEpisode'] = 100,
                ['endEpisode'] = 115,
            },
        },
    },
    ['2'] = {
        ['title'] = 'Campaign 2',
        ['listLink'] = 'List of Campaign 2 episodes',
        ['category'] = 'Campaign 2 episodes',
        ['transcriptCategory'] = 'Campaign 2 transcripts',
        ['thumbnailCategory'] = 'Campaign 2 episode thumbnails',
        ['arcs'] = {
            {
            	['arcNum'] = 1,
                ['title'] = 'Come Together',
                ['startEpisode'] = 1,
                ['endEpisode'] = 25,
            },
            {
            	['arcNum'] = 2,
                ['title'] = 'The Bad Guys',
                ['startEpisode'] = 26,
                ['endEpisode'] = 47,
            },
            {
            	['arcNum'] = 3,
                ['title'] = 'The Bright Queen\'s Favor',
                ['startEpisode'] = 48,
                ['endEpisode'] = 69,
            },
            {
            	['arcNum'] = 4,
                ['title'] = 'Swords and Angels',
                ['startEpisode'] = 70,
                ['endEpisode'] = 91,
            },
            {
            	['arcNum'] = 5,
                ['title'] = 'Family Ties',
                ['startEpisode'] = 92,
                ['endEpisode'] = 112,
                },
            {
            	['arcNum'] = 6,
                ['title'] = 'Weird Magic',
                ['startEpisode'] = 113,
                ['endEpisode'] = 141,
            },
        },
    },
    ['3'] = {
        ['title'] = 'Campaign 3',
        ['listLink'] = 'List of Campaign 3 episodes',
        ['category'] = 'Campaign 3 episodes',
        ['transcriptCategory'] = 'Campaign 3 transcripts',
        ['thumbnailCategory'] = 'Campaign 3 episode thumbnails',
        ['latest'] = 'c3 latest',
        ['navbox'] = 'Nav-C3Arc1',
        ['arcs'] = {
        	},
    },
    ['OS'] = {
        ['title'] = 'One-shots',
        ['infoboxTitle'] = 'One-shot',
        ['listTitle'] = 'List of one-shots',
        ['category'] = 'One-shots',
        ['transcriptCategory'] = 'One-shot transcripts',
        ['thumbnailCategory'] = 'One-shot episode thumbnails',
        ['latest'] = 'os latest',
        ['navbox'] = 'Nav-OneShots',
    },
    ['M'] = {
        ['title'] = 'Bits and bobs',
        ['infoboxTitle'] = 'Miscellaneous',
        ['listTitle'] = 'List of miscellaneous episodes',
        ['category'] = 'Bits and bobs episodes',
        ['transcriptCategory'] = 'Transcripts',
        ['thumbnailCategory'] = 'Bits and bobs episode thumbnails',
        ['latest'] = 'other latest',
        ['navbox'] = 'Nav-Bitsnbobs',
    },
    ['LVM'] = {
        ['title'] = 'The Legend of Vox Machina',
        ['italics'] = true,
        ['listTitle'] = "List of ''The Legend of Vox Machina'' episodes",
        ['listLink'] = "List of The Legend of Vox Machina episodes",
        ['category'] = 'The Legend of Vox Machina episodes',
        ['noTranscript'] = true,
        ['thumbnailCategory'] = 'The Legend of Vox Machina episode thumbnails',
        ['latest'] = 'lvm latest',
        ['seasons'] = {
        	['1'] = {
        		['page'] = "", -- add link if season page created
        	},
        	['2'] = {
        		['page'] = "",
        	},
        	['3'] = {
        		['page'] = "",
        	},
        },
    },
    ['4SD'] = {
        ['title'] = '4-Sided Dive',
        ['italics'] = true,
        ['listTitle'] = "List of ''4-Sided Dive'' episodes",
        ['category'] = '4-Sided Dive episodes',
        ['noTranscript'] = true,
        ['thumbnailCategory'] = '4-Sided Dive episode thumbnails',
        ['latest'] = '4sd latest',
        ['navbox'] = 'Nav-4SD',
    },
    ['E'] = {
    	['title'] = 'Exandria Unlimited',
    	['italics'] = true,
        ['titleLink'] = 'Exandria Unlimited (series)',
        ['listTitle'] = "List of ''Exandria Unlimited'' episodes",
        ['listLink'] = "List of Exandria Unlimited episodes",
        ['category'] = 'Exandria Unlimited episodes',
        ['transcriptCategory'] = 'Exandria Unlimited transcripts',
        ['thumbnailCategory'] = 'Exandria Unlimited episode thumbnails',
        ['seasons'] = {
        	['1'] = {
        		['page'] = "Exandria Unlimited",
        		['name'] = "Prime",
        		['italics'] = true,
        	},
        	['2'] = {
        		['page'] = "Exandria Unlimited: Kymal",
        		['name'] = "Kymal",
        		['italics'] = true,
        	},
        	['3'] = {
        		['page'] = "Exandria Unlimited: Calamity",
        		['name'] = "Calamity",
        		['italics'] = true,
        	},
        },
    },
    ['TM'] = {
        ['title'] = 'Talks Machina',
        ['italics'] = true,
        ['listTitle'] = "List of ''Talks Machina'' episodes",
        ['listLink'] = "List of Talks Machina episodes",
        ['category'] = 'Talks Machina episodes',
        ['transcriptCategory'] = 'Talks Machina transcripts',
        ['thumbnailCategory'] = 'Talks Machina episode thumbnails',
    },
    ['TMS'] = {
        ['title'] = 'Talks Machina',
        ['italics'] = true,
        ['listTitle'] = "List of ''Talks Machina'' episodes",
        ['listLink'] = "List of Talks Machina episodes",
        ['category'] = 'Talks Machina special episodes',
        ['transcriptCategory'] = 'Talks Machina transcripts',
        ['thumbnailCategory'] = 'Talks Machina episode thumbnails',
    },
    ['U'] = {
        ['title'] = 'UnDeadwood',
        ['italics'] = true,
        ['category'] = 'UnDeadwood episodes',
        ['transcriptCategory'] = 'Transcripts',
        ['thumbnailCategory'] = 'UnDeadwood episode thumbnails',
    },
    ['CO'] = {
        ['title'] = 'Candela Obscura',
        ['italics'] = true,
        ['listTitle'] = "''Candela Obscura''",
        ['category'] = 'Candela Obscura episodes',
        ['transcriptCategory'] = 'Candela Obscura transcripts',
        ['thumbnailCategory'] = 'Candela Obscura episode thumbnails',
        ['latest'] = 'co latest',
        ['navbox'] = 'Nav-CO',
        ['seasons'] = {
        	['1'] = {
        		['page'] = "", -- add link if season page created
        		['name'] = "Chapter 1",
        	},
        	['2'] = {
        		['page'] = "",
        		['name'] = "Chapter 2",
        	},
        	['3'] = {
        		['page'] = "",
        		['name'] = "Chapter 3",
        	},
        	['4'] = {
        		['page'] = "",
        		['name'] = "Chapter 4",
        	},
        },
    },
    ['Midst'] = {
        ['title'] = 'Midst',
        ['italics'] = true,
        ['codeFormat'] = "''{campaign}'' {season}x{epNum}",
        ['listLink'] = "List of Midst episodes",
        ['category'] = 'Midst episodes',
        ['noTranscript'] = true,
        ['thumbnailCategory'] = 'Midst episode thumbnails',
        ['iconCategory'] = 'Midst episode icons',
        ['latest'] = 'other latest',
        ['navbox'] = 'Nav-MidstEps',
        ['seasons'] = {
        	['1'] = {
        		['page'] = "", -- add link if season page created
        	},
        	['2'] = {
        		['page'] = "",
        	},
        	['3'] = {
        		['page'] = "",
        	},
        },
    },
-- new entries go above this line
}