Problemet med at gøre dette er den lethed, hvormed spillerne kan hacke resultattavler for at vinde præmier på tilbud. Og selvfølgelig, jo bedre præmier jo mere sandsynligt du inviterer hackere. Dette gælder for alle web-baserede spil, uanset teknologi, der anvendes til at gennemføre dem. Uanset om det er et Flash spil, HTML5 spil eller Unity spil, det er muligt at bruge nogle eller alle af de følgende metoder til at snyde og vinde præmier.
Høj Score Script Send Hacking
Alle web-baserede spil bruger server side til lagring globale resultattavler, der er fælles for alle spillere. Dette opnås ved at have spillet opkaldet en ekstern server-side script. Spillet sender spillerens score data til server-side script, som derefter processer og butikker kvalificerende scores i en server-side datafil eller database.
Problemet med at gøre dette er det nemt for en spiller at opfange og ændre data, der sendes til scriptet. Eller hvis de har placeringen af resultattavlen script, de kan eftergøre score indsendelse, helt uafhængigt af spillet. Dette giver mulighed for en spiller at tilføje uanset score de ønsker at resultattavlen.
Memory Hacking
En anden meget almindelig metode til snyd på web-baserede spil er at hacke til pointresultatet i hukommelsen som spillet kører. Der er frit tilgængelige programmer designet til specifikt at gøre dette. Det gør det relativt nemt for enhver spiller at lokalisere og ændre de nuværende score værdier i hukommelsen som de spiller spillet.
Hacking Timed Flash Spil
Denne ene er mere specifikke for Flash spil, og betyder, at det er muligt at manipulere spil, score baseret på tid opnået (eksempelvis hurtigste tid vinder) for at vinde præmier. For at forklare, hvordan det fungerer, vi har brug for en smule teknisk forklaring.
Der er to primære måder, en udvikler kan gennemføre et spil timer, som de vælger, vil afhænge af nøjagtigheden, de har brug for:
Tied i hovedspillet loop
Dette er den mindst præcise metode, med nøjagtighed afhængig af spillet billedhastighed. F.eks. et spil der kører med 30 billeder per sekund vil give en timer til at være nøjagtig til 1 /30th af et sekund. Dette er fint for mange typer af spil. Fordi timeren er låst ind i spillet loop, hvis spillet fremskynder eller bremser, hastigheder timeren automatisk op eller bremser tilsvarende. Denne metode er at foretrække, da den ikke giver mulighed for denne form for snyd. Men hvor større nøjagtighed er påkrævet i en tidsindstillet spil (siger du har brug for nøjagtighed til 100 af et sekund for at differentiere spiller scorer), er der behov for en anden metode.
Bundet i computerens interne ur
Ved at bruge det interne ur af spillerens computer til at drive spil timer, kan der opnås en meget højere grad af nøjagtighed. Dette kan være nødvendigt i tempofyldt racerspil, for eksempel, hvor uden denne nøjagtighed ville der ikke være noget til at adskille spillerens score.
Ulempen ved at gøre det den anden vej er det gør spillet timeren uafhængigt af de vigtigste spil loop og billedhastighed. Så uanset den hastighed spillet kører på, er det tid stadig låst til samme "rigtige" tid. Dette kan åbne et spil op til muligheden for snyd ved at manipulere spillet billedhastighed. Software er let tilgængelige, der giver spilleren mulighed for at ændre frame rate af et Flash spil kører på deres computer. Ved at bruge dette, kan de fremskynde et spil, samtidig med at have spillet timeren køre i samme tempo. Dette tillader dem at opnå et givent spil opgave meget hurtigere i forhold til spil timer, dermed at kunne opnå en langt bedre score, end de ellers ville.
Bekæmpelse Score Hacking
Der er en række måder erfarne udviklere kan hjælpe med at eliminere risikoen for snyd for at vinde præmier. I tilfælde af scriptet Send hacking disse kan omfatte kontrol indsendte scoringer mod en mulig interval (og smide ud umulige scores) og også ved hjælp af noget, der hedder en kryptografisk hash at kontrollere, at score send kom fra selve spillet. I tilfælde af hukommelsen hacking, følsomme værdier såsom spiller scorer, kan krypteres i hukommelsen for at gøre det mere vanskeligt at finde værdien at manipulere. Ingen af disse metoder vil gøre hacking umuligt imidlertid blot afskrække tilfældige hackere. Hvis en erfaren hacker ønsker at hacke et spil slemt nok, de vil.
Løsningen
Når ingen præmier er på spil, hacking resultattavler er virkelig ikke et problem. Med intet incitament til at hacke spillet, spillerne er langt mindre tilbøjelige til at gøre det. Plus, der er begrænsede sikkerhedsmæssige skridt, der kan træffes for at gøre det meget sværere for spillerne at hacke resultattavlen.
Problemet kommer, når der er præmier på spil. Den opfattelse af, at det er OK at køre konkurrencer på denne måde ikke hjulpet af, at klart uerfarne udviklere opretter den slags konkurrencer på hjemmesider som Facebook, kun at have resultattavler hacket med urealistiske scoringer, for at vinde præmierne . Dette betyder dog ikke, du er nødt til at droppe ideen om en konkurrence helt.
Der er en enkel løsning. Kør en gratis adgang lodtrækning i stedet.
Dette giver dig fuld kontrol over tildeling præmier og helt fjerner incitamentet til at hacke, fordi belønningen er ikke længere en garanteret præmiepulje sejr. Samlet set er det en meget sikrere løsning, der gør det muligt at implementere din konkurrence uden at risikere at gøre det ugyldige ved tilfældige hackere.
Læs mere information om web-baserede spil design og udvikling.
Vejviser