Files
weirsoe-party-protocol/docs/F0_ANTI_CHEAT_RULES.md

2.1 KiB

F0 anti-cheat regler — Fup og Fakta

Formål

Fastlæg simple, håndhævelige anti-cheat regler for F0, så runderne opleves fair uden tung NLP/moderation.

Scope (F0)

Gælder for inputfasen hvor spillere indsender løgne til et spørgsmål.

Regelsæt (F0)

1) Ingen identiske løgne i samme runde

  • To spillere må ikke have samme løgntekst efter normalisering.
  • Hvis en indsendt løgn matcher en eksisterende løgn i runden, afvises den med fejlbesked og spilleren skal indsende ny tekst.

2) Ingen løgn må være identisk med korrekt svar

  • En løgn, der matcher det korrekte svar efter normalisering, afvises.

3) Ingen tomme eller trivielt ugyldige svar

  • Tom tekst, kun whitespace eller kun tegnsætning afvises.
  • Minimumslængde: 2 tegn efter trim.

4) Én aktiv løgn pr. spiller pr. spørgsmål

  • Spilleren må gerne overskrive sin egen løgn inden deadline.
  • Ved deadline er kun seneste gyldige version gældende.

5) Ingen afslørende metatekst

  • Svar som eksplicit afslører bluff-mekanikken (fx “det rigtige svar er …”, “jeg lyver”) afvises i F0 via enkel nøgleordsblokliste.

Normalisering (bruges i regel 1 + 2)

Følgende normalisering anvendes før sammenligning:

  1. Unicode NFKC
  2. Trim + collapse af flere mellemrum til ét
  3. Lowercase
  4. Fjern afsluttende tegnsætning (., ,, !, ?, : ;)

Bemærk: F0 bruger ikke semantisk duplikatdetektion (synonymer/stavevarianter kan passere).

Håndhævelse i UX/API

  • Validering sker server-side ved submit.
  • Klienten får konkret fejlårsag og kan indsende igen inden tidsfrist.
  • Samme valideringsregler gælder for alle klienter (web/mobil).

Acceptance criteria (F0)

  • Identiske løgne (efter normalisering) kan ikke gemmes i samme runde.
  • Løgn == korrekt svar (efter normalisering) kan ikke gemmes.
  • Tom/ugyldig input afvises.
  • Overskrivning af egen løgn inden deadline virker.
  • Ved deadline bruges kun seneste gyldige løgn.

Out-of-scope (bevidst udskudt)

  • Semantisk duplikatdetektion (embeddings/fuzzy matching)
  • Avanceret toxicitet/moderation
  • Sprogdetektion og translitterering