Legal
This page covers the Discord bot "Dusk Utils (But JS)".
Terms of Service
Last updated:
1. Accepting these terms
These Terms of Service ("Terms") apply to your use of the Discord bot "Dusk Utils (But JS)" (the "bot"). The bot is run by an individual who goes by "seek" (Discord: @seek_zz), called "seek" or "the owner" in these Terms.
By using the bot, or by adding it to or keeping it in a Discord server, you agree to these Terms. If you do not agree, do not use the bot.
2. What the bot is
- The bot is a utility bot for "duty states": time-tracked duty sessions with proof screenshots or links. Its messages mention "AEGS points" and "AMCS Quota", and it asks for a Roblox username.
- It is used within a Roblox community for a game called "Day of Dusk".
- The bot is not officially affiliated with Day of Dusk or its developers, and not officially affiliated with Roblox.
- The bot is run by seek, an individual based in England. It is not run by a company or any other legal entity.
- The bot is in testing and is a work in progress. It is closed source.
- The bot is whitelist-only. It only works in servers that the owner has added to its whitelist. If it joins a server that is not whitelisted, it tries to send the server owner a direct message and then leaves. It may become publicly invitable later, but there is no guarantee of this.
- Individual servers can give the bot their own nickname. These Terms still apply.
3. Discord's rules
The bot runs on Discord. When you use it, you must also follow Discord's Terms of Service and Community Guidelines. You must meet Discord's minimum age to use the bot (see the Age section of the Privacy Policy).
4. Acceptable use
When using the bot, you must not:
- break Discord's Terms of Service or Community Guidelines, or any law that applies to you;
- use the bot to harass, spam or mislead other people;
- pretend to be someone else, for example by entering a Roblox username that is not yours;
- post links or content that are illegal, harmful, or that you do not have the right to share;
- try to get around the server whitelist, the bot's permission checks, or any other limit on who can use a feature;
- try to break, overload or disrupt the bot, or to access its host, code or stored data without permission.
5. Restricting users and servers
The owner may, at any time:
- remove any server from the whitelist, which makes the bot leave that server;
- refuse service to users who abuse the bot or break these Terms, including by blacklisting them once such a feature exists (the bot does not have a user blacklist at the moment);
- where reasonable, remove or kick such users from servers the bot is in.
Server administrators also control who can use some commands in their server, through Discord's Administrator permission and the admin role set with /setup.
6. No uptime guarantee
There is no guarantee that the bot will be online or working. The bot is self-hosted on a personal home server and is in testing. It may go offline, change, lose data (there are no backups) or be shut down at any time. Features, commands and the whitelist can change without notice.
7. Provided "as is"
The bot is provided "as is", with no warranties of any kind. As far as the law allows, the owner makes no promise that the bot will be available, free of errors, or suitable for any purpose, or that anything it shows (such as times, points or reminders) will be correct. Check anything important yourself before relying on it.
8. Limitation of liability
The owner is an individual, not a company. As far as the law allows, the owner is not liable for any loss or damage that comes from using the bot or from not being able to use it. This includes lost data, lost duty state records, and messages the bot deletes.
Nothing in these Terms excludes or limits any liability that cannot legally be excluded or limited.
9. Termination
You can stop using the bot at any time. Server administrators can remove the bot from their server at any time. Removing the bot does not delete stored data on its own; see Your choices and rights in the Privacy Policy for how to ask for deletion.
The owner can stop providing the bot to you or to any server at any time, as described in section 5, or by shutting the bot down. Sections 7, 8 and 11 continue to apply after your use of the bot ends.
10. Changes to these terms
The owner may change these Terms at any time. The new version will be posted on this page with a new "Last updated" date. If you keep using the bot after a change, you accept the new Terms.
11. Governing law
These Terms are governed by the law of England and Wales.
12. Contact
For questions, support, deletion requests or legal matters, send a Discord direct message to @seek_zz, or ping @seek_zz in any server you are both in. No email address is offered.
Privacy Policy
Last updated:
1. Who runs the bot
This policy explains what data the Discord bot "Dusk Utils (But JS)" (technical name "duskutils") stores and how it is used. Individual servers can give the bot their own nickname; this policy still applies.
The bot is run by seek, an individual based in England. It is not run by a company or any other legal entity.
This website is separate from the bot. The website is hosted on Cloudflare (Cloudflare Pages/Workers). As a normal host, Cloudflare may process standard web request data under its own policies.
2. What the bot collects
The bot stores the following in a database.
Server settings
Saved when a server administrator runs /setup:
- the Discord server ID;
- the server name (saved when setup is completed);
- the ID of the server's admin role;
- the IDs of the settings channel, the DS Embed channel and the DS Log (archive) channel;
- whether setup is complete.
Your profile
Created the first time you set any profile field:
- your Discord user ID;
- your timezone, stored as a GMT label (for example "GMT+3");
- your duty (text you type);
- your Roblox username (text you type; the bot does not contact Roblox or check it);
- whether you have turned on "Opt-Out Of Archives";
- your reminder interval (30 minutes, 2, 4, 6, 8, 10 or 12 hours; 30 minutes by default).
Your active duty state
You can have one active duty state at a time. While it is active, the bot stores:
- the first link (start proof) and second link (duty proof) you post;
- the times the first and second links were posted;
- your duty text, and any notes you add (up to 500 characters);
- the server ID and channel ID;
- the IDs of the bot's tracking and reminder messages;
- reminder timing and whether points are being shown.
The third link is only used in the final message and is not saved. Links are stored exactly as you post them. The bot does not check where a link points, and does not download or store the content behind it.
Server whitelist
The IDs of servers allowed to use the bot, and when each was added.
What the bot does not store
The bot does not store the text of ordinary messages, message history, avatars, usernames or display names, IP addresses, email addresses or member lists. The only identifier it stores for people is the Discord user ID, plus the profile fields you type in. The bot's code contains no analytics, advertising, cookies or tracking.
Messages and members the bot can see
- The bot uses Discord's Message Content access. It receives message events, but only acts on messages sent by non-bot users in the one DS Embed channel set for each server. Messages in other channels are ignored and not stored.
- The bot uses Discord's Server Members access to check whether a user has the server's admin role (for delaying reminders). It does not store member lists.
- The
/statusand/ds-calculatorcommands store nothing.
Logs
The bot writes operational messages to the host's console only. These can include a server's name and ID when the bot leaves it, whitelist information at startup, a user ID in some error messages, and general errors. No log files are saved, and console output is lost when the console page is refreshed. The owner plans to add more logging in the future. If that happens, this policy will be updated.
3. Why the data is used
- Server settings tell the bot which admin role and channels to use.
- Your profile is needed before you can start a duty state. Your timezone, duty and Roblox username are shown in your final duty state message. Your reminder interval sets how often you are reminded, and "Opt-Out Of Archives" controls what is posted to the archive.
- Your Discord user ID links your profile and duty state to you, and lets the bot mention you.
- Duty state data is used to track your session, send reminders and build the final message.
- The whitelist decides which servers the bot stays in.
How a duty state works
- You post a first link in the DS Embed channel. The bot deletes your message, posts a "Duty State Tracking" message that mentions you (with the start link, start time and points so far) and starts a reminder timer.
- You post a second link. It is recorded as your duty proof and your message is deleted.
- You post a third link. The bot posts a final duty state message in the channel, deletes your message and ends the stored session. The final message mentions you and shows your Roblox username, duty, proof link, start and end times in your timezone, both tablist links, and your notes if you added any.
Points are worked out only from elapsed time and are shown only on the live tracking message.
Reminders
The bot posts a reminder that mentions you at the interval you chose. It has a "Delay Reminder" button, which can be pressed by you, by holders of the server's admin role, or by the bot owner.
Final message cleanup and archiving
- The final message is deleted automatically after 5 minutes, or earlier if you (or the bot owner) press "Delete". The bot then also deletes the tracking message and recent messages that mention you in that channel (it checks the last 50 messages).
- The 5-minute timer is held in memory only. If the bot restarts during those 5 minutes, the automatic deletion may not happen.
- At cleanup, if the server has a DS Log channel, the bot posts a copy of the final message there, without mentioning you. If you turned on "Opt-Out Of Archives", it only posts "@user completed a duty state." instead.
- Pressing "End & Delete" on the tracking message ends and deletes the session without archiving it.
- After an automatic (timed) deletion, the bot sends you a direct message saying your formatted duty state was deleted for being there longer than 5 minutes. If the message cannot be delivered, nothing else happens.
Server owners
When the bot joins a server, and each time it starts, it checks whether the server is whitelisted. If it is not, the bot tries to send the server owner a direct message saying the server must be whitelisted (by asking the bot owner, with the server ID) and that the bot is a work in progress. It then leaves the server.
4. Where the data is stored
Stored data is kept in a local SQLite database file on the owner's personal home server, managed with the Pterodactyl panel. Nothing in the bot's code sends this data anywhere else. No cloud hosting provider is used for the bot.
The owner does not keep backups of this database, so stored data could be lost.
5. How long the data is kept
- Server settings, profiles and the whitelist have no automatic retention period. They are kept until they are changed or deleted by hand.
- When the bot leaves or is removed from a server, that server's settings and its users' profiles are not deleted automatically.
- An active duty state is deleted when it ends (third link) or when "End & Delete" is pressed. A duty state that is never ended stays stored with no expiry.
- Final messages are deleted from the channel as described in section 3.
- Archive copies stay in the server's own DS Log channel, under that server's control. The bot does not delete them.
- Console logs are not saved to files and are lost when the console page is refreshed.
6. Third parties
- Discord. Everything happens through Discord, which has its own Terms of Service and Privacy Policy. Messages the bot posts, such as the final duty state (including your Roblox username), appear in Discord channels and can be seen by anyone who can read those channels.
- Gyazo. If the bot owner, and only the bot owner, posts an image (png, jpeg, gif or webp, up to 8 MB) in the DS Embed channel, the bot downloads it from Discord, uploads it to Gyazo and uses the link Gyazo returns. Images from anyone else are ignored and never uploaded.
- Roblox is not contacted by the bot.
- Hosting. The bot runs on the owner's personal home server. No cloud hosting provider is used for the bot.
The bot's code makes no network calls other than to Discord and Gyazo.
7. Who can see your data
- The bot's code does not sell data or share it with advertisers.
- Server administrators, and anyone who can read the relevant channels, can see what the bot posts there, including in log or archive channels.
- Server administrators can view their server's saved settings with
/server-settings. - The bot owner can see all stored data, including the names and IDs of every server the bot is in.
8. Your choices and rights
Users
- You can change your timezone, duty and Roblox username, turn "Opt-Out Of Archives" on or off, and change your reminder interval at any time from the profile panel. "Check Settings" shows what is saved.
- You can delete your final message with the "Delete" button within 5 minutes, or end a duty state without archiving it using "End & Delete".
- There is no button to erase your profile. To have it deleted, send a Discord direct message to @seek_zz. The owner will remove all of your stored settings by hand, as soon as reasonably possible.
- Copies already posted in a server's DS Log channel are controlled by that server's administrators, not by the bot owner. To have them removed, ask that server's administrators.
Servers
- Server administrators can ask for their server's settings to be removed by sending a Discord direct message to @seek_zz. The owner will remove them by hand on request. Removing the bot from a server does not remove them automatically.
For any other question or request about your data, contact seek the same way.
9. Age
The bot does not check anyone's age. You must meet Discord's minimum age to use it, which is 13, or higher in some countries. The bot is not intended for children below that age.
10. Changes to this policy
This policy may change, for example if more logging is added to the bot. Any new version will be posted on this page with a new "Last updated" date.
11. Contact
Send a Discord direct message to @seek_zz, or ping @seek_zz in any server you are both in. No email address is offered.