VOOZH about

URL: https://minecraft.wiki/w/Module:HistoryTable

⇱ Module:HistoryTable – Minecraft Wiki


Module:HistoryTable

From Minecraft Wiki
Jump to navigation Jump to search
Documentation[view] [edit] [history] [purge]Jump to code ↴

Usage

Called by:

[view] [edit] [history] [purge]The above documentation is transcluded from Module:HistoryTable/doc.
localp={}
localtableHead
localmode=nil
localcurrentVersion=nil
localcurrentExpVersion=nil
localcurrentConsoleVersions={
xbox360=nil,
xbone=nil,
ps3=nil,
ps4=nil,
psvita=nil,
wiiu=nil,
switch=nil
}
localconsoleRowspanIndexes
localconsoleRowspans
localrowspanIndex
localrowspans
localversionLink=require('Module:Version link').main
localeditionAlias={
['java pre-classic']="java pre-Classic",
['java classic']="java Classic",
['java indev']="java Indev",
['java infdev']="java Infdev",
['java alpha']="java Alpha",['java edition alpha']="java Alpha",
['java beta']="java Beta",['java edition beta']="java Beta",
['java combat']="java Combat Test",['combat java']="java Combat Test",['java edition combat']="java Combat Test",
je="java",java="java",['java edition']="java",
['java edition upcoming']="java upcoming",['java upcoming']="java upcoming",['upcoming java']="java upcoming",['upcoming java edition']="java upcoming",
['pe alpha']="pocket Alpha",['pocket alpha']="pocket Alpha",['pocket edition alpha']="pocket Alpha",
pe="pocket",pocket="pocket",['pocket edition']="pocket",
ce="console",lce="console",console="console",['legacy console']="console",['console edition']="console",['legacy console edition']="console",
be="bedrock",bedrock="bedrock",['bedrock edition']="bedrock",
['be upcoming']="bedrock upcoming",['bedrock upcoming']="bedrock upcoming",['bedrock edition upcoming']="bedrock upcoming",['upcoming bedrock']="bedrock upcoming",['upcoming bedrock edition']="bedrock upcoming",
['3ds']="new3ds",new3ds="new3ds",['new 3ds']="new3ds",['new nintendo 3ds edition']="new3ds",
realms="realms",
pi="pi",['pi edition']="pi",['raspberry pi']="pi",
edu="minecraftedu",minecraftedu="minecraftedu",
education="education",['education edition']="education",
['education upcoming']="education upcoming",['education edition upcoming']="education upcoming",['upcoming education']="education upcoming",['upcoming education edition']="education upcoming",
xbox360="xbox360",['xbox 360']="xbox360",['xbox 360 edition']="xbox360",
xbone="xbone",xboxone="xbone",['xbox one']="xbone",['xbox one edition']="xbone",
ps3="ps3",playstation3="ps3",['playstation 3']="ps3",['playstation 3 edition']="ps3",
ps4="ps4",playstation4="ps4",['playstation 4']="ps4",['playstation 4 edition']="ps4",
psvita="psvita",psv="psvita",playstationvita="psvita",['playstation vita']="psvita",['playstation vita edition']="psvita",
wiiu="wiiu",['wii u']="wiiu",['wii u edition']="wiiu",
switch="switch",nsw="switch",nintendoswitch="switch",['nintendo switch']="switch",['nintendo switch edition']="switch",
earth="earth",['minecraft earth']="earth",
dungeons="dungeons",['minecraft dungeons']="dungeons",
['dungeons arcade']="dungeons arcade",['minecraft dungeons arcade']="dungeons arcade",
legends="legends",['minecraft legends']="legends",
blast="blast",['minecraft blast']="blast",
china="china",['china edition']="china",
bs="bedrock server",bds="bedrock server",['bedrock server']="bedrock server",['bedrock dedicated server']="bedrock server",
['?']="unknown",unknown="unknown"
}
localheaderText={
['java pre-Classic']='[[Java Edition pre-Classic]]',
['java Classic']='[[Java Edition Classic]]',
['java Indev']='[[Java Edition Indev]]',
['java Infdev']='[[Java Edition Infdev]]',
['java Alpha']='[[Java Edition Alpha]]',
['java Beta']='[[Java Edition Beta]]',
['java']="[[Java Edition version history|''Java Edition'']]",
['java Combat Test']="[[Java Edition Combat Tests]]",
['java upcoming']="[[Planned versions#Java Edition|Upcoming ''Java Edition'']]",
['pocket Alpha']='[[Pocket Edition Alpha]]',
['pocket']="''[[Pocket Edition]]''",
['bedrock']="[[Bedrock Edition version history|''Bedrock Edition'']]",
['bedrock upcoming']="[[Planned versions#Bedrock Edition|Upcoming ''Bedrock Edition'']]",
['minecraftedu']="[[MinecraftEdu#Versions|''MinecraftEdu'']]",
['education']="[[Minecraft Education version history|''Minecraft Education'']]",
['education upcoming']="[[Planned versions#Minecraft Education|Upcoming ''Minecraft Education'']]",
['china']="[[China Edition#History|''China Edition'']]",
['bedrock server']='[[Bedrock Dedicated Server#History|Realms Plus & Bedrock Dedicated Server]]',
['console']='[[Legacy Console Edition version history|Legacy Console Edition]]',
['realms']='[[Realms#History|Realms]]',
['new3ds']="[[New Nintendo 3DS Edition version history|''New Nintendo 3DS Edition'']]",
['pi']="[[Pi Edition#Release|''Pi Edition'']]",
['xbox360']="[[Legacy Console Edition version history|''Xbox 360 Edition'']]",
['xbone']="[[Legacy Console Edition version history|''Xbox One Edition'']]",
['ps3']="[[Legacy Console Edition version history|''PlayStation 3 Edition'']]",
['ps4']="[[Legacy Console Edition version history|''PlayStation 4 Edition'']]",
['psvita']="[[Legacy Console Edition version history|''PlayStation Vita Edition'']]",
['wiiu']="[[Legacy Console Edition version history|''Wii U Edition'']]",
['switch']="[[Legacy Console Edition version history|''Nintendo Switch Edition'']]",
['earth']="[[Earth:Version history|''Minecraft Earth'']]",
['dungeons']="[[Dungeons:Version history|''Minecraft Dungeons'']]",
['dungeons arcade']="[[Dungeons:Arcade|''Minecraft Dungeons Arcade'']]",
['legends']="[[Legends:Version history|''Minecraft Legends'']]",
['blast']="[[Minecraft Blast#Version history|''Minecraft Blast'']]",
['launcher']="[[Launcher version history|''Minecraft Launcher'']]",
['unknown']="Unknown"
}
localheaderCategories={
['java upcoming']="[[Category:Java Edition upcoming]]",
['bedrock upcoming']="[[Category:Bedrock Edition upcoming]]",
['education upcoming']="[[Category:Minecraft Education upcoming]]",
['unknown']="[[Category:Unknown version history]]"
}
localversionLinks={
['java upcoming']='java',
['bedrock upcoming']='bedrock',
['education upcoming']='education',
['bedrock server']='Bedrock Dedicated Server',
['dungeons arcade']='Dungeons:'-- This is needed or else version link module doesn't correctly link to the arcade
}
localexperimentLinks={
['Minecart Improvements']='[[Minecart Improvements]]',
['Redstone Experiments']='[[Redstone Experiments]]',
['Villager Trade Rebalance']='[[Villager Trade Rebalance]]',
['Villager Trade Rebalancing']='[[Villager Trade Rebalance|Villager Trade Rebalancing]]',
['Drop 1 of 2026']='[[Tiny Takeover|Drop 1 of 2026]]',
['Beta APIs']='[[Experiments#Add-on creators|Beta APIs]]',
['Experimental Creator Camera Features']='[[Experiments#Add-on creators|Experimental Creator Camera Features]]',
['Render Dragon Features for Creators']='[[Vibrant Visuals#Deferred Technical Preview|Render Dragon Features for Creators]]',
['Upcoming Creator Features']='[[Experiments#Add-on creators|Upcoming Creator Features]]',
['Experimental Voxel Shape Features']='[[Experiments#Add-on creators|Experimental Voxel Shape Features]]',
['Bundles']='[[Bundle]]s',
['Locator Bar']='[[Locator Bar]]',
['Update 1.20']='[[Trails & Tales|Update 1.20]]',
['Update 1.21']='[[Tricky Trials|Update 1.21]]',
['Winter Drop']='[[The Garden Awakens|Winter Drop]]',
['Additional Modding Capabilities']='[[Bedrock Edition 1.16.100|Additional Modding Capabilities]]',
['Aim Assist']='[[Commands/aimassist|Aim Assist]]',
['Armadillo and Wolf Armor']='[[Armored Paws|Armadillo and Wolf Armor]]',
['Caves and Cliffs']='[[Bedrock Edition 1.18.0|Caves and Cliffs]]',
['Creator Cameras: Focus Target Camera']='[[Experiments#Add-on creators|Creator Cameras: Focus Target Camera]]',
['Creation of Custom Biomes']='[[Bedrock Edition 1.16.100|Creation of Custom Biomes]]',
['Creator Cameras: New Third-Person Presets']='[[Experiments#Add-on creators|Creator Cameras: New Third-Person Presets]]',
['Custom biomes']='[[Experiments#Add-on creators|Custom biomes]]',
['Custom Components V2']='[[Experiments#Add-on creators|Custom Components V2]]',
['Data-Driven Jigsaw Structures']='[[Experiments#Add-on creators|Data-Driven Jigsaw Structures]]',
['Drop 1 2025']='[[Spring to Life|Drop 1 2025]]',
['Drop 2 2025']='[[Chase the Skies|Drop 2 2025]]',
['Drop 3 2025']='[[The Copper Age|Drop 3 2025]]',
['Experimental Cameras']='[[Bedrock Edition 1.20.0|Experimental Cameras]]',
['Holiday Creator Features']='[[Bedrock Edition 1.16.100|Holiday Creator Features]]',
['Next Major Update']='[[Trails & Tales|Next Major Update]]',
['Recipe Unlocking']='[[Recipe book#Unlocking|Recipe Unlocking]]',
['Short Sneaking and Crawling']='[[Sneaking|Short Sneaking]] and [[Crawling]]',
['Sniffer']='[[Sniffer]]',
['Spectator Mode']='[[Spectator|Spectator Mode]]',
['Vanilla Experiments']='[[Bedrock Edition 1.18.0|Vanilla Experiments]]',
['Vibrant Visuals']='[[Vibrant Visuals]]',
['Wild Update']='[[The Wild Update|Wild Update]]',
['Furnace Recipe Book']='[[Recipe book#Smelting|Furnace Recipe Book]]',
['Drop 2 of 2026']='[[Chaos Cubed|Drop 2 of 2026]]',
['Drop 3 of 2026']='[[Third Drop 2026|Drop 3 of 2026]]'
}
localsortKeys={
-- is this still needed? why is it not updated since 2020/1.16 then?
['java 1.0.0']="A",
['java 1.1']="B",
['java 1.2.1']="C",
['java 1.3.1']="D",
['java 1.4.2']="E",
['java 1.5']="F",
['java 1.6.1']="G",
['java 1.7.2']="F",
['java 1.8']="G",
['java 1.9']="H",
['java 1.10']="I",
['java 1.11']="J",
['java 1.12']="K",
['java 1.13']="L",
['java 1.14']="M",
['java 1.15']="N",
['java 1.16']="O",
['java texture update']="_",
['java indev 0.31']="0",
['java alpha v1.2.0']="2",
['java beta 1.6']="6",
['java beta 1.8']="8",
['pocket alpha v0.8.0']="A",
['pocket alpha 0.8.0']="A",
['pocket alpha v0.9.0']="B",
['pocket alpha 0.9.0']="B",
['pocket alpha v0.10.0']="C",
['pocket alpha 0.10.0']="C",
['pocket alpha v0.11.0']="D",
['pocket alpha 0.11.0']="D",
['pocket alpha v0.12.1']="E",
['pocket alpha 0.12.1']="E",
['pocket alpha v0.13.0']="F",
['pocket alpha 0.13.0']="F",
['pocket alpha v0.14.0']="G",
['pocket alpha 0.14.0']="G",
['pocket alpha v0.15.0']="H",
['pocket alpha 0.15.0']="H",
['pocket alpha v0.16.0']="I",
['pocket alpha 0.16.0']="I",
['pocket 1.0.0']="X",
['pocket 1.1.0']="Y",
['pocket 1.1.3']="Z",
['bedrock 1.2.0']="A",
['bedrock 1.2.13']="B",
['bedrock 1.4.0']="C",
['bedrock 1.5.0']="D",
['bedrock 1.6.0']="E",
['bedrock 1.7.0']="F",
['bedrock 1.8.0']="G",
['bedrock 1.9.0']="H",
['bedrock 1.10.0']="I",
['bedrock 1.11.0']="J",
['bedrock 1.12.0']="K",
['bedrock 1.13.0']="L",
['bedrock 1.14.0']="M",
['bedrock 1.14.60']="M",
['bedrock 1.16.0']="N",
['bedrock 1.16.100']="N"
}
localfunctionisInMainspace()
returnmw.title.getCurrentTitle().namespace==0
end
localfunctiongetUnknownCat()
if(mode==nilormode=='unknown')thenreturn''end
if(mode=='xbox360'ormode=='xbone'ormode=='ps3'ormode=='ps4'ormode=='psvita'ormode=='wiiu'ormode=='switch')thenmode='console'end
localsortKey=sortKeys[mode..(currentVersionor'')]or"*"
ifisInMainspace()then
return'[[Category:Unknown '..string.gsub(mode,'^%l',string.upper)..' version history|'..sortKey..']]'
end
return''
end
localfunctionresetConsole()
currentConsoleVersions.xbox360=nil
currentConsoleVersions.xbone=nil
currentConsoleVersions.ps3=nil
currentConsoleVersions.ps4=nil
currentConsoleVersions.psvita=nil
currentConsoleVersions.wiiu=nil
currentConsoleVersions.switch=nil
end
localfunctionreset()
currentVersion=nil
currentExpVersion=nil
resetConsole()
end
localfunctionfootReset()
mode=nil
reset()
end
localfunctiongetVersionLink(link,text,isDev)
if(link=='none')then
if(text=='unknown'ortext=='?')thenreturn'?'..getUnknownCat()end
if(isDevandtext=='java')thenreturn''end
returntext
end
if(link=='ver')then
if(text=='unknown'ortext=='?')then
return'[[:Category:Unknown version history|?]]'..(isInMainspace()andgetUnknownCat()or'')
end
if(isDevandtext=='java')then
return''
end
if((notisDev)and(mode=='realms'))then
returntext
end
localc
if(notisDev)then
if(text=='Pre-release'andmode=='pocket Alpha')thenc='pocket Pre-release'
elsec=(versionLinks[mode]ormode)..' '..text
end
else
c=text:lower()
if(c:match('^test build')orc:match('^pre%-release')orc:match('^build')orc:match('^20[01]')orc:match('^release candidate')orc:match('^experimental snapshot'))thenc=currentVersion..' '..text
elseif(c:match('^preview [0-9]'))thenc=text-- Bedrock edition previews
elseif(c:match('^pre'))thenc=currentVersion..'-'..text
elseif(c:match('^snapshot'))thenc=currentVersion..' Snapshot '..text:gsub('^snapshot','')
elseif(c:match('^snap'))thenc=currentVersion..' Snapshot '..text:gsub('^snap','')
elseif(c:match('^rc'))thenc=currentVersion..'-'..text
elseif(c:match('^release'))thenc=currentVersion
elsec=text
end
c=(versionLinks[mode]ormode)..' '..c
end
returnversionLink({c,text:gsub('^%((.*)%)$','%1')})
end
localcat=''
if(text=='unknown'ortext=='?')then
cat=getUnknownCat()
end
if(link:find('//',1,true))then
return'['..link..' '..text..']'..(isInMainspace()andcator'')
else
return'[['..link..'|'..text..']]'..cat
end
end
localfunctionconsoleVersionLink(platform,version,link)
if(version=='none')thenreturn' 'end
if(version=='unknown'orversion=='?')then
return'?'..(isInMainspace()andgetUnknownCat()or'')
end
if(link)then
if(link=='none')thenreturnversionend
if(link:find('//',1,true))thenreturn'['..link..' '..version..']'elsereturn'[['..link..'|'..version..']]'end
end
localr=platform..' '..version
returnversionLink({r,version})
end
localfunctionaddConsoleVersions(platform,version,link,prnt)
if(((version~=nilandversion~='')andversion==currentConsoleVersions[platform])or((version==nilorversion=='')andcurrentConsoleVersions[platform]~=nil))
then
return
end
prnt('<th class="nowrap vertical-header" style="max-height: min-content;" rowspan="')
currentConsoleVersions[platform]=versionor"none"
consoleRowspanIndexes[platform]=consoleRowspanIndexes[platform]+1
prnt(consoleRowspans[platform][consoleRowspanIndexes[platform]]..'">')
prnt(consoleVersionLink(platform,versionor'none',link))
prnt('</th>')
end
localfunctionconsoleSubHeader(content,prnt)
prnt('<th class="vertical-header" style="border-style: none dashed; max-height: min-content;">'..content..'</th>')
end
localfunctionprocessLine(args,prnt)
localsnapRows=1
fori,_inipairs(args)doif(i>3)thensnapRows=snapRows+1endend
--Header or Foot
if(args[1]~=nilandargs[1]~='')then
localtemp=(args[1]):lower()
if(temp=='foot')then
prnt('</table>')
footReset()
tableHead=0
return
end
mode=editionAlias[temp]orargs[1]
reset()
prnt('<tr class="collapsible collapsible-rows"><th class="historytable-subheader" colspan="8" style="border-bottom: none">')
prnt(headerText[mode]ormode)
ifmw.title.getCurrentTitle().namespace==0then
prnt(headerCategories[mode]or'')
end
prnt('</th></tr>')
ifmode=='console'then
prnt('<tr style="font-size: smaller">')
consoleSubHeader("[[Xbox 360 Edition|Xbox&nbsp;360]]",prnt)
consoleSubHeader("[[Xbox One Edition|Xbox&nbsp;One]]",prnt)
consoleSubHeader("[[PlayStation 3 Edition|PS3]]",prnt)
consoleSubHeader("[[PlayStation 4 Edition|PS4]]",prnt)
consoleSubHeader("[[PlayStation Vita Edition|PS&nbsp;Vita]]",prnt)
consoleSubHeader("[[Wii U Edition|Wii U]]",prnt)
consoleSubHeader("[[Nintendo Switch Edition|Switch]]",prnt)
consoleSubHeader("",prnt)
prnt("</tr>")
end
return
end
--Content rows
prnt('<tr>')
if((mode=='console')and(args.xboxorargs.xboneorargs.ps3orargs.ps4orargs.psvitaorargs.wiiuorargs.switch))then
currentVersion=nil
if(args[3]~=nilandargs[3]~='')then
snapRows=snapRows+1
end
addConsoleVersions("xbox360",args.xbox,args.xboxlink,prnt)
addConsoleVersions("xbone",args.xbone,args.xbonelink,prnt)
addConsoleVersions("ps3",args.ps3,args.ps3link,prnt)
addConsoleVersions("ps4",args.ps4,args.ps4link,prnt)
addConsoleVersions("psvita",args.psvita,args.psvitalink,prnt)
addConsoleVersions("wiiu",args.wiiu,args.wiiulink,prnt)
addConsoleVersions("switch",args.switch,args.switchlink,prnt)
prnt('<td>'..args[2]..'</td></tr>')
fork,vinipairs(args)doif(k>2)thenprnt('<tr><td>'..v..'</td></tr>')endend
return
end
--Other versions:
resetConsole()
if((args.dev==nil)or(args[2]andargs[2]~='')or(args.expandargs.exp~=''andargs.exp~=currentExpVersion))then
currentVersion=nil
currentExpVersion=nil
prnt('<th ')
if(not(args.linkorargs[2]:find('(',1,true)))thenprnt('class="nowrap"')end
prnt(' rowspan="')
if(args.exp~=nil)then
currentExpVersion=args.exp
end
if(args.dev~=nil)then
currentVersion=args[2]
rowspanIndex=rowspanIndex+1
prnt(rowspans[rowspanIndex]..'" colspan="3">')
else
prnt(snapRows..'" colspan="7">')
end
prnt(getVersionLink(args.linkor'ver',args[2],false))
if(args.exp~=nilorargs.experiment~=nil)then
localexperiment=(args.exporargs.experiment)
prnt("<div class=\"historytable-experiment\"><div>Experiment</div></div><span>"..(experimentLinks[experiment]orexperiment).."</span>")
end
prnt('</th>')
end
if(args.dev~=nil)then
prnt('<th colspan="4" rowspan="'..snapRows..'">')
prnt(getVersionLink(args.slinkor'ver',args.dev,true))
prnt('</th>')
end
ifargs[3]then
prnt('<td>'..args[3]..'</td></tr>')
end
fork,vinipairs(args)doif(k>3)thenprnt('<tr><td>'..v..'</td></tr>')endend
return
end
-- Takes all args and puts them into a json string
functionp.printArgs(frame)
returnmw.text.jsonEncode(frame:getParent().args)
end
-- Undo the serialization for parsing
localfunctiondeserialize(args)
locale
localout={}
fork,vinpairs(args)do
e,out[k]=pcall(mw.text.jsonDecode,v)
ifnotethen
localerrorCat=''
localerrorMsg=mw.message.new('scribunto-common-error-category')
ifnoterrorMsg:isDisabled()then
errorCat='[[Category:'..errorMsg:plain()..']]'
end
out[k]={'','unknown',v..' <strong class="error">Lua error: '..out[k]..errorCat..' Input:'..v..'</strong>'}
end
end
returnout
end
localfunctioncountConsoleRowspans(platform,version,snapRows)
if(((version~=nilandversion~='')andversion==currentConsoleVersions[platform])or((version==nilorversion=='')andcurrentConsoleVersions[platform]~=nil))
then
consoleRowspans[platform][consoleRowspanIndexes[platform]]=consoleRowspans[platform][consoleRowspanIndexes[platform]]+snapRows
return
end
currentConsoleVersions[platform]=versionor"none"
consoleRowspanIndexes[platform]=consoleRowspanIndexes[platform]+1
consoleRowspans[platform][consoleRowspanIndexes[platform]]=(consoleRowspans[platform][consoleRowspanIndexes[platform]]or0)+snapRows
end
localfunctioncountRowspan(args)
localsnapRows=1
fori,_inipairs(args)doif(i>3)thensnapRows=snapRows+1endend
--Header or Foot
if(args[1]~=nilandargs[1]~='')then
localtemp=(args[1]):lower()
if(temp=='foot')then
footReset()
return
end
mode=editionAlias[temp]orargs[1]
reset()
return
end
--Content rows
if((mode=='console')and(args.xboxorargs.xboneorargs.ps3orargs.ps4orargs.psvitaorargs.wiiuorargs.switch))then
currentVersion=nil
if(args[3]~=nilandargs[3]~='')then
snapRows=snapRows+1
end
countConsoleRowspans("xbox360",args.xbox,snapRows)
countConsoleRowspans("xbone",args.xbone,snapRows)
countConsoleRowspans("ps3",args.ps3,snapRows)
countConsoleRowspans("ps4",args.ps4,snapRows)
countConsoleRowspans("psvita",args.psvita,snapRows)
countConsoleRowspans("wiiu",args.wiiu,snapRows)
countConsoleRowspans("switch",args.switch,snapRows)
return
end
--Other versions:
resetConsole()
if((args.dev==nil)or(args[2]andargs[2]~='')or(args.expandargs.exp~=''andargs.exp~=currentExpVersion))then
currentVersion=nil
currentExpVersion=nil
if(args.dev~=nil)then
currentVersion=args[2]
rowspanIndex=rowspanIndex+1
end
end
if(args.dev~=nil)then
rowspans[rowspanIndex]=(rowspans[rowspanIndex]or0)+snapRows
end
return
end
localfunctioninitRowspans()
rowspans={}
consoleRowspans={
xbox360={},
xbone={},
ps3={},
ps4={},
psvita={},
wiiu={},
switch={}
}
end
localfunctionresetRowspanIndexes()
rowspanIndex=0
consoleRowspanIndexes={
xbox360=0,
xbone=0,
ps3=0,
ps4=0,
psvita=0,
wiiu=0,
switch=0
}
end
functionp.main(frame)
returnp._main(frame:getParent().args)
end
functionp._main(args)
locallines=deserialize(args)
initRowspans()
resetRowspanIndexes()
for_,vinipairs(lines)do
countRowspan(v)
end
resetRowspanIndexes()
tableHead=0
localresult={}
for_,vinipairs(lines)do
if(tableHead~=1)then
table.insert(result,'<table class="wikitable pixel-image" data-description="History">')
tableHead=1
end
processLine(v,function(a)table.insert(result,a)end)
end
iftableHead~=0then
table.insert(result,'</table>')
footReset()
tableHead=0
end
returntable.concat(result)
end
returnp
Retrieved from "https://minecraft.wiki/w/Module:HistoryTable?oldid=3643919"

Navigation menu