The EF-Map Killboard started as a desktop table, and for a while that was fine. It lived inside the Leaderboards panel, it showed who was killing whom across EVE Frontier, and on a wide monitor it had plenty of room to spread out. Then two requests landed at almost the same time, and they pulled in opposite directions. Some players wanted a lot more detail per row. Other players, and sometimes the same ones, wanted the Killboard to actually work on a phone. More columns and a narrower screen are not natural friends. This is how we tried to give both groups what they asked for without splitting the Killboard into two tools.
What people actually asked for
The original Killboard tracked the basics: kills, losses, a FOAM total, and a few headline numbers. The feedback was that this flattened a lot of distinct things into one count. A structure kill is not the same event as a ship kill. Losing a ship is not the same as losing a structure. And FOAM, the value tied to destroyed structures, was interesting enough that people wanted to see both the FOAM they had destroyed and the FOAM they had lost, not just one blended figure.
So the wishlist was roughly this:
The detailed breakdown players wanted
- Ship kills and structure kills, counted separately
- Ship losses and structure losses, also separate
- FOAM destroyed and FOAM lost as two distinct columns
- Unique victims, so a hundred kills on the same target reads differently from a hundred kills on a hundred targets
- Generally more of the underlying killboard data surfaced, not hidden
None of that is hard to display on a desktop. The problem was the timing.
The timing problem: mobile
At the same moment those extra columns were being requested, the Killboard was on the list of panels that needed to become genuinely usable on phones. We had recently moved the whole app toward reusing its existing desktop panels inside a mobile host rather than maintaining a separate mobile build, which we wrote about in Making EF-Map Usable on Phones. The Killboard had to fit that same pattern.
That is the tension in one sentence: people wanted more columns on the exact screen size that has the least room for columns. A nine column table that is comfortable on a 27 inch monitor is unreadable on a 6 inch phone held in one hand. We could not simply add everything and call it done.
One Killboard, not two
The tempting shortcut would have been to build a stripped down mobile Killboard and keep the rich one for desktop. We deliberately did not do that. Two separate implementations means every future change has to be made twice, and they drift apart the moment you forget. Instead the desktop and the mobile host render the same Killboard component. The same code that draws the table on a monitor draws it inside the mobile Tools sheet, where the panel shows up under Leaderboards. Open EF-Map on a phone, go to Tools, and the Leaderboards entry is the same Killboard, not a cut down cousin.
Keeping one component is what made the rest of this possible. Every fix described below shipped to desktop and mobile at the same time, because there was only ever one place to fix.
Simple and Expanded
The answer to "more columns" versus "small screen" was to stop treating it as a single layout. The Killboard now has two layout modes, and you choose between them with a small segmented toggle above the table.
Simple is the compact view. It keeps the core columns: kills, losses, structure kills, and FOAM destroyed. It is the sensible default, it fits a phone without fuss, and it is what most people want most of the time.
Expanded is the full breakdown. It splits kills into ship kills and structure kills, splits losses into ship losses and structure losses, adds unique victims, and shows FOAM destroyed and FOAM lost side by side. On the Players list it also shows each pilot's most active time window, and on the Tribes list it shows how many distinct members got kills. This is the view for people who actually want to read the detail.
Your choice is remembered. The layout preference is stored locally in your browser, so if you prefer Expanded the Killboard stays in Expanded the next time you open it, on whichever device you set it. Every column header is also a sort control, so you can rank by structure kills, by FOAM lost, by unique victims, or by anything else on display.
Getting the table itself to behave took more passes than the feature list suggests. Column spacing, header wording, where horizontal scrolling is allowed and where it is not, how tightly the numbers line up: a lot of that was tuned by hand through repeated smoke testing, with an LLM doing layout review passes on the code in between. It is not glamorous work and it does not show up as a headline feature, but it is the difference between a table you can read at a glance and one you have to squint at.
Reading FOAM without lying about it
FOAM created a small honesty problem. The raw values are precise numbers with long decimal tails, and a column full of figures like 9,431.617283 is noise, not information, especially on a phone. But rounding has its own trap: if you round a real value down to zero, you have just told the player nothing happened when something did.
The compromise in the table is to round FOAM up to whole units and show thousands separators, so a cell reads 9,432 rather than a wall of decimals, and any non zero value stays visibly non zero. The exact unrounded number is preserved on hover, so if you genuinely need the precise figure it is one mouse hover away. When a metric is simply not present, which can happen on older snapshot data that predates a field, the cell shows a small dash rather than a misleading zero. The deeper story of how FOAM gets attributed to the right kill in the first place is its own rabbit hole, which we covered in Killboard FOAM Fix.
The Killboard Snapshot card
Killboard data is the kind of thing people want to drop into Discord, and a screenshot of a scrolling table is an ugly way to do that. So the Killboard got its own Snapshot card, built in the same shareable card style we use elsewhere across EF-Map and described in Shareable Intelligence Cards.
The card is a single image that rolls up the current period into something readable. It carries six headline metrics across the top: total kills, structure kills, FOAM destroyed, the top killer, the top tribe, and the hotspot system. Below that it lays out four compact top five lists: Top Players, Top Tribes, Top Systems, and the latest Recent Kills. In the corner there is a QR code, and the card is clear that it shows indexed kills only, so nobody mistakes it for a complete combat record.
You generate it from the Actions menu next to the table, which gives you three choices: download the card as a PNG, open it in a new tab, or copy it straight to the clipboard where your browser supports that. The card always reflects the time period you have selected, from the last hour up through the last thirty days or all time.
Where the QR code goes
- The QR and link both point back to the Leaderboards panel on EF-Map.
- Because desktop and mobile share that panel, scanning the card on a phone opens the mobile Leaderboards, not a broken desktop only link.
- The label on the card says exactly that: scan to open Leaderboards.
Export CSV
Not everyone wants to live inside our table. At least one player wanted to keep their own kill spreadsheet and do analysis that EF-Map does not, and will probably never, do natively. Rather than try to anticipate every possible chart, we added an Export CSV action and got out of the way.
The export gives you the full data columns, the Expanded set, regardless of whether you are currently looking at Simple or Expanded. It respects the time period and the sort order you have chosen, and it exports the leaderboard list rather than whatever happens to be in the search box. FOAM is written out raw at full precision, because a spreadsheet is exactly the place where you do want the exact number, not the rounded display value. Files come out named so you can tell them apart later, like ef-map-killboard-players-30d-2026-06-16.csv, and they carry a byte order mark so Excel opens accented pilot names and tribe tickers correctly instead of mangling them.
Top 100 players
One smaller change that low ranked pilots will appreciate: the Players leaderboard now goes to the top 100, not the top 50. The precomputed lists from the backend stop at 50, but the snapshot carries an index of every pilot, so the Players list is rebuilt from that index up to a hundred rows. Tribes and Systems still use the top 50 lists. The practical effect is that more people can actually find themselves on the board, which is half the fun of a killboard in the first place.
What is still rough
This is alpha software tracking an alpha game, and it is worth being honest about the edges. The Killboard only knows about kills that have been indexed, so it is a strong sample rather than an absolute ledger. The Expanded view is dense by design, and on the smallest phones some of it still asks for a horizontal scroll. Some snapshot data predates newer fields, which is why you will occasionally see a dash where a structure loss or FOAM lost figure would go. And EVE Frontier itself is still moving, so the exact mix of columns that makes sense today may not be the right mix in six months. We expect to keep adjusting this as the game and its combat data evolve rather than treating it as finished.
The goal was never a perfect, final Killboard. It was a Killboard that shows the detail people asked for, works on the device people actually carry, and travels well when they want to share it. That part it now does.
Related posts
Try it
Open EF-Map, find Leaderboards, and switch between Simple and Expanded to see the difference. Pick a time period, then use the Actions menu to export a CSV or generate a Killboard Snapshot card to share. On a phone, the same Killboard is waiting under Tools.