Commit Graph
100 Commits
Author SHA1 Message Date
leanderandClaude Opus 5.5 562c30f45e only count streaks in the bot's own server
Messages in other servers the bot is in and in DMs no longer count
towards streaks, and catching up on missed messages at startup only
reads that server. Streaks started elsewhere made /streak se look up a
channel in another server, which crashed with InvalidData.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 20:34:43 +01:00
leanderandClaude Opus 5.5 154d4de881 render user text with noto sans cjk and fit it properly
Draw text that users write with Noto Sans CJK Bold so Chinese, Japanese,
Korean, Cyrillic and Greek no longer show up as boxes. It replaces
DejaVu Sans and Impact, and Comic Sans everywhere but the CS2 bingo.
The Dockerfile makes the font available to Graphviz for /mbti.

put_text_in_box now finds the largest font size where the text, wrapped
to the box's pixel width, fits, and centers the drawn text. Long texts
used to overflow and single letters were pushed out of their box.
Words are only split when keeping them whole would halve the size.

Long crab rave texts shrink to fit the video instead of going past its
edges, and the divider line is a bit longer.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 20:28:00 +01:00
leanderandClaude Opus 5.5 14c3caedf5 handle singular vs plural names for more counts
Use the singular form when the count is 1 for fun reply cooldowns,
channel slow mode and user limits, age in days, planned manga chapters,
film length and social credits.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 19:53:57 +01:00
leanderandClaude Opus 5.5 8ec2483918 use norwegian number formatting
Add misc_utils.format_number, which separates thousands with a
non-breaking space and uses a decimal comma, and use it for the numbers
shown in embeds and messages.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 19:45:18 +01:00
leander 3744b8f57f use better checkmark for docker status in botinfo 2026-11-01 19:34:05 +01:00
leanderandClaude Opus 5.5 e24523d1b3 simplify member status counting in /botinfo and /guild info
Count statuses with a Counter over discord.Status instead of one set or
counter per status, and share the emoji formatting between both commands.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 19:32:53 +01:00
leander 53c3655276 handle teams as bot owners 2026-11-01 19:26:57 +01:00
leander 8cef9d87cd handle singular vs plural names for "dager" 2026-11-01 19:15:32 +01:00
leander 1a35941227 make my own dick big again
dev is now set to the team id which meant my penis shrunk 0_o
2026-11-01 19:13:34 +01:00
leander 8797799094 output media title as nightcore filename 2026-11-01 19:11:24 +01:00
leander 22fd3d069f fix invalid mount config for logs 2026-11-01 18:19:05 +01:00
leander 81a2c8f57c Closes #57
hopefully
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 23:26:24 +01:00
leanderandClaude Opus 5.5 e92582a23d clean up leftover guild commands in prod and warn about duplicates in dev
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 23:18:31 +01:00
leanderandClaude Opus 5.5 5e6ed4d6cc add /versjon showing the branch and commit the bot runs
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 23:12:16 +01:00
leander e6389cdacf speed up /bursdag kommende 2026-10-29 23:09:06 +01:00
leanderandClaude Opus 5.5 646a1b1342 document setup requirements and code conventions
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 23:05:09 +01:00
leanderandClaude Opus 5.5 67a418ebe2 make import style consistent
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 22:58:27 +01:00
leanderandClaude Opus 5.5 70c0236a16 make docstrings consistent
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 22:55:32 +01:00
leanderandClaude Opus 5.5 1d29222fa4 rewrite the 10-man team draft as one message
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 22:45:39 +01:00
leanderandClaude Opus 5.5 03b79ed98a share lobby creation between 10-man and bingo and fix lobby timeouts
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 22:43:01 +01:00
leander f957299e70 extend 10-man team leader button interaction timeout to 5 min 2026-10-29 22:36:59 +01:00
leander 86b63169ac avoid duplicate bingo entries for games smaller than 5 people 2026-10-29 22:34:57 +01:00
leanderandClaude Opus 5.5 fa863b12c2 rework /nightcore
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 22:30:58 +01:00
leanderandClaude Opus 5.5 73e5cd7202 render viteboka articles from html instead of stripping wikitext
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 22:24:33 +01:00
leander 00ae08978d rewrite ordsky last logic 2026-10-29 22:17:42 +01:00
leander 0bb4d2bbc5 correct member role config key name 2026-10-29 22:16:42 +01:00
leander 2ad305afbf add rate limiter helper class 2026-10-29 22:16:00 +01:00
leander cecc2f7666 fix cache race condition 2026-10-29 22:06:45 +01:00
leander f445a62681 clean up /mock logic 2026-10-29 21:54:54 +01:00
leander f9d4247dcb add kaomoji to /owo 2026-10-29 21:48:55 +01:00
leander 8f273caf94 funreplies rewrite. add toggling and chance setting
let the AI overlords take the wheel
2026-10-29 21:45:24 +01:00
leander 670b4e860f add social credit rules for various voice activity 2026-10-29 21:30:32 +01:00
leander a929a3efca Update contribution guidelines to include command descriptiors 2026-10-29 21:24:00 +01:00
leander 05212c9eb6 Closes #26 2026-10-29 21:23:26 +01:00
leander 02da979ee2 use bot timezone for midnight loops 2026-10-29 21:04:23 +01:00
leander a615df4ba1 use multiline_textbox to draw text 2026-10-29 20:49:41 +01:00
leander be33df21ac prefer future dates for /mennesketid 2026-10-29 20:43:19 +01:00
leander f3dda90f58 fix chapters read being divided as minutes watched 2026-10-29 20:41:10 +01:00
leander 96aa7147de run image rendering in a separate thread 2026-10-24 18:17:25 +02:00
leander d6bdc4926c use timezone-aware datetimes everywhere 2026-10-24 18:14:43 +02:00
leander a2cc923f13 use configured timezone for db sessions 2026-10-24 18:10:01 +02:00
leander 6159d0f8a3 check rcon response 2026-10-24 18:07:56 +02:00
leander 31e80f409b rewrite put_text_in_box sizing logic 2026-10-24 18:06:25 +02:00
leander 649dc2fdb2 increase credit score int size 2026-10-24 18:04:30 +02:00
leander 6801c6a21a use timestamptz for streaks 2026-10-24 18:03:41 +02:00
leander bab4ecc626 remove outdated comments 2026-10-24 05:32:52 +02:00
leander 50036ae7ea Closes #19 2026-10-24 05:25:05 +02:00
leander 930da505cd Closes #37 2026-10-24 05:21:31 +02:00
leander 01bccceb6d reaplce shared psycopg2 connection with psycopg3 async pool 2026-10-24 05:16:24 +02:00
leander b5ed18ee42 use non blocking http requests 2026-10-24 05:08:24 +02:00
leander e2283200d9 use discord.py built in num range limiter for command params 2026-10-24 05:04:35 +02:00
leander 0c0e4ff5ff DRY 2026-10-24 05:02:23 +02:00
leander 4607aa7725 replace hardcoded channel and role ids with config values 2026-10-24 04:59:21 +02:00
leander 196cb8a65b download NLTK stopword at image build time instead of container boot 2026-10-24 04:56:40 +02:00
leander 3c85452aed use word frequencies to generate wordclouds instead of repeated word strings 2026-10-24 04:55:22 +02:00
leander fd88a234d3 use bytesIO instead of temp files 2026-10-24 04:52:29 +02:00
leander aea645d874 log background loop errors 2026-10-24 04:50:56 +02:00
leander 5e7a78e7fa avoid multiple SQL queries by using ON CONFLICT 2026-10-24 04:48:49 +02:00
leander 5214d8ce31 correctly unload star_check 2026-10-24 04:47:15 +02:00
leander 37093a91b4 improve user id check on lobby kick 2026-10-24 04:46:40 +02:00
leander adfd44b3ce fix various typos 2026-10-24 04:46:02 +02:00
leander 5040fb29c7 disable yt-dlp fetching of internal urls 2026-10-24 04:45:28 +02:00
leander 6535a2a08b handle empty helligdag api response 2026-10-24 04:44:36 +02:00
leander cf9945f06e replace deprecated logger.warn with logger.warning 2026-10-24 04:43:40 +02:00
leander d68745f624 log ignored non slash command errors 2026-10-24 04:43:13 +02:00
leander 60b518f5e6 fix botinfo docker env check 2026-10-24 04:42:40 +02:00
leander 331f4bba7e check cancellation status on event update
will this fix the issue I've had all this time???
2026-10-24 04:40:43 +02:00
leander 89b0a793e4 only publish set guild's events to website 2026-10-24 04:39:14 +02:00
leander 0e695e81df handle februrary 29 birthday cases 2026-10-24 04:38:29 +02:00
leander e0ad42efe0 fix days until next birthday being one day off 2026-10-24 04:37:28 +02:00
leander 52286c0610 use consent timestamp as word cloud tracking since date 2026-10-24 04:37:05 +02:00
leander 242aa21cdf defer /mbti se 2026-10-24 04:34:17 +02:00
leander 839db9e338 avoid naming conflicts for graph keys 2026-10-24 04:33:41 +02:00
leander d24cf49d2a handle users that have left the guild 2026-10-24 04:32:40 +02:00
leander e3f2b11007 wait for git pull to finish and display results 2026-10-24 04:31:30 +02:00
leander 62bab6c144 keep reloading cogs if one fails 2026-10-24 04:30:37 +02:00
leander b66384e27e send all arguments after channel id when using custommsg command 2026-10-24 04:29:17 +02:00
leander 44a39bba5a fix guild id argument for leave command 2026-10-24 04:28:36 +02:00
leander 8a9a0a0c82 use correct help message method 2026-10-24 04:27:57 +02:00
leander 5b6921e2cd always use article title for viteboka search results 2026-10-24 04:27:36 +02:00
leander 36202108eb fix nsfw channel check 2026-10-24 04:27:03 +02:00
leander 263311756c add closing ) to native neames 2026-10-24 04:25:25 +02:00
leander 8a5ea00c66 attempt to use anilist color for embeds 2026-10-24 04:24:57 +02:00
leander 74756ed354 fix favourite creator check typo 2026-10-24 04:24:06 +02:00
leander 2238e10169 fix anilist planning to read count always showing 0 2026-10-24 04:23:22 +02:00
leander 67bd43497a fetch emoji in order to see creator 2026-10-24 04:22:29 +02:00
leander 387c78484e handle non sticker replies for sticker command 2026-10-24 04:21:48 +02:00
leander 7b37acbd7d mannually check guild only where the whole command group is not applicable 2026-10-24 04:20:52 +02:00
leander cbd803768e put guild only restriction on command groups 2026-10-24 04:19:49 +02:00
leander ae672ad16f use correct pahts for temp role files 2026-10-24 04:18:09 +02:00
leander 90bdbee64a use correct verification level key 2026-10-24 04:16:51 +02:00
leander ae617b38cf disable lobby buttons when the lobby has timed out 2026-10-24 04:16:18 +02:00
leander 9f3a58242e fix lobby start button interaction failing 2026-10-24 04:15:00 +02:00
leander 24416aa216 fix in lobby check 2026-10-24 04:14:22 +02:00
leander 97087251bf avoid crashing aurora loop 2026-10-24 04:12:50 +02:00
leander c400f11351 fix timezone issues 2026-10-24 04:12:05 +02:00
leander 9cf351b57e cover cooldown edge case across days 2026-10-24 04:10:53 +02:00
leander b8522b95eb add timezone config option and use said timezone in social credit 2026-10-24 04:10:18 +02:00
leander 6ac9ed0884 use correct message sending method 2026-10-24 04:06:32 +02:00
leander 31ced09b59 handle caches on SIGTERM 2026-10-24 04:05:24 +02:00