diff --git a/app/game/[id]/game-page-client.tsx b/app/game/[id]/game-page-client.tsx
index a6558f3..1f08d4d 100644
--- a/app/game/[id]/game-page-client.tsx
+++ b/app/game/[id]/game-page-client.tsx
@@ -15,6 +15,7 @@ import {
Plus,
ThumbsUpIcon,
ThumbsDownIcon,
+ GaugeIcon,
} from "lucide-react"
import Link from "next/link"
import { useSession } from "@/lib/auth-client"
@@ -81,6 +82,7 @@ interface Preset {
fpsAvg: number | null
fpsLow: number | null
fpsHigh: number | null
+ fpsOnePercentLow: number | null
upscalerType: string | null
upscalerVersion: string | null
frameGenMethod: string | null
@@ -102,6 +104,8 @@ interface StatsResponse {
bestDevice: string
verifiedCount: number
versionCount: number
+ avgStability: number | null
+ bestOnePercentLow: number | null
}
isRawPerformer: boolean
isPoorPerformance: boolean
@@ -111,6 +115,7 @@ interface StatsResponse {
min: number
q1: number
median: number
+ onePercentLow?: number
q3: number
max: number
}>
@@ -136,6 +141,7 @@ interface StatsResponse {
fpsLow: number
fpsAvg: number
fpsHigh: number
+ fpsOnePercentLow: number | null
isRawPerformer: boolean
}>
deviceBreakdown: Array<{
@@ -840,11 +846,16 @@ export function GamePageClient({
{" "}
avg
- {preset.fpsLow !== null && (
+ {preset.fpsOnePercentLow !== null && (
{" "}
- ({preset.fpsLow}–
- {preset.fpsHigh})
+ · {preset.fpsOnePercentLow} 1% low
+
+ )}
+ {preset.fpsLow !== null && preset.fpsHigh !== null && !preset.fpsOnePercentLow && (
+
+ {" "}
+ ({preset.fpsLow}–{preset.fpsHigh})
)}
@@ -953,6 +964,13 @@ export function GamePageClient({
)}
icon={DatabaseIcon}
/>
+ {filteredStats.summary.avgStability !== null && (
+