Building the Longpoint Back End

This year I had the privilege of helping out the Longpoint team with software support, and on the way go to offer my two cents about some of the things. Which means a few helpful suggestions that were adopted and a lot of me exercising my new communication channel to complain*.

For those of you who don’t know, the Longpoint followed a Triathlon/Pentathlon format this year, with each component (Messer Sparring, Longsword Cutting, etc…) giving people points towards their “meta-event”. So there was no prize/award/recognition for placing 1st in Longsword, those honors were reserved for people with the highest overall scores.  

*Just kidding. We were already friends, so I complained all the other years too.

Tournament Goals

Before I can explain the wacky format it’s important to understand the intent of the organizing team. And rather than put words into people’s mouths, I’ll let you read for yourself.

“A major tenet of the Longpoint philosophy has always been that competition pushes people to improve. Focusing competition on a single discipline, such as Longsword sparring, has pushed performance in that discipline, with fighters like Ties Kool and Sergei Kultaev reaching fantastic heights of speed, strength, and technical ability. While I doubt we’re even close to reaching what is possible, we have pushed this particular discipline as far as we’re interested in taking it in isolation.

We’re slowly beginning to see a similar trend in cutting, as a small group of elite cutters starts to push that particular competition format about as far as it needs to go at this particular point in our collective history.

This is why the Longpoint Triathlon has been the true “main event” since we began the practice in 2012. But despite its official position as the main event, all eyes continue to be on individual events—particularly longsword fencing. Such a myopic view of skill does a grand disservice to the rich martial tradition(s) we’re attempting to rebuild.

Longpoint wants to encourage the development of well-rounded historical European martial artists. Competition is a great tool for encouraging such development, but only in as far as we’re competing in the thing we want to see most improve. That’s why the only “score” that will matter in Longpoint 2019 is your demonstration of your capabilities across one of many configurations of a “well-rounded” historical European martial artist.

Because “well rounded” can mean many things, and because there are many approaches to the Kunst Des Fechtens, we will recognize each of the triathlons/pentathlons at Longpoint 2019 equally. And while we’re interested to see who the best longsword fencer, or cutter, or grappler is, the prizes will only go to those historical European martial artists who perform well in multiple categories.”

You can read more here.

Longsword/Messer Pools

One of the goals of the event organizers was to give people a chance to fight people of the same height/weight. And to see if the fighters were good because they happen to have a certain body type, or because they are good. (To be perfectly clear: this decision has nothing to do with me. It is something the event decided on and I implemented.)

Step 1 – Normalize

The first step was to normalize all the heights and weights. This means that they were scaled to fit in to a range from -1 to 1.

  • 106 lbs / 48 kg   ->  -1
  • 321 lbs /146 kg   ->   1
  • 155 cm / 5’1      ->  -1
  • 198 cm / 6’6      ->   1
Funny how no one ended up being in the “Short and Heavy” category.


Step 2 – Pool Assignment Order

The first step to was to figure out how much each person deviated from ‘average’ in their body type. This is because you want to work from most extreme to most average, so if anyone has to be shuffled between pools it is people that don’t stand out in a significant way.

I used the “magnitude” to express how far away a fighter is from the center. This means that fighters with high magnitudes are the most extreme of the body types (Very Heavy & Very Tall, Very Heavy & Very Short, etc…)

This is not the tournament data, but something I created to help explain the method.

Step 3 – Map To Pools

The phase angle is a representation of which body type a fighter has.

A target phase angle is produced for each pool. If you have 10 pools it would look like:

Pool 1 18° Pool 6 -162°
Pool 2 54° Pool 7 -126°
Pool 3 90° Pool 8 -90°
Pool 4 126° Pool 9 -54°
Pool 5 162° Pool 10 -18°

In this case the very tall and light fighter would be assigned to pool 4, as it is closest to 135°.

The second fighter in the diagram is slightly taller than average and slightly heavier than average. Because they are closest to average they would be the last person to be assigned a pool. Ideally they would go into Pool 2, but if it is full (and it likely would be) they would then try to go to the next closest pool. In this case 1, 3, 10, 4 etc…

Longsword/Messer Standings

After the first set of pools, fencers were slotted into a second round of pools based on their performance in the first pool. All the best fencers fight in Pool 1, next tier in Pool 2, etc.

The question then remains, how is a final ranking produced? A fighter in Pool 1 can fight with a high degree of skill and still lose all their matches because they faced extremely skilled opponents. Likewise a fighter could exhibit a far lesser degree of skill to win all their matches in Pool 8.

My initial idea was somehow to weight the results from the second set of pools in a way that it took into account how ‘good’ the person you were fencing was. So losing a close match to a highly skilled fencer would be more valuable than winning a match to a fencer who wasn’t rated as highly.

This was (reasonably) shot down as being too difficult to tweak and calibrate with the limited time available before the event.

The second idea was to simply rank all the pools in order. From the document I produced prior to the event:

Ranking Criteria 1: Pool Rank

Each pool will be ranked above the lower pools. If there are 8 fighters per pool then:

  • Places 1-8 will come from Pool 1
  • Places 9-16 will come from Pool 2
  • Etc…

Ranking Criteria 2:  Place Within Pool

Within the pool each fighter will be ranked by score.

Ranking Criteria 3: Overlap Regions

There will be an opportunity for a number of people from each pool to move ‘up’ in the final placings. If there is an overlap size of 2 it means that the top 2 fighters in a pool are eligible to move up and take spots from the bottom two fighters in the pool above them.

The 4 fighters in question would be ranked by score, and their final positions used to determine their place.

Indicator Score

My other contribution to the sparring tournaments was the indicator score. The formula was:

The logic behind this is simple, it doesn’t matter where or why you get hit. Getting hit is always bad. If someone hits you in the arm, you can’t afterblow away the fact that you got hit with a sword.

The only modification, which the event team and I realized at the same time, is that there wasn’t quite enough of a ‘carrot’ out there for winning the match. Generally I am not a fan of basing too much on who won and lost, and more interested in the underlying stats of how people fight (after all, if you fight well you are probably winning). But in this system it might encourage two higher level fencers to simply not engage, and run out the clock instead.

I personally feel that any tournament format that encourages people to not fight is probably inspiring some good safety-first thinking. And completely defeats the purpose of a sparring tournament! So external factors need to come in to force a little action.

In general this was well received. Several individuals told me how it made them more conscious of how much they were getting hit, rather than thinking about how they were hitting the other fencer. On the flip side there was one fencer who felt that they should shift into doing ‘snipe’ attacks at range because of the rules, not being comfortable with closing distance. Unfortunately nothing is perfect, but perhaps more encouragement to go deep is something that needs to be analyzed. (For reference Leg/Arm was 1 point, Head/Torso was 2 points, Controlled actions were 4 points. Read the Longpoint Rules to learn more).

And the number of Bilaterals per Exchange was 24%, half of what they were in 2014 when Longpoint used Full Afterblow scoring. So there is that.

Inconsistency Penalty

The last (noteworthy) contribution I made to the tournament design was how to handle the indicator scores. In past Longpoints the triathlon used an exponential point system, with points only given to people who finished very high in the component events.

Obviously the team wanted a different approach for this year. After discussion we came down to doing the point spread linearly. If you place 1st in the component you get 100 points. If you place in the middle (32 out of 64, 10 out of 20, etc) you get 50 points. This ensured everyone was getting a fair point value for their placings. After all, this year was all about having the meta-events give good feedback to everybody.

The last outstanding issue was consistency. In the past people have won the triathlon by getting high scores in one event, and then very low in another. Since the whole focus of the meta-event is consistency and being a broad martial artist, this is sub-optimal.

Because of this I got the idea to add an ‘inconsistency’ penalty. All scores were calculated, and then the standard deviation of the scores was subtracted from the total. This meant that:

  1. Having one really weak event cost you more than just not getting points in it.
  2. Having one strong event couldn’t be used to prop up your score as effectively as it had in the past.

Overall I feel it was a fairly elegant solution.

Though some people might not be so fond with my decision in this regard….


  1. I’ll be going deeper into the tournament stats in another article. Don’t worry. 😀
  2. I only had to contribute a small sliver of the overall work going down the stretch, and it was still a bunch. These things take a lot of work, and even if an event isn’t exactly what you want, please ensure you make your event organizers feel appreciated!
  3. And after all that the most important takeaway here is:
Things You Can Blame Me For Things You Can’t Blame Me For
  • The inconsistency penalty
  • How the height/weight seeding was accomplished.
  • The idea or ranking each pool in order with overlaps
  • The sparring matches indicator score formula.
  • The idea of meta-events instead of individual winners (though I’m totally in support)
  • What the actual meta-events were
  • The idea of height/weight seeding.
  • The idea of fighting 3 randomly selected matches, regardless of your pool size.


Avatar photo
About Sean Franklin 119 Articles
Sean has a Bachelor's Degree in Mechatronic Systems Engineering, and is currently employed as a Controls Engineer. He is passionate about developing more analytical ways to view sword fighting, wishing to develop evidence based standards for protective gear and rule sets informed by tournament statistics. His martial arts history includes competitive success, medaling in international competitions for Longsword, Messer, Grappling, Rapier, and Cutting. In addition to competition Sean has been invited to instruct at a number of events across North America and Europe. For non-STEMey coaching topics Sean posts on