Any Day Start Setter for Habitica
by citrusella 💔 (version 2.0.0)
This is a third party tool for Habitica which can change your Custom Day Start (when your Habitica day "rolls over", the earliest time your account can run Cron) to any value supported by the API, even if the client you use does not support selecting that time.
This tool was developed after seeing concerns in the Tavern from people who needed later Custom Day Start settings after the website removed the ability to select options later than 12 p.m.
This tool will not work in any version of Internet Explorer.
(To cover all bases here: it also does not work in Internet Explorer mode in
Microsoft Edge, though it works in Microsoft Edge outside of IE mode.)
As of version 2.0.0, this website is no longer being actively maintained and
will not be fixed if bugs crop up, even if those bugs are unrelated to changes
in Habitica's API. Version 2 of this website is also no longer licensed in a way
that allows other users to fork and modify its code (its current license
can be viewed here), though anyone could of
course code a tool with similar functionality (or better!) from scratch, of
course! These changes have been made due to ongoing issues regarding staff
treatment of contributors since staff's firing of the volunteer moderation team
in early December 2022.
Source code for this tool can be found at
its Github
repository.
Before using this tool, you should understand the following:
- You should understand the warning about late Custom Day Starts on the Custom Day Start page on Habitica Wiki (and
should be unlikely to contact staff about how late day starts work because you understand it is not a bug that they function that way).
- To summarize: Late day starts cannot move backward from midnight (the default day start time), only forward. This means that your day will start however many hours later than midnight you set, and it cannot move backward and start earlier.
- For example: A 10 p.m. day start is 22 hours later than the
start of the day in your timezone, not 2 hours earlier.
- Changing your Custom Day Start on the website or app displays a warning
informing you the earliest possible calendar day and time that your next Cron
will run upon changing your Custom Day Start. Keep in mind that this tool does
not display that warning.
- Please understand that if the API's behavior is modified to match the available times on the website and block/error on the selection of other times,
this tool could permanently stop working to set later day starts. (I don't know that this is very likely to happen on v3 of the API, but
if it happens there is no way to fix it.)
- Changing your day start to a time after 12 p.m. (noon / +12) will cause the website's day start dropdown to become blank. This is a side effect of those times no longer being a valid setting in the website's interface, even though your account can still be set to them "behind the scenes".
- The website and/or the app are probably a better option to change your
Custom Day Start if they support the option you are selecting. The website
and current versions of the iOS and Android apps support hours from 12 a.m.
to 12 p.m. (0:00 to 12:00), as of the most recent update to this tool.
- Versions of the Android app prior to approximately version 3.5.3 (3524),
released mid-June 2022, support all hours from 12 a.m.
to 11 p.m. (0:00 to 23:00, all 24 hours the API supports), so if your
device has not yet updated to the latest version or cannot update, you
may be able to use the Android app to make your change instead.
- It stands to reason that an old enough iOS app version should be
able to support all hours as well, but as I do not have iOS, I do not
know when the iOS app changed from supporting all hours to supporting
just until noon. (The most I can infer is that the code was changed in
the iOS app's Github files in February 2022, but it is possible a
version of the app using the new code was released later than that point
in time.)
Instructions
To start, go to [User Icon dropdown] > Settings > API and find your User ID and API token. Put the User ID and API token in the corresponding text boxes below. (This website only uses the UUID and API token to make the change and does not store any information.)
Then, pick the time you want to set your custom day start to and press "Change my Custom Day Start!"
After you send the change, a message will appear next to the change button
indicating whether or not it was a success. All error messages are outlined in
red, and the success message is outlined in green. The possible messages come directly
from the information this site gets back from Habitica when you send the change:
- The message "Your custom day start has changed." means the change was a
success, and your Custom Day Start should be saved on Habitica! You should be
able to see evidence of the change on the Settings page on Habitica. Happy
habiting!
- The message "There is no account that uses those credentials." means
that your User ID and/or your API Token are incorrect, so this webpage could not
send the information to your Habitica account. Double check that the values
exactly match your User ID and API Token on the Settings > API page.
- Similarly, "Missing authentication headers." means that either your
User ID or your API Token (or both) are missing. Make sure all the
boxes are filled out before pressing the "Change My Custom Day Start!"
button.