ItemDef-skemaoversigt
Kerneskema og genstandstyper
Dette er de grundlæggende egenskaber, som forstås og fortolkes af Steam og er nødvendige for korrekt drift af økonomi, handel og visning af inventar. Mange af disse egenskaber er de samme som dem, der returneres af web-API'en
ISteamEconomy/GetAssetClassInfo.
En itemdef skal være en af de følgende typer:
Navn | Beskrivelse |
item | En genstandstype, som kan findes i en spillers inventar. |
bundle | Repræsenterer en samling af ItemDefs med en tilhørende mængde af hver type. Når denne genstand er tildelt, udvides den automatisk til sættet med genstande, som er konfigureret i bundle -egenskaben. |
generator | Repræsenterer en tilfældig genstand. Hvis denne genstand tildeles, vil en tilfældig genstandstype blive valgt fra bundle -egenskaben, og der oprettes en forekomst af den pågældende type. (For eksempel: Man kan forestille sig, at når man åbner en boks, oprettes der en af de mulige genstande). |
playtimegenerator | Dette er en særlig form for generator , som kan tildeles af ISteamInventory::TriggerItemDrop-kaldet fra applikationen. |
tag_generator | Særlig genstandsdefinition, som tildeler tags til genstandsforekomster (se Genstandstags til Steam-inventar for flere detaljer). |
Se
nedenfor for detaljer omkring angivelse af komplekse genstandstyper.
Egenskaber for ItemDef
Navn | Beskrivelse |
appid | ID'et tilhørende din applikation |
name | Det engelske navn på din genstand. Du kan oplyse lokaliserede versioner af genstandens navn ved at bruge følgende eksempel som guide: name_english: "Hat"
name_french: "Chapeau"
Se dokumentationen Lokalisering og sprog for gyldige sprognavne til at bruge som endelse. |
description | Den engelske beskrivelse af genstanden. Du kan oplyse lokaliserede versioner af genstandens navn ved at bruge følgende eksempel som guide: description_english: "This is a tall hat"
description_french: "Ceci est un chapeau haut de forme"
Se dokumentationen Lokalisering og sprog for gyldige sprognavne til at bruge som endelse. |
display_type | Den engelske beskrivelse af genstandens "type". Du kan oplyse lokaliserede versioner af genstandens navn ved at bruge følgende eksempel som guide: display_type_english: "Weapon"
display_type_french: "Arme"
Se dokumentationen Lokalisering og sprog for gyldige sprognavne til at bruge som endelse. |
itemdefid | ID'et til denne itemdef. Dette skal være lavere end 1.000.000 for ikke-værkstedsgenstande. |
type | Intern værdi. ('item' | 'bundle' | 'generator' | 'playtimegenerator' | 'tag_generator') |
bundle | (se bundle- eller generator/genstande nedenfor) |
promo | (se promoformat ndenfor) |
drop_start_time | UTC-tidsstempel – forhindrer promoveringstildelinger før dette tidspunkt. Kun gældende, når promo = manual (se promo-format nedenfor) |
exchange | (se udvekslingsformat nedenfor) |
price | (se prisformat nedenfor) |
price_category | En forudindstillet pris, hvor vi håndterer de forskellige valutaværdier for dig. (se prisformat nedenfor) |
background_color | Farven, som skal vises på inventarets baggrund som en 6-cifret hex-værdi. |
name_color | Farven, som skal vises i inventaret som en 6-cifret hex-værdi. |
icon_url | URL'en til genstandens lille ikon. URL-adressen skal være offentligt tilgængelig, fordi Steam-serverne skal downloade og cachelagre. Anbefalet størrelse er 200 x 200 pixel. |
icon_url_large | URL'en til genstandens store ikon. URL-adressen skal være offentligt tilgængelig, fordi Steam-serverne skal downloade og cachelagre. Anbefalet størrelse er 2048 x 2048 pixel. |
marketable | false / true . Angiver, om denne genstand kan sælges til andre brugere på Steam-fællesskabsmarkedet. |
tradable | false / true . Angiver, om denne genstand kan byttehandles til andre brugere ved at bruge Steam-byttehandel. |
tags | (se Genstandstags til Steam-inventar) |
tag_generators | Liste med genstandsdefinitions-ID'er for tag_generator, der kan anvendes (se Genstandstags til Steam-inventar) |
tag_generator_name | Navn på tagkategoriens token (se Genstandstags til Steam-inventar) |
tag_generator_values | Liste med tagværdier og chancen for, at de bliver valgt (se Genstandstags til Steam-inventar) |
store_tags | Strenge med "tags" adskilt af et ";"-tegn. Disse tags vil blive brugt til at kategorisere/filtrere genstande i Steam-genstandsbutikken for din app. |
store_images | Billed-URL'er afgrænses af tegnet ";". Disse billeder vil blive proxygodkendt og brugt på oplysningssiden i Steam-genstandsbutikken til din app. |
game_only | false/true. Hvis sat til true, bliver genstande ikke vist i brugerens Steam-inventar, herunder notifikationer om nye genstande. Dette bruges ofte til tildelte genstande, der opbruges med det samme. |
hidden | false/true. Hvis sat til true, vil genstandsdefinitionen ikke blive vist for kunder eller kunne købes. Brug dette til at skjule ubrugte itemdefs eller itemdefs, som er under udvikling. |
store_hidden | false/true. Hvis sat til true, skjules denne genstand i Steam-genstandsbutikken for din app. Som standard vises alle genstande med en pris i butikken. |
use_drop_limit | false/true. Hvis sat til true, er vi afhængige af drop_limit til at begrænse, at genstandene tildeles via ISteamInventory::TriggerItemDrop. (Se genstandsdrops baseret på spilletid nedenfor). |
drop_limit | Heltal. Begrænser antallet af gange, denne genstand vil blive droppet via ISteamInventory::TriggerItemDrop for en specifik bruger. Hvis det indstilles til nul, forhindres fremtidige drops af denne genstand. (Se genstandsdrops baseret på spilletid nedenfor) |
drop_interval | Heltal. Spilletid i minutter, før genstanden kan tildeles til brugeren. (se genstandsdrops baseret på spilletid nedenfor) |
use_drop_window | false/true. Hvis sat til true, bruger vi "drop_window" til denne itemdef. (Se genstandsdrops baseret på spilletid nedenfor). |
drop_window | Heltal. Forløbet tid i minutter for et nedkølingsvindue, før vi tildeler en genstand. (Se genstandsdrops baseret på spilletid nedenfor). |
drop_max_per_window | Heltal. Antal tildelinger inden for det tilladte vindue, før nedkølingen anvendes. Standardværdien er 1. (Se genstandsdrops baseret på spilletid nedenfor) |
granted_manually | false/true. Hvis sat til true, vil tildelingen kun ske, når AddPromoItem() eller AddPromoItems() kaldes med det eksplicitte itemdefid. Ellers kan tildelingen ske via kaldet GrantPromoItems(). Standardindstillingen er false. |
use_bundle_price | false/true. Se Salg af bundter nedenfor. Standardindstillingen er false. |
auto_stack | false/true. Hvis sat til true, bliver genstandstildelinger automatisk tildelt til en enkelt stak af den givne type. Tildelinger vil være synlige i tilbagekald af inventaret, når antallet ændres. Standardindstillingen er false. |
Udvidet skema
Du kan også definere yderligere egenskaber, som du har brug for, som er specifikke for dit spil.
Brug af komplekse genstandsdefinitioner
Bundt- og generatorgenstandstyper
Regler for bundle, generator og playtimegenerator defineres med
bundle
-feltet.
Når der er tale om bundter, beskriver vi typen og antallet af de indeholdte genstande.
I en generator eller playtimegenerator beskriver vi typerne for den mulige genstand, som skal genereres, og den relative vægt af hver type. Bemærk, at vægten ikke behøver at give en total på 100, selv om det kan være praktisk at gøre det.
Bundle
-feltet er udtrykt som en serie af genstandsopskrifter adskilt af ";". Hver opskrift indeholder et itemdefid efterfulgt af et valgfrit "x" til at adskille dem og et ønsket antal.
Hvis mængden ikke er angivet udtrykkeligt, bliver "1" anvendt som standard.
Bundtformat
bundle_def : item_recipe , { ";" , item_recipe }
item_recipe : item_def , []
Eksempler på bundter
- Giv én hver af itemdef 201, itemdef 202, item 203:
type: bundle
bundle: 201;202;203
- Giv en forekomst med itemdef 101 og fem forekomster af itemdef 102:
type: bundt
bundt: 101x1;102x5
- Tilfældig 90% chance for itemdef 501, 9% chance for itemdef 502, 1% chance for item 503:
type: generator
bundle: 501x90;502x9;503x1
- 90% chance for en almindelig genstand; 10% chance for en særlig genstand.
itemdefid: 600
name: Common generator
type: generator
bundle: 601;602;603;604;605
itemdefid: 700
name: Special generator
type: generator
bundle: 701;702;703;704;705
itemdefid: 800
name: Master generator
type: generator
bundle: 600x9;700x1
Bemærk, at ligesom i det sidste eksempel kan bundle- og generator-definitioner kædes sammen. På tildelingstidspunktet bliver komplekse genstandstyper udvidet gentagne gange, indtil der kun er simple itemdefs tilbage.
Formularer for udveksling
ExchangeItems-API'en gør det muligt at definere opskrifter til at lave eller transformere genstande, som kan kaldes sikkert fra klienten. Steam-servere tjekker spillerinventaret og indtager de givne materialer atomistisk og tildeler en målgenstand, hvis kravene er imødekommet.
Genstanden kan være et bundt eller en generatortype.
Formularen er givet i
exchange
-feltet for målgenstanden. Formularen er specificeret som et sæt af en eller flere
opskrifter adskilt med semikolon.
Hver opskrift er et sæt af påkrævede
materialegenstande adskilt af komma.
Påkrævede materialer kan gives eksplicit med itemdefid eller med tag. Når antal ikke er angivet, antages 1.
Når ExchangeItems bruges, giver kalderen en liste med materialegenstande, som skal skiftes ud for målgenstanden. Serveren tjekker hver opskrift og vælger den første opskrift, som passer til de givne materialer.
Udskiftninger er fleksible. Man kan bruge en nøgle til at åbne en boks, bygge en smart genstand ud af dele, genbruge genstande og opgradere genstande – alt sammen ved at bruge disse formularer.
Udvekslingsformat
<exchange>: <recipe> { ";" <recipe> }
<recipe>: <material> { "," <material> }
<material>: <item_def_descriptor> / <item_tag_descriptor>
<item_def_descriptor>: <itemdefid> []
<item_tag_descriptor>: <tag_name> ":" <tag_value> []
Hvis det ikke er udtrykkeligt angivet, er det påkrævede antal 1.
Udvekslingseksempel
// kræver en af:
// - en genstand#100 og en genstand#101; eller
// - fem af genstand#102; eller
// - tre af genstand#103 og tre af genstand#104.
"byt":"100,101;102x5;103x3,104x3"
// kræver en venstre og en højre handske:
"byt":"handed:left,handed:right"
// kræver tre træer plus noget smart:
"exchange":"type:tree*3,quality:fancy"
// kræver enten:
// - genstand#201 og genstand#202; eller
// - en genstand med banansmag og et tungt objekt
"exchange":"201x1,202x1;flavor:banana,mass:heavy"
// genbrug fem "almindelige" artefakter til et "særligt" artefakt:
{
"name":"special_generator",
"type":"generator",
"tags":"rarity:special",
"bundle":....,
"exchange":"rarity:common*5",
...
}
Promogenstande
Promoveringsgenstande kan gives til spillere baseret på et par forskellige kriterier:
- Ejerskab af et app-ID (inklusive et DLC-app-ID)
- En præstation
- Spilletid med et app-ID
- Manuel tildeling – klienten skal kalde AddPromoItem med det specifikke itemdefid.
Kontrol af promoveringsgenstande foretages af Steam, så det er sikkert at anmode om disse genstande fra klienter. Se
ISteamInventory::AddPromoItem. For at definere en promoveringsgenstand skal du sætte en eller flere regler for at tildele genstanden i "promo"-egenskaben til genstandsdefinitionen.
Bemærk, at en promoveringsgenstand også kan være et bundt.
Promoveringsgenstande, som tildeles manuelt, kan også have drop-intervaller. Eksempelvis kan du ved at bruge dette give et par genstande hver uge baseret på, om spilleren gennemfører nogle opgaver (f.eks. missioner i spillet). For at bruge denne funktion skal du angive værdierne for
drop_start_time
og
drop_interval
i itemdef.
Promoveringsgenstande gives ikke for midlertidigt ejerskab af en gratis titel (såsom gratis weekend, tilgået via familiedeling osv.).
Format for promoveringsregel
<promo>: <rule> { ";" <rule> }
<rule>: app_rule / ach_rule / played_rule / manual_rule
<app_rule>: "owns:" <appid>
<ach_rule>: "ach:" <achievement name>
<played_rule>: "played:" <appid>/<minutes played, defaults to 1>
<manual>: "manual"
Promoeksempler
// simple promoregeldefinitioner:
"promo":"owns:440;owns:480"
// har spillet mindst 15 minutter af app-ID 570:
"promo":"played:570/15"
// opbrugelig genstand, som kan gives én gang om ugen:
"itemdefid": 404,
"type": "item",
"name": "Weekly Quest Item",
"promo": "manual",
"drop_start_time": "20170801T120000Z",
"drop_interval": 10080,
...
Starttidspunkt for drop
Ved at indstille promoveringsgenstandens starttidspunkt for drop forhindres det, at genstanden tildeles før dette tidspunkt. Dette gør det muligt at implementere den kode, som tildeler den forud for starttidspunktet. Tidsstemplet skal være angivet i ISO 8601-formatet i UTC-tidszone:
YYYYMMDDTHHMMSSZ
. For eksempel:
20050515T171151Z
.
Genstandsdrops baseret på spilletid
Genstandsdrops baseret på spilletid er en funktion, som lader Steam-serverne spore og administrere genstandsdrops baseret på brugerens spilletid. Dit spil behøver kun at kalde funktionen
ISteamInventory::TriggerItemDrop, når du mener, at en tildeling bør ske. Du skal oprette genstande af typen "playtimegenerator" for at udføre droppet.
Spilletidsdrops kontrolleres af din applikation. Der er ingen understøttelse af automatiske uddelinger baseret udelukkende på brugerens spilletid. Med andre ord er spilletid en betingelse for tildeling, mens din applikation er den udløsende faktor for tildelingsevalueringen.
Hyppigheden af genstandsdrops kan kontrolleres i applikationen via "Fællesskab" -> "Inventartjeneste" -> sektionen "Udstedelse af genstande i løbet af spillet". Der er tre kontrolelementer, som tillader følgende tilpasning:
(1) Hvor længe før en genstand droppes?
(2) Hvor mange genstande dropper i et vindue? Og:
(3) Hvor lang tid varer nedkølingsvinduet, før vi kan tildele et andet genstandsdrop?
Den samme kontrol eksisterer pr. itemdef. Værdier angivet på genstanden vil tilsidesætte alle indstillinger fra applikationen for den specifikke genstand. Dette gør det muligt for hver genstand at have sin egen drop-rate, maks. pr. vindue og nedkølingsvindue.
Hver tildeling ud fra spilletid spores separat, hvis nogen af drop-indstillingerne er angivet ("drop_interval", "use_drop_window", "drop_window", "drop_max_per_window"). Med andre ord, hvis itemdef
IKKE har nogen drop-indstillinger, deler den drops med alle andre spilletidsgeneratorer uden drop-indstillinger, og de er alle begrænset af applikationens drop-interval. Ellers hvis itemdef
ikke udtrykkeligt angiver en drop-indstilling, bliver drops tildelt/sporet separat på generatorniveauet, uafhængigt af applikationen eller andre itemdef-spilletidsgeneratorer.
Eksempel på ItemDef-spilletidstildeling
- Tillad, at brugeren tildeles en genstand efter 30 minutters spilletid. En ulempe ved denne indstilling er, at den tillader spillerne
at farme genstanden, da hvert 30. minuts spilletid kvalificerer dem til endnu en genstand. Vi anbefaler stærkt at tilføje en drop-vinduesindstilling:
"drop_interval" : 30
- Begræns det til et enkelt drop pr. dag efter 30 minutters spilletid. Dette belønner dine spillere hver dag, når de vender tilbage for at spille dit spil.
"drop_interval" : 30,
"use_drop_window" : "true",
"drop_window" : "1440"
- Tillad, at brugeren får tre genstande hver dag ved at spille i mindst 90 minutter. Disse minutter behøver ikke at være sammenhængende. Dette belønner længere spilletid.
"drop_interval" : 30,
"use_drop_window" : "true",
"drop_window" : "1440",
"drop_max_per_window" : "3"
Hvis en bestemt itemdef-indstilling mangler, vil den som standard gå til den indstilling, der er defineret i applikationen.
Drop-begrænsninger
drop_limit
-variablen tillader en maksimal spilletidstildeling for en specifik generator.
Du kan bruge dette til at begrænse, hvor mange gange en genstand bliver genereret (for eksempel kun den første gang, spilleren gennemfører spillet på
Legendarisk sværhedsgrad).
Alternativt kan det bruges til at forhindre fremtidige drops af en udfaset genstand, hvis værdien er sat til nul. Vi anerkender kun denne indstilling, hvis
use_drop_limit
er "true".
Salg af genstande
For at gøre visse spilobjekter tilgængelige til salg skal du blot definere priser eller priskategorier i de relevante itemdefs.
Se dokumentationen om
Steam-genstandsbutikken for flere oplysninger om at aktivere og tilpasse din butiksside.
Angivelse af priser
Genstandspriser kan defineres i et af de følgende felter, men ikke begge.
Navn | Beskrivelse |
pris | Definerer en specifik pris for hver valutaenhed. Valutaenheder, som ikke er defineret, vil automatisk blive konverteret på købstidspunktet. |
price_category | Definerer en pris, som vil blive præsenteret i hver understøttede valuta ud fra en pristabel, som vedligeholdes af Valve. |
Feltet
price_category
er angivet i den særlige "VLV"-valuta. VLV100 svarer til 0,99 USD og konverteres til alle understøttede valutaer ved at bruge Valves omregningskurser.
VLV-omregningskurser administreres nøje og tilpasses efter valutabevægelser over tid. Vi opdaterer priserne efter behov, samtidig med at mindre svingninger giver kunderne stabile priser og en positiv brugeroplevelse.
Prisformat
Price: <version>;<pricelist>
Version: "1"
<pricelist> : <originalprice>(;<price>)*
<originalprice>: <currency><integer>(,<currency><integer)*
<price>: (<daterange>)<currency><integer>(,<currency><integer)*
<currency> 3 bogstaver såsom "USD"
<integer> beløb i valutaspecifikke enheder
<daterange>: YYYYMMDDTHHMMSSZ-YYYYMMDDTHHMMSSZ
<daterange>
skal være præcis 33 tegn.
Listen over "dateranges" skal være i faldende rækkefølge (fremtidige datoer først).
Priseksempler
-
price_category: 1;VLV100
Forudindstillet priskategori ved hjælp af pristabel, som vedligeholdes af Valve.
-
price: 1;USD100
(1,00 USD)
-
price: 1;USD100,EUR080
(1,00 USD eller 0,80 EUR)
-
price: 1;USD100,EUR080;20130607T080000Z-20130606T080000ZUSD50,EUR40
(1,00 USD eller 0,80 EUR undtagen fra 6.6.2013, hvor prisen reduceres til 0,50 USD/0,40 EUR)
-
price: 1;USD100,EUR080;20130609T080000Z-20130606T080000ZUSD50,EUR40
(1,00 USD eller 0,80 EUR undtagen fra 6.6.2013, når prisen reduceres til 0,50 USD/0,40 EUR)
Salg af bundter
Genstande i bundter kan sælges i gestandsbutikken. Bundtet vil blive udvidet under betalingsprocessen, så brugeren ser listen med tildelte genstande. Steam-refunderingspolitikken tillader, at købet kan refunderes inden for bestemte tidsbegrænsninger – men alle de vedhæftede genstande skal stadigvæk være i spillerens inventar, og de skal være uden modifikationer.
Bundtpriser
Når et bundt skal prissættes, er der et par ekstra trin, som skal overvejes. Steam bruger priserne fra den individuelle genstand inde i bundtet til at bestemme bundtprisen og tildele bundtindtægterne proportionalt. Denne tildeling bestemmer værdien af udbetalingerne til værkstedets bidragydere. Et bundt kan nemt være en blanding af indhold fra forskellige værkstedsbidragydere eller inkludere værkstedsindhold med dit eget førstepartsindhold.
Sådan fastsætter du en pris på en genstand i et bundt:
- Angiv prisoplysningerne for hver genstand i bundtet.
- Hvis nogle af genstandene i bundtet ikke må kunne sælges individuelt, skal du sætte
store_hidden
til "true" for disse genstande.
- Sæt
price
- eller price_category
-feltet i bundtet til en simpel pris (såsom VLV0).
Denne pris vil ikke blive brugt i butikken, men er nødvendig for at signalere til genstandsbutikken, at dette er en genstand, som kan sælges.
- Du kan også vælge at angive
purchase_bundle_discount
som en procentvis rabat på bundtet.
Hvis du foretrækker det, kan du angive en nøjagtig pris for bundtet i hver valuta. Tilsidesættelse af bundtets pris vil ignorere det, du eventuelt angiver i
purchase_bundle_discount
. De individuelle genstandspriser bruges dog stadig til at fordele indtægterne fra bundterne forholdsmæssigt, så de skal angives.
Sådan tilsidesætter du den automatiske bundtpris:
- Angiv den ønskede pris i feltet
price
eller price_category
i bundtet.
- Sæt
use_bundle_price
til true
for genstanden i bundtet.
Salg af generator-genstande
Forsøg ikke at sælge genstande af typen
generator
direkte i genstandsbutikken.
For at sælge en genstand med en tilfældig komponent (en skattekiste), bør du definere skattekistegenstanden som en simpel
item
-type. Derefter skal du oprette en generator-genstand, som accepterer skattekisten som input for en udvekslingsopskrift.
Efter køb kan spilleren vælge at "åbne" skattekisten, hvorefter du kalder
ISteamInventory::ExchangeItems for at eksekvere generatoren. Skattekisten vil ikke længere kunne refunderes, når skattekisten først er blevet åbnet.
Forudindstillet VLV-pristabel
Her er de nuværende mulige værdier, som du kan bruge til at specificere en price_category for din genstand.
Navn | Pris i USD |
VLV25 | 0,25 USD |
VLV50 | 0,49 USD |
VLV75 | 0,75 USD |
VLV100 | 0,99 USD |
VLV150 | 1,49 USD |
VLV200 | 1,99 USD |
VLV250 | 2,49 USD |
VLV300 | 2,99 USD |
VLV350 | 3,49 USD |
VLV400 | 3,99 USD |
VLV450 | 4,49 USD |
VLV500 | 4,99 USD |
VLV550 | 5,49 USD |
VLV600 | 5,99 USD |
VLV650 | 6,49 USD |
VLV700 | 6,99 USD |
VLV750 | 7,49 USD |
VLV800 | 7,99 USD |
VLV850 | 8,49 USD |
VLV900 | 8,99 USD |
VLV950 | 9,49 USD |
VLV1000 | 9,99 USD |
VLV1100 | 10,99 USD |
VLV1200 | 11,99 USD |
VLV1300 | 12,99 USD |
VLV1400 | 13,99 USD |
VLV1500 | 14,99 USD |
VLV1600 | 15,99 USD |
VLV1700 | 16,99 USD |
VLV1800 | 17,99 USD |
VLV1900 | 18,99 USD |
VLV2000 | 19,99 USD |
VLV2500 | 24,99 USD |
VLV3000 | 29,99 USD |
VLV3500 | 34,99 USD |
VLV4000 | 39,99 USD |
VLV4500 | 44,99 USD |
VLV5000 | 49,99 USD |
VLV6000 | 59,99 USD |
VLV7000 | 69,99 USD |
VLV8000 | 79,99 USD |
VLV9000 | 89,99 USD |
VLV10000 | 99,99 USD |
Eksempel på ItemDef-skema:
{
"appid": 480,
"items": [
{
"itemdefid": 10,
"type": "playtimegenerator",
"bundle": "100x100;101x50;102x25;103x2;110x20;111x20;120x5;121x3",
"name": "Drop Generator",
"name_color": "7D6D00",
"background_color": "3C352E",
"item_slot": "generator",
"icon_url": "http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png",
"icon_url_large": "http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png",
"tradable": false,
"marketable": false
},
{
"itemdefid": 100,
"type": "item",
"name": "Hat decoration",
"description": "Hat decoration description",
"price": "1;USD99",
"name_color": "7D6D00",
"background_color": "3C352E",
"item_slot": "decoration",
"icon_url": "http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png",
"icon_url_large": "http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png",
"tradable": true,
"marketable": true
},
{
"itemdefid": 200,
"type": "item",
"price": "1;VLV100",
"name_english": "Red Hat",
"name_german": "Roter Hut",
"description_english": "Red Hat",
"description_german": "Roter Hut",
"store_tags": "hat;featured",
"icon_url": "http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png",
"icon_url_large": "http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png",
"tradable": true,
"marketable": true
}
]
}