Why I built it

Lorenz is a free daily puzzle about the Lorenz SZ40/42 cipher machine that Bletchley Park called Tunny, a cipher attachment used with a teleprinter. I'm Arthur, and I made it.

This is a game. The cam patterns and messages are made up for it, and nothing here is a real intercept. Not affiliated with or endorsed by Bletchley Park, The National Museum of Computing or the Crypto Museum.

Me and radio

Arthur
Arthur

I'm into planes and I live near RAF Coningsby. Radio came in through the back door: I set up an SDR on a Raspberry Pi to pick up ADS-B from aircraft. Now I'm studying for my Foundation licence.

Why Tunny

Before this I made Skywave, a game about how HF radio signals get round the world. Tunny is the same world from another angle. Messages between the German High Command and army commanders went out as enciphered teleprinter signals, by radio, and British stations sat and listened to them. Then a handful of people at Bletchley Park worked out the machine making them without ever seeing it... I wanted to understand how, so I built one I could play with.

I've followed the wartime sources as closely as I could manage. The wheels, cam counts, tape and alphabet match them, and the motor logic follows the SZ40 and SZ42A as described in the General Report on Tunny. The cam patterns and messages are mine. The guide says exactly which is which, with sources.

Print your own

I've made a simplified printable model: the five chi wheels, as a teaching model. The Chi only mode in practice works the same way as that model.

What's stored, and where

Everything stays in your browser. Each day's intercept is worked out from the UTC date. Your progress, settings, best score, streak and points are kept in this browser's localStorage. Practice rounds don't touch your streak. There's no backend, no accounts, no cookies and no advertising. I count visits with Cloudflare Web Analytics, which sets no cookies and only gives me totals. See cookies and storage for how to clear it all.

The only things loaded from elsewhere are the pinned three.js library (from jsDelivr), for the 3D view, and Cloudflare's small analytics script. If three.js can't load, a flat view takes over and the game still works.

Credits

Full credits and source links are in CREDITS.md.

If you'd like to buy me a coffee

Lorenz is free and staying free. If you've enjoyed it, a coffee helps.

Buy me a coffee

Tell me what I got wrong

If you know your Tunny and something here is off, I'd love to hear it. Email me: hello@dexmlabs.app. Arthur

Lorenz is part of DEXM Labs. Here's the privacy notice, cookies and storage, the terms and the disclaimer, or you can get in touch.