Gem Shop: Difference between revisions

From IdleOn MMO Wiki
m (To improve maintainability, now raw data can be processed without conversion.)
mNo edit summary
Line 1: Line 1:
[[File:Gemshop.png]]
local mtxinfo = mw.loadJsonData('Module:Gemshop/MTXinfo.json')
local p = {}


Purchase names may not match in-game item names.
-- Gemshop/data.json is return value of ha.MTXinfo() in N.js without any conversion
__TOC__


==Buy Gems==
-- itemDisplayName, mtxName, desc, maxPurchases, cost, extra stuff, total stuff
===Gem Packs===
local ROW_TEMPLATE = [=[<tr>
{| class="wikitable"
<td>[[File:%s.png|50px]]</td>
|+Standard Packages
<td>%s</td>
!Image!!Package Name!!Included Gems!!Price (USD)!!Gems / USD
<td>%s</td>
|-
<td style="text-align:center;">%s</td>
|[[File:Pile of Gems UI.png|100px|alt=|frameless]]||Pile of Gems||200||$1.99||100
<td>'''Base:''' %d%s%s</td>
|-
</tr>]=]
|[[File:Sack of Gems UI.png|100px|alt=|frameless]]||Sack of Gems||600||$4.99||120
|-
|[[File:Chest of Gems UI.png|100px|alt=|frameless]]||Chest of Gems||1500||$9.99||150
|-
|[[File:Mountain of Gems UI.png|100px|alt=|frameless]]||Mountain of Gems||4000||$19.99||200
|}


===Special Packs===
-- Trim whitespace from args, and treat blank args as nil
{| class="wikitable"
local function preprocessArg(s)
|+Special Packages
    if not s then
!Image!!Package Name!!Included Gems!!Other Contents!!Price (USD)!!Gems / USD
        return nil
|-
    end
|[[File:Starter Pack.png|alt|frameless]]||Starter Pack||350/day for 5 days||
    s = s:match('^%s*(.-)%s*$') -- trim whitespace
* {{CraftReq|1 HR Time Candy}} x4
    if s == '' then
* {{CraftReq|2 HR Time Candy}} x4
        return nil
* {{CraftReq|4 HR Time Candy}} x2
    else
* {{CraftReq|12 HR Time Candy}} x1
        return s
* {{CraftReq|Newbie Card Pack}} x4
    end
* 16 Storage Chest Slots
end
||$4.99||350
|-
|[[File:Auto-Loot Pack.png|alt|frameless]]||Auto-Loot Pack||900||
* Auto-Loot Toggle
* 5 Inventory Slots
* 5 Storage Chest Slots
||$4.99||180
|-
|[[File:Gem Motherlode Pack.png|alt|frameless]]||Gem Motherlode Pack||350/day for 12 days||
* {{CraftReq|Gem Envelope}} x100
||$14.99||280
|}


===Rotating Packs===
-- Convert underscores to spaces
Each of these special packs rotate into the Gem Shop as long as you haven't already purchased them.
local function underscore_to_space(s)
{| class="wikitable"
    return s:gsub('_+', ' ')
|+Rotating Special Packages
end
!Image!!Package Name!!Included Gems!!Other Contents!!Price (USD)!!Gems / USD
|-
|[[File:Lava Supporter Pack Bundle UI.png|alt=|frameless]]||Lava Supporter Pack||4200||
* {{CraftReq|Trailblazer}}
* {{CraftReq|4 HR Time Candy}} x7
||$19.99||210
|-
|[[File:New Year Pack.png|alt=|frameless]]||New Year Pack||2021||
* {{CraftReq|Giftmas Tree}}
* {{CraftReq|Newbie Card Pack}} x4
* {{CraftReq|12 HR Time Candy}} x4
||$9.99||202
|-
|[[File:Totally Chill Pack.png|alt|frameless]]||Totally Chill Pack||4500||
* {{CraftReq|Fluffy Ramsy}}
* {{CraftReq|Eternal Card Pack}} x3
* {{CraftReq|24 HR Time Candy}} x4
||$19.99||225
|-
|[[File:Dungeon Bundle.png|alt|frameless]]||Dungeon Bundle||4000||
* Boosted Dungeon Runs x20
* {{Icons|Smol Arcade Balls}} Arcade Balls x250
* {{CraftReq|Dungeon Card Pack}} x3
||$19.99||200
|-
|[[File:Outta This World Pack.png|alt|frameless]]||Outta This World Pack||4300||
* {{CraftReq|Angel Wings}}
* {{CraftReq|Galaxy Card Pack}} x3
||$19.99||215
|-
|[[File:Super Hot Fire Pack.png|alt|frameless]]||Super Hot Fire Pack||4300||
* {{CraftReq|Molten Cloak}}
* {{CraftReq|Smolderin Card Pack}}
* {{CraftReq|Bottled Wind}} x3
* {{CraftReq|Gaming Fertilizer}} x3
||$19.99||215
|-
|[[File:Riftwalker Pack Bundle.png|alt|frameless]]||Riftwalker Pack||6400||
* {{CraftReq|Riftwalker Wings}}
* {{CraftReq|Riftwalker Nametag}}
* {{CraftReq|Galaxy Card Pack}} x2
* {{CraftReq|Smolderin Card Pack}} x2
||$29.99||213
|-
|[[File:Bloomin' Pet Pack Bundle.png|alt|frameless]]||Bloomin' Pet Pack||4500||
* {{CraftReq|Pet Crystal}} x2,000
* {{CraftReq|Blooming Vine}}
||$24.99||173
|-
|[[File:Island Explorer Pack.png|alt|frameless]]||Island Explorer Pack||4400||
* {{CraftReq|Pet Crystal}} x1,000
* {{CraftReq|Island Adventurer Nametag}}
* +30% Island Expeditions Bottles
* 1.20x Account-Wide Drop Rate
||$19.99||220
|-
|[[File:Equinox Dreamer Pack.png|alt|frameless]]||Equinox Dreamer Pack||4500||
* +50% Equinox Bar Fill Rate
* 1.20x Account-Wide Class Exp Gain
* {{CraftReq|Equinox Ring}}
||$19.99||225
|-
|[[File:Calm Serenity Pack.png|alt|frameless]]||Calm Serenity Pack||4600||
* {{CraftReq|Pet Crystal}} x1,000
* {{CraftReq|Phoenix Wings}}
* {{CraftReq|Spirit Card Pack}}
* {{CraftReq|Compost Bag}} x4
* {{CraftReq|Summoner Stone}} x4
* {{CraftReq|Sand of Time}} x4
||$19.99||230
|-
|[[File:Sacred Methods Pack.png|alt|frameless]]||Sacred Methods Pack||5500||
* +10 Bubble Lv Every Day (On Daily Reset)
* +2 Meal Lv Every Day (On Daily Reset)
* +5 Stamp Lv Every Day (On Daily Reset)
||$19.99||275
|-
|[[File:Timeless Pack.png|alt|frameless]]||Timeless Pack||6400||
* {{CraftReq|Pet Crystal}} x2,000
* {{CraftReq|Timeless Watch}}
* {{CraftReq|Timeless Nametag}}
||$29.99||213
|}


=== Seasonal/Limited Time Packs ===
-- Convert to title capitalization
{| class="wikitable"
local function toTitleCase(str)
|+Seasonal/Limited Time Special Packages
    return (str:gsub("(%a)([%w_']*)", function(first, rest) return first:upper()..rest:lower() end))
!Image!!Package Name!!Included Gems!!Other Contents!!Price (USD)!!Gems / USD
end
|-
|[[File:Eggscellent Pack.png|alt=|frameless]]||Eggscellent Pack||2500||
* {{CraftReq|Easter Egg Backpack}}
* {{CraftReq|Egg Capsule}} x250
* {{CraftReq|Goldegg Capsule}} x60
||$9.99||250
|-
|[[File:Easter Bundle.png|alt=|frameless]]||Easter Bundle||2500||
* {{CraftReq|Big Bunny}}
* {{CraftReq|2 HR Time Candy}} x5
* {{CraftReq|4 HR Time Candy}} x2
* {{CraftReq|24 HR Time Candy}} x1
||$9.99||250
|-
|[[File:Summer Bundle.png|alt|frameless]]||Summer Bundle||2000||
* {{CraftReq|Beach Bro}}
* {{CraftReq|2 HR Time Candy}} x20
* {{CraftReq|Quality Obol Stack}} x3
||$9.99||200
|-
|[[File:Giftmas Bundle.png|alt=|frameless]]||Giftmas Bundle||2021||
* {{CraftReq|Giftmas Snoozy Cap}} x3
* {{CraftReq|2021 Giftmas Box}} x250
||$9.99||202
|}


==Cosmetics==
-- Convert raw 4d MTXinfo to 2d table
'''With [[Changelog/1.77|1.77]] update, Lava has removed the Cosmetics section from the Gem Shop.'''
local function mtxinfo_to_2dtable(mtxinfo)
    local data = {}
    local index = 1


==Usables==
    for tabno, tab in ipairs(mtxinfo) do
===Time Candy===
        for sectionno, section in ipairs(tab) do
Time candy gives you instant AFK progress on a single character! Make sure your character is doing the thing you want to gain progress in, which you can check by opening up the AFK info in the Menu! Also, you can only buy 4 of each purchase every day.
            for itemno, item in ipairs(section) do
{{Gemshop/head|Time Candies}}
                data[index] = {
{{#invoke:Gemshop|bySections|tab_number=1|section_number=1}}
                    tabno = tabno,
|}
                    sectionno = sectionno,
                    itemno = itemno,
                    display = item[1],
                    name = toTitleCase(underscore_to_space(item[2])),
                    description = underscore_to_space(item[3]),
                    cost = tonumber(item[4]),
                    no = tonumber(item[5]),
                    maxPurchases = tonumber(item[6]),
                    qty = tonumber(item[7]),
                    costIncrement = tonumber(item[8])
                }
                index = index + 1
            end
        end
    end


===Inventory & Storage===
    return data
Permanently expand your different inventories! These expansions affect ALL CHARACTERS, so it doesn't matter who you buy these on, don't even worry about it! Also, whatever inventory expanders you find in game will stack with these!
end
{{Gemshop/head|Inventory & Storage}}
{{#invoke:Gemshop|bySections|tab_number=1|section_number=2}}
|}
===Dailies N' Resets===
Various usable coupons that give you certain things that are shared across your entire account. It doesn't matter which Character you buy these on.
<br/>'''NOTE:''' The only items that are character specific are the Normal Talent Reset item, Star Talent Reset item, Pandoras Office Reset item and the Subclass Swap Token item.
<br/>'''NOTE:''' Daily Resets are not replenished when bought, only during the daily reset, so you may need to wait up to 24 hours for these effects to become active.
{{Gemshop/head|Dailies N' Resets}}
{{#invoke:Gemshop|bySections|tab_number=1|section_number=3}}
|}


===Cards===
function p.bySections(frame)
{{Gemshop/head|Cards}}
local args = frame.args
{{#invoke:Gemshop|bySections|tab_number=1|section_number=4}}
local tab_number = tonumber(preprocessArg(args.tab_number)) + 1
|}
local section_number = tonumber(preprocessArg(args.section_number))
====Card Packs====
local ret = ""
{| class="wikitable"
    local data = mtxinfo_to_2dtable(mtxinfo)
|+Card Pack Odds
!Img!!Card Set!!Newbie Card Pack!!Ancient Card Pack !!Eternal Card Pack!!Galaxy Card Pack!!Dungeon Card Pack
    -- TODO
|-
for _, item in pairs(data) do
|[[File:Blunder_Hills_Cardset.png|alt=|frameless]]||Blunder Hills Cards||55%||n/a||n/a||n/a||n/a
if item.tabno == tab_number and item.sectionno == section_number and item.display ~= "Blank" then
|-
            local maxPurchases = item.maxPurchases == 100000 and "" or item.maxPurchases
|[[File:Yum_Yum_Desert_Cardset.png|alt=|frameless]]||Yum-Yum Desert Cards||n/a||29%*||n/a||n/a||n/a
            local extra = item.costIncrement > 0 and string.format([[<br/>'''Increment:''' %d<br/>'''Final:''' %d]], item.costIncrement, item.cost + item.costIncrement * (item.maxPurchases - 1)) or ""
|-
            local total = (1 < item.maxPurchases and item.maxPurchases < 100000) and string.format([[<br/>'''Total:''' %d]], (item.maxPurchases / 2) * (item.cost * 2 + item.costIncrement * (item.maxPurchases - 1))) or ""
|[[File:Easy_Resources_Cardset.png|alt=|frameless]]||Easy Resource Cards||37% (3% for Fire Forge)||n/a||n/a||n/a||n/a
           
|-
            ret = ret .. string.format(
|[[File:Medium_Resources_Cardset.png|alt=|frameless]]||Medium Resource Cards||n/a||50% (38% W2, 20% W3) ||n/a||n/a||n/a
                ROW_TEMPLATE,
|-
                item.display,
|[[File:Frostbite_Tundra_Cardset.png|alt=|frameless]]||Frosbite Tundra Cards||n/a||n/a||52%||n/a||n/a
                item.name,
|-
                item.description,
|[[File:Hard_Resources_Cardset.png|alt=|frameless]]||Hard Resource Cards||n/a||n/a||32% (3% Lustre/Saharan Foal)||||n/a
                maxPurchases,
|-
                item.cost,
|[[File:Bosses_Cardset.png|alt=|frameless]]||Boss Cards||5%||13%||10% (1 Guaranteed)||||n/a
                extra,
|-
                total
|[[File:Dungeons_Cardset.png|alt=|frameless]]||Dungeon Cards||n/a||n/a||n/a||n/a||100%
            )
|-
        end
|[[File:Hyperion Nebula Cardset.png|alt=|frameless]]||Hyperion Nebula Cards||n/a||n/a||n/a||||n/a
end
|}


'''*Note:''' Does not include [[Bandit Bob Card|Bandit Bob]].
return ret
end


{| class="wikitable"
return p
|+Boss Card Odds
!Img!!Card!!Newbie Card Pack (5%)!!Ancient Card Pack (13%)!!Eternal Card  Pack (10%) <br/>(1 Guaranteed)!!Galaxy Card Pack (10%)<br/>(1 Guaranteed)
|-
|[[File:Baba_Yaga_Card.png|alt=|28px]]||Baba Yaga||30%||15%||2%||Not Available
|-
|[[File:Dr_Defecaus_Card.png|alt=|28px]]||Defecaus||35%||22%||3%||Not Available
|-
|[[File:Boop_Card.png|alt=|28px]]||Boop Card||Not Available||5%||2%||Not Available
|-
|[[File:Amarok_Card.png|alt=|28px]]||Amarok ||25%||19%||5%||Not Available
|-
|[[File:Amarok_Chaotic_Card.png|alt=|28px]]||Chaotic Amarok||Not Available||7%||9%||Not Available
|-
|[[File:Radiant Amarok_Card.png|alt=|28px]]||Radiant Amarok||10%*||Not Available||Not Available||Not Available
|-
|[[File:Biggie_Hours_Card.png|alt=|28px]]||Biggie Hours||Not Available||9.33%||18%||Not Available
|-
|[[File:King_Doot_Card.png|alt=|28px]]||King Doot||Not Available||4.67%||19%||Not Available
|-
|[[File:Efaunt_Card.png|alt=|28px]]||Efaunt||Not Available||8.67%||4%||Not Available
|-
|[[File:Efaunt_Chaotic_Card.png|alt=|28px]]||Chaotic Efaunt||Not Available||4.33%||19%||17.14%
|-
|[[File:Gilded Efaunt_Card.png|alt=|28px]]||Gilded Efaunt||Not Available||5%*||Not Available||Not Available
|-
|[[File:Dilapidated Slush Card.png|alt=|28px]]||Dilapidated Slush||Not Available||Not Available||Not Available||10%
|-
|[[File:Chizoar_Card.png|alt=|28px]]||Chizoar||Not Available||Not Available||11%||15.71%
|-
|[[File:Chaotic_Chizoar_Card.png|alt=|28px]]||Chaotic Chizoar||Not Available||Not Available||6%||14.28%
|-
|[[File:Blighted Chizoar Card.png|alt=|28px]]||Blighted Chizoar||Not Available||Not Available||2%*||Not Available
|-
|[[File:Mutated Mush Card.png|alt=|28px]]||Mutated Mush||Not Available||Not Available||Not Available||7.14%
|-
|[[File:Massive Troll Card.png|alt=|28px]]||Troll||Not Available||Not Available||Not Available||22.85%
|-
|[[File:Chaotic Troll Card.png|alt=|28px]]||Chaotic Troll||Not Available||Not Available||Not Available||12.86%
|-
|[[File:Blitzkrieg Troll Card.png|alt=|28px]]||Blitzkrieg Troll||Not Available||Not Available||Not Available||?
|}
'''*''' if Normal and Chaotic are 2 star or better the pack guarantees Nightmares
{| class="wikitable"
|+Dungeon Card Pack Odds
!Roll!!Dungeon Card!!Dungeon Boss Card
|-
|1||100%||0%
|-
|2||100%||0%
|-
|3||27%||73%
|}<div class="GenericFlex"><div class="GenericChild" style="flex:auto;margin:0">
{| class="wikitable"
|+Dungeon Card Odds
!Img!!Card Name!!Odds
|-
|[[File:Poisonic Frog Card.png|alt=|28px]]||Poisonic Frog||15%
|-
|[[File:King Frog Card.png|alt=|28px]]||King Frog||12%
|-
|[[File:Globohopper Card.png|alt=|28px]]||Globohopper||10%
|-
|[[File:Lava Slimer Card.png|alt=|28px]]||Lava Slimer||10%
|-
|[[File:Chromatium Frog Card.png|alt=|28px]]||Chromatium Frog||8%
|-
|[[File:Target Card.png|alt=|28px]]||Target||9%
|-
|[[File:Beefie Card.png|alt=|28px]]||Beefie||9%
|-
|[[File:Grumblo Card.png|alt=|28px]]||Grumblo||8%
|-
|[[File:Lazlo Card.png|alt=|28px]]||Lazlo||6%
|-
|[[File:Cactopunk Card.png|alt=|28px]]||Cactopunk||5%
|-
|[[File:Crescent Spud Card.png|alt=|28px]]||Crescent Spud||4%
|-
|[[File:Ice Guard Card.png|alt=|28px]]||Ice Guard||4%
|}
</div><div class="GenericChild" style="flex:auto;margin:0">
{| class="wikitable"
|+Dungeon Boss Card Odds (73%)
!Img!!Card Name!!Odds!!Overall
|-
|[[File:Grandfrogger Card.png|alt=|28px]]||Grandfrogger||20.01%||14.6%
|-
|[[File:Rotting Grandfrogger Card.png|alt=|28px]]||Rotting Grandfrogger||13.8%||10.07%
|-
|[[File:Forlorn Grandfrogger Card.png|alt=|28px]]||Forlorn Grandfrogger ||6.9%||5.04%
|-
|[[File:Snakenhotep Card.png|alt=|28px]]||Snakenhotep||15.18%||11.08%
|-
|[[File:Enraged Snakenhotep Card.png|alt=|28px]]||Enraged Snakenhotep||8.28%||6.04%
|-
|[[File:Inevitable Snakenhotep Card.png|alt=|28px]]||Inevitable Snakenhotep||4.83%||3.53%
|-
|[[File:Glaciaxus Card.png|alt=|28px]]||Glaciaxus||13.64%||9.95%
|-
|[[File:Golden Glaciaxus Card.png|alt=|28px]]||Golden Glaciaxus||9.92%||7.24%
|-
|[[File:Caustic Glaciaxus Card.png|alt=|28px]]||Caustic Glaciaxus||7.44%||5.43%
|}
</div></div>
 
===Goods & Services===
{{Gemshop/head|Goods & Services}}
{{#invoke:Gemshop|bySections|tab_number=1|section_number=5}}
|}
===Limited Specials===
This section will often change, sometimes even every minor update. If you were linked to here from an item's page, but you don't see it then that means it was once here, but has since been cycled out. It may return, or it might not by the whims of the developer.
{{Gemshop/head|Limited Specials}}
{{#invoke:Gemshop|bySections|tab_number=1|section_number=6}}
|}
 
==Bonuses==
===Premium Stones===
Premium Upgrade Stones can only be used on Premium Equipment, which are purchased here in the gem shop! You use these stones just like you would use normal stones, by dragging them onto the item you want to upgrade.
{{Gemshop/head|Premium Stones}}
{{#invoke:Gemshop|bySections|tab_number=2|section_number=1}}
|}
 
===World 1 & 2===
Unlock permanent upgrades to features in World 1 and 2! These apply to all characters, and stack with all other bonuses in the game, so they're always useful. These bonuses apply to all characters as well, even the ones you haven't made yet!
{{Gemshop/head|World 1 & 2}}
{{#invoke:Gemshop|bySections|tab_number=2|section_number=2}}
|}
====Quality Obol Stack====
{{DropTable/head|Droptable for Quality Obol Stack|collapsed=Yes}}
{{DropTable/display|source=Quality Obol Stack}}
 
====Marvelous Obol Stack====
{{DropTable/head|Droptable for Marvelous Obol Stack|collapsed=Yes}}
{{DropTable/display|source=Marvelous Obol Stack}}
 
===World 3===
Unlock permanent upgrades to features in World 3! These apply to all characters, and stack with all other bonuses in the game, so they're always useful. These bonuses apply to all characters as well, even the ones you haven't made yet!
{{Gemshop/head|World 3}}
{{#invoke:Gemshop|bySections|tab_number=2|section_number=3}}
|}
 
===World 4===
Unlock permanent upgrades to features in World 4! These apply to all characters, and stack with all other bonuses in the game, so they're always useful. These bonuses apply to all characters as well, even the ones you haven't made yet!
{{Gemshop/head|World 4}}
{{#invoke:Gemshop|bySections|tab_number=2|section_number=4}}
|}
 
===World 5===
Unlock permanent upgrades and usable items for World 5! The bonuses apply to all characters, and stack with all other bonus in the game! The usable items, namely the wind and fertilizer, are of course single use items to progress in time!
 
'''Though Golden Sprinkler states ''"Each additional purchase boosts this chance by 1.5x"'', each upgrade would be: 30%, 43%, 53% and 60% at last upgrade purchase to not use its charge.'''
{{Gemshop/head|World 5}}
{{#invoke:Gemshop|bySections|tab_number=2|section_number=5}}
|}
 
===World 6===
Unlock permanent upgrades and usable items for World 6! The bonuses apply to all characters, and stack with all other bonus in the game! The usable items and Summoning Life Refill are of course single use items to progress in time!
{{Gemshop/head|World 6}}
{{#invoke:Gemshop|bySections|tab_number=2|section_number=6}}
|}
 
==Retired Shop Items==
===Retired Hats===
{{Gemshop/head|Premium Helmets}}
{{Gemshop/row|name=Halloween Pumpkin|mtxName=Halloween Pumpkin|description=LIMITED TIME ITEM. This hat will disappear soon, and when it does, it's never coming back!|maxPurchases=100000|cost=300|costIncrement=0}}
{{Gemshop/row|name=Pardoned Turkey|mtxName=Pardoned Turkey|description=LIMITED TIME ITEM. This hat will disappear soon, and when it does, it's never coming back!|maxPurchases=100000|cost=300|costIncrement=0}}
{{Gemshop/row|name=Snowman (Premium Helmet)|mtxName=Snowman|description=LIMITED TIME ITEM. This giant snowball, that would probably suffocate you if you tried this IRL, will dissapear soon! When it does, it's never coming back, EVER!!|maxPurchases=100000|cost=325|costIncrement=0}}
{{Gemshop/row|name=Smitty's Bubble Blowing Hat|mtxName=Smitty's Bubble Blowing Hat|description=Auction houses estimate its worth to be as high as one million dollars, although a breakthrough in automatic clapping technology threatens to render this hat worthless.|maxPurchases=100000|cost=350|costIncrement=0}}
{{Gemshop/row|name=Bandit Bob Mask|mtxName=Bandit Bob Mask|description=This hat really makes you FEEL like Batman... errr, Bandit Bob.|maxPurchases=100000|cost=300|costIncrement=0}}
{{Gemshop/row|name=Hotdog Hero|mtxName=Hotdog Hero|description=Thanks to this hat, you can ask other players if they think your wiener is big without being inappropriate!|maxPurchases=100000|cost=350|costIncrement=0}}
|}
 
===Goods & Services===
{{Gemshop/head|Goods & Services}}
{{Gemshop/row|name=Dungeon Loot Dice|mtxName=Dungeon Loot Dice|description=Gives you 2 dungeon loot roll dice! Yep, 2 of them! These are exactly the same as the dice you get from dungeons. IMPORTANT: You need to be Dungeon Rank 10+ for Tier 2 Keychains, and Rank 20+ for Tier 3 Keychains.|maxPurchases=100000|cost=225|costIncrement=0}}
|}
 
===Retired Packs===
{| class="wikitable"
|+Retired Special Packages
!Image!!Package Name!!Included Gems!!Other Contents!!Price (USD)!!Gems / USD
|-
|colspan="6"|None for now.
|}
<!--  #############        Sources        #############  -->
<!-- None of these will contain Cards unless you could only obtain that card specifically and directly from the Gem shop.
        Example. If you could only get "Ultimate Supreme Gamer Card" from the Gem Shop, and it wasn't part of the "Gamer Collection Card" pack.  -->
<!-- ""Packs""  Only items that are only gotten from packs here, and aren't from retired packs.  -->
{{Sources/datarow|Item=Beach Bro|Source=Gem Shop|Link=Gem Shop#Seasonal/Limited Time Packs{{!}}Gem Shop|SpecialText=Seasonal Pack}}
{{Sources/datarow|Item=Big Bunny|Source=Gem Shop|Link=Gem Shop#Seasonal/Limited Time Packs{{!}}Gem Shop|SpecialText=Seasonal Pack}}
{{Sources/datarow|Item=Fluffy Ramsy|Source=Gem Shop|Link=Gem Shop#Rotating Packs{{!}}Gem Shop|SpecialText=Rotating Pack}}
{{Sources/datarow|Item=Giftmas Snoozy Cap|Source=Gem Shop|Link=Gem Shop#Seasonal/Limited Time Packs{{!}}Gem Shop|SpecialText=Seasonal Pack}}
{{Sources/datarow|Item=Giftmas Tree|Source=Gem Shop|Link=Gem Shop#Rotating Packs{{!}}Gem Shop|SpecialText=Rotating Pack}}
{{Sources/datarow|Item=Trailblazer|Source=Gem Shop|Link=Gem Shop#Rotating Packs{{!}}Gem Shop|SpecialText=Rotating Pack}}
{{Sources/datarow|Item=Molten Cloak|Source=Gem Shop|Link=Gem Shop#Rotating Packs{{!}}Gem Shop|SpecialText=Rotating Pack}}
{{Sources/datarow|Item=Riftwalker Wings|Source=Gem Shop|Link=Gem Shop#Rotating Packs{{!}}Gem Shop|SpecialText=Rotating Pack}}
{{Sources/datarow|Item=Riftwalker Nametag|Source=Gem Shop|Link=Gem Shop#Rotating Packs{{!}}Gem Shop|SpecialText=Rotating Pack}}
{{Sources/datarow|Item=Blooming Vine|Source=Gem Shop|Link=Gem Shop#Rotating Packs{{!}}Gem Shop|SpecialText=Rotating Pack}}
{{Sources/datarow|Item=Island Adventurer Nametag|Source=Gem Shop|Link=Gem Shop#Rotating Packs{{!}}Gem Shop|SpecialText=Rotating Pack}}
{{Sources/datarow|Item=Phoenix Wings|Source=Gem Shop|Link=Gem Shop#Rotating Packs{{!}}Gem Shop|SpecialText=Rotating Pack}}
<!-- "Gem Shop" or the more standard array of purchases that are more permanently fixed. -->
{{Sources/datarow|Item=1 HR Time Candy|Source=Gem Shop|Link=Gem Shop#Time Candy{{!}}Gem Shop}}
{{Sources/datarow|Item=2 HR Time Candy|Source=Gem Shop|Link=Gem Shop#Time Candy{{!}}Gem Shop}}
{{Sources/datarow|Item=4 HR Time Candy|Source=Gem Shop|Link=Gem Shop#Time Candy{{!}}Gem Shop}}
{{Sources/datarow|Item=12 HR Time Candy|Source=Gem Shop|Link=Gem Shop#Time Candy{{!}}Gem Shop}}
{{Sources/datarow|Item=Ancient Card pack|Source=Gem Shop|Link=Gem Shop#Cards{{!}}Gem Shop}}
{{Sources/datarow|Item=Bottled Wind|Source=Gem Shop|Link=Gem Shop#World 5{{!}}Gem Shop}}
{{Sources/datarow|Item=Cosmic Storage Chest|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Dungeon Card Pack|Source=Gem Shop|Link=Gem Shop#Cards{{!}}Gem Shop}}
{{Sources/datarow|Item=Eternal Card Pack|Source=Gem Shop|Link=Gem Shop#Cards{{!}}Gem Shop}}
{{Sources/datarow|Item=Galaxy Card Pack|Source=Gem Shop|Link=Gem Shop#Cards{{!}}Gem Shop}}
{{Sources/datarow|Item=Gaming Fertilizer|Source=Gem Shop|Link=Gem Shop#World 5{{!}}Gem Shop}}
{{Sources/datarow|Item=Inventory Bag U|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Inventory Bag V|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Inventory Bag W|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Inventory Bag X|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Inventory Bag Y|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Inventory Bag Z|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Keychain Fragment|Source=Gem Shop|Link=Gem Shop#Goods & Services{{!}}Gem Shop}}
{{Sources/datarow|Item=Marvelous Obol Stack|Source=Gem Shop|Link=Gem Shop#World 1 & 2{{!}}Gem Shop}}
{{Sources/datarow|Item=Newbie Card Pack|Source=Gem Shop|Link=Gem Shop#Cards{{!}}Gem Shop}}
{{Sources/datarow|Item=Pet Egg|Source=Gem Shop|Link=Gem Shop#World 4{{!}}Gem Shop}}
{{Sources/datarow|Item=Post Office Box Reseto Magnifico|Source=Gem Shop|Link=Gem Shop#Dailies N' Resets{{!}}Gem Shop}}
{{Sources/datarow|Item=Hat Premiumifier|Source=Gem Shop|Link=Gem Shop#Premium Stones{{!}}Gem Shop}}
{{Sources/datarow|Item=Premium AGI Stone|Source=Gem Shop|Link=Gem Shop#Premium Stones{{!}}Gem Shop}}
{{Sources/datarow|Item=Premium Bonus Swapper|Source=Gem Shop|Link=Gem Shop#Premium Stones{{!}}Gem Shop}}
{{Sources/datarow|Item=Premium LUK Stone|Source=Gem Shop|Link=Gem Shop#Premium Stones{{!}}Gem Shop}}
{{Sources/datarow|Item=Premium Stone Refunder|Source=Gem Shop|Link=Gem Shop#Premium Stones{{!}}Gem Shop}}
{{Sources/datarow|Item=Premium STR Stone|Source=Gem Shop|Link=Gem Shop#Premium Stones{{!}}Gem Shop}}
{{Sources/datarow|Item=Premium WIS Stone|Source=Gem Shop|Link=Gem Shop#Premium Stones{{!}}Gem Shop}}
{{Sources/datarow|Item=Quality Obol Stack|Source=Gem Shop|Link=Gem Shop#World 1 & 2{{!}}Gem Shop}}
{{Sources/datarow|Item=Smolderin Card Pack|Source=Gem Shop|Link=Gem Shop#Cards{{!}}Gem Shop}}
{{Sources/datarow|Item=Star Talent Reset Potion|Source=Gem Shop|Link=Gem Shop#Dailies N' Resets{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 90|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 91|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 92|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 93|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 94|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 95|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 96|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 97|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 98|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 99|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 99B|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Storage Chest 99C|Source=Gem Shop|Link=Gem Shop#Inventory & Storage{{!}}Gem Shop}}
{{Sources/datarow|Item=Sub Class Swap Token|Source=Gem Shop|Link=Gem Shop#Dailies N' Resets{{!}}Gem Shop}}
{{Sources/datarow|Item=Talent Point Reset Potion|Source=Gem Shop|Link=Gem Shop#Dailies N' Resets{{!}}Gem Shop}}
<!--  "Limited Specials"  For things for the Limited Specials section. These will stick around in this section even after removal unless Lava states they will be retired permanently. Alphabetical order!!!  -->
{{Sources/datarow|Item=Bailling Nametag|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Bob Ring|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Borzoi Topper|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Bossius Obol Stack|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Bottled Wind|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Bubble Ring|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Choco Box|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Corgi Topper|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Cosmic Time Candy|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Crescent Moon Pendant|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Cthulu's Ring|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Deathbloom Flower Pendant|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Divinity Pearl|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Dune Killer Ring|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Dungeon Loot Dice|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Ele Sorcerer Pointed Hat|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Elite Class Swap Token|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Equinox Ring|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Green Beanie|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=HONK Ring|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Holy Pearl|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Hyper DMG Obol|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Hyper Obol Stack|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Hyper Pyre Obol|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Hyper Six Obol|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Hyper Skull Obol|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Key to Desert Chain|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Key to Mountains Chain|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Key to Purgatory Chain|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Leafy Ring|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Love Ring|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Megafeather Nametag|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Nebula Killer Ring|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Paper Bag|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Parasite|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Siege Captain Cap|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Star Blobulyte Galaxy Chain|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=The Classic|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Tundra Killer Ring|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
{{Sources/datarow|Item=Wealth Ring|Source=Gem Shop|Link=Gem Shop#Limited Specials{{!}}Gem Shop|SpecialText=Limited}}
<!-- Query to fill out all Random Wing possibilities) -->{{#cargo_query:tables=Items|fields=_pageName=Item, CONCAT("Gem Shop#Limited Specials\{\{!\}\}Gem Shop - Random Wing")=Link, CONCAT("Limited")=SpecialText|where=Type="Cape" AND NOT _pageName IN ("Lava Wings")|format=template|named args=yes|template=Sources/datarow|default=}}
<!--  "Retired Items"    Items that Lava has confirmed will not be coming back.  -->
{{Sources/datarow|Item=Halloween Pumpkin|Source=Gem Shop|Link=Gem Shop#Retired Shop Items{{!}}Gem Shop|SpecialText=Retired}}
{{Sources/datarow|Item=Paper Bag|Source=Gem Shop|Link=Gem Shop#Retired Shop Items{{!}}Gem Shop|SpecialText=Retired}}
{{Sources/datarow|Item=Pardoned Turkey|Source=Gem Shop|Link=Gem Shop#Retired Shop Items{{!}}Gem Shop|SpecialText=Retired}}
{{Sources/datarow|Item=Smitty's Bubble Blowing Hat|Source=Gem Shop|Link=Gem Shop#Retired Shop Items{{!}}Gem Shop|SpecialText=Retired}}
{{Sources/datarow|Item=Snowman (Premium Helmet)|Source=Gem Shop|Link=Gem Shop#Retired Shop Items{{!}}Gem Shop|SpecialText=Retired}}
{{Sources/datarow|Item=Diamon Horns|Source=Gem Shop|Link=Gem Shop#Retired Shop Items{{!}}Gem Shop|SpecialText=Retired}}
{{Sources/datarow|Item=Strawbiggy|Source=Gem Shop|Link=Gem Shop#Retired Shop Items{{!}}Gem Shop|SpecialText=Retired}}
{{Sources/datarow|Item=Dairy Dunk|Source=Gem Shop|Link=Gem Shop#Retired Shop Items{{!}}Gem Shop|SpecialText=Retired}}
<!--  "Retired Packs"  Items from packs confirmed to not be returning. By packs we mean the Banners that you pay with Real money.  -->
{{Sources/datarow|Item=Eye Owe Ess Chain|Source=Gem Shop|Link=Gem Shop#Retired Packs{{!}}Gem Shop|SpecialText=Retired Pack/iOS Only}}

Revision as of 06:12, 29 July 2024

local mtxinfo = mw.loadJsonData('Module:Gemshop/MTXinfo.json') local p = {}

-- Gemshop/data.json is return value of ha.MTXinfo() in N.js without any conversion

-- itemDisplayName, mtxName, desc, maxPurchases, cost, extra stuff, total stuff

local ROW_TEMPLATE = [=[ File:%s.png %s %s %s Base: %d%s%s ]=] -- Trim whitespace from args, and treat blank args as nil local function preprocessArg(s) if not s then return nil end s = s:match('^%s*(.-)%s*$') -- trim whitespace if s == then return nil else return s end end -- Convert underscores to spaces local function underscore_to_space(s) return s:gsub('_+', ' ') end -- Convert to title capitalization local function toTitleCase(str) return (str:gsub("(%a)([%w_']*)", function(first, rest) return first:upper()..rest:lower() end)) end -- Convert raw 4d MTXinfo to 2d table local function mtxinfo_to_2dtable(mtxinfo) local data = {} local index = 1 for tabno, tab in ipairs(mtxinfo) do for sectionno, section in ipairs(tab) do for itemno, item in ipairs(section) do data[index] = { tabno = tabno, sectionno = sectionno, itemno = itemno, display = item[1], name = toTitleCase(underscore_to_space(item[2])), description = underscore_to_space(item[3]), cost = tonumber(item[4]), no = tonumber(item[5]), maxPurchases = tonumber(item[6]), qty = tonumber(item[7]), costIncrement = tonumber(item[8]) } index = index + 1 end end end return data end function p.bySections(frame) local args = frame.args local tab_number = tonumber(preprocessArg(args.tab_number)) + 1 local section_number = tonumber(preprocessArg(args.section_number)) local ret = "" local data = mtxinfo_to_2dtable(mtxinfo) -- TODO for _, item in pairs(data) do if item.tabno == tab_number and item.sectionno == section_number and item.display ~= "Blank" then local maxPurchases = item.maxPurchases == 100000 and "∞" or item.maxPurchases local extra = item.costIncrement > 0 and string.format([[
Increment: %d
Final: %d]], item.costIncrement, item.cost + item.costIncrement * (item.maxPurchases - 1)) or "" local total = (1 < item.maxPurchases and item.maxPurchases < 100000) and string.format([[
Total: %d]], (item.maxPurchases / 2) * (item.cost * 2 + item.costIncrement * (item.maxPurchases - 1))) or "" ret = ret .. string.format( ROW_TEMPLATE, item.display, item.name, item.description, maxPurchases, item.cost, extra, total ) end end return ret end return p