Reword NickServ replies to match ChanServ's friendlier tone

Clearer, more actionable wording across IDENTIFY, LOGOUT, HELP, the
unknown-command hint, and the registration replies, so the two services
read consistently.
This commit is contained in:
Jean Chevronnet 2026-07-12 08:59:36 +00:00
parent c0b41c6af5
commit 727713ee3f
No known key found for this signature in database
2 changed files with 11 additions and 11 deletions

View file

@ -477,11 +477,11 @@ fn reg_reply(reply: &RegReply, outcome: RegOutcome, account: &str) -> Vec<NetAct
RegOutcome::Ok => vec![ RegOutcome::Ok => vec![
// Registering identifies you to the nick right away (drives 900). // Registering identifies you to the nick right away (drives 900).
NetAction::Metadata { target: uid.clone(), key: "accountname".to_string(), value: nick.clone() }, NetAction::Metadata { target: uid.clone(), key: "accountname".to_string(), value: nick.clone() },
notice(format!("Nickname \x02{nick}\x02 is now registered.")), notice(format!("Your nick \x02{nick}\x02 is now registered and you're logged in. Welcome!")),
], ],
RegOutcome::Exists => vec![notice(format!("Nickname \x02{nick}\x02 is already registered."))], RegOutcome::Exists => vec![notice(format!("\x02{nick}\x02 is already registered. If it's yours, use \x02IDENTIFY <password>\x02."))],
RegOutcome::RateLimited => vec![notice("Too many registrations, please wait a moment.".to_string())], RegOutcome::RateLimited => vec![notice("Registrations are busy right now. Please try again in a moment.".to_string())],
RegOutcome::Internal => vec![notice("Registration failed, please try again later.".to_string())], RegOutcome::Internal => vec![notice("Sorry, that didn't work. Please try again in a moment.".to_string())],
} }
} }
} }

View file

@ -47,19 +47,19 @@ impl Service for NickServ {
Some(account) => { Some(account) => {
// Already identified to this account: don't re-fire the login. // Already identified to this account: don't re-fire the login.
if from.account == Some(account) { if from.account == Some(account) {
ctx.notice(me, from.uid, format!("You are already identified for \x02{}\x02.", account)); ctx.notice(me, from.uid, format!("You're already identified as \x02{}\x02.", account));
return; return;
} }
let account = account.to_string(); let account = account.to_string();
ctx.login(from.uid, &account); ctx.login(from.uid, &account);
ctx.notice(me, from.uid, format!("You are now identified for \x02{}\x02.", account)); ctx.notice(me, from.uid, format!("You're now identified as \x02{}\x02. Welcome back!", account));
} }
None => ctx.notice(me, from.uid, "Invalid password."), None => ctx.notice(me, from.uid, "Invalid password. Please try again."),
} }
} }
Some("LOGOUT") | Some("LOGOFF") => { Some("LOGOUT") | Some("LOGOFF") => {
if from.account.is_none() { if from.account.is_none() {
ctx.notice(me, from.uid, "You are not logged in."); ctx.notice(me, from.uid, "You're not logged in.");
return; return;
} }
// Guest nick = prefix + sequence (seeded from the link TS, bumped // Guest nick = prefix + sequence (seeded from the link TS, bumped
@ -68,15 +68,15 @@ impl Service for NickServ {
self.guest_seq = self.guest_seq.wrapping_add(1); self.guest_seq = self.guest_seq.wrapping_add(1);
ctx.logout(from.uid); ctx.logout(from.uid);
ctx.force_nick(from.uid, &guest); ctx.force_nick(from.uid, &guest);
ctx.notice(me, from.uid, format!("You are now logged out. Your nick is now \x02{}\x02.", guest)); ctx.notice(me, from.uid, format!("You're now logged out. Your nick is now \x02{}\x02.", guest));
} }
Some("CERT") => self.cert(from, &args, ctx, db), Some("CERT") => self.cert(from, &args, ctx, db),
Some("HELP") => ctx.notice( Some("HELP") => ctx.notice(
me, me,
from.uid, from.uid,
"Commands: REGISTER <password> [email], IDENTIFY <password>, LOGOUT, CERT ADD|DEL|LIST <password> [fingerprint].", "NickServ looks after your nickname. Commands: \x02REGISTER\x02 <password> [email], \x02IDENTIFY\x02 <password>, \x02LOGOUT\x02, \x02CERT\x02 ADD|DEL|LIST <password> [fingerprint].",
), ),
Some(other) => ctx.notice(me, from.uid, format!("Unknown command: {}. Try HELP.", other)), Some(other) => ctx.notice(me, from.uid, format!("I don't know the command \x02{other}\x02. Try \x02HELP\x02.")),
None => {} None => {}
} }
} }