File size: 3,006 Bytes
c8c1743
 
 
 
 
 
 
 
 
 
 
 
 
 
fd3006c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
e7db016
 
 
e98b994
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
e7db016
 
 
 
 
 
 
 
 
 
 
fd3006c
 
 
 
 
c8c1743
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
---
title: CityQuest AI
emoji: ๐Ÿ“‰
colorFrom: pink
colorTo: blue
sdk: gradio
sdk_version: 6.16.0
python_version: '3.12'
app_file: app.py
pinned: false
license: apache-2.0
short_description: A Multiplayer game to explore cities in the vintage way
---

# ๐ŸŽฎ AI-Powered Real-World Game Platform

An AI-powered platform that generates complete, playable real-world games โ€” rules, tasks, hints, scoring, and a narrative summary โ€” based on game type, location, and player preferences.


## Games Supported

- Scavenger Hunt
- Hide & Seek
- Tag

## How It Works

1. Select a game type, city, and preferences
2. AI generates rules, tasks, and hints
3. Play in the real world, track progress in the app
4. Record voice journals during play (auto-transcribed with [Cohere Transcribe](https://huggingface.co/CohereLabs/cohere-transcribe-03-2026))
5. Receive an AI-generated story summary of the outcome

## UI Improvements (v2.0)

The Gradio interface (`app.py`) adds a more interactive, server-driven feel
while keeping the existing in-process room state and `gr.Timer` polling model
(no backend/game logic changed):

- **Real-time form validation** โ€” the Join screen shows a live room-code
  counter/format check and only enables **Join** once a valid 6-character code
  and a name are present; the Create screen shows a live one-line summary of
  the chosen configuration.
- **Loading states** โ€” buttons that trigger model/IO work (create, start,
  transcribe, save journal, ask the guide, recaps, posters) disable while the
  call runs to prevent double-submits, alongside the existing inline loaders.
- **Streaming recap** โ€” the winning and funny recaps reveal
  paragraph-by-paragraph for a narrative pace (content unchanged; presentation
  only).
- **Toast notifications** โ€” `gr.Info`/`gr.Warning` toasts confirm joins, task
  completions, photo uploads, and journal saves, and surface validation errors.
- **Animated reveals** โ€” the task-detail panel and hint/safety notes ease in;
  status pills and the countdown timer transition smoothly on poll updates.
- **Adaptive polling** โ€” the shared poll timer stays at 1.5 s while anything is
  changing and eases to ~3 s when a screen is idle, snapping back to fast on any
  activity or screen transition.

## AI Models

| Stage | Model | Notes |
| --- | --- | --- |
| Game generation | `nvidia/NVIDIA-Nemotron-3-Nano-4B-GGUF` via llama.cpp | Retrieval-grounded, validation + repair enforced |
| Voice journal ASR | `CohereLabs/cohere-transcribe-03-2026` via ๐Ÿค— Transformers | 14 languages, lazy-loaded; typed-input fallback |
| Recap (optional) | `openbmb/MiniCPM5-1B-GGUF` | Currently using deterministic template recap for reliability |
| Poster (optional) | `black-forest-labs/FLUX.1-schnell` | Skipped under `CITYQUEST_SKIP_MODEL` |

Set `CITYQUEST_FAST_TEST=1` to run the entire pipeline without
downloading any model weights.

## Team



Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference