Chat: bigger text option, and don't keep old matches' chat around

Offen
#68 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 2 Tagen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
35/100
Issue-Typ
Feature
Klarheit
Muss geklärt werden
Aktivitätsstatus
Aktiv
Tech-Stack
lua
Bereich
frontend

Rechercherichtung

Start with lib/debugplus/console.lua, compatibility/debugplus.lua, and api/chat.lua to trace chat rendering, font use, and lobby cleanup. The issue leaves the old-message behavior and defaults undecided, so first resolve the listed UX questions; then add the agreed text-size and history options and verify they apply to the open console and fading messages.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

What we want

  1. Bigger chat text. A setting for the chat text size.
  2. Old messages shouldn't hang around. Some option so chat from earlier matches doesn't stay on screen and in the log forever, for example clearing it when a new match is found, or hiding it. The right UX still needs deciding (see below).

Today

  • Chat is the console in lib/debugplus/console.lua (or DebugPlus's own console when that mod is loaded, compatibility/debugplus.lua).
  • Text is drawn with LÖVE's current font (love.graphics.getFont()), so its size is fixed: there is no setting for it.
  • The log keeps the last 500 messages (console.lua, #messages > 500) and is never cleared. Leaving a lobby (MPAPI.chat.cleanup in api/chat.lua) unhooks sending but keeps every message, so the last match's chat is still there in the next one.
  • With the console closed, new messages show for 5 seconds and fade over 1 second (showTime, fadeTime).

Text size

  • A size option in the mod's settings, for example Small / Medium / Large (or a slider), applied to both the open console and the fading messages.
  • Line wrapping and scrolling already measure with the font (font:getWrap, font:getHeight), so they should follow a bigger font, but the input line and window size need checking.
  • When DebugPlus is loaded its own console draws the text; we may only be able to size ours.

Old chat: options to decide between

Option Upside Downside
Clear the log when a new match is found Each match starts clean; simplest to explain Can't scroll back to what someone said last game (for a report, say)
Divider instead of clearing ("--- New match vs X ---") Keeps history, makes it clear what is old Old messages still fill the log
Hide old matches' messages, keep them in memory (show with a toggle or command, e.g. /history) Clean by default, nothing lost More to build and explain
Clear when leaving the lobby Matches the lobby lifecycle Same downside as clearing
A /clear command Player decides Doesn't help anyone who doesn't know about it

Open questions:

  • Default on or off? Which option is the default?
  • Should the fading on-screen messages (console closed) ever show a message from a previous match?
  • Reports: if a player wants to report chat from a finished match, does the server's copy cover that, so clearing the client log is safe?
  • Should the same setting cover system notices (yellow) or only player messages?
Vorherrschende Sprache
Lua
Sterne
10
Forks
8
Ø Merge
1 T. 18 Std.
Gemergte PRs (30 T.)
20

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus Balatro-Multiplayer/BalatroMultiplayerAPI

Alle Issues in Balatro-Multiplayer/BalatroMultiplayerAPI

Ähnliche Issues

Weitere Issues zu Lua

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.