18:00 ES BUY

RIERA BAIXA, 23 · 6 P.M.

RAVAL FIGHTER A neighbourhood story

Tear the poster down (drag, Enter or A)

A Latin American kid arrives in Barcelona with a red suitcase. His landlord is an old kung fu master. And someone wants to buy the whole building.

  • 16 CHAPTERS
  • 4 ENDINGS
  • 24 ERRANDS
  • ~18 HOURS
  • UP TO 8 FIGHTERS
  • 0 SPRITES

7 P.M. · THE DOORWAY

The story

Kowloon, 1987
ZHAO JUNDI «JORDI»
JUNDI Press A, Enter or click to continue
  1. Your name is Mateo. You come from far away, with a red suitcase and your grandma’s voice on your phone.
  2. You rent a room at number 23, Riera Baixa. I am the landlord. They call me Jordi. My name is not Jordi.
  3. The barrio will test you: pickpockets, can sellers, debt collectors, a Capo who charges a toll.
  4. I will teach you not to fight. Then, to fight. And Mei will teach you what I don’t know.
  5. There is a fund, Golden Homes, buying the Raval flat by flat. And it has a hired fist I know from Hong Kong.
  6. What you do with each neighbour will change how this ends. There are four endings. Not all of them are happy.

8 P.M.-1 A.M. · THE SHUTTERS

The 16 chapters

Press a shutter to roll it up. Above it, the emotional curve: how the story rises and falls.

Emotional curve of the 16 chapters. It peaks at Sant Joan (9) and the tournament (12), drops at Ashes (10) and hits bottom at The Master (14).

Pick a shutter

The 4 endings

Four padlocked shutters. You can peek through three. Not the fourth.

1 A.M. · THE MAP

Barcelona

The neighbourhood association’s photocopied map. Press a pin.

Carrer de l’Hospital

Carrer de l’Hospital

El Raval

For real: Named after the 15th-century Hospital de la Santa Creu, one of Europe’s great Gothic hospitals. Today it houses the Library of Catalonia.

In the game: The game’s first fight, suitcase in hand. And the Forn Wang bakery, where the youtiao come out hot. (Chapters 1, 3)

2 A.M. · THE BALCONIES

The neighbours

Ring a doorbell. Someone will lean out.

ZHAO JUNDI «JORDI»
ZHAO JUNDI «JORDI» PLAYABLE

«You still drop your guard on the left.»

The landlord. Old kung fu master from Kowloon.

Style
Southern kung fu. Patience, palms and not one strike too many.
Special
Running palm · W + right click: the dragon palm

3 A.M. · THE SHOP WINDOW

How to play

The appliance shop on the corner leaves its TVs on all night. Press a TV.

  • A tap, not a hold: the rival is stunned and your next hit does ×1.5. «COUNTER!»
  • Mateo’s special. Every Latin American mother has mastered it; Mateo learned from the best.
  • Focusing fills the meter… but while charging you can’t block. Slow and risky.
  • Every fighter has their own: LATIN FURY!, BREATH OF THE RED DRAGON!…
  • A master’s last secret. Breaks any guard. It is not taught to the strongest.
  • 2 vs 3, 3 vs 4… AI allies, rivals who take turns like a beat ’em up, and mini health bars.
  • Every lamp and neon rim-lights the fighters, with per-pixel normals on every bone. And lightning, head-on.
  • 14 Raval scenes that play out behind the fights: a bike theft, street vendors and the city police, rumba players, the MACBA skater, an ambulance…

BACKGROUND VIGNETTES: Bike theft · Street vendors and the police · Pickpocket at a café terrace · Tour guide with tourists · Delivery rider in a hurry · Neighbour watering (and soaking) · The bottle collector · Rumba players · Dog and sandwich · The MACBA skater · Umbrellas in the rain · Ambulance · Night worker · City police

Controls

Switches automatically to whatever you touched last.

A / D MOVE (BACK = BLOCK)
MOUSE FACE THE CURSOR · IN TEAMS, PICK A RIVAL
SHIFT RUN
SPACE JUMP
W LOOK UP · W + LEFT CLICK = UPPERCUT
S CROUCH (S+BACK = LOW BLOCK)
LEFT CLICK PUNCH (×2 = COMBO)
RIGHT CLICK KICK (S + RIGHT CLICK = SWEEP)
WHEEL ↑ FLIP-FLOP THROW!
WHEEL ↓ CHARGE ENERGY (SLOW AND RISKY)
F SUPER (FULL METER)
ENTER CONFIRM / NEXT LINE
ESC / P PAUSE · SKIP SCENE
M SOUND ON/OFF

4 A.M. · THE LAMP POST

The living barrio

Between chapters, the barrio goes on: the board at Paco’s bar has 24 errands from the neighbours. Tear off a strip.

Every errand earns RESPECT (0-100). The barrio notices: who gives you credit, who helps you and how the story ends. Four are required.

0/24 strips torn off

The corkboard at Paco’s bar, with the errands
  • STORY

    SHOPLIFTERS AT THE GROCERY

    Amigo: cada tarde entran en mi tienda unos listos que se llevan cosas en la chaqueta. Yo solo tengo dos ojos. Tú tienes dos más. Ven a vigilar. Pago en samosas. — Rashid

    RIERA BAIXA · 12 min · +10

  • STORY

    HOT YOUTIAO

    Pedido para la Sra. Pilar, calle d'en Robador. El youtiao frío es pan triste. Tienes lo que tarda en enfriarse. Corre. — Wang

    HOSPITAL → ROBADOR · 11 min · +12

  • STORY

    A GAME OF DOMINOES

    Al Amjad le falta pareja para el dominó de los jueves. Contra el Paco y yo. Se juega a 100 tantos y el que pierde paga los cafés. Sin trampas. — Ramón

    PLAÇA DELS ÀNGELS · 13 min · +8

  • STORY

    HAVE YOU SEEN CHURRO?

    Se ha escapado mi gato Churro por la ventana del patio. Es gordo, naranja y muy orgulloso. Seguro que está en los tejados. Recompensa: mi flan. — Pilar

    TEJADOS DE LA RIERA · 12 min · +10

  • NURI’S DELIVERY

    Rey: mañana a las siete llega el camión y mi sobrino tiene «gripe» (resaca). Necesito unas manos rápidas que no rompan los huevos. — Nuri

    SANT ANTONI ABAT · 11 min · +10

  • HOME SAFE, AT NIGHT

    Salgo del turno de noche de la residencia a las doce. Desde que no está El Mosca, rondan otros. ¿Me acompañas hasta casa? — Daniela

    ROBADOR → JOAQUÍN COSTA · 12 min · +12

  • WHAT’S LEFT OF EL MOSCA

    Los del Mosca se han quedado sin jefe y ahora cobran por su cuenta a los manteros de Robador. Esta noche. Tú y yo. — I.

    C. D'EN ROBADOR · 13 min · +15

  • THE MONEY THAT NEVER ARRIVED

    Asere, mandé 300 euros a mi mamá por un locutorio nuevo y no han llegado. Y al vecino tampoco. Aquí hay algo raro. Ayúdame a averiguarlo. — Yoandry

    C. DE L'HOSPITAL · 14 min · +15

  • THE PÉTANQUE FINAL

    Mi pareja de petanca, la Remei, se ha roto la cadera, y la final de la Lliga es el sábado. Contra el Evaristo. Necesito un brazo joven y una cabeza fría. — Carme

    JARDINS DE RUBIÓ I LLUCH · 13 min · +8

  • CLAPPING FOR EL CHATO

    Se busca palmero para el domingo. Mi primo el Tano tiene la gota. Se paga en gloria y en lo que caiga en la gorra. — El Chato, de la calle de la Cera

    RAMBLA DEL RAVAL · 13 min · +10

  • DELIVERIES FOR EDWIN

    Pana: me caí de la bici y tengo la muñeca como una arepa. Si hoy no reparto, la app me desactiva. ¿Me cubres una noche? — Edwin (rider 4471)

    J. COSTA → MACBA → HOSPITAL · 13 min · +12

  • PACO’S KITCHEN

    Esta noche cena el barrio en el bar. Gratis. Los del 23 y los bombers. Me falta cocinero. Hambre sobra. — Paco

    BAR DE PACO · 13 min · +12

  • MEI’S NOTEBOOK

    En mi cocina se quedó la libreta de recetas de mi madre. El 23 está precintado y vigilado. Ven de noche. Sin ruido. — Mei

    RIERA BAIXA · EL 23 · 13 min · +14

  • THE SQUARE BELONGS TO WHOEVER SKATES IT

    Una marca de zapatillas quiere echar a los chavales del MACBA. He apostado algo. Necesito a alguien con equilibrio. Tú no tienes, pero me vales. — I.

    PLAÇA DELS ÀNGELS · 13 min · +13

  • WATERS BREAKING IN ROBADOR

    La Fatou, la del 2º de Robador, sale de cuentas y su marido trabaja de noche en el puerto. Si oyes gritos, baja. Yo pongo el taxi; tú, los ojos. — Amjad

    EL TAXI DE AMJAD · 12 min · +11

  • MIREILLE’S PHOTOS

    Mon ami: mi abuela me dejó cuatro fotos de Barcelona, de 1956. Quiero encontrar los sitios. Tú conoces el barrio mejor que mi pasaporte. — Julien

    HOSPITAL → LA BOQUERIA · 14 min · +15

  • PAINTER WANTED (TALL)

    Tenemos sprays y una idea. Nos falta alguien que llegue arriba. Firmado: Bilal, Yasmin y el Dani (el Dani no sabe escribir su nombre en mayúsculas).

    RIERA BAIXA · EL FORN · 13 min · +9

  • MOVING DAY, NO LIFT

    Mi mamá llega de Guayaquil después de nueve años y tengo que subir un sofá a un cuarto sin ascensor. Pago en encebollado. — Marisol

    C. DE L'HOSPITAL · 4º SIN ASCENSOR · 13 min · +10

  • SECOND VOICE WANTED

    Karaoke solidario para los del 23. Mi pareja de dúo tragó humo y está afónico. No hace falta cantar bien: hace falta cantar. — Sgto. Ortiz, Bombers

    BAR MARSELLA · 13 min · +11

  • JUST TOMATOES, OK?

    Bro: los de Golden quieren vallar el huerto del Forat esta noche. Yo pongo los tomates. Tú pon las manos. No fumo, es una frase hecha. — Edu (el Fumeta)

    EL FORAT DE LA VERGONYA · 14 min · +14

  • GOALKEEPER WANTED (TO TEACH)

    Primo: mi sobrino juega la final del Torneig de Barris y quiere ser como el tío. Yo quiero que sea portero. Sin negocios. Palabra. — B.

    PLAÇA DE LA GARDUNYA · 13 min · +12

  • ROCÍO’S WEDDING

    Se casa mi nieta. La calle es de todos, pero la boda es nuestra. Busco a alguien con buen ojo y buenas maneras para el cordón. — Remedios

    SANT PAU DEL CAMP · 13 min · +13

  • HOT CHESTNUTS

    Cuarenta y un otoños en la misma esquina y el médico dice que no respire humo. Busco a alguien con paciencia y buen pulso para la noche de la Castanyada. — Rosario

    RAMBLA DEL RAVAL · TOTS SANTS · 13 min · +12

  • GRANDPA QUIMET IS LOST

    Mi abuelo tiene alzhéimer y se ha ido de casa en pijama. No va a sitios de ahora: va a sitios de antes. Por favor, ayúdame a encontrarle. — Aina (Riera Baixa, 14)

    RIERA BAIXA → C. DEL TIGRE · 14 min · +15

4:30 A.M. · THE PORT

Game modes

  • STORY

    STORY

    16 chapters, 11.5 h of main story. Pick a country and slang, make choices, and the barrio remembers.

    • Autosave and replayable chapters
    • The barrio between chapters: board, diary and neighbours
    • Three difficulty levels, switchable at any time
  • QUICK BATTLE

    Up to 8 fighters in two teams. Gamepads are detected automatically: press a button and you’re in.

    • Xbox and PlayStation, with their own icons
    • As many CPUs as you want, three levels
    • Choose map and light: 5 times of day, from afternoon to rain
  • ARCADE · RAVAL TOURNAMENT

    ARCADE · RAVAL TOURNAMENT

    8 fighters, 8 fights and a boss. Each with their own intro and illustrated ending.

    • VS screens and banter between rivals who know each other
    • Continues, score and records
    • A secret fighter to unlock
  • SURVIVAL

    SURVIVAL

    Waves on the Riera Baixa, harder each time. Every fifth, a boss with an escort.

    • Health and super carry over between waves
    • Groups of two and three rivals
    • Wave and score records
  • JUNDI’S 14 TRIALS

    JUNDI’S 14 TRIALS

    On the rooftop at dawn: Jundi explains, demonstrates with Iker as a sparring partner, and you do it.

    • Gold, silver and bronze medals by time
    • From the one-two to Mei’s exam
    • Combos, parries, flip-flop, super and the dragon palm

5 A.M. · BAR MARSELLA

The demo

At the back of the Marsella, among the absinthe bottles, there is an arcade cabinet. Insert a coin.

INSERT COIN

Demo: the classic browser version (HTML, CSS and JS), with the five streets of chapter 1. The full game is the new, much bigger version.

Controls (keyboard and mouse, like the full game): A/D move (back = block) · the mouse aims · left click punch · right click kick · wheel ↑ flip-flop · wheel ↓ charge · F super · Space jump · Shift run. Click the screen to play.

5:30 A.M. · THE KIOSK

One person and a team of agents

Raval Fighter was made by a single person directing a team of AI agents (Claude Code). The story, the design, the decisions and the review of every change are human; much of the code is written by the agents, in branches and pull requests that are tested and reviewed before they land. The numbers below are real, pulled from the repository by a script. And not one sprite: all the art is drawn by code.

  1. Person Decides what gets made The story, the characters, the tone of the neighbourhood and which chapter, errand or fix comes next.
  2. Agents Build it in parallel Each task goes to an agent on its own branch: scenes, dialogue, fights, art drawn by code.
  3. Agents + person Test it Automated playthroughs, screenshots of every section and the game open to actually play it.
  4. Person Reviews and merges Nothing lands unreviewed: every change is a pull request that gets checked, fixed and merged.
  • 76,499 LINES OF GDSCRIPT
  • 161 SCRIPTS
  • 107 RIG ANIMATIONS
  • 63 CHARACTERS
  • 4,747 LINES OF DIALOGUE
  • 60,376 WORDS
  • 441 MIN OF READING
  • 40 SOUND EFFECTS
  • 12 SONGS
  • 31 MERGED PULL REQUESTS
  • 6 SHADERS
  • 69 SCENES
  • 16 CHAPTERS
  • 24 ERRANDS
  • 18.3 HOURS IN TOTAL
  • 0 SPRITES
  • A bone rig drawn by code

    Every character is a skeleton of bones painted in local space; animation moves them on the GPU.

  • Per-pixel 2D lighting

    Street lamps, neons and pharmacy crosses rim-light every bone; lightning lights them head-on.

  • Background vignettes

    Neighbourhood scenes that play out behind every fight, each with its own script.

  • Generated audio

    Music and effects come from a Python synthesizer: scores by section, a compressor and a limiter.

  • Physics on the clotheslines

    Rigid-body ropes, pegged clothes and per-street wind with breezes and gusts.

  • Zero sprites

    Not one PNG of characters or scenery: facades, graffiti, portraits and rooftops are generated by code.

Computed by scripts/stats.mjs over the game’s repository · 2026-10-23

Fanzine · real code

6:30 A.M. · DAWN

Buy

  • One-time payment
  • No subscriptions
  • No microtransactions
  • No DRM

Includes

  • The full game: 16 chapters, 4 endings, 24 errands
  • Windows and web version
  • Arcade, Survival, Jundi’s Trials and Quick Battle for up to 8 fighters
  • Free updates
  • DRM-free: it’s yours, copy it wherever you like

Why this price: it’s what feels fair for a one-person indie game. No more, no tricks, no greed.

COMING SOON

The store isn’t open yet. Leave us your email and we’ll let you know the day it launches.

FAQ

Which platforms?

Windows (executable) and web (desktop browser). It’s made in Godot 4, so Linux and macOS are possible later.

What PC do I need?

Almost any: it renders at 400×225 and scales up. It uses Godot’s «Compatibility» renderer (OpenGL 3 / WebGL 2).

Can I play with a gamepad?

Yes. Xbox and PlayStation, with their own on-screen icons. In quick battle gamepads are detected automatically: press a button and you join.

Does it run on Steam Deck?

The Windows build should run through Proton with the Deck’s controls as a gamepad; it isn’t officially verified yet.

Which languages?

The game is in Spanish, with slang from six Latin American countries and some Catalan, French and Cantonese around the barrio.

How long is it?

About 11.5 h for the main story and ~18 h for everything (estimated from the actual dialogue and fights in each scene).

Is Golden Homes real?

No. Golden Homes, its staff and the Red Dragon are fictional. The Raval, its streets and its lifelong neighbours are not.

Why is the demo different?

The demo is the classic HTML/JS version with the five streets of chapter 1. The full game is the Godot version, with everything on this page.