Back to Projects
View on GitHub
Project
Espadas de Hispania
Project Goals
Retell medieval Spain's battles in a 1066-style game, then build a CNC arcade cabinet of history games for local libraries.
Description
This project is about building a home-made arcade cabinet, cut on a CNC machine and loaded with history games, to donate to libraries across Navarra as a free, hands-on way to explore the past. The idea grew out of 1066 (Preloaded / Channel 4, 2009), a Flash game I loved that turned a famous battle into something you could play and learn from. I want to bring that same experience to anyone who walks into their local library.
Every game is built to be as historically accurate as possible. Events, people, places and details are drawn from primary sources and respected scholarship, and each game lists its sources and includes short texts explaining what happened, so players can keep learning after they put down the joystick. The games will explore Navarra's history across the centuries, from the Vascones and the early Kingdom of Pamplona onwards, and won't be limited to battles: some may be tactics games, others puzzles, trading, exploration or storytelling. Every game will be bilingual in English and Spanish, run offline, and be designed so visitors of any age can pick it up in a few minutes. The goal is an educational tool that brings light and joy to the history of Navarra.
The first game is Espadas de Hispania, a turn-based tactics game in the style of 1066 set in medieval Spain between 722 and 1212. Its campaign follows Covadonga 722, where Pelayo's Astures hold the cave against an Umayyad expedition; Roncesvalles 778, where the Vascones ambush the Frankish rearguard in the Pyrenees; Simancas 939, where Ramiro II of León and his Pamplonese allies face Abd al-Rahman III across the river under an eclipse; and Las Navas de Tolosa 1212, as Sancho VII's Navarrese storm the Almohad caliph's palisaded camp.
Each battle moves from a watercolour map cutscene to raising your army, deploying it and fighting on a grid. Both sides give orders, which then resolve one company at a time: move, attack, shoot, rally, hurl rocks, hit-and-run, or taunt the enemy to shake their nerve. Spearmen can lock into a shield wall, companies can charge in an arrowhead, and every company's morale rises and falls with casualties, flanking attacks, and whether its leader is near or has fallen. Ambushes, hidden units and terrain, from mountain crags and olive groves to rivers and bridges, shape every fight.
Six peoples take the field: the Astur-Leonese, the Vascones, the Franks, the Umayyads of Córdoba, the Kingdom of Navarre and the Almohads, each recognisable by silhouette in 1066's signature style of black figures against a dusk sky. Custom battles let you pit any people against any other on any map. Every battle ends with a historical report and its sources. The game is built with plain JavaScript and data-driven JSON, with an automated test suite that plays every battle to check its balance.
Roadmap
- Finish the first game. Verify Espadas de Hispania's mobile layout, run the test suite, commit, push the branch, and host it on GitHub Pages so it goes live.
- Get the history reviewed. Have the texts checked by someone with a background in Navarrese and medieval Iberian history, such as a teacher, historian or local librarian, starting with Covadonga and Simancas, and correct anything the sources don't support. Every future game will go through the same review.
- Add depth. Build the planned minigames (brace for the charge, rockfall timing, rally horn rhythm) and abilities (feigned retreat, plundering the baggage, leader battle cry, scouting).
- Make the games arcade-ready. Package each game as a single offline file and add arcade controls, an attract mode for when nobody is playing, an automatic reset after inactivity, a layout built for one large screen, and a simple menu for choosing between games.
- Learn CNC machining. Find out the best setup for my needs, whether that's a makerspace or my own machine, and learn the CAD and CAM software by practising on small pieces.
- Design and build the cabinet. Use an existing open design if I can find a good one, otherwise model my own. Then cut the panels, assemble and finish it, wire the controls, screen, speakers and computer, and set it to boot straight into the games.
- Grow the collection. Make at least one more game about a different period of Navarra's history, so the cabinet offers a small collection rather than a single title.
- Pilot with a library. Contact local libraries, place the cabinet for a trial period, gather feedback from players and staff, then donate it with a simple maintenance plan.
Expected Barriers and Troubles
- Scope creep. Games, a cabinet and a donation programme could each be a project on their own, so I'll need to finish each phase before starting the next.
- Historical accuracy. The sources for early medieval Navarra are few, and they sometimes disagree. Getting every detail right, and being clear about what is known and what isn't, will take careful research and expert review.
- Telling a contested history fairly. "Reconquista" is itself a debated term, and battles like these have been used to support national myths. Every game has to show all peoples with respect and stay faithful to the sources.
- Designing for the public. Library visitors can be any age and won't read instructions, so each game has to be understood in seconds and still be worth a few minutes.
- Balance and fun. Keeping every battle winnable with good play, but never by standing still, gets harder as new rules and minigames are added.
- Access to a CNC machine. Machines are expensive, so I'll have to figure out whether to buy one or use a makerspace.
- The learning curve and safety. Cutting speeds, tool paths, clamping and dust control all take practice, and mistakes waste material or cause injuries.
- Cost of materials and parts. Plywood or MDF sheets, a screen, controls, a computer, speakers and finishing add up, and I may need donations or small grants.
- Electronics and software setup. Wiring an input encoder and configuring a locked-down kiosk computer that survives power cuts will be new to me.
- Surviving public use. A library cabinet has to handle kids, spills and rough play, with sturdy controls, nothing exposed and no way to exit into the operating system.
- Library logistics. Space, power, liability, who fixes it when it breaks, and how updates get installed all have to be agreed with each library.
- Weight and transport. A full cabinet is heavy and awkward, so the design should consider moving it through doors and in a car or van.
Skills I Expect to Learn
- Software: game architecture in plain JavaScript, data-driven design, deterministic randomness and automated testing, responsive design, bilingual interfaces, offline web apps and the browser Gamepad API.
- Game design: turn-based systems, morale and combat balancing, simple AI opponents, designing different genres around history, and making games for players who only have a few minutes.
- History: researching Navarra's history in depth, reading primary and secondary sources critically, citing them properly, and writing about the past clearly for a general audience.
- Art and visual design: designing readable silhouettes, emblems and interfaces, and eventually hand-painted art.
- Fabrication: CAD modelling, CAM tool paths, operating a CNC router safely, and woodworking finishes such as sanding, sealing, painting and applying vinyl.
- Electronics and systems: wiring arcade controls, powering and cooling a small computer, and setting up a Linux kiosk on a Raspberry Pi or mini PC.
- Community and project work: planning a multi-phase project, approaching libraries, possibly writing small grant applications, and gathering feedback from real players.
Project Updates
28
Sep
2026
2026
We're Live on GitHub!
Espadas de Hispania, the first game of the project, is officially live on GitHub! You can find the code at the GitHub link at the top of this page.
This is the first step towards a bigger goal: an arcade cabinet full of history games about Navarra, built by hand and donated to local libraries. There's still plenty to do, including a review of the historical texts, new minigames and arcade controls, but the core game is here and playable.
If you have ideas, find a bug, or know a lot about Navarra's history, I'd love to hear from you. Thanks for following along!
This is the first step towards a bigger goal: an arcade cabinet full of history games about Navarra, built by hand and donated to local libraries. There's still plenty to do, including a review of the historical texts, new minigames and arcade controls, but the core game is here and playable.
If you have ideas, find a bug, or know a lot about Navarra's history, I'd love to hear from you. Thanks for following along!