54 lines
2.1 KiB
Markdown
54 lines
2.1 KiB
Markdown
# 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
|