From 87cb80d87c8b64808e4fc088f157d03917f71689 Mon Sep 17 00:00:00 2001 From: ishauny Date: Tue, 15 Jul 2025 20:37:54 +0100 Subject: [PATCH 1/3] Remove discriminators --- Floofbot/Modules/Administration.cs | 66 ++++++++++++------------ Floofbot/Services/EventHandlerService.cs | 30 +++++------ 2 files changed, 48 insertions(+), 48 deletions(-) diff --git a/Floofbot/Modules/Administration.cs b/Floofbot/Modules/Administration.cs index 66eadb6..5e9e4c4 100644 --- a/Floofbot/Modules/Administration.cs +++ b/Floofbot/Modules/Administration.cs @@ -54,7 +54,7 @@ public async Task YeetUser( { UserID = Convert.ToUInt64(userID), ModID = Context.Message.Author.Id, - ModUsername = $"{Context.Message.Author.Username}#{Context.Message.Author.Discriminator}", + ModUsername = $"{Context.Message.Author.Username}", Reason = reason }); _floofDB.SaveChanges(); @@ -98,7 +98,7 @@ public async Task YeetUser( try { //bans the user - await Context.Guild.AddBanAsync(badUser.Id, 0, $"{Context.User.Username}#{Context.User.Discriminator} -> {reason}"); + await Context.Guild.AddBanAsync(badUser.Id, 0, $"{Context.User.Username} -> {reason}"); } catch (Exception ex) { @@ -109,9 +109,9 @@ public async Task YeetUser( modEmbedBuilder = new EmbedBuilder(); modEmbedBuilder.Title = (":shield: User Banned"); modEmbedBuilder.Color = ADMIN_COLOR; - modEmbedBuilder.Description = $"{badUser.Username}#{badUser.Discriminator} has been banned from {Context.Guild.Name}"; + modEmbedBuilder.Description = $"{badUser.Username} has been banned from {Context.Guild.Name}"; modEmbedBuilder.AddField("User ID", badUser.Id); - modEmbedBuilder.AddField("Moderator", $"{Context.User.Username}#{Context.User.Discriminator}"); + modEmbedBuilder.AddField("Moderator", $"{Context.User.Username}"); await Context.Channel.SendMessageAsync("", false, modEmbedBuilder.Build()); } @@ -166,7 +166,7 @@ public async Task UnYeetUser([Summary("user")] string user) modEmbedBuilder.Color = ADMIN_COLOR; modEmbedBuilder.Description = $"{userId} has been unbanned from {Context.Guild.Name}"; modEmbedBuilder.AddField("User ID", userId); - modEmbedBuilder.AddField("Moderator", $"{Context.User.Username}#{Context.User.Discriminator}"); + modEmbedBuilder.AddField("Moderator", $"{Context.User.Username}"); await Context.Channel.SendMessageAsync("", false, modEmbedBuilder.Build()); } @@ -196,7 +196,7 @@ public async Task pruneBanUser( { UserID = Convert.ToUInt64(userID), ModID = Context.Message.Author.Id, - ModUsername = $"{Context.Message.Author.Username}#{Context.Message.Author.Discriminator}", + ModUsername = $"{Context.Message.Author.Username}", Reason = reason }); _floofDB.SaveChanges(); @@ -239,7 +239,7 @@ public async Task pruneBanUser( try { //bans the user - await Context.Guild.AddBanAsync(badUser.Id, 7, $"{Context.User.Username}#{Context.User.Discriminator} -> {reason}"); // default 7 days prune + await Context.Guild.AddBanAsync(badUser.Id, 7, $"{Context.User.Username} -> {reason}"); // default 7 days prune } catch (Exception ex) { @@ -250,9 +250,9 @@ public async Task pruneBanUser( modEmbedBuilder = new EmbedBuilder(); modEmbedBuilder.Title = (":shield: User Banned"); modEmbedBuilder.Color = ADMIN_COLOR; - modEmbedBuilder.Description = $"{badUser.Username}#{badUser.Discriminator} has been banned from {Context.Guild.Name}"; + modEmbedBuilder.Description = $"{badUser.Username} has been banned from {Context.Guild.Name}"; modEmbedBuilder.AddField("User ID", badUser.Id); - modEmbedBuilder.AddField("Moderator", $"{Context.User.Username}#{Context.User.Discriminator}"); + modEmbedBuilder.AddField("Moderator", $"{Context.User.Username}"); await Context.Channel.SendMessageAsync("", false, modEmbedBuilder.Build()); } @@ -281,7 +281,7 @@ public async Task ViewAutoBans() if (index < autoBans.Count) { var modUser = resolveUser(autoBans[index].ModID.ToString()); // try to resolve the mod who added it - var modUsername = ((modUser != null) ? $"{modUser.Username}#{modUser.Discriminator}" : $"{autoBans[index].ModUsername}"); // try to get mod's new username, otherwise, use database stored name + var modUsername = ((modUser != null) ? $"{modUser.Username}" : $"{autoBans[index].ModUsername}"); // try to get mod's new username, otherwise, use database stored name text += $"{index + 1}. {autoBans[index].UserID} - added by {modUsername}\n"; } } @@ -389,9 +389,9 @@ public async Task kickUser( EmbedBuilder kickBuilder = new EmbedBuilder(); kickBuilder.Title = ("🥾 User Kicked"); kickBuilder.Color = ADMIN_COLOR; - kickBuilder.Description = $"{badUser.Username}#{badUser.Discriminator} has been kicked from {Context.Guild.Name}"; + kickBuilder.Description = $"{badUser.Username} has been kicked from {Context.Guild.Name}"; kickBuilder.AddField("User ID", badUser.Id); - kickBuilder.AddField("Moderator", $"{Context.User.Username}#{Context.User.Discriminator}"); + kickBuilder.AddField("Moderator", $"{Context.User.Username}"); await Context.Channel.SendMessageAsync("", false, kickBuilder.Build()); } catch @@ -440,9 +440,9 @@ public async Task silentKickUser( EmbedBuilder kickBuilder = new EmbedBuilder(); kickBuilder.Title = ("🥾 User Silently Kicked"); kickBuilder.Color = ADMIN_COLOR; - kickBuilder.Description = $"{badUser.Username}#{badUser.Discriminator} has been silently kicked from {Context.Guild.Name}"; + kickBuilder.Description = $"{badUser.Username} has been silently kicked from {Context.Guild.Name}"; kickBuilder.AddField("User ID", badUser.Id); - kickBuilder.AddField("Moderator", $"{Context.User.Username}#{Context.User.Discriminator}"); + kickBuilder.AddField("Moderator", $"{Context.User.Username}"); await Context.Channel.SendMessageAsync("", false, kickBuilder.Build()); } @@ -504,7 +504,7 @@ public async Task warnUser( DateAdded = DateTime.Now, Forgiven = false, GuildId = Context.Guild.Id, - Moderator = $"{Context.User.Username}#{Context.User.Discriminator}", + Moderator = $"{Context.User.Username}", ModeratorId = Context.User.Id, Reason = reason, UserId = uid, @@ -533,10 +533,10 @@ public async Task warnUser( builder = new EmbedBuilder(); builder.Title = (":shield: User Warned"); builder.Color = ADMIN_COLOR; - string badUserIdentifier = (badUser != null) ? $"{badUser.Username}#{badUser.Discriminator}" : $"{uid}"; + string badUserIdentifier = (badUser != null) ? $"{badUser.Username}" : $"{uid}"; builder.Description = $"Warning added for {badUserIdentifier} with reason {reason}"; builder.AddField("User ID", uid); - builder.AddField("Moderator", $"{Context.User.Username}#{Context.User.Discriminator}"); + builder.AddField("Moderator", $"{Context.User.Username}"); await Context.Channel.SendMessageAsync("", false, builder.Build()); } @@ -598,7 +598,7 @@ public async Task userNote( DateAdded = DateTime.Now, Forgiven = false, GuildId = Context.Guild.Id, - Moderator = $"{Context.User.Username}#{Context.User.Discriminator}", + Moderator = $"{Context.User.Username}", ModeratorId = Context.User.Id, Reason = reason, UserId = uid @@ -608,10 +608,10 @@ public async Task userNote( builder = new EmbedBuilder(); builder.Title = (":pencil: User Note Added"); builder.Color = ADMIN_COLOR; - string badUserIdentifier = (badUser != null) ? $"{badUser.Username}#{badUser.Discriminator}" : $"{uid}"; + string badUserIdentifier = (badUser != null) ? $"{badUser.Username}" : $"{uid}"; builder.Description = $"Usernote added for {badUserIdentifier} with reason {reason}"; builder.AddField("User ID", uid); - builder.AddField("Moderator", $"{Context.User.Username}#{Context.User.Discriminator}"); + builder.AddField("Moderator", $"{Context.User.Username}"); await Context.Channel.SendMessageAsync("", false, builder.Build()); } @@ -675,10 +675,10 @@ public async Task PurgeUserMessages( EmbedBuilder builder = new EmbedBuilder(); builder.Title = (":shield: Messages Purged"); builder.Color = ADMIN_COLOR; - string badUserIdentifier = (badUser != null) ? $"{badUser.Username}#{badUser.Discriminator}" : $"{userId}"; - builder.Description = $"{badUser.Username}#{badUser.Discriminator}'s messages were purged"; + string badUserIdentifier = (badUser != null) ? $"{badUser.Username}" : $"{userId}"; + builder.Description = $"{badUser.Username}'s messages were purged"; builder.AddField("User ID", badUser.Id); - builder.AddField("Moderator", $"{Context.User.Username}#{Context.User.Discriminator}"); + builder.AddField("Moderator", $"{Context.User.Username}"); await Context.Channel.SendMessageAsync("", false, builder.Build()); } @@ -827,7 +827,7 @@ public async Task MuteUser([Summary("user")]string user, [Summary("Time")]string } if (Context.Guild.GetUser(badUser.Id).Roles.Contains(muteRole)) { - await Context.Channel.SendMessageAsync($"{badUser.Username}#{badUser.Discriminator} is already muted!"); + await Context.Channel.SendMessageAsync($"{badUser.Username} is already muted!"); return; } @@ -835,7 +835,7 @@ public async Task MuteUser([Summary("user")]string user, [Summary("Time")]string EmbedBuilder builder = new EmbedBuilder() { Title = "🔇 User Muted", - Description = $"{badUser.Username}#{badUser.Discriminator} Muted!", + Description = $"{badUser.Username} Muted!", Color = ADMIN_COLOR }; @@ -972,13 +972,13 @@ public async Task UnmuteUser([Summary("user")]string user) await Context.Guild.GetUser(badUser.Id).RemoveRoleAsync(muteRole); } else { - await Context.Channel.SendMessageAsync($"{badUser.Username}#{badUser.Discriminator} is not muted"); + await Context.Channel.SendMessageAsync($"{badUser.Username} is not muted"); return; } EmbedBuilder builder = new EmbedBuilder() { Title = "🔊 User Unmuted", - Description = $"{badUser.Username}#{badUser.Discriminator} was unmuted!", + Description = $"{badUser.Username} was unmuted!", Color = ADMIN_COLOR }; @@ -1131,7 +1131,7 @@ private async Task UpdateForgivenStatus(string function, string type, string bad if (user == null) // no user, just id in database builder.WithTitle($"{((type == "warnings") ? "Warnings" : "User Notes")} for {badUser}"); else - builder.WithTitle($"{((type == "warnings") ? "Warnings" : "User Notes")} for {user.Username}#{user.Discriminator}"); + builder.WithTitle($"{((type == "warnings") ? "Warnings" : "User Notes")} for {user.Username}"); if (warnings == null) // for some reason didnt recieve data from database { Log.Error("Fatal error when trying to access warnings for the forgive user command!"); @@ -1174,7 +1174,7 @@ private async Task UpdateForgivenStatus(string function, string type, string bad if (w.Id == warningId) { var modId = Context.Message.Author.Id; - var modUsername = $"{Context.Message.Author.Username}#{Context.Message.Author.Discriminator}"; + var modUsername = $"{Context.Message.Author.Username}"; await SetWarningForgivenStatus(w, !oldStatus, modId); await Context.Channel.SendMessageAsync($"Got it! {modUsername} has {function} the warning with the ID {w.Id} and the reason: {w.Reason}."); return; @@ -1188,7 +1188,7 @@ private async Task UpdateForgivenStatus(string function, string type, string bad if (un.Id == warningId) { var modId = Context.Message.Author.Id; - var modUsername = $"{Context.Message.Author.Username}#{Context.Message.Author.Discriminator}"; + var modUsername = $"{Context.Message.Author.Username}"; await SetUserNoteForgivenStatus(un, !oldStatus, modId); await Context.Channel.SendMessageAsync($"Got it! {modUsername} has {function} the user note with the ID {un.Id} and the reason: {un.Reason}."); return; @@ -1244,7 +1244,7 @@ private Embed GetWarnings(ulong uid, bool isOwnLog) .Where(u => u.UserId == uid && u.GuildId == Context.Guild.Id) .OrderByDescending(x => x.DateAdded).Take(10); } - string badUserIdentifier = (badUser != null) ? $"{badUser.Username}#{badUser.Discriminator}" : $"{uid}"; + string badUserIdentifier = (badUser != null) ? $"{badUser.Username}" : $"{uid}"; if (!isOwnLog) // mod viewing someones history { if (formalWarnings.Count() == 0 && userNotes.Count() == 0) @@ -1288,7 +1288,7 @@ private Embed GetWarnings(ulong uid, bool isOwnLog) if (warning.Forgiven) { IUser forgivenBy = resolveUser(warning.ForgivenBy.ToString()); - var forgivenByText = (forgivenBy == null) ? "" : $"(forgiven by {forgivenBy.Username}#{forgivenBy.Discriminator})"; + var forgivenByText = (forgivenBy == null) ? "" : $"(forgiven by {forgivenBy.Username})"; builder.AddField($"~~**{warningCount + 1}**. {warning.DateAdded.ToString("yyyy MMMM dd")} - {warning.Moderator}~~ {forgivenByText}", $"{hyperLink}```{warning.Reason}```"); } else @@ -1326,7 +1326,7 @@ private Embed GetWarnings(ulong uid, bool isOwnLog) if (usernote.Forgiven) { IUser forgivenBy = resolveUser(usernote.ForgivenBy.ToString()); - var forgivenByText = (forgivenBy == null) ? "" : $"(forgiven by {forgivenBy.Username}#{forgivenBy.Discriminator})"; + var forgivenByText = (forgivenBy == null) ? "" : $"(forgiven by {forgivenBy.Username})"; builder.AddField($"~~**{userNoteCount + 1}**. {usernote.DateAdded.ToString("yyyy MMMM dd")} - {usernote.Moderator}~~ {forgivenByText}", $"```{usernote.Reason}```"); } diff --git a/Floofbot/Services/EventHandlerService.cs b/Floofbot/Services/EventHandlerService.cs index e79494b..7ab6c73 100644 --- a/Floofbot/Services/EventHandlerService.cs +++ b/Floofbot/Services/EventHandlerService.cs @@ -249,7 +249,7 @@ public Task MessageUpdated(Cacheable before, SocketMessage afte var embed = new EmbedBuilder(); - embed.WithTitle($"⚠️ Message Edited | {after.Author.Username}#{after.Author.Discriminator}") + embed.WithTitle($"⚠️ Message Edited | {after.Author.Username}") .WithColor(Color.DarkGrey) .WithDescription($"{after.Author.Mention} ({after.Author.Id}) has edited their message in {channel.Mention}!") .AddField("Before", messageBefore.Content, true) @@ -301,7 +301,7 @@ public Task MessageDeleted(Cacheable before, Cacheable _before, Socke if (before.Nickname != after.Nickname) { - embed.WithTitle($"👥 Nickname Changed | {after.Username}#{after.Discriminator}") + embed.WithTitle($"👥 Nickname Changed | {after.Username}") .WithColor(Color.Purple) .WithDescription($"{after.Mention} | ``{after.Id}``") .WithFooter($"user_nickname_change user_namelog {after.Id}") @@ -679,7 +679,7 @@ public Task GuildMemberUpdated(Cacheable _before, Socke if (before.Roles.Count > after.Roles.Count) // roles removed { roleDifference = beforeRoles.Except(afterRoles).ToList(); - embed.WithTitle($"❗ Roles Removed | {after.Username}#{after.Discriminator}") + embed.WithTitle($"❗ Roles Removed | {after.Username}") .WithColor(Color.Orange) .WithDescription($"{after.Mention} | ``{after.Id}``") .WithFooter($"user_roles_removed user_rolelog {after.Id}") @@ -696,7 +696,7 @@ public Task GuildMemberUpdated(Cacheable _before, Socke else if (before.Roles.Count < after.Roles.Count) // roles added { roleDifference = afterRoles.Except(beforeRoles).ToList(); - embed.WithTitle($"❗ Roles Added | {after.Username}#{after.Discriminator}") + embed.WithTitle($"❗ Roles Added | {after.Username}") .WithColor(Color.Orange) .WithDescription($"{after.Mention} | ``{after.Id}``") .WithFooter($"user_roles_added user_rolelog {after.Id}") @@ -742,7 +742,7 @@ public Task UserKicked(IUser user, IUser kicker, IGuild guild) var embed = new EmbedBuilder(); - embed.WithTitle($"👢 User Kicked | {user.Username}#{user.Discriminator}") + embed.WithTitle($"👢 User Kicked | {user.Username}") .WithColor(Color.Red) .WithDescription($"{user.Mention} | ``{user.Id}``") .AddField("Kicked By", kicker.Mention) @@ -780,7 +780,7 @@ public Task UserMuted(IUser user, IUser muter, IGuild guild) var embed = new EmbedBuilder(); - embed.WithTitle($"🔇 User Muted | {user.Username}#{user.Discriminator}") + embed.WithTitle($"🔇 User Muted | {user.Username}") .WithColor(Color.Teal) .WithDescription($"{user.Mention} | ``{user.Id}``") .AddField("Muted By", muter.Mention) @@ -819,7 +819,7 @@ public Task UserUnmuted(IUser user, IUser unmuter, IGuild guild) var embed = new EmbedBuilder(); - embed.WithTitle($"🔊 User Unmuted | {user.Username}#{user.Discriminator}") + embed.WithTitle($"🔊 User Unmuted | {user.Username}") .WithColor(Color.Teal) .WithDescription($"{user.Mention} | ``{user.Id}``") .AddField("Unmuted By", unmuter.Mention) From c67ef44ea61d0762677c0a7041c737716671f64e Mon Sep 17 00:00:00 2001 From: ishauny Date: Tue, 15 Jul 2025 20:43:38 +0100 Subject: [PATCH 2/3] Update unban exception handler --- Floofbot/Modules/Administration.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Floofbot/Modules/Administration.cs b/Floofbot/Modules/Administration.cs index 5e9e4c4..4719563 100644 --- a/Floofbot/Modules/Administration.cs +++ b/Floofbot/Modules/Administration.cs @@ -155,9 +155,14 @@ public async Task UnYeetUser([Summary("user")] string user) { await Context.Guild.RemoveBanAsync(userId); // unban user } + catch (HttpException) + { + await Context.Channel.SendMessageAsync("⚠️ Command unable to be performed - user not be found!"); + return; + } catch (Exception ex) { - await Context.Channel.SendMessageAsync("Command unable to be performed sucessfully: " + ex.ToString()); + await Context.Channel.SendMessageAsync("⚠️ Command unable to be performed sucessfully. User may not be found?" + ex.ToString()); return; } EmbedBuilder modEmbedBuilder = new EmbedBuilder(); From 8c281bc6fc52a813618237308ee8b857f119c50b Mon Sep 17 00:00:00 2001 From: ishauny Date: Tue, 15 Jul 2025 21:02:49 +0100 Subject: [PATCH 3/3] Update message for clarity --- Floofbot/Modules/Administration.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Floofbot/Modules/Administration.cs b/Floofbot/Modules/Administration.cs index 4719563..dec8ed7 100644 --- a/Floofbot/Modules/Administration.cs +++ b/Floofbot/Modules/Administration.cs @@ -157,7 +157,7 @@ public async Task UnYeetUser([Summary("user")] string user) } catch (HttpException) { - await Context.Channel.SendMessageAsync("⚠️ Command unable to be performed - user not be found!"); + await Context.Channel.SendMessageAsync("⚠️ Command unable to be performed - ban entry not be found!"); return; } catch (Exception ex)