Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Store partially compressed game inputs for reconcatenation

Aperta
#660 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
30/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
lua
Ambito
backend

Direzione di ricerca

Start by tracing where the server stores player inputs and handles a spectator request, then inspect how inputs are concatenated and compressed. Keep the compressed portion available for later spectator requests and verify that appending newly compressed inputs produces a valid replay without recompressing prior inputs.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement priority: 2 - low Server-side

Currently the server holds the player inputs in a table.
When a player requests spectate, the server concatenates all inputs so far, compresses them and puts them in a partial replay that is sent to the new spectator.
The result of the concatenation is discarded.
This discard is unnecessary with the way compression is used.

Assume the following inputs when the spectator requests first:
AAAAggggAABBFE
This compresses to A4g4A2B2F1E1
Later another spectator joins and the full inputs are now:
AAAAggggAABBFEEEABBBBBFlkkkkggggggggiiiiigggggiiiiigggggiiiiiiigg
the only new inputs are
EEABBBBBFlkkkkggggggggiiiiigggggiiiiigggggiiiiiiigg and would compress to E2A1B5F1I1k4g8i5g5i7g2 on its own

The concatenation of two sections of inputs concatenate to the valid compressed string
A4g4A2B2F1E1E2A1B5F1I1k4g8i5g5i7g2
Every single concatenation for a new spectator can be expected to only add 2-3 character worth of string but avoids redoing previous work.

This is probably not really important with the current state of things but it makes things slightly easier for the server when people join as spectators on long matches.

Lingua principale
Lua
Stelle
30
Fork
20
Merge medio
6g 12h
PR unite (30g)
6

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di panel-attack/panel-game

Tutte le issue di panel-attack/panel-game

Issue simili

Altre issue su Lua

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.