Scheda del titolo hero con scritto Claude Opus 5.5 ha realizzato un RTS che si gioca tramite il suono e il sottotitolo Dentro il modem acustico di Battle Drones, sopra tre icone lineari piatte etichettate uplink a 10 kHz con un altoparlante, pacchetti da 188 bit con un controller di gioco e superframe da 2,05 s con un cronometro; il logo OrcaRouter si trova in una striscia bianca lungo il bordo inferiore.
Engineering & Research

Claude Opus 5.5 ha creato un RTS che si gioca tramite il suono: dentro l'Audio Modem di Battle Drones

Autore

Alistair Wren

Data di pubblicazione

Ultimi modelli · 20Vedi tutti i modelli →
Benchmark: Artificial Analysis · aggiornato ogni giorno
Torna a tutti gli articoli

Due telefoni su un tavolo, niente Wi-Fi, niente Bluetooth, nessun server da nessuna parte. Uno ospita una partita RTS in tempo reale, l'altro si unisce, e l'unica cosa che passa tra loro è rumore — una portante intorno ai 10 kHz in una direzione e a 17 kHz nell'altra, che trasporta gli ordini dei giocatori a circa 1.880 bit al secondo. Questa è la funzionalità più recente in Claude Opus 5.5, l'artefatto pubblico più ambizioso finora: Battle Drones, un RTS per browser in stile Command & Conquer che Simon Willison ha pubblicato il 20 ottobre 2026, dopo dodici iterazioni principali e 321 commit, per lo più da agenti di coding. Anthropic ha rilasciato Claude Opus 5.5 il 22 settembre 2026 a 4 $ per milione di token in input e 20 $ per milione in output, quindi il modello stesso ha un mese; ciò che è nuovo questa settimana è la cosa con cui è stato costruito, e la specifica aperta che la accompagna. Artefatti pubblici come questo tendono a omettere come il modello fallisce sotto il cofano, e gli incidenti registrati sono catalogati in the OrcaRouter AI Incident Archive dove ogni voce riporta le proprie fonti, la gravità, il grado di confidenza e il flag di contestazione.

Entrambe le parti di quell'affermazione sono verificabili. Il gioco è disponibile su simonw.github.io/battledrones/, il codice sorgente è su GitHub con licenza Apache-2.0, e il collegamento acustico non è una scatola nera: il repository contiene SOUND-DUEL.md, una specifica completa del modem con piani di banda, velocità di codifica, formati dei pacchetti e valori misurati di rapporto segnale-rumore. Quanto segue è ciò che quel documento e il post dicono effettivamente, distinto da ciò che non dicono.

Cosa è stato rilasciato il 20 ottobre

Battle Drones non è una demo reel. Come descritto nell'articolo, ha nove edifici, sette veicoli terrestri, sei veicoli aerei e tre tipi di fanteria, tutti costruiti come modelli 3D generati in TypeScript anziché caricati da un asset pack. C'è la nebbia di guerra, con requisiti separati per armi antiaeree e antiterra. Sei mappe coprono cinque biomi, più un generatore di mappe casuali con seed che produce un campo di battaglia a simmetria puntuale di 108×108 — costruito, secondo il post, in uno sprint di 45 minuti dopo che l'autore si è accorto di avere ancora il 25% di un budget settimanale di Claude e 45 minuti prima che si azzerasse.

Le modalità includono schermaglia, ondate di sopravvivenza Last Stand, la modalità spettatore AI-vs-AI, una campagna di otto missioni e qualcosa di davvero insolito: una modalità agent-vs-agent in cui due modelli linguistici si sfidano tramite uno strumento che espone solo lo stato di gioco non visivo e visibile secondo la nebbia di guerra. Le registrazioni di quelle partite sono incluse nel repository, insieme a un visualizzatore di debug che mostra le risposte sottostanti del modello.

I conteggi nel README del repository si sono leggermente discostati dall'elenco delle funzionalità del post: il README parla di sedici unità e dieci edifici, mentre il post enumera nove edifici e sedici unità tra unità di terra, aeree e di fanteria. Sedici corrisponde; il numero di edifici no. È una cosa piccola, ma è il tipo di scostamento che si verifica quando un agente scrive il README e nessuno lo verifica, e l'autore dichiara apertamente di aver «rivisto quasi nessuna parte del codice».

Questa è la parte per cui vale la pena leggere la specifica, perché «multiplayer over audio» sembra un trucco finché non si vede il budget ingegneristico che doveva rispettare. Due dispositivi condividono una stanza e un canale acustico, quindi il design è un duplex a divisione di frequenza: entrambi i telefoni trasmettono in modo continuo, l’host tra 9,525 e 12,5 kHz e il guest tra 15,975 e 18,95 kHz, con le bande disposte in modo che la seconda armonica dell’host parta sopra 19,05 kHz e l’intermodulazione del terzo ordine di ciascuna banda resti lontana dall’altra.

• Modulazione — OFDM con spaziatura dei toni di 25 Hz, simbolo utile di 40 ms più un prefisso ciclico di 10 ms, quindi 50 ms per simbolo e 20 simboli al secondo

• Carico utile — 188 bit per pacchetto sul piano a banda alta, 186 sul piano di fallback a banda bassa, identico in entrambe le modalità, così un cambio di modalità non modifica mai ciò che può essere contenuto

• Throughput: 1.880 bit/s in modalità high fast, 940 bit/s in high robust, 930 e 465 sul piano low; i pacchetti impiegano rispettivamente 100, 200, 200 e 400 ms

• Controllo degli errori — codice convoluzionale a K=7, rate ½, polinomi 133/171, decodifica Viterbi soft, interlacciamento tra simboli e toni, CRC-16 con polinomio 0x1021 e rifiuto netto se più del 10% dei bit ricodificati non concorda

• Framing — {{1}}un simbolo di sincronizzazione più 40 simboli di dati per superframe, 41 simboli o 2,05 secondi, che trasporta 20, 10, 10 o 5 pacchetti a seconda del piano e della modalità{{/1}}

• Collegamento misurato — SNR di potenza di 40–70 dB in ogni banda di 1 kHz da 1 a 21 kHz a 10–30 cm, che degrada a un valore efficace di 17–31 dB a 10 cm e 9–19 dB a 30 cm tenendo conto dell’eco, con riflessioni che arrivano 8–15 ms dopo il percorso diretto

La parte onesta della specifica è ciò che si rifiuta di promettere. Non esiste alcun ARQ: un pacchetto perso non viene ritrasmesso, quello successivo si limita a ridescrivere ogni turno non confermato, e se l'arretrato supera le dimensioni di un pacchetto viene suddiviso su un massimo di quattro segmenti a rotazione. Grandi arretrati si trasformano quindi in stalli in lockstep anziché in corruzione. I turni vengono accettati una sola volta ciascuno tramite high-water mark, e i pacchetti di gioco sono protetti da un CRC calcolato su entrambi i nonce di accoppiamento, così la registrazione di una partita diversa non supera il controllo. Come dice la specifica, al jamming si può sopravvivere ma non lo si può prevenire: si va in stallo, non si perde mai la sincronizzazione in silenzio.

I dati di consegna dei test sul modello della stanza sono del 99% o superiori a 20 cm e del 95% a 40 cm in modalità robusta, del 98% a 20 cm in modalità veloce. Si tratta di risultati di simulazione riportati nelle specifiche, non di uno studio sul campo — e il post stesso dice che la funzione era molto recente quando è stata rilasciata: "Sono appena riuscito a farla funzionare, quindi non ho ancora avuto molto tempo per testarla attivamente".

A single-column scoreboard titled 'Battle Drones' audio link — the scoreboard' with six rows: Uplink band 9.525–12.5 kHz; Downlink band 15.975–18.95 kHz; Modulation OFDM, 25 Hz spacing; Coding K=7 rate 1/2, soft Viterbi; Top throughput 1,880 bit/s; Retransmission none, rotating segments. The footer reads: 'All figures per the project's SOUND-DUEL.md; simulated room model, not a field study.' The OrcaRouter logo sits in a white strip along the bottom edge.

Il bug che conta più del modem

Nascosto nelle osservazioni conclusive c'è il dettaglio che con ogni probabilità risulterà più utile a chiunque sviluppi software stateful con un agente. Poiché sia le replay sia il multiplayer lockstep richiedono che la simulazione sia bit-identica su ogni dispositivo, Claude ha dovuto smettere di chiamare Math.sin() e Math.cos() — Chrome e Safari restituiscono valori leggermente diversi — e sostituirli con implementazioni proprie. Che due browser non concordino sugli ultimi bit di una funzione trascendente basta a far desincronizzare una partita alcuni minuti dopo.

Si tratta di un vero vincolo ingegneristico, individuato dal modello e risolto dal modello, che si generalizza ben oltre i giochi. Qualsiasi sistema costruito da agenti con un nucleo deterministico — uno scheduler, il replay di un libro mastro finanziario, un harness di simulazione, una build riproducibile — incontrerà la stessa classe di problemi e la incontrerà senza segnalarlo. La lezione per chi legge non è «Claude è bravo con i giochi». È che il determinismo deve essere un requisito esplicito nel prompt, perché nulla in un'implementazione predefinita lo rende vero.

The Radio Probe, e un pattern di prompting che vale la pena rubare

Prima di scrivere il modem, il modello ha creato una pagina di misurazione. Il post descrive uno strumento "Radio Probe", ancora presente nel repository come radio-probe.html, il cui compito era rispondere a una domanda: quanta larghezza di banda possono effettivamente ottenere due dispositivi tra loro, in questa stanza, a questa distanza? L'implementazione completa è stata portata avanti solo dopo che la sonda ha restituito numeri abbastanza buoni da giustificarla. Lo stesso file documenta le due cose che la sonda non ha misurato — un iPhone che trasmette con il proprio microfono aperto e un telefono che sente la propria trasmissione — che sono esattamente le modalità di errore che conterebbero sul campo.

Vale la pena copiare questo schema qualunque modello tu usi: chiedi all'agente di costruire lo strumento prima che costruisca la funzionalità. Prima misurare, poi costruire è il modo per evitare che una settimana di lavoro si basi su un presupposto che nessuno ha verificato. Produce anche i numeri che rendono verificabile, anziché affascinante, un'affermazione come «l'audio multiplayer funziona».

Cosa dice questo su Claude Opus 5.5, e cosa non dice

Le affermazioni più forti nel post sono specifiche. Willison scrive che Claude Opus 5.5 è "spettacolare nella modellazione 3D con Three.js" — ogni edificio, veicolo e paesaggio nel gioco è costruito proceduralmente nel codice, e colloca GPT-6 Astra nella stessa categoria. Osserva inoltre che il modello scrive musica: nel progetto non ci sono file audio, e la colonna sonora è generata nel codice, varia da mappa a mappa e si intensifica man mano che il combattimento si fa più acceso.

Due ulteriori risultati sono riportati dall'autore anziché riprodotti in modo indipendente, e vanno letti in quest'ottica. Il "fun update" è stato un singolo prompt — "This game isn't fun enough yet. Make it a LOT more fun." — eseguito in una modalità di flusso di lavoro dinamico che orchestra molti sotto-agenti per molte ore, durante le quali il modello ha svolto oltre mille sessioni di playtest simulate. Il risultato riportato, da 1.200 partite IA contro IA a difficoltà Normale: le partite ancora indecise dopo 25 minuti sono scese dal 14% allo 0,9%, e la quota di vittorie da parte di una fazione che era in svantaggio di oltre 800 rottami è salita dal 24% al 46%. Si tratta delle misurazioni dell'autore sul proprio gioco, non di un benchmark del modello.

Ciò che il pezzo non mostra è altrettanto importante. Non c'è alcuna valutazione di terze parti di Claude Opus 5.5 sullo sviluppo di videogiochi, nessun confronto diretto con un altro modello sullo stesso compito e nessuna contabilizzazione in token o in dollari delle esecuzioni. L'inquadramento dello stesso autore è che sa «quasi nulla di sviluppo di videogiochi», ha «esaminato quasi nessuna parte del codice» e non considera il risultato un serio progetto indie. Si tratta di un insieme insolitamente schietto di avvertenze, e ciò limita quanto il risultato possa essere generalizzato: si tratta di un solo professionista, una sola base di codice, un solo mese.

Quanto costa gestire un progetto come questo

Il listino prezzi pubblicato di Anthropic per Claude Opus 5.5 è di 4,00 $ per milione di token di input, 20,00 $ per milione di output e 0,20 $ per milione per le letture dalla cache. Un progetto di questa forma è quasi interamente vincolato all'output — il modello scrive TypeScript, non legge un ampio corpus fisso — quindi la voce dei 20 $ di output è quella che determina la fattura, e le esecuzioni notturne di più ore ad alto parallelismo sono ciò che trasforma "economico per token" in un numero reale. Non è stato pubblicato alcun totale per Battle Drones, quindi l'affermazione onesta è che il tetto è fissato da quante ore-agente sei disposto ad acquistare, non da qualche cifra nel post.

Questo è anche l'argomento per non vincolare un percorso di produzione a un unico modello sulla base di un singolo artefatto impressionante. Claude Opus 5.5 è su OrcaRouter al prezzo di listino di Anthropic con 0% di ricarico, quindi una variazione di prezzo da parte del fornitore è attiva dalla nostra parte lo stesso giorno, e il failover automatico significa che un'esecuzione agente prolungata non muore perché un endpoint upstream sta avendo un pomeriggio difficile. Se vuoi verificare se una build notturna come questa è riproducibile su un modello diverso, un'unica API per oltre 200 modelli è il modo più economico per scoprirlo — stessa forma di richiesta, nome del modello diverso, nessun secondo contratto.

The OrcaRouter model page for anthropic/claude-opus-5.5, showing the Claude Opus 5.5 listing at $4.00 per million input and $20.00 per million output, a 200k-token context, and the provider row served directly by Anthropic.

Che cosa non è stabilito

• Popolarità — il repository mostrava 4 stelle e 0 fork al controllo del 21 ottobre 2026, un giorno dopo la pubblicazione del post. Non è un fenomeno; è il progetto di una persona, pubblicato.

• Affidabilità sul campo del collegamento audio — le percentuali di consegna indicate nelle specifiche provengono da test su modelli di stanza, e l'autore dichiara di non aver avuto molto tempo per testare attivamente la funzione. Non interpretare il 99% come una promessa riguardo al tavolo di casa tua.

• Stato dell'arte — il post cita Siner di Alon Horesh e ggwave di Georgi Gerganov come gli unici lavori comparabili che sia riuscito a trovare, e definisce il multiplayer audio per i giochi HTML statici «una novità per un RTS, per quanto ne sappia». Questa è la ricerca dell'autore, non una rassegna della letteratura.

• Attribuzione del codice — Claude Opus 5.5 ha guidato la maggior parte delle iterazioni successive, ma la prima versione è stata realizzata con Claude Fable 5 lo scorso luglio, e il README stesso afferma che il resto del documento è stato scritto da Claude. Considera il repo un artefatto a provenienza mista.

• Un risultato di benchmark — non ce n'è nessuno. Nulla qui misura Claude Opus 5.5 rispetto a un altro modello su un'attività con un punteggio.

La cosa da portare davvero a casa è più circoscritta e più utile di «un'IA ha creato un gioco». Un RTS per browser senza backend, una simulazione deterministica e un modem acustico funzionante dimostrano che la parte difficile del software costruito dagli agenti si è spostata dalla generazione di codice alla specificazione di vincoli — determinismo, misurazione, comportamento in caso di errore — con precisione sufficiente perché il codice generato sia verificabile. SOUND-DUEL.mdIl documento è la prova: esiste perché qualcuno ha fatto sì che il modello mettesse per iscritto cosa il collegamento poteva e non poteva fare prima di rilasciarlo. Se volete vedere se quella disciplina si trasferisce al vostro carico di lavoro, eseguite lo stesso prompt su un secondo modello e confrontate le specifiche, non gli screenshot.

The published Battle Drones title page at simonw.github.io/battledrones, showing an isometric 3D battlefield behind the BATTLE DRONES logo and the description 'C&C-style real-time strategy game for the browser featuring 3D graphics, single-player and multiplayer, created by Claude Opus 5.5 and Claude Fable 5.'

Confrontati in questo articolo2

Rilevato da questo articolo · Benchmark: Artificial Analysis · aggiornato ogni giorno