From a4690bd2a6df598583d21dfea34da2279991e62b Mon Sep 17 00:00:00 2001 From: TorranceTech Date: Tue, 30 Jun 2026 09:05:18 -0700 Subject: [PATCH 1/4] fix(wyvern): correct art to 5 lines per frame, remove ANSI codes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Wyvern art had 6 lines per frame (spec requires exactly 5) and frame 1 contained forbidden ANSI escape sequences. Redesigned all three frames to comply with the art format spec: 5 lines, ≤14 display chars per line, no ANSI codes, {E} eye placeholder on line 2. Wing beat animation now cycles: spread (^) → mid-beat (v) → shimmer (~). Signed-off-by: TorranceTech --- server/art.ts | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/server/art.ts b/server/art.ts index fc51248..f211286 100644 --- a/server/art.ts +++ b/server/art.ts @@ -103,24 +103,24 @@ export const SPECIES_ART: Record = { [" ", " /\\ /\\ ", " ( {E} {E} ) ", " ( .. ) ", " `------'~ "], ], wyvern: [ - ["} {", + // Frame 0: wings spread, head up + ["} {", "|\\^```^/|", - "\\ {E}' '{E} /", - " \\ } { /", - " ≈(° °)≈", - " '-'"], - ["} {", + "\\ {E}' '{E} /", + " \\ ~ / ", + " `--v--' "], + // Frame 1: wings mid-beat + ["} {", + "|/v```v\\|", + "\\ {E}' '{E} /", + " / ~ \\ ", + " `--v--' "], + // Frame 2: wing tips shimmer + ["~ ~", "|\\^```^/|", - "\\ {E}' '{E} /", - " \\ } { /", - " ≈(° °)≈", - " \x1b[38;2;255;120;0m//|\\\\\x1b[0m"], - ["} {", - "|\\^```^/|", - "\\ {E}' '{E} /", - " \\ } { /", - " ≈(° °)≈", - " 'v'"], + "\\ {E}' '{E} /", + " \\ ~~ / ", + " `--v--'~ "], ], pikachu: [ [" ", " /\\_/\\ ", " ({E} {E}) ", " ( ω ) ", " (__) "], From a93b1750afd654596bcec2b6efba96f8b2c2a5a5 Mon Sep 17 00:00:00 2001 From: TorranceTech Date: Tue, 30 Jun 2026 09:05:37 -0700 Subject: [PATCH 2/4] feat(reactions): add species-specific reactions for wyvern and pikachu MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Wyvern and pikachu were listed in SPECIES and had art but zero species-specific reactions — they fell back entirely to the generic pool. Added ~14 reaction pools per species covering: error, test-fail, commit, push, merge-conflict, late-night, type-error, lint-fail, build-fail, all-green, deploy, pet, idle, hatch, large-diff. Wyvern: ancient/serpentine voice — cryptic, regal, fire-breath themed. Pikachu: electric/energetic voice — sparky, enthusiastic, cheek-glow themed. Signed-off-by: TorranceTech --- server/reactions.ts | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/server/reactions.ts b/server/reactions.ts index ebcd968..f79e773 100644 --- a/server/reactions.ts +++ b/server/reactions.ts @@ -418,6 +418,40 @@ const SPECIES_REACTIONS: Partial> = { From 311e38d5803232177851ea776843def0d87ce253 Mon Sep 17 00:00:00 2001 From: TorranceTech Date: Tue, 30 Jun 2026 09:09:58 -0700 Subject: [PATCH 3/4] fix(wyvern): align all art lines to 9 chars for consistent display width Previous fix left lines 3-4 at 11 chars while lines 0-2 were 9 chars, making the body appear wider than the head in the status line. All five lines are now consistently 9 display chars wide. Signed-off-by: TorranceTech --- server/art.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/server/art.ts b/server/art.ts index f211286..fc37bfc 100644 --- a/server/art.ts +++ b/server/art.ts @@ -103,24 +103,24 @@ export const SPECIES_ART: Record = { [" ", " /\\ /\\ ", " ( {E} {E} ) ", " ( .. ) ", " `------'~ "], ], wyvern: [ - // Frame 0: wings spread, head up + // Frame 0: wings spread ["} {", "|\\^```^/|", "\\ {E}' '{E} /", - " \\ ~ / ", - " `--v--' "], + " \\ ~ / ", + " `--v--'"], // Frame 1: wings mid-beat ["} {", "|/v```v\\|", "\\ {E}' '{E} /", - " / ~ \\ ", - " `--v--' "], - // Frame 2: wing tips shimmer + " / ~ \\ ", + " `--v--'"], + // Frame 2: shimmer ["~ ~", "|\\^```^/|", "\\ {E}' '{E} /", - " \\ ~~ / ", - " `--v--'~ "], + " \\ ~~ / ", + " `--v--'"], ], pikachu: [ [" ", " /\\_/\\ ", " ({E} {E}) ", " ( ω ) ", " (__) "], From 0df9c1b461fac473ba6a46bdfeea7be60aab836c Mon Sep 17 00:00:00 2001 From: TorranceTech Date: Tue, 30 Jun 2026 09:16:53 -0700 Subject: [PATCH 4/4] fix(wyvern): taper body lines to 8 chars below 9-char wings Lines 3-4 now use 1 leading space (8 chars) instead of 2 (9 chars), giving the body a natural taper below the wingspan. Frame 2 tail gets a ~swish and double-wave belly for animation variety. Signed-off-by: TorranceTech --- server/art.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/server/art.ts b/server/art.ts index fc37bfc..a254ca7 100644 --- a/server/art.ts +++ b/server/art.ts @@ -107,20 +107,20 @@ export const SPECIES_ART: Record = { ["} {", "|\\^```^/|", "\\ {E}' '{E} /", - " \\ ~ / ", - " `--v--'"], + " \\ ~ /", + " `--v--'"], // Frame 1: wings mid-beat ["} {", "|/v```v\\|", "\\ {E}' '{E} /", - " / ~ \\ ", - " `--v--'"], + "/ ~ \\ ", + " `--v--'"], // Frame 2: shimmer ["~ ~", "|\\^```^/|", "\\ {E}' '{E} /", - " \\ ~~ / ", - " `--v--'"], + " \\ ~~ /", + " `--v--'~"], ], pikachu: [ [" ", " /\\_/\\ ", " ({E} {E}) ", " ( ω ) ", " (__) "],