Advertisement

Module:Map/data

Edit documentation

Description

This module stores all data about the currently existing playable maps in alphabetical order. Whenever map changes occur this module needs to be updated respectively.

Syntax

All maps' data is stored in a standardized way as shown below.

    ["map name"] = {
        type = ,
        map_names = {"", "", ""},
        min_players = ,
        starting_positions = ,
        chest_positions = ,
        quest_positions = {},
        difficulties = ,
        campaign_name = "",
        prerequisites = "",
        unlocks = "",
        setup_description = "",
        mission_briefing_description = "",
        loading_screen_text = "",
        plot2 = "",
        conclusion1 = "",
        conclusion2 = "",
        spectator_map_available = ,
        rankings = {
            {
                ranking_numberplayers = n(max),
                ranking_time = "",
                ranking_players = {"", ""},
                ranking_date = "",
                ranking_difficulty = ""
            },
            {
                ranking_numberplayers = 1,
                ranking_time = "",
                ranking_players = {"", ""},
                ranking_date = "",
                ranking_difficulty = ""
            }
        }
    },
Parameter and Syntax Explanation
Parameter Explanation / Usage Notes Omissible Accepted Input
["<map name>"] Full name of the map. False.svg
  • <Custom text>
type Matchmaking type. False.svg
  • "PvE"
  • "PvP"
map_names Enter the map tab names if scenario consists of multiple maps. Circle.svg
  • Currently only applicable for 12-player scenarios.
    • {"<map name>", "<map name>", "<map name>"},
min_players Minimum number of players requiered to sucessfully play the map. False.svg
  • 1
  • 2
  • 3
  • 4
  • For 12-player scenarios use the following syntax:
    • {<map 1 value>, <map 2 value>, <map 3 value>},
starting_positions Coordinates of starting positions. First entry represents player 1, second entry player 2, and so on. The number of entries is used to determine the maximum amount of starting players on this map. False.svg
  • The location is given by inputting coordinates representaing percentages of the minimap image in the following format:
    • {<% of x-axis>,<% of y-axis>},
  • If it is a multiplayer map, use a table instead:
    • {<set of coordinates>, ..., <set of coordinates>},
    • For multi-map scenarios, put these tables of each map again into a table.
chest_positions Coordinates of gold chest positions. The number of entries is used to determine the maximum amount of obtainable chests on this map. True.svg
  • The location is given by inputting coordinates representaing percentages of the minimap image in the following format:
    • {<% of x-axis>,<% of y-axis>},
  • If it is a multiplayer map, use a table instead:
    • {<set of coordinates 1>, ..., <set of coordinates n>},
    • For multi-map scenarios, put these tables of each map again into a table.
quest_positions Coordinates of quest goal positions. True.svg
  • Each goal has to be organized in a table as shown below:
    • {letter="<letter>", <% of x-axis>,<% of y-axis>, "<custom tooltip text>"},
    • All letters from A - Z are available.
      • When no letter parameter is given, the goal icon will be empty.
    • An alternate custom tooltip can be specified that will be displayed upon hovering over the goal.
  • All goals of a map have to be organized in a table aswell:
    • {<goal 1>, ..., <goal n>},
    • For multi-map scenarios, put these tables of each map again into a table.
difficulties Available difficulties for the scenario. Circle.svg
  • {standard = <boolean>, advanced = <boolean>, expert = <boolean>},
    • If available: true
    • If not available: false
campaign_name Name of the campaign story of which the scenario is part. True.svg
  • "<campaign story name>"
prerequisites Names of scenarios that need to be unlocked first to play this scenario. True.svg
  • "<scenario name>"
    • If it is more than one, use a table instead:
    • {"<scenario name 1>", ..., "<scenario name n>"},
unlocks Names of scenarios that will be unlocked by winning this scenario. True.svg
  • "<scenario name>"
    • If it is more than one, use a table instead:
    • {"<scenario name 1>", ..., "<scenario name n>"},
setup_description Description of the PvE scenario shown in the Setup Window. Circle.svg
  • "<Custom text>"
    • Use <br> for a line break.
    • May contain template styling and links.
mission_briefing_description Description of the map shown in the Mission Briefing Window. False.svg
  • "<Custom text>"
    • Use <br> for a line break.
loading_screen_text Text shown during loading screen of the scenario. If the scenario has a story book entry, this text is identical with the first part of the plot there. A respective audio file does then always exist. Circle.svg
  • "<Custom text>"
    • Use <br> for a line break, twice for a new paragraph or page break.
    • Use and for quotation marks.
plot2 Second plot text of the scenario which is displayed in the story book. Does not exist for all scenarios. Circle.svg
  • "<Custom text>"
    • Use <br> for a line break, twice for a new paragraph or page break.
    • Use and for quotation marks.
  • nil, if it does not exist.
conclusion1 First conclusion text of the scenario which is displayed in the story book. A respective audio file does always exist. Circle.svg
  • "<Custom text>"
    • Use <br> for a line break, twice for a new paragraph or page break.
    • Use and for quotation marks.
  • nil, if it does not exist.
conclusion2 Second conclusion text of the scenario which is displayed in the story book. Does not exist for all scenarios. Circle.svg
  • "<Custom text>"
    • Use <br> for a line break, twice for a new paragraph or page break.
    • Use and for quotation marks.
  • nil, if it does not exist.
spectator_map_available Availability of an official spectator map. False.svg
  • If available: true
  • If not available: false
Ranking related parameters (This block repeats as many times as there are filterable rankings for the map.)
ranking_numberplayers Ranking category based on the maximum number of players in which this time is the fastest. Circle.svg
  • Only list rankings that are applicable based on the maximum number of starting players of this map.
    • 12
    • 11
    • ...
    • 2
    • 1
ranking_time Time in which the scenario was won. Circle.svg
  • "<mm:ss.ds>"
ranking_players Names of players that achieved the time. Circle.svg
  • List the names alphabetically from left to right in a table:
    • {"<player name 1>", ..., "<player name n>"},
ranking_date Date when the time was achieved. Circle.svg
  • "<month year>"
ranking_difficulty Difficulty at which this time was achieved. Circle.svg
  • Usually the highest available difficulty:
    • "Standard"
    • "Advanced"
    • "Expert"

See also


-- Official PvE Maps
return {
    ["King of the Giants"] = {
        type = "PvE", -- PvE oder PvP (case insensitive)
        min_players = 1,
        starting_positions = {{3, 14}, {3, 3}, {59, 3}, {81, 3}},
        chest_positions = {{9, 77}, {43, 78}, {4, 68}, {10, 42}, {8, 33}, {75, 33}, {78, 52}, {72, 69}},
        quest_positions = {
            {letter = 'C', 20, 54},
            {letter = 'C', 24, 38},
            {letter = 'C', 34, 20},
            {letter = 'C', 85, 21},
            {letter = 'C', 86, 38},
            {letter = 'C', 83, 53},
        },
        minimap_image = "King of the Giants_Minimap.jpg", -- schauen wie man die 3 minimaps bei 12 p map handelt, ansonsten kann das weg
        difficulties = {standard = true, advanced = true, expert = true},
        campaign_name = "The Titans", -- kann eig weg und via story book generiert werden oder?
        prerequisites = {"Sunbridge", "Bad Harvest"},
        unlocks = {"Titans"},
        setup_description = "Help {{ci|Rogan Kayle}} lure the {{ci|Jorne|King of the Giants}} to [[Lyr]]. Face a lot of powerful [[Stonekin]] at the foot of the Giant Throne mountains.", -- nur bei official pve campaign
        mission_briefing_description = "Rogan Kayle is luring the giant king Jorne to the human realm. Make sure to clear away all blockades on his way and look out for artifacts that might aid his quest.", -- nur bei official pve campaign
        loading_screen_text = "Viridya, infused with the Soultree's awesome power, sought out Brannoc, determined he would pay for his crimes. But as father and daughter clashed it became clear they were equal not only in rage, but might. Their epic struggle ravaged the land and threatened to destroy the new human settlements.<br><br>Rogan Kayle, desperate to stop the destruction, sought to lure the Giant King Jorne into the fight. He reasoned bringing a third power into the fray would tip the balance and end the destruction. The price of failure was unthinkable.",
        world_map_position = {3, 14}, --zum access für später im world map modul, vermutlich also dort auch speichern und nicht hier
        rankings = {
            {
                ranking_numberplayers = 4,
                ranking_time = "06:55.9",
                ranking_players = {"LEBOVIN", "Pritstift", "Treim", "Wanky"},
                ranking_date = "April 2020",
                ranking_difficulty = "Expert",
            },
            {
                ranking_numberplayers = 3,
                ranking_time = "07:36.7",
                ranking_players = {"LEBOVIN", "Pritstift", "Wanky"},
                ranking_date = "April 2020",
                ranking_difficulty = "Expert",
            },
            {
                ranking_numberplayers = 2,
                ranking_time = "08:56.2",
                ranking_players = {"ducarev", "Halis"},
                ranking_date = "April 2020",
                ranking_difficulty = "Expert",
            },
            {
                ranking_numberplayers = 1,
                ranking_time = "12:41.8",
                ranking_players = {"LEBOVIN"},
                ranking_date = "April 2020",
                ranking_difficulty = "Expert",
            },
        },
    },
 
-- Official 1vs1 PvP Maps, starting positions to be fixed at the end
    ["Elyon"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "1vs1 PvP",
        spectator_map_available = true,
    },
    ["Haladur"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "1vs1 PvP",
        spectator_map_available = true,
    },
    ["Lajesh"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "1vs1 PvP",
        spectator_map_available = true,
    },
    ["Simai"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "1vs1 PvP",
        spectator_map_available = true,
    },
    ["Uro"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "1vs1 PvP",
        spectator_map_available = true,
    },
    ["Wazhai"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "1vs1 PvP",
        spectator_map_available = false,
    },
    ["Yrmia"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "1vs1 PvP",
        spectator_map_available = true,
    },
    
-- Official 2vs2 PvP Maps, starting positions to be fixed at the end    
    ["Danduil"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}, {3, 3}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "2vs2 PvP",
        spectator_map_available = true,
    },
    ["Fyre"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}, {3, 3}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "2vs2 PvP",
        spectator_map_available = true,
    },
    ["Gorgash"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}, {3, 3}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "2vs2 PvP",
        spectator_map_available = true,
    },
    ["Koshan"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}, {3, 3}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "2vs2 PvP",
        spectator_map_available = true,
    },
    ["Nadai"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}, {3, 3}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "2vs2 PvP",
        spectator_map_available = true,
    },
    ["Turan"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}, {3, 3}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "2vs2 PvP",
        spectator_map_available = true,
    },
    ["Yshia"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}, {3, 3}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "2vs2 PvP",
        spectator_map_available = true,
    },
    ["Zahadune"] = {
        type = "PvP",
        starting_positions = {{3, 14}, {3, 3}, {3, 3}, {3, 3}},
        min_players = 2,
        mission_briefing_description = "2vs2 PvP",
        spectator_map_available = true,
    },
},

-- Todo Later: Start of Community Maps 
{
    ["Map 1"] = {},
}