Improve remaining low-detail weapon icons
This commit is contained in:
@@ -315,6 +315,7 @@ function buildRecommendations(itemRows, groupedRows) {
|
||||
];
|
||||
const armorTargetIds = ['oath-robe', 'reinforced-lamellar', 'cloth-armor', 'lamellar-armor', 'rebel-vest'];
|
||||
const accessoryIds = itemRows.filter((row) => row.slot === 'accessory').map((row) => row.itemId);
|
||||
const lowDetailWeaponTargetIds = ['leader-axe', 'training-sword', 'yellow-turban-saber'];
|
||||
const targets = [
|
||||
{
|
||||
title: 'weapon spear/polearm family',
|
||||
@@ -344,6 +345,15 @@ function buildRecommendations(itemRows, groupedRows) {
|
||||
openReason: 'Accessories are the smallest UI read and several use compact badge-like shapes.',
|
||||
successCriteria:
|
||||
'Each accessory should keep a compact footprint while gaining a distinct readable prop shape at 20px and 30px.'
|
||||
},
|
||||
{
|
||||
title: 'remaining low-detail weapon icons',
|
||||
itemIds: lowDetailWeaponTargetIds,
|
||||
completeReason:
|
||||
'The final low-detail common weapons now use dedicated axe, training sword, and Yellow Turban saber silhouettes.',
|
||||
openReason:
|
||||
'These are the last generated equipment icons still below the primitive-detail threshold after the larger weapon, armor, and accessory passes.',
|
||||
successCriteria: 'Clear the low primitive detail concerns without changing stable item texture keys.'
|
||||
}
|
||||
].map((target) => ({
|
||||
...target,
|
||||
@@ -356,12 +366,17 @@ function buildRecommendations(itemRows, groupedRows) {
|
||||
itemIds: target.rows.map((row) => row.itemId),
|
||||
reason: target.completeReason
|
||||
}));
|
||||
const remainingConcernRows = itemRows.filter((row) => row.concerns.length > 0);
|
||||
const nextTarget =
|
||||
targets.find((target) => !improvementTargetComplete(target)) ?? {
|
||||
title: 'remaining low-detail equipment icons',
|
||||
rows: itemRows.filter((row) => row.concerns.length > 0),
|
||||
openReason: 'All named batches are complete; remaining work should be selected from the low-detail inventory rows.',
|
||||
successCriteria: 'Clear remaining low-detail concerns without changing stable texture keys.'
|
||||
title: remainingConcernRows.length ? 'remaining low-detail equipment icons' : 'no flagged equipment icon batch',
|
||||
rows: remainingConcernRows,
|
||||
openReason: remainingConcernRows.length
|
||||
? 'All named batches are complete; remaining work should be selected from the low-detail inventory rows.'
|
||||
: 'No generated equipment icon currently has a low-detail or shared-helper audit concern; choose the next visual asset pass from in-game QA.',
|
||||
successCriteria: remainingConcernRows.length
|
||||
? 'Clear remaining low-detail concerns without changing stable texture keys.'
|
||||
: 'Keep the generated equipment icon audit green while selecting the next art target from runtime screenshots.'
|
||||
};
|
||||
const nextTargetIndex = targets.findIndex((target) => target.title === nextTarget.title);
|
||||
const followUps = targets
|
||||
@@ -426,7 +441,7 @@ function renderReport({ iconSourceSize, iconTextureSize, itemRows, groupedRows,
|
||||
'## Next Improvement Target',
|
||||
'',
|
||||
`- Target: ${recommendations.firstTargetTitle}`,
|
||||
`- Item ids: ${recommendations.firstTargetIds.map((itemId) => `\`${itemId}\``).join(', ')}`,
|
||||
`- Item ids: ${formatItemIds(recommendations.firstTargetIds)}`,
|
||||
`- Reason: ${recommendations.firstTargetReason}`,
|
||||
'',
|
||||
...renderFollowUpTargets(recommendations.followUps),
|
||||
@@ -456,15 +471,37 @@ function renderReport({ iconSourceSize, iconTextureSize, itemRows, groupedRows,
|
||||
].join(' | ')
|
||||
).map((line) => `| ${line} |`),
|
||||
'',
|
||||
...renderRecommendedNextBatch(recommendations)
|
||||
].join('\n')}`;
|
||||
}
|
||||
|
||||
function formatItemIds(itemIds) {
|
||||
return itemIds.length ? itemIds.map((itemId) => `\`${itemId}\``).join(', ') : 'none currently flagged';
|
||||
}
|
||||
|
||||
function renderRecommendedNextBatch(recommendations) {
|
||||
if (!recommendations.firstTargetIds.length) {
|
||||
return [
|
||||
'## Recommended Next Batch Definition',
|
||||
'',
|
||||
'- Scope: no generated equipment icon is currently below the audit threshold.',
|
||||
'- Item ids: none currently flagged',
|
||||
`- Success criteria: ${recommendations.firstTargetSuccessCriteria}`,
|
||||
'- Suggested next area: map/background or unit sprite assets that still look low-resolution in gameplay.',
|
||||
''
|
||||
];
|
||||
}
|
||||
|
||||
return [
|
||||
'## Recommended Next Batch Definition',
|
||||
'',
|
||||
`- Scope: improve ${recommendations.firstTargetTitle} while keeping \`item-\${itemId}\` texture keys stable.`,
|
||||
`- Item ids: ${recommendations.firstTargetIds.map((itemId) => `\`${itemId}\``).join(', ')}`,
|
||||
`- Item ids: ${formatItemIds(recommendations.firstTargetIds)}`,
|
||||
`- Success criteria: ${recommendations.firstTargetSuccessCriteria}`,
|
||||
'- Keep the existing 64px texture size unless a UI-wide equipment icon pass is planned.',
|
||||
'- Add before/after contact sheets and verify the sortie equipment list and equipment swap panel in a desktop browser.',
|
||||
''
|
||||
].join('\n')}`;
|
||||
];
|
||||
}
|
||||
|
||||
function renderCompletedTargets(completedTargets) {
|
||||
|
||||
Reference in New Issue
Block a user