feat: expand supported mods in download-textures script for enhanced asset management
This commit is contained in:
@@ -1,7 +1,11 @@
|
|||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
/**
|
/**
|
||||||
* download-textures.js — Bulk-download all Minecraft, Create & CC:Tweaked
|
* download-textures.js — Bulk-download item/block textures for all supported
|
||||||
* item/block textures into the local texture cache.
|
* mods into the local texture cache.
|
||||||
|
*
|
||||||
|
* Supported mods (Prominence Hasturian Era II modpack):
|
||||||
|
* Minecraft, Create, CC:Tweaked, Mythic Metals, Farmer's Delight,
|
||||||
|
* Ad Astra, BetterEnd, Applied Energistics 2, Twilight Forest
|
||||||
*
|
*
|
||||||
* Run once (or on container start) to pre-populate the cache so the proxy
|
* Run once (or on container start) to pre-populate the cache so the proxy
|
||||||
* never needs to hit upstream for known textures.
|
* never needs to hit upstream for known textures.
|
||||||
@@ -15,14 +19,14 @@ import path from 'path';
|
|||||||
|
|
||||||
const CACHE_DIR = process.argv[2] || process.env.TEXTURE_CACHE_DIR || '/data/texture-cache';
|
const CACHE_DIR = process.argv[2] || process.env.TEXTURE_CACHE_DIR || '/data/texture-cache';
|
||||||
|
|
||||||
// ── Upstream repos (same as server.js) ─────────────────────────────────────
|
// ── Upstream repos (same namespaces as TEXTURE_UPSTREAMS in server.js) ─────
|
||||||
|
|
||||||
const REPOS = {
|
const REPOS = {
|
||||||
minecraft: {
|
minecraft: {
|
||||||
api: 'https://api.github.com/repos/InventivetalentDev/minecraft-assets/git/trees/1.21.4?recursive=1',
|
api: 'https://api.github.com/repos/InventivetalentDev/minecraft-assets/git/trees/1.21.4?recursive=1',
|
||||||
raw: 'https://cdn.jsdelivr.net/gh/InventivetalentDev/minecraft-assets@1.21.4',
|
raw: 'https://cdn.jsdelivr.net/gh/InventivetalentDev/minecraft-assets@1.21.4',
|
||||||
prefix: 'assets/minecraft/textures/',
|
prefix: 'assets/minecraft/textures/',
|
||||||
folders: ['item/', 'block/'], // only grab these sub-folders
|
folders: ['item/', 'block/'],
|
||||||
},
|
},
|
||||||
create: {
|
create: {
|
||||||
api: 'https://api.github.com/repos/Creators-of-Create/Create/git/trees/mc1.20.1/dev?recursive=1',
|
api: 'https://api.github.com/repos/Creators-of-Create/Create/git/trees/mc1.20.1/dev?recursive=1',
|
||||||
@@ -36,6 +40,42 @@ const REPOS = {
|
|||||||
prefix: 'projects/common/src/main/resources/assets/computercraft/textures/',
|
prefix: 'projects/common/src/main/resources/assets/computercraft/textures/',
|
||||||
folders: ['item/', 'block/'],
|
folders: ['item/', 'block/'],
|
||||||
},
|
},
|
||||||
|
mythicmetals: {
|
||||||
|
api: 'https://api.github.com/repos/Noaaan/MythicMetals/git/trees/1.20?recursive=1',
|
||||||
|
raw: 'https://raw.githubusercontent.com/Noaaan/MythicMetals/1.20',
|
||||||
|
prefix: 'src/main/resources/assets/mythicmetals/textures/',
|
||||||
|
folders: ['item/', 'block/'],
|
||||||
|
},
|
||||||
|
farmersdelight: {
|
||||||
|
api: 'https://api.github.com/repos/vectorwing/FarmersDelight/git/trees/1.20?recursive=1',
|
||||||
|
raw: 'https://raw.githubusercontent.com/vectorwing/FarmersDelight/1.20',
|
||||||
|
prefix: 'src/main/resources/assets/farmersdelight/textures/',
|
||||||
|
folders: ['item/', 'block/'],
|
||||||
|
},
|
||||||
|
ad_astra: {
|
||||||
|
api: 'https://api.github.com/repos/terrarium-earth/Ad-Astra/git/trees/1.20.1?recursive=1',
|
||||||
|
raw: 'https://raw.githubusercontent.com/terrarium-earth/Ad-Astra/1.20.1',
|
||||||
|
prefix: 'common/src/main/resources/assets/ad_astra/textures/',
|
||||||
|
folders: ['item/', 'block/'],
|
||||||
|
},
|
||||||
|
betterend: {
|
||||||
|
api: 'https://api.github.com/repos/quiqueck/BetterEnd/git/trees/1.20?recursive=1',
|
||||||
|
raw: 'https://raw.githubusercontent.com/quiqueck/BetterEnd/1.20',
|
||||||
|
prefix: 'src/main/resources/assets/betterend/textures/',
|
||||||
|
folders: ['item/', 'block/'],
|
||||||
|
},
|
||||||
|
ae2: {
|
||||||
|
api: 'https://api.github.com/repos/AppliedEnergistics/Applied-Energistics-2/git/trees/fabric/1.20.1?recursive=1',
|
||||||
|
raw: 'https://raw.githubusercontent.com/AppliedEnergistics/Applied-Energistics-2/fabric/1.20.1',
|
||||||
|
prefix: 'src/main/resources/assets/ae2/textures/',
|
||||||
|
folders: ['item/', 'block/'],
|
||||||
|
},
|
||||||
|
twilightforest: {
|
||||||
|
api: 'https://api.github.com/repos/TeamTwilight/twilightforest/git/trees/1.20.1?recursive=1',
|
||||||
|
raw: 'https://raw.githubusercontent.com/TeamTwilight/twilightforest/1.20.1',
|
||||||
|
prefix: 'src/main/resources/assets/twilightforest/textures/',
|
||||||
|
folders: ['item/', 'block/'],
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
// ── Rate-limit-friendly parallel downloader ────────────────────────────────
|
// ── Rate-limit-friendly parallel downloader ────────────────────────────────
|
||||||
|
|||||||
Reference in New Issue
Block a user