Medieval Crossbow That Actually Works (And Looks Awesome)
by Kudlas in Workshop > Woodworking
18 Views, 2 Favorites, 0 Comments
Medieval Crossbow That Actually Works (And Looks Awesome)
.jpg)

.jpg)
I’ve always wanted a working crossbow — not a wall prop, but something I could actually take to a LARP and fire foam bolts with. So I built one.
Inspired by Kingdom Come: Deliverance 2, I went for a gritty medieval look with my own DIY twist. The stock is made from structural wood, carved on my CNC with AI-generated floral designs. The bow is fiberglass and plywood, wrapped in hand-stamped leather for that old-world feel.
It’s all fully functional — the lever-and-pin trigger works great, and the darts fly straight. My kid and I have already had a few backyard shootouts, and it’s holding up like a champ.
Supplies
.jpg)
Before diving into the build, here’s what you’ll need to gather. This project mixes woodworking, leathercraft, and a touch of metalwork — so it’s great for makers who like to dabble across disciplines.
Materials Used
- Wooden beam: Structural spruce, planed and cut down to approx. 5 × 8 × 40 cm for the body.
- Bow assembly:
- Fiberglass rods: Three rods, 8mm thick and 60cm long — two used whole, one split crosswise.
- Plywood: Cut into the bow shape, serves as the core backing.
- Cow leather: 2mm thick, used to wrap the bow and add both style and durability.
- String: store-bought darcon crossbow string.
- Fasteners: PowerTape to hold the rods to the plywood core before wrapping.
- Trigger components: Hardwood plus metal strips from the hardware store.
- Dart materials: Beech dowel for the shaft, leather strips for fletching, and a purchased arrowhead.
Tools Used
Woodworking
- Planer (to smooth the body beam)
- Bandsaw (rough shaping)
- Router (to round corners and clean up)
- CNC router (to engrave AI-generated floral designs)
- Drill press
- Orbital sander
Leatherworking
- Leather cutter
- Tandy-style stamping tools
- Swivel knife
- stamp tools
- Wooden mallet (for stamping)
- Awl, blunt needles, and waxed thread (for stitching)
Metalwork
- Vise
- Box-end wrench (used for bending)
- Anvil
- Forge (for heating and shaping)
- Hammer
Substitutes & Tips
- No CNC? No problem. You can burn decorative patterns into the wood using a simple soldering iron or pyrography pen.
- No forge? Basic cold bending with hardware-store metal strips works fine for non-structural parts like the stirrup.
This project’s flexible — it’s all about using what you've got and making it work.
🏹 Building the Bow





I started by cutting a plywood piece and sanding it to a lens shape. This served as the backbone of the bow. Then I took three fiberglass rods — two full-length and one split in half — and secured them to the plywood using PowerTape. That held everything in place nicely for the next step: the leather wrap.
To wrap it, I did this neat trick — covered the whole bow in PowerTape, then carefully sliced it off in one piece. Boom, instant template. I stuck that tape template onto my 2mm cow leather and cut it out perfectly. Next, I printed a floral pattern and transferred it onto the damp leather by tracing it with an old pen. Then I cut the marks with a swivel knife, and stamped it with Tandy tools. The leather got stitched over the fiberglass core, with the ends glued shut like caps. It looks and feels super authentic — very Kingdom Come vibe.
🎯 Stringing It Up

The string situation was a journey. I first tried the ol’ “bend-it-around-your-leg” bow trick — didn’t work; the bow’s too short and stiff for that. Tried clamps next, no dice — the bow slipped everywhere. Final boss move? Opened up my vise, bent the bow right over it, and strung it while it was flexed. After installing the string, the bow stayed bent, giving it that proper tension.
I used a store-bought Dacron crossbow string, but it was too long out of the package. So I tied a knot on each end until it fit right — not fancy, but it worked perfectly.
🪵Shaping the Body


The body of this crossbow was carved from a spruce wood beam and shaped. The final form is compact, smooth, and clean — perfect for slinging foam darts at friends or just showing off your craftsmanship.
The process started by trimming the beam down to size using a table saw and making it smooth using a planer. From there, I sketched out the general body shape and cut it with a bandsaw.
⚙️ Trigger Mechanism & Body Cutouts

I used a lever-and-pin trigger system — a tried-and-true medieval style that works great when you get the fit right. Here are the key notches and cuts I made to bring the body together:
- Bow Notch: Angled slot at the front of the body to hold the bow securely.
- Cut with a band saw to get the clean angle, then fine-tuned with a chisel for a snug fit.
- String Channel: A hole that the leather strings runs through, to fasten the bow.
- First drilled with a drill press, to have a channel round, then cut with a bandsaw
- Dart Groove: A shallow track on top of the body to guide the dart.
- Cut using the router table with a round-nose (core box) bit to create a smooth, centered groove.
- Pin Housing: Hole for the trigger mechanism.
- Drilled with drill press and 9mm drill bit.
- Handle Taper: The rear end of the body is narrowed for a natural, ergonomic grip.
- Narrowed with a bandsaw
Instead of designing everything up front, I took a more intuitive route — placed each part onto the body, marked where it needed to go, then made the cuts. It’s not super technical, but it worked well and kept everything aligned (most of the time).
🔧 Assembly Details
The trigger itself — shaped like a violin scroll — is screwed directly onto the body using wood screws. I kept it simple and removable in case I needed to adjust or swap parts later. The rest of the hardware is also mounted with screws, making the build more accessible for repairs or tweaks.
😬 A Note on Precision
Even though I used sacrificial wood to test most cuts before making them, not everything landed dead center. The dart groove ended up one or two millimeters off to the side — not ideal, but not a dealbreaker. I left it as-is, and it still shoots straight enough for what it’s meant to do.
🤖 Carved by AI – CNC & Motif Design






This crossbow isn’t just functional — it’s a piece of art, too. One of the highlights of the build is the floral motif that runs along both sides of the body, carved deep into the wood using CNC. It adds a custom, medieval flourish that really sets the whole thing apart.
🤖 From Prompt to Pattern
To generate the motif, I used DALL·E with a prompt for a “monochromatic top-down view of a floral motif” — something that would evoke historical carvings but still have a unique feel. Once I had the image, I ran it through an AI heightmap generator using tangram height mapper (or a similar tool) to create a usable depth reference.
From there, I converted the heightmap into a 3D mesh using Image to stl — a handy online tool that transforms images into STL models based on brightness values. The result looked great, but it was a little too complex for Fusion 360 to handle smoothly.
So I ran the file through Meshmixer to reduce the polygon count without ruining the detail. Once that was cleaned up, I brought it into Fusion 360, used the built-in CAM tools to generate G-code, and got ready to cut.
🛠 Carving Process
The wood was spruce — soft, easy to cut, and it held detail really well. I used a 1mm round carving bit and set the depth to 3mm for a solid visual impact. It took about an hour and a half per side to run the toolpath.
Funny enough, the wood formed thin, curly strings that wrapped around the carving bit. Instead of clogging it, though, they acted like a mini fan and blew the sawdust away — a weird little bonus.
At first, I tried carving the design with a 3mm bit, but it looked too clunky. Switching to the 1mm bit made all the difference.
🧷 Setup & Securing
To keep the piece stable, I used both screws and double-sided tape. The screws with washers run through the holes I already made for other features. I also ran a test on a sacrificial piece before cutting the real deal — no second chances with an hour-plus carve time. My Z-probe was busted, so I zeroed the bit manually. Old-school, but it worked fine.
Surprisingly, everything just worked. From image generation to carving, the whole pipeline ran smoothly. If you’ve got access to a CNC and want to bring some AI-generated flair to your build, I highly recommend giving this method a shot.
Downloads
🔫Trigger Mechanism

This chapter’s all about the click that makes it go — the trigger mechanism. I went with a classic lever and pin lock setup. It's simple, robust, and perfect for a medieval-inspired build. No springs, no gears, no nuts, just smart geometry and a bit of elbow grease.
🧩 How It Works
The concept is straightforward but clever. When you cock the crossbow, the string gets pulled back and catches behind a slot carved into a body. In the body, there is a pin that is held in place by a horizontal lever — the trigger. Pull the trigger, the lever lifts the pin, the pin frees the string, and the dart goes flying.
🛠 Parts List
- Pin: Made from a beech dowel — same as I used for the dart shafts. Sits vertically in a hole drilled into the body.
- Lever: CNC-cut from hardwood using a modified violin handle model I found on Thingiverse (Full Size Acoustic Violin by Woody2552). I modified it in Fusion 360 to make it trigger-friendly while keeping that baroque vibe. The lever is screwed onto a body, and when pushed the hardwood bends, so no swiveling or moving parts.
- Pin guide hole: Drilled vertically into the top of the crossbow body — had to sand it a bit for smooth action.
- Mounting slot: A carved recess for the trigger to sit flush and operate freely.
🧪 Fit & Adjust
Instead of building the whole thing and hoping it worked, I did it piece by piece — marking positions, cutting notches, testing the fit, and adjusting as I went. The pin hole needed extra sanding to keep the pin from sticking, but that was the only real hiccup.
🔒 How It Performs
Now that it’s all assembled, the mechanism feels solid. The trigger’s got some stiffness to it because of the bending. And honestly, that’s a plus. It means it won’t go off by accident in the middle of a game, which is kind of the whole point.
🎨 Dyeing


With the build complete, it was time to give the crossbow its final personality — and honestly, this part took it from “homemade weapon” to “display-worthy heirloom.”
🎨 Dyeing the Details
I used an ethanol-based wood dye, applied in multiple coats. For the CNC-carved floral designs, I started by dyeing the recessed areas first — basically flooding the valleys to darken them. Once that dried, I dyed the entire surface, and then lightly sanded the top layer. That sanding brought back the natural wood color on the raised parts, creating a super satisfying contrast that made the carvings pop.
I used the same dye on the leather, but only in the stamped recesses. Then I went over the carving with a specialized highlighting paint, which added depth and really brought out the stamped floral design. No overkill — just enough to give the surface that lived-in, authentic feel.
🪵 Surface Finish
I kept the wood finish matte to stay true to the medieval vibe. I’m still considering adding a layer of oil for durability and a bit of richness, but even bare, it looks and feels great. The surface has that soft, touchable texture that you get from good sanding.
🧵 Weathering & Accents
I added a bit of weathering to the leather wrap — nothing extreme, just enough to give it a battle-worn edge. The bow looks like it’s already seen some adventures, which is exactly the mood I wanted. The dart, meanwhile, stayed simple — unpainted, unfinished, all business.
🔥Stirrup, Dart Holder and Forging Trial



While the crossbow’s heart is wood and leather, the metal components are what make it truly usable. This chapter covers the small but mighty parts — the foot stirrup for cocking, and the dart clip to keep your ammo locked and loaded.
🦶 Foot Stirrup
I made the stirrup from a steel strip (2×6×1000 mm) bought at the local hardware store. At first, I tried to freestyle the bends in a vice using a hammer, comparing it to a technical drawing — but yeah, that turned into a mess. The angles and radii were totally off.
So I switched gears and got precise: I marked both the steel strip and the vice jaws so I could match each bend point exactly and mirror both sides. Then I slipped a box-end wrench over the steel and used it as a bending lever — way smoother and way more accurate.
Once it had the right shape, I drilled holes in the ends and screwed it directly into the front of the crossbow body. Simple, sturdy, and functional.
🎯 Dart Holder Clip
The bolt holder — aka the dart clip — was also made from the same steel strip. But this time I went full medieval and tried my hand at forging. I heated the end of the strip in a mobile forge and shaped a little decorative circle using an old anvil. Not gonna lie — the anvil wasn’t perfectly flat, so it was a bit of a struggle. But the results were totally worth it.
The clip works by pressing down on the dart from above, keeping it snug against the body so it won’t slide off when aiming or moving. It’s a tiny part, but it makes a huge difference in usability, especially in fast-paced LARP settings.
🔥 Finishing the Metal
I gave both metal pieces an old-school finish by heating them to a dark red glow and quenching them in oil. This not only toughened them up, but gave them a slick blackened patina — no paint needed. It fits the weathered medieval aesthetic and protects the steel from rust.
🪢 Mounting the Bow

The body of the crossbow has an angled notch carved into it so the bow slides in snugly. I passed a leather strap through a hole in the body and tied it around the bow in classic medieval style. Holds strong, looks rad.
🪶Making the Dart (a.k.a. the Business End)


What’s a crossbow without ammo? For this build, I went with a simple but effective dart design using tough materials and basic tools — no fancy jig needed.
🪵 Shaft
The core of the dart is a 10mm beechwood dowel, cut to 40cm in length. Beech is dense, straight, and holds up well to repeated shooting. It’s also easy to turn on a lathe, which came in handy when I had to fit the tip.
The arrowhead I picked up from Amazon was meant for 8mm shafts, so I threw the dowel on the lathe and shaped down the tip until it pressed-fit perfectly. No glue needed — just friction and a satisfying click.
🪶 Fletching
Instead of traditional feathers, I used 1 mm-thick leather strips — thin but stiff enough to work as stabilizers. I cut them into short vanes and glued them directly onto the rear of the shaft with all-purpose glue. Clean, simple, and durable.
🎯 Performance
Stable enough for backyard target practice, accurate at short-to-mid range, and strong enough to survive impact without bending or splitting. Not competition-level, but definitely reliable.
🎯Final Thoughts & Field Testing


After all the cutting, carving, bending, sanding, and stamping… the crossbow lives. And yeah — it works even better than I expected.
I designed this project as both a functional LARP weapon and a fun backyard dart shooter — and it nails both roles. The fiberglass bow delivers enough power for foam bolts without being dangerous, and the pin-and-lever trigger is snappy and solid. The dart holder clip keeps everything secure, even when you’re running around, and the leather wrap plus CNC details give it serious medieval character.
Word of caution
Even though this crossbow is intended for foam darts and casual use, always treat it with respect. Never point it at people or animals unless you’re in a safe, controlled LARP environment.
🧪 Field Testing
I tested it in the yard with my son, firing simple darts made from beech dowels and leather fletching. The shots are clean and accurate for something made mostly in yolo fashion. The trigger's a little stiff, but that actually turned out to be a good thing — no accidental shots, even with kids around.
🎁 Giveaway Time!
Oh, and here’s the best part:
I’m giving this crossbow away on my YouTube channel! 🎯
If you want a chance to win this exact piece — complete with CNC carvings, leather wrap, and battle-tested darts — check out my channel. When I upload video about this build (it is not there, yet!), the giveaway starts. It's my way of saying thanks to everyone who geeks out over builds like this as much as I do.
That’s it — thanks for following the build! If you’ve got questions, drop 'em in the comments, and if you make your own version, definitely show it off.
Catch you in the next project.