Sunflower Land
Search
K
👨🎨

SFL ERC1155 Collectibles

All of the collectibles used in-game follow the ERC1155 (SFT) standard.
  • Crops
  • Resources (Wood, Eggs, Animals, Minerals, Mushrooms)
  • Tools
  • Buildings
  • Food
  • Quest Items
  • Rare SFTs

Notes

Some collectible items use 18 decimal places to represent fractionalization. This includes:
  • Crops
  • Wood, Stone, Gold, Iron
  • Tools
You will need to use fromWei from web3 utils to get the correct numbers.

IDS

Each collectible is represented by a token ID. For the most up to date IDs, please refer to the Github repository
{
"Sunflower Seed": 101,
"Potato Seed": 102,
"Pumpkin Seed": 103,
"Carrot Seed": 104,
"Cabbage Seed": 105,
"Beetroot Seed": 106,
"Cauliflower Seed": 107,
"Parsnip Seed": 108,
"Radish Seed": 109,
"Wheat Seed": 110,
"Kale Seed": 111,
"Apple Seed": 112,
"Blueberry Seed": 113,
"Orange Seed": 114,
"Magic Bean": 115,
"Shiny Bean": 116,
"Golden Bean": 117,
Sunflower: 201,
Potato: 202,
Pumpkin: 203,
Carrot: 204,
Cabbage: 205,
Beetroot: 206,
Cauliflower: 207,
Parsnip: 208,
Radish: 209,
Wheat: 210,
Kale: 211,
Apple: 212,
Blueberry: 213,
Orange: 214,
Axe: 301,
Pickaxe: 302,
"Stone Pickaxe": 303,
"Iron Pickaxe": 304,
Hammer: 305,
Rod: 306,
"Rusty Shovel": 307,
Shovel: 308,
"Power Shovel": 309,
"Sand Shovel": 310,
"Sunflower Statue": 401,
"Potato Statue": 402,
"Christmas Tree": 403,
Scarecrow: 404,
"Farm Cat": 405,
"Farm Dog": 406,
Gnome: 407,
"Chicken Coop": 408,
"Gold Egg": 409,
"Golden Cauliflower": 410,
"Sunflower Tombstone": 411,
"Sunflower Rock": 412,
"Goblin Crown": 413,
Fountain: 414,
"Woody the Beaver": 415,
"Apprentice Beaver": 416,
"Foreman Beaver": 417,
"Mysterious Parsnip": 418,
"Carrot Sword": 419,
Nancy: 420,
Kuebiko: 421,
"Nyon Statue": 422,
"Farmer Bath": 423,
"Homeless Tent": 424,
"Mysterious Head": 425,
"Golden Bonsai": 426,
"Rock Golem": 427,
"Tunnel Mole": 428,
"Rocky the Mole": 429,
Nugget: 430,
"Wicker Man": 431,
"Victoria Sisters": 432,
"Prized Potato": 433,
"Cabbage Boy": 434,
"Cabbage Girl": 435,
"Wood Nymph Wendy": 436,
"Stellar Sunflower": 437,
"Peaceful Potato": 438,
"Perky Pumpkin": 439,
"Collosal Crop": 440,
"Pumpkin Soup": 501,
"Roasted Cauliflower": 502,
Sauerkraut: 503,
"Radish Pie": 504,
"Sunflower Cake": 505,
"Potato Cake": 506,
"Pumpkin Cake": 507,
"Carrot Cake": 508,
"Cabbage Cake": 509,
"Beetroot Cake": 510,
"Cauliflower Cake": 511,
"Parsnip Cake": 512,
"Radish Cake": 513,
"Wheat Cake": 514,
"Boiled Eggs": 515,
"Bumpkin Broth": 516,
"Bumpkin Salad": 517,
"Goblin's Treat": 518,
"Mashed Potato": 519,
"Cauliflower Burger": 520,
"Club Sandwich": 521,
"Roast Veggies": 522,
Pancakes: 523,
"Apple Pie": 524,
"Blueberry Jam": 525,
"Fermented Carrots": 526,
"Honey Cake": 527,
"Kale & Mushroom Pie": 528,
"Kale Stew": 529,
"Mushroom Jacket Potatoes": 530,
"Mushroom Soup": 531,
"Orange Cake": 532,
"Sunflower Crunch": 533,
Wood: 601,
Stone: 602,
Iron: 603,
Gold: 604,
Egg: 605,
Chicken: 606,
Cow: 607,
Pig: 608,
Sheep: 609,
"Speed Chicken": 610,
"Fat Chicken": 611,
"Rich Chicken": 612,
Rooster: 613,
Honey: 614,
"Wild Mushroom": 615,
"Magic Mushroom": 616,
Diamond: 617,
"Green Thumb": 701,
"Barn Manager": 702,
"Seed Specialist": 703,
Wrangler: 704,
Lumberjack: 705,
Prospector: 706,
Logger: 707,
"Gold Rush": 708,
Artist: 709,
Coder: 710,
"Liquidity Provider": 711,
"Discord Mod": 712,
"Trading Ticket": 713,
Warrior: 714,
"Australian Flag": 801,
"Belgian Flag": 802,
"Brazilian Flag": 803,
"Chinese Flag": 804,
"Finnish Flag": 805,
"French Flag": 806,
"German Flag": 807,
"Indonesian Flag": 808,
"Indian Flag": 809,
"Iranian Flag": 810,
"Italian Flag": 811,
"Japanese Flag": 812,
"Moroccan Flag": 813,
"Dutch Flag": 814,
"Philippine Flag": 815,
"Polish Flag": 816,
"Portuguese Flag": 817,
"Russian Flag": 818,
"Saudi Arabian Flag": 819,
"South Korean Flag": 820,
"Spanish Flag": 821,
"Sunflower Flag": 822,
"Thai Flag": 823,
"Turkish Flag": 824,
"Ukrainian Flag": 825,
"American Flag": 826,
"Vietnamese Flag": 827,
"Canadian Flag": 828,
"Singaporean Flag": 829,
"British Flag": 830,
"Sierra Leone Flag": 831,
"Romanian Flag": 832,
"Rainbow Flag": 833,
"Goblin Flag": 834,
"Pirate Flag": 835,
"Algerian Flag": 836,
"Mexican Flag": 837,
"Dominican Republic Flag": 838,
"Argentinian Flag": 839,
"Lithuanian Flag": 840,
"Malaysian Flag": 841,
"Colombian Flag": 842,
// Special events
"Red Egg": 902,
"Blue Egg": 903,
"Yellow Egg": 904,
"Pink Egg": 905,
"Purple Egg": 906,
"Orange Egg": 907,
"Green Egg": 908,
"Easter Bunny": 909,
"Engine Core": 910,
Observatory: 911,
"Goblin Key": 912,
"Sunflower Key": 913,
"Ancient Goblin Sword": 914,
"Ancient Human Warhammer": 915,
"Rapid Growth": 916,
"War Bond": 917,
"Goblin War Point": 918,
"Human War Point": 919,
"Human War Banner": 920,
"Goblin War Banner": 921,
"Player Experience": 922,
"Jack-o-lantern": 923,
// Buildings
Market: 1001,
"Fire Pit": 1002,
Workbench: 1003,
Tent: 1004,
"Water Well": 1005,
"Hen House": 1006,
Bakery: 1007,
Kitchen: 1008,
Deli: 1009,
// Temporary Bumpkin items
"Chef Apron": 1101,
"Chef Hat": 1102,
"Sunflower Amulet": 1103,
"Carrot Amulet": 1104,
"Beetroot Amulet": 1105,
"Green Amulet": 1106,
"Warrior Shirt": 1107,
"Warrior Helmet": 1108,
"Warrior Pants": 1109,
"Sunflower Shield": 1110,
"Skull Hat": 1111,
"War Skull": 1112,
"War Tombstone": 1113,
"Undead Rooster": 1114,
// Decorations
"White Tulips": 1201,
"Potted Sunflower": 1202,
Cactus: 1203,
"Basic Bear": 1204,
"Chef Bear": 1205,
"Construction Bear": 1206,
"Angel Bear": 1207,
"Badass Bear": 1208,
"Bear Trap": 1209,
"Brilliant Bear": 1210,
"Classy Bear": 1211,
"Farmer Bear": 1212,
"Sunflower Bear": 1213,
"Rich Bear": 1214,
"Potted Potato": 1215,
"Potted Pumpkin": 1216,
}

Example

Load the Sunflowers that an address owns.
const inventory: string[] = await new web3.eth.Contract(
InventoryABI as any,
INVENTORY_ADDRESS
).methods
.balanceOfBatch(
["0x12A02E5EeAfbCa7BF5fD171CA0C00Cb4361aC4EE"],
// 201 is the Sunflower ID
[201]
)
.call();

ABI

[
{
"inputs": [],
"stateMutability": "payable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"indexed": false,
"internalType": "bool",
"name": "approved",
"type": "bool"
}
],
"name": "ApprovalForAll",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "Paused",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256[]",
"name": "ids",
"type": "uint256[]"
},
{
"indexed": false,
"internalType": "uint256[]",
"name": "values",
"type": "uint256[]"
}
],
"name": "TransferBatch",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "from",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "to",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "id",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "value",
"type": "uint256"
}
],
"name": "TransferSingle",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "string",
"name": "value",
"type": "string"
},
{
"indexed": true,
"internalType": "uint256",
"name": "id",
"type": "uint256"
}
],
"name": "URI",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "account",
"type": "address"
}
],
"name": "Unpaused",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "_game",
"type": "address"
}
],
"name": "addGameRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
}
],
"name": "balanceOf",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address[]",
"name": "accounts",
"type": "address[]"
},
{
"internalType": "uint256[]",
"name": "ids",
"type": "uint256[]"
}
],
"name": "balanceOfBatch",
"outputs": [
{
"internalType": "uint256[]",
"name": "",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
}
],
"name": "exists",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256[]",
"name": "ids",
"type": "uint256[]"
},
{
"internalType": "uint256[]",
"name": "amounts",
"type": "uint256[]"
}
],
"name": "gameBurn",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256[]",
"name": "ids",
"type": "uint256[]"
},
{
"internalType": "uint256[]",
"name": "amounts",
"type": "uint256[]"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "gameMint",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "owner",
"type": "address"
},
{
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"internalType": "bool",
"name": "approved",
"type": "bool"
}
],
"name": "gameSetApproval",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from",
"type": "address"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256[]",
"name": "ids",
"type": "uint256[]"
},
{
"internalType": "uint256[]",
"name": "amounts",
"type": "uint256[]"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "gameTransferFrom",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "account",
"type": "address"
},
{
"internalType": "address",
"name": "operator",
"type": "address"
}
],
"name": "isApprovedForAll",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "owner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "paused",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_game",
"type": "address"
}
],
"name": "removeGameRole",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "renounceOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from",
"type": "address"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256[]",
"name": "ids",
"type": "uint256[]"
},
{
"internalType": "uint256[]",
"name": "amounts",
"type": "uint256[]"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "safeBatchTransferFrom",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "from",
"type": "address"
},
{
"internalType": "address",
"name": "to",
"type": "address"
},
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "amount",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "safeTransferFrom",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "operator",
"type": "address"
},
{
"internalType": "bool",
"name": "approved",
"type": "bool"
}
],
"name": "setApprovalForAll",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "newuri",
"type": "string"
}
],
"name": "setURI",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "interfaceId",
"type": "bytes4"
}
],
"name": "supportsInterface",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "id",
"type": "uint256"
}
],
"name": "totalSupply",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256[]",
"name": "ids",
"type": "uint256[]"
}
],
"name": "totalSupplyBatch",
"outputs": [
{
"internalType": "uint256[]",
"name": "",
"type": "uint256[]"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "uri",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
}
]