尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Sunflower Land - Flower Collection Tracker
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗A pixel-art collection tracker for Sunflower Land.
Live: sunflower.sajmonium.quest
flowers.html <- source file (single-file app)
index.html <- deploy copy (= flowers.html)
api/proxy.js <- Vercel serverless CORS proxy + Redis caching
api/track.js <- Usage tracking (Upstash Redis)
api/stats.js <- Stats endpoint
build_image_map.js <- Script to regenerate ITEM_IMAGE_MAP (see below)
cp flowers.html index.html
npx vercel --yes # preview
npx vercel --yes --prod # production
git add -A && git commit -m "description" && git push
All item images are sourced from the official sunflower-land GitHub repo (src/assets/), not from sfl.world (which returns placeholder question marks for many items).
The app contains ITEM_IMAGE_MAP (~1070 entries) mapping item names to raw GitHub URLs:
https://raw.githubusercontent.com/sunflower-land/sunflower-land/main/src/assets/sfts/easter/easter_bunny.gif
When the game adds new collectibles, wearables, flowers, or other items and their images appear in the sunflower-land repo assets.
curl -s "https://api.github.com/repos/sunflower-land/sunflower-land/git/trees/main?recursive=1" \
-H "Accept: application/vnd.github.v3+json" | \
python3 -c "
import json, sys
data = json.load(sys.stdin)
for item in data.get('tree', []):
p = item['path']
if p.startswith('src/assets/') and item['type'] == 'blob':
print(p)
" > all_github_assets.txt
This gives ~2290 files across sfts/, flowers/, fish/, food/, wearables/, etc.
The game source images.ts has the official mapping:
curl -sL "https://raw.githubusercontent.com/sunflower-land/sunflower-land/main/src/features/game/types/images.ts" \
> images_ts_raw.txt
Key patterns in this file:
import easterBunny from "assets/sfts/easter/easter_bunny.gif""Easter Bunny": { image: easterBunny, ... }import statements from images.ts -> build variableName -> filePath mapITEM_DETAILS entries -> build "Item Name" -> variableName map"Item Name" -> filePath -> full GitHub raw URLimages.ts, try filename heuristics:
"Red Pansy" -> flowers/red_pansy.webp"Angler Doll" -> sfts/dolls/angler_doll.webpwearables/{id}.webpcurl -sI {url} (check 200 vs 404)Find the const ITEM_IMAGE_MAP = { block and replace with the new entries:
const GITHUB_ASSETS = "https://raw.githubusercontent.com/sunflower-land/sunflower-land/main/src/assets";
const ITEM_IMAGE_MAP = {
"Item Name": GITHUB_ASSETS+"/path/to/file.webp",
...
};
Items not in the map fall back to sfl.world/img/source/{name}.png via getItemIcon().
cp flowers.html index.html
npx vercel --yes # preview first, verify
npx vercel --yes --prod # then production
src/assets/
animals/chickens/ <- chicken boost NFTs (speed_chicken.webp, etc.)
crops/{name}/ <- crop sprites (proc_sprite.png only)
decorations/ <- lanterns, banners, tiles
fish/ <- fish images
flowers/ <- all flower + seed images (.webp)
food/ <- cooked food + cakes
fruit/{name}/ <- fruit + seed images
icons/ <- UI icons, skill icons
resources/ <- gold_ore, iron_ore, honey, oil, etc.
sfts/ <- main collectibles directory
aoe/ <- area-of-effect items
bears/ <- bear collectibles
dolls/ <- all doll images
easter/ <- easter items
flags/ <- country flags
mom/ <- observatory, etc.
wearables/ <- by NFT ID: {id}.webp
flower_fox.webp27.webp, 501.webpred_pansy.webp.webp > .png > .gif| Item Name | Actual Path |
|---|---|
| Woody the Beaver | sfts/beaver.gif |
| Foreman Beaver | sfts/construction_beaver.gif |
| Undead Rooster | animals/chickens/undead_chicken.webp |
| Easter Bunny | sfts/easter/easter_bunny.gif |
| Super Star | sfts/starfish_marvel.webp |
| Black Bearry | sfts/black_bear.gif |
| Gnome | decorations/scarlet.png |
| Goblin Crown | sfts/goblin_crown.png |
| Astronaut Sheep | sfts/sheep_astronaut.webp |
| Frozen Cow | sfts/frozen_mutant_cow.webp |
| Longhorn Cowfish | fish/cow_fish.webp |
| Poseidon | sfts/poseidon_fish.webp |
SFL_API_KEY — API key for sfl.world proxied requestsKV_REST_API_URL — Upstash Redis URLKV_REST_API_TOKEN — Upstash Redis tokenSTATS_SECRET — Secret for stats endpointCreated by 0xStableFarmer — Farm #155498