diff --git a/package.json b/package.json
index c42d8d2..5265afa 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "task-checklist",
- "version": "5.0.1",
+ "version": "5.1",
"description": "A Warframe Task Checklist to track daily, weekly, and other tasks. Built with HTML, CSS, and vanilla JavaScript, processed with Vite.",
"type": "module",
"scripts": {
diff --git a/sources/css/critical.css b/sources/css/critical.css
index 17b9ff1..1671e44 100644
--- a/sources/css/critical.css
+++ b/sources/css/critical.css
@@ -180,9 +180,13 @@ body.light-mode::before {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
- align-items: center;
+ align-items: flex-start;
+ gap: 0.5rem;
margin-bottom: 1rem;
}
+#site-header hgroup {
+ flex: 1 1 0%;
+}
h1 {
color: var(--text-header);
font-size: 1.875rem;
@@ -280,8 +284,8 @@ h2 .reset-time-local {
cursor: pointer;
line-height: 1.5;
}
-#site-header button:not(:last-of-type) { margin-right: 0.5rem; }
-#site-header button:not(:first-of-type) { margin-left: 0.5rem; }
+#site-controls > :not(:last-child) { margin-right: 0.5rem; }
+#site-controls > :not(:first-child) { margin-left: 0.5rem; }
#site-header button svg {
width: 1.25rem;
height: 1.25rem;
diff --git a/sources/img/icons/README.md b/sources/img/icons/README.md
new file mode 100644
index 0000000..d4be2aa
--- /dev/null
+++ b/sources/img/icons/README.md
@@ -0,0 +1,30 @@
+# Task Icons
+
+Icons are sourced from the [wiki](https://wiki.warframe.com/) and
+[browse.wf](https://browse.wf/). The search function doesn't find everything
+though, so digging through [Icons](https://browse.wf/Lotus/Interface/Icons/)
+is essential.
+
+Icons should be monochromatic, square, and cropped to fill the entire canvas.
+A script, [`resize.sh`](./resize.sh)\*, is included that handles cropping,
+squaring, and resizing. Most images come as white and should be inverted so
+they're possible to see in Windows Explorer light mode
+([`invert.sh`](./invert.sh)\* can do this for you). CSS converts it to all white
+or all black as appropriate for the theme. If a monochrome icon is not
+available, you can add `"noIconFilter": true` to the task and the icon will be
+shown in color as-is. For cycle icons, the default is reversed: color icons are
+preferred, and you can add `"iconFilter": true` to a cycle's `order` entry for
+monochrome icons.
+
+\* `resize.sh` and `invert.sh` both require [ImageMagick](https://imagemagick.org/).
+
+Icons should retain their original filenames as a hint to where they came from.
+If any modifications are done to the image (besides inverting/cropping/resizing),
+add an underscore at the end of the filename and note the modifications here:
+
+| Icon | Changes | Original |
+|------|---------|----------|
+| cycles/RetroSeasonal*Icon_.png | Added a gray 'glow' around them so they're easier to see in dark mode. | [Autumn](https://browse.wf/Lotus/Interface/Graphics/Retro/Calendar/RetroSeasonalAutumnIcon.png)
[Spring](https://browse.wf/Lotus/Interface/Graphics/Retro/Calendar/RetroSeasonalSpringIcon.png)
[Summer](https://browse.wf/Lotus/Interface/Graphics/Retro/Calendar/RetroSeasonalSummerIcon.png)
[Winter](https://browse.wf/Lotus/Interface/Graphics/Retro/Calendar/RetroSeasonalWinterIcon.png)
|
+| tasks/HelpClem_.png | Cut Clem's head out of the Nightwave Act image. | [link](https://browse.wf/Lotus/Interface/Icons/Episodes/Weekly/HelpClem.png) |
+| tasks/Kaya_.png | Made the non-transparent parts fully opaque, instead of a transparency gradient. | [link](https://browse.wf/Lotus/Interface/Icons/QuickAccess/1999Mall/Kaya.png) |
+| tasks/MiniMapCaviaVendor_.png | Removed drop shadow. | [link](https://browse.wf/Lotus/Interface/Icons/Markers/MiniMapCaviaVendor.png) |
diff --git a/sources/img/icons/invert.sh b/sources/img/icons/invert.sh
new file mode 100644
index 0000000..699443e
--- /dev/null
+++ b/sources/img/icons/invert.sh
@@ -0,0 +1,2 @@
+#!/bin/sh
+magick mogrify -channel RGB -negate "$1"
diff --git a/sources/img/icons/tasks/resize.sh b/sources/img/icons/resize.sh
similarity index 100%
rename from sources/img/icons/tasks/resize.sh
rename to sources/img/icons/resize.sh
diff --git a/sources/img/icons/tasks/Friends.png b/sources/img/icons/tasks/Friends.png
new file mode 100644
index 0000000..017c8cc
Binary files /dev/null and b/sources/img/icons/tasks/Friends.png differ
diff --git a/sources/img/icons/tasks/MarkedForDeathStalker.png b/sources/img/icons/tasks/MarkedForDeathStalker.png
new file mode 100644
index 0000000..81e3192
Binary files /dev/null and b/sources/img/icons/tasks/MarkedForDeathStalker.png differ
diff --git a/sources/img/icons/tasks/README.md b/sources/img/icons/tasks/README.md
deleted file mode 100644
index 243c2a3..0000000
--- a/sources/img/icons/tasks/README.md
+++ /dev/null
@@ -1,14 +0,0 @@
-# Task Icons
-
-Icons are sourced from the [wiki](https://wiki.warframe.com/) and
-[browse.wf](https://browse.wf/). The search function doesn't find everything
-though, so digging through [Icons](https://browse.wf/Lotus/Interface/Icons/)
-is essential.
-
-Icons should be monochromatic, square, and cropped to fill the entire canvas.
-[A script](./resize.sh) is included that handles cropping, squaring, and
-resizing (requires [ImageMagick](https://imagemagick.org/)). Most images come
-as white and should be inverted so they're possible to see in Windows Explorer
-light mode. CSS converts it to all white or all black as appropriate for the
-theme. If a monochrome icon is not available, you can add `"noIconFilter": true`
-to the task and the icon will be shown in color as-is.
diff --git a/sources/js/app.js b/sources/js/app.js
index 3389b3d..598e053 100644
--- a/sources/js/app.js
+++ b/sources/js/app.js
@@ -31,10 +31,10 @@ const dailyBackgroundImageIds = [
'bg-image-4',
// Add more IDs if you add more background image divs in HTML
];
-const APP_VERSION = "5.0.1";
+const APP_VERSION = "5.1";
const GIT_COMMIT_HASH_LONG = import.meta.env.VITE_GIT_COMMIT_HASH;
const GIT_COMMIT_HASH = GIT_COMMIT_HASH_LONG.slice(0,7);
-const WARFRAME_VERSION = "42.0.11";
+const WARFRAME_VERSION = "43.0.2";
const THEME_STORAGE_KEY = 'warframeChecklistTheme';
// only update DATA_STORAGE_KEY when the data storage format changes
diff --git a/sources/js/cycles.json b/sources/js/cycles.json
index 98d9aa8..ca0559c 100644
--- a/sources/js/cycles.json
+++ b/sources/js/cycles.json
@@ -99,7 +99,7 @@
]
},
"weekly_duviri_circuit_sp": {
- "ref": "2026-01-05",
+ "ref": "2026-04-27",
"columns": [
{
"name": "Items",
@@ -111,7 +111,8 @@
{ "text": "Incarnon Adapters for Atomos, Dual Ichor, Dual Toxocyst, Miter, and Torid", "icon": "IncarnonEvolveIconSmall.png", "iconFilter": true },
{ "text": "Incarnon Adapters for Ack & Brunt, Burston, Nami Solo, Soma, and Vasto", "icon": "IncarnonEvolveIconSmall.png", "iconFilter": true },
{ "text": "Incarnon Adapters for Despair, Dread, Hate, Sibear, and Zylok", "icon": "IncarnonEvolveIconSmall.png", "iconFilter": true },
- { "text": "Incarnon Adapters for Cestra, Dera, Okina, Sicarus, and Sybaris", "icon": "IncarnonEvolveIconSmall.png", "iconFilter": true }
+ { "text": "Incarnon Adapters for Cestra, Dera, Okina, Sicarus, and Sybaris", "icon": "IncarnonEvolveIconSmall.png", "iconFilter": true },
+ { "text": "Incarnon Adapters for Ballistica, Destreza, Obex, Stug, and Vectis", "icon": "IncarnonEvolveIconSmall.png", "iconFilter": true }
]
}
]
diff --git a/sources/js/functions.js b/sources/js/functions.js
index a5476b6..4e5120d 100644
--- a/sources/js/functions.js
+++ b/sources/js/functions.js
@@ -178,3 +178,8 @@ export function calcTaskTimes(task, date) {
return {nextResetTimestamp, thisCycleLeaveTimestamp, isAvailable};
}
+
+export function factionIcon(name) {
+ const src = iconURL(`tasks/syndicates/${name}`);
+ return ``;
+}
diff --git a/sources/js/moreInfo.js b/sources/js/moreInfo.js
index 1fedfe1..e213152 100644
--- a/sources/js/moreInfo.js
+++ b/sources/js/moreInfo.js
@@ -3,19 +3,15 @@
*/
import * as C from "./constants.js";
-import { iconURL } from "./functions.js";
+import { factionIcon } from "./functions.js";
-function _factionIcon(name) {
- const src = iconURL(`tasks/syndicates/${name}`);
- return `
`;
-}
const factions = `
The Faction Syndicates are - ${_factionIcon("FactionSigilRebels.png")}Steel Meridian, - ${_factionIcon("FactionSigilJudge.png")}Arbiters of Hexis, - ${_factionIcon("FactionSigilOracle.png")}Cephalon Suda, - ${_factionIcon("FactionSigilBusiness.png")}The Perrin Sequence, - ${_factionIcon("FactionSigilAssassins.png")}Red Veil, - and ${_factionIcon("FactionSigilChurch.png")}New Loka.
+ ${factionIcon("FactionSigilRebels.png")}Steel Meridian, + ${factionIcon("FactionSigilJudge.png")}Arbiters of Hexis, + ${factionIcon("FactionSigilOracle.png")}Cephalon Suda, + ${factionIcon("FactionSigilBusiness.png")}The Perrin Sequence, + ${factionIcon("FactionSigilAssassins.png")}Red Veil, + and ${factionIcon("FactionSigilChurch.png")}New Loka.Pledge your loyalty to a faction syndicate at the Syndicates console in your ${C.BASE_OF_OPERATIONS_TOOLTIP}.
` export default { @@ -68,5 +64,11 @@ export default {(There's currently a visual bug where the bonus credits don't appear on the mission completion screen. They are still added to your account though.)
`, daily_syndicate_gain: factions, - daily_syndicate_spend: factions + daily_syndicate_spend: factions, + + weekly_clan_initiative: `Play in a squad with other members of your Clan to earn bonus resources for your Clan Vault. The bonus resources also contribute to your personal rewards track for the week. Progress is based on the amount of resources collected in missions with your clan members.
+Each week, a random planet will reward double bonus Vault resources (and double reward track progress) for missions played there.
+Check the current boosted planet and track your reward progress in the Clan menu.
+Note: You can use the "Clan Only" matchmaking option to join squads with your Clan or Alliance members, but playing with Alliance members does not give bonus Vault resources or reward progress.
+* Descendia missions do not contribute to Clan Weekly Initiatives.
` } diff --git a/sources/js/tasks.json b/sources/js/tasks.json index 266ba66..4eaa765 100644 --- a/sources/js/tasks.json +++ b/sources/js/tasks.json @@ -376,7 +376,7 @@ "text": "Elite Temporal Archimedea: Attempt weekly Elite Temporal Archimedea for high Archon Shard chances (very endgame).", "icon": "Kaya_.png", "location": "Höllvania Central Mall", - "npc": "Kaya", + "npc": "Kaya Velasco", "prereq": "Rank 5 The Hex", "info": "Costs 2 Search Pulses to unlock for the week" } @@ -412,6 +412,14 @@ "location": "Dark Refractory (Base of Operations)", "terminal": "Navigation" }, + { + "id": "weekly_clan_initiative", + "text": "Clan Weekly Initiatives: Earn rewards by playing with clan members.", + "icon": "Friends.png", + "location": "Any Mission*", + "terminal": "Menu 🞂 Communication 🞂 Clan", + "prereq": "Membership in a Clan" + }, { "id": "weekly_vendors", "text": "Vendors", @@ -457,6 +465,14 @@ "npc": "Bird 3", "prereq": "Rank 5 Cavia" }, + { + "id": "weekly_kaya", + "text": "Kaya: Trade Pix Chips for Arcanes.", + "icon": "Kaya_.png", + "location": "Höllvania Central Mall", + "npc": "Kaya Velasco", + "prereq": "Elite Temporal Archimedea" + }, { "id": "weekly_nightcap", "text": "Nightcap: Trade Fergolyte for Kuva and Ayatan Sculpture.", @@ -472,6 +488,14 @@ "location": "Any Relay", "npc": "Aspirant Zorba", "prereq": "The Chains of Harrow" + }, + { + "id": "weekly_hunhow", + "text": "Hunhow: Trade Emerald & Crimson Talents for Kuva.", + "icon": "MarkedForDeathStalker.png", + "location": "Pontis Tower, Uranus", + "npc": "Hunhow", + "prereq": "Jade Shadows: Constellations" } ] }