Also, bug: if you click an item in the left area then navigate to a different item in the right area, the item stays selected in the left area so you can't go back to it.
Example:
Click Aegis in left list. Aegis is highlighted.
Click Ruby Crystal in Aegis recipe.
Click "Builds: Catalyst" so Catalyst is now the active item.
Aegis is still highlighted in left area so I cannot click it to go back to Aegis.
The important keys here:
1. "map"
This key may either be "any" or a single map id number (in string form). Some common ones you may wish to use:
"1" is Summoners Rift
"8" is Crystal Scar
"10" is Twisted Treeline
2. "mode"
This key may either by "any" or a single mode string id. The available modes are:
"CLASSIC"
"ODIN" (Dominion)
"ARAM"
3. "priority"
This defines if it should be loaded at top priority or not. This is mostly to reorder the data structure internally. We've left it false for most of the Riot made ones.
Make sure this is true. This gives it priority over the Riot ones.
The keys champion, title, and type are all used for organizational purposes and you won't have to use it. They also open us up to enabling multiple recommended pages in the future, so I still encourage you to use them. Just not required yet.
Just make sure "type" is NOT "riot"
4. "blocks"
This is where the actual page begins. Blocks is an array of section. Each section begins with a type. The type is displayed as the header. The types "starting", "essential", "offensive", and "defensive" will also be localized for you (if you need more, I can add more based on recommendation).
Each piece in the block, under the "items" key lists an item. The item currently simply has an id and a count to purchase.
Overall, pretty simple. Though, there are parts of this that will likely expand and change.
So for now we can only use those 4? I thought you said we could create any blocks we'd like...
Otherwise, thanks a lot, once again, Reinboom... You are, yet again, moving up in my favorite Rioter ranking (still under Ames though, but about 4th-5th, with BuffMePlz being the top, uncontested)
Proving Grounds is "3"
You can use any block title you'd like, even:
"Riot Reinboom is a meany mean head and I hate her."
It just won't be translated for you.
I assume these are the mistakes I made, I left most things the same except had it all expanded with multiple lines, type was riot, priority was false.
Does "priority: true" mean that it will not load Riot ones at all, or that it will just appear above Riot ones in the list? If the latter, is it possible to disable the Riot ones?
Also, 3 is Proving Grounds. I have to question this though: any holiday-themed Summoner's Rift maps are a different ID#, in other words, not '1'. 2,6,7 have all been Summoner's Rift in the past. If "map":"1" is used, it will prevent the recommended items from showing up in holiday maps, right? But.. without "map":"1", "mode":"CLASSIC" will also represent Twisted Treeline.
\RADS\projects\lol_game_client_en_us\managedfiles\ LATESTVERSION\Data\Menu\fontconfig_en_us.txt, CTRL-F for "ITEMNAME" then look to the left where game_item_displayname or game_item_tooltip is. This will almost definitely not work for Enchanted Boots, because in the tooltip files those are "3009_A" or "EnchantmentHomeguard" for Swiftness: Homeguard, but internally they're some other item ID (32-something, I think).
The item shop loads all recommended json files it can find for a single character. It keeps all pages ready to display, but then only has the interface to display the first one in that stack. priority:true pushes it to the top of that stack. (We will likely add a drop down or something similar in the future).
The map ID thing is actually one of the things that may change in the future. What will likely happen though is I'll just make maps map to other maps.
And I made a quick script to generate out the IDs for you all. Here you go!:
Oh wonderful! My JSON interpreter supports whitespace. Happy accident ahoy!
I mean... ehrm..
The left pane should actually show "*", not the other way around. * is small text special (done for localization purposes) and "Special" is full width explanation.
Also, purchasing out an item will simply gold border it (this might change in the future, possibly. We're still investigating.)
We wanted to make sure that players could do whatever they want with the tool, not have the tool limit the player.
I will fix the recommended item page so that:
1. It has more than four per row.
2. It doesn't hard error on bad id.
It may take a bit for those improvements to get to the PBE however. I'm doing a bit of other work on the item shop right now concerning tutorials that are of a slightly higher priority.
Search using RAFManager for "items.json", it's been included in the game files lately. Now, if only Characters/Champions/Heroes/etc.json was included too..
That file is a part of the new itemshop. Bits and pieces have been released steadily.
Oh, quick question. Has Wukong been "fixed" in the new API? Would be the perfect opportunity to leave the "MonkeyKing" business behind. Every other champion API id can be derived with a simple Regex.Replace(championname.ToLower(), "[^a-zA-Z0-9]", string.Empty).
No, Wukong's folder is still MonkeyKing.
We may explore changing this in the future (but not right now).
@Riot Reinboom/Shop Devs: API for RecItems now? :O
ItemID List: http://na.leagueoflegends.com/board/...04980#31604980
Also, bug: if you click an item in the left area then navigate to a different item in the right area, the item stays selected in the left area so you can't go back to it.
Example:
Click Aegis in left list. Aegis is highlighted.
Click Ruby Crystal in Aegis recipe.
Click "Builds: Catalyst" so Catalyst is now the active item.
Aegis is still highlighted in left area so I cannot click it to go back to Aegis.
So here's the quick rundown of the API, in steps.
Step 1 - Location
The path you will be looking for is:
%LOLINSTALLDIR%\Config\Champions\%CHAMPIONID%\Reco mmended\
%LOLINSTALLDIR% is wherever your PBE install is
%CHAMPIONID% is the game folder ID for a champion. Such as Ahri or DrMundo
This location isn't made for you. Go ahead and create the Characters, the ID, and the Recommended folders as necessary.
Step 2 - The File
You place any number of *.json files (the actual filename isn't relevant, as long as it ends in .json) in this folder.
The JSON file commands the recommended item page and the overall structure appears like the following:
{"champion":"Ahri","title":"default","type":"riot","map":"any","mode":"any","priority":false,"blocks":[{"type":"starting","items":[{"id":"1001","count":1},{"id":"3010","count":3}]},{"type":"essential","items":[{"id":"3001","count":1},{"id":"3089","count":1}]},{"type":"offensive","items":[{"id":"3100","count":1},{"id":"3128","count":1},{"id":"3135","count":1}]},{"type":"defensive","items":[{"id":"3140","count":1},{"id":"3157","count":1}]}]}{ "champion":"Ahri", "title":"default", "type":"riot", "map":"any", "mode":"any", "priority":false, "blocks":[ { "type":"starting", "items":[ { "id":"1001", "count":1 }, { "id":"3010", "count":3 } ] }, { "type":"essential", "items":[ { "id":"3001", "count":1 }, { "id":"3089", "count":1 } ] }, { "type":"offensive", "items":[ { "id":"3100", "count":1 }, { "id":"3128", "count":1 }, { "id":"3135", "count":1 } ] }, { "type":"defensive", "items":[ { "id":"3140", "count":1 }, { "id":"3157", "count":1 } ] } ] }The important keys here:
1. "map"
This key may either be "any" or a single map id number (in string form). Some common ones you may wish to use:
"1" is Summoners Rift
"8" is Crystal Scar
"10" is Twisted Treeline
2. "mode"
This key may either by "any" or a single mode string id. The available modes are:
"CLASSIC"
"ODIN" (Dominion)
"ARAM"
3. "priority"
This defines if it should be loaded at top priority or not. This is mostly to reorder the data structure internally. We've left it false for most of the Riot made ones.
Make sure this is true. This gives it priority over the Riot ones.
The keys champion, title, and type are all used for organizational purposes and you won't have to use it. They also open us up to enabling multiple recommended pages in the future, so I still encourage you to use them. Just not required yet.
Just make sure "type" is NOT "riot"
4. "blocks"
This is where the actual page begins. Blocks is an array of section. Each section begins with a type. The type is displayed as the header. The types "starting", "essential", "offensive", and "defensive" will also be localized for you (if you need more, I can add more based on recommendation).
Each piece in the block, under the "items" key lists an item. The item currently simply has an id and a count to purchase.
Overall, pretty simple. Though, there are parts of this that will likely expand and change.
So for now we can only use those 4? I thought you said we could create any blocks we'd like...
Otherwise, thanks a lot, once again, Reinboom... You are, yet again, moving up in my favorite Rioter ranking (still under Ames though, but about 4th-5th, with BuffMePlz being the top, uncontested)
You can use any block title you'd like, even:
"Riot Reinboom is a meany mean head and I hate her."
It just won't be translated for you.
Does "priority: true" mean that it will not load Riot ones at all, or that it will just appear above Riot ones in the list? If the latter, is it possible to disable the Riot ones?
Also, 3 is Proving Grounds. I have to question this though: any holiday-themed Summoner's Rift maps are a different ID#, in other words, not '1'. 2,6,7 have all been Summoner's Rift in the past. If "map":"1" is used, it will prevent the recommended items from showing up in holiday maps, right? But.. without "map":"1", "mode":"CLASSIC" will also represent Twisted Treeline.
\RADS\projects\lol_game_client_en_us\managedfiles\ LATESTVERSION\Data\Menu\fontconfig_en_us.txt, CTRL-F for "ITEMNAME" then look to the left where game_item_displayname or game_item_tooltip is. This will almost definitely not work for Enchanted Boots, because in the tooltip files those are "3009_A" or "EnchantmentHomeguard" for Swiftness: Homeguard, but internally they're some other item ID (32-something, I think).
The map ID thing is actually one of the things that may change in the future. What will likely happen though is I'll just make maps map to other maps.
And I made a quick script to generate out the IDs for you all. Here you go!:
I mean... ehrm..
The left pane should actually show "*", not the other way around. * is small text special (done for localization purposes) and "Special" is full width explanation.
Also, purchasing out an item will simply gold border it (this might change in the future, possibly. We're still investigating.)
We wanted to make sure that players could do whatever they want with the tool, not have the tool limit the player.
1. It has more than four per row.
2. It doesn't hard error on bad id.
It may take a bit for those improvements to get to the PBE however. I'm doing a bit of other work on the item shop right now concerning tutorials that are of a slightly higher priority.
Thank you so much Riot Reinboom! I loved your remake of the shop before you were a Rioter, (over two year ago), and this is an awesome system!
Now we just need to find someone to make a nice little program to do all of this with slick visuals!
We may explore changing this in the future (but not right now).
Underscores are great.