Träffrutor (engelska: hitboxes) är de områden i ett video- eller datorspel som programmerats för att avgöra när en handling, till exempel en attack, träffar ett mål. Träffrutans form och storlek används av spelmotorn för att räkna ut om en attack orsakar skada eller utlöser en annan effekt.
Grundläggande begrepp
- Träffruta (hitbox): ett område kopplat till ett vapen eller en attack. Om en fiende eller ett objekt befinner sig inom denna ruta när attacken utförs, registreras en träff.
- Skadebox / Hurtbox: det område på en spelare eller en enhet som kan ta skada. Hurtboxar styr vad som kan påverkas av andra spelares attacker.
- Splash damage: ett område runt en explosion eller effekt där en enhet tar skada även om den inte träffas direkt av projektilen.
- Vänskaplig eldgivning (friendly fire): om denna mekanik är aktiverad kan splash damage eller träffar skada lagkamrater. Se även begreppet vänskaplig eldgivning.
- Exempel på vapen som ofta ger stänkskador: raketkastare och granater.
Typer av träffrutor och representation
- Enkla geometriska former: cirklar, rektanglar eller kapslar används ofta för att spara beräkningskraft.
- Flerdelade träffrutor: komplexare modeller kan ha flera separata hurtboxar för huvud, kropp och extremiteter.
- Pixel- eller per-pikselkollision: mer exakt men kostsamt, används sällan i realtidsspel.
- Animationstightning: träffrutor kan röra sig oberoende av synliga animationer för bättre känsla och balans.
Teknisk implementering
Implementeringen varierar beroende på speltyp och krav på prestanda:
- Server-side vs client-side: i nätbaserade spel avgörs ofta slutlig träffregistrering på servern för att undvika fusk och synkroniseringsproblem.
- Prediktion och lagkompensation: tekniker för att maskera nätfördröjning kan påverka när en träff registreras.
- Collision layers: olika typer av träffrutor (t.ex. miljö, projektill, spelarhurtbox) hanteras ofta i separata kollisionslager.
Användningsområden och designöverväganden
Träffrutor används inte bara för att avgöra skada utan påverkar också spelkänsla och balans. Viktiga avvägningar:
- Precision kontra prestanda — enklare rutor ger bättre prestanda men kan kännas felaktiga för spelaren.
- Fairness — att göra hurtboxar något mindre än den visuella modellen kan förbättra spelbarheten.
- Feedback — tydlig visuell och auditiv återkoppling när en träff registreras ökar spelarnöjdheten.
Vanliga problem och motåtgärder
- Desynk mellan klient och server: kan leda till att spelare upplever att träffar “missar” eller “teleporteras” — löses med serververifiering och lagkompensation.
- Oavsiktliga träffar: dåliga hurtboxplaceringar kan ge känslan av orättvisa — finjustera boxarnas storlek och position.
- Stänkskador på egen spelare: explosiva vapen, som raketkastare och granater, kan skada användaren om explosionen sker för nära — spelmekaniker kan begränsa eller modifiera denna effekt.
- Vänskaplig eldgivning: när vänskaplig eldgivning är aktiverad måste speldesign ta hänsyn till lagdynamik och risk för griefing.
Praktiska råd för utvecklare
- Starta med enkla träffrutor och iterera utifrån speltest.
- Mät hur ofta och i vilka situationer spelare upplever “felträffar” och justera.
- Använd separata hurtboxar för huvud och kropp för att ge mer nyanserad skada.
- Testa explosiva effekter noggrant så att attacker med areaeffekt känns konsekventa och förutsägbara.
Sammanfattning
Träffrutor är en grundläggande teknik för att avgöra interaktioner i video- och datorspel. Genom att kombinera välutformade hurtboxar, tydlig återkoppling och korrekt serverlogik kan utvecklare skapa ett spel som känns rättvist och responsivt, även när mekaniker som stänkskador och vänskaplig eldgivning används.