Jahed Ahmed Software, Games

FrontierNav Report: November 2018

Progress Report

Changes in November

Now that FrontierNav is open source, it's a lot easier to share changes for the month. You can find a list of changes on GitHub.

However, it's a bit low-level so to summarise:

Architecture Improvements

  • Continued tidying up the code so that it's easier for others to understand.
  • Made some rendering performance improvements
  • Looked into Dat / Beaker as a way to serve FrontierNav without a central server (read below).

Xenoblade 2

  • Improved enemy map markers and spawn details

Read more


FrontierNav Report: October 2018

Progress Report

Changes in October

FrontierNav is now open source! I've spent most of the month planning this switch over and thinking about what it means for the project going ahead.

By virtue of being open source, I'll be more open about priorities and plans. There's an Issue Tracker for feature requests, planned changes and bug reports. I've also written some documentation for people to get started so that they can make their own code contributions.

You can find the code repository on GitHub.

Read more


FrontierNav Report: June 2018

Progress Report

Changes in June

For Xenoblade 2's map, legend toggles have been implemented, allowing you to choose which map markers to show. However as the data bundle now contains substantially more data -- roughly doubled by adding all enemy spawn points -- the current approach to data management may not be feasible. So I've spent some time looking into alternative approaches.

Read more


FrontierNav Report: May 2018

Progress Report

Changes in May

Following on from April, I've been working on the Xenoblade 2 Map. All the Collectible, Location and Salvage points have been imported.

Xenoblade 2 Maps

You can view the maps here.

The relationships between Collection Points, Collectibles, Blades, Field Skills, Regions, etc. are all linked up so you can easily navigate between them and find related pieces of information.

Performance Improvements

It's probably not very noticeable on a desktop computer, but I've optimised a lot of the rendering logic throughout the app. There were a lot of unnecessary calculations going on when navigating around, causing a slightly longer wait time. As more data is imported, it gets more noticeable.

Things should feel a lot smoother now. There's more improvements to come in the same vein.

Next Up

I've started importing Enemy locations to the Xenoblade 2 Maps. Before I push that out though, I'll need to introduce a Legend toggle of some sort to reduce the types of markers on screen.

It seems pretty straight forward at first, but there's a lot of decisions to make. Things like:

  • What markers to show by default.
  • What to show when a user comes from an external link.
  • Whether to persist visible markers so that link sharing is consistent between users.
  • The most convenient place to put the toggle menu for desktop and mobile interfaces.

As with everything, I'll decide on a few things and improve it as I go.


FrontierNav Report: April 2018

Progress Report

Changes in April

April saw a steady progress towards open sourcing FrontierNav and the gradual introduction of collaborative tooling. The interface has been tidied up too: consistent colours, cleaner layout, better navigation. On top of that, Xenoblade 2's map is almost ready!

It's nearing the end of May now but it's worth mentioning May's update will come in June as usual with Progress Reports. This update was delayed by some weeks.

Xenoblade 2 Maps

The data for the maps is available now. It's just a matter of linking it all up, making sense of it and making it presentable. Can't wait!

Read more


FrontierNav Report: March 2018

Progress Report

Changes in March

Following on from last month's update, this month has been a stable continuation in all aspects. More code has been split out towards an open source future, more of the data pipeline has been fleshed out, and more visualisations are being introduced.

Xenoblade 2 Maps

Xenoblade 2's maps have been imported into FrontierNav. While it looks very similar to existing maps, it's using an entirely different approach.

The (now on-hold) Wiki platform did a lot of the initial work for the new maps. And with the recent progress in datamining Xenoblade 2, having all relevant locations in place may not take too long.

What kind of things are possible? I'll be able to show some of those once there's more data to work with.

Text Guides

I've looked into ways to get more community engagement on FrontierNav. One thing I mentioned before was the ability to create and import text-based guides. It's simple and a pretty useful way to dump information. So I'll be implementing this using the work I already did on the Wiki. It'll be a gradual roll out to reduce any moderation burdens it may lay on me.

Smaller Steps

So turns out all the Wiki work wasn't a huge waste of time, it just had to be broken down into smaller features!

Describing FrontierNav

When I first built FrontierNav, it was only a map for Xenoblade X. I didn't plan to make it anything bigger, so a lot of it was very ad-hoc. But over the months and years it's been growing slowly into something a lot more dynamic.

A lot of the conversations I've had about FrontierNav can get a bit difficult. Right now when people land on FrontierNav, it's not very obvious what it provides. And that's expected, since it provides what I felt like making at some point in time. But at the same time, I have a long-term goal for FrontierNav which I fail to describe succinctly.

So, here's the shortest description I can think of:

FrontierNav is a data management and visualisation platform for video games.

Is that too generic? Maybe. Is it realistic? I mean, sure the tooling isn't there yet, but it's getting there. Each new piece of functionality is a step towards that goal.

Next Up

This month I'll implement the Text Guides interface hoping to capture the Pastebin audience and get to work on the Spreadsheet interface to capture the Google Sheets audience.

Once Xenoblade 2's map data is available, I'll focus on getting the maps ready for players to use. In addition, I'll link it up with the Affinity Charts to make completion a lot more streamlined. So for example, "Kill 5 enemies" clicks through to a map of where those enemies are.

At some point, likely not this month, I want to try out releasing a Dat version of the web app. Though experimental and not really popular, it seems ideal for FrontierNav and it would be a neat proof of concept.


FrontierNav Report: February 2018

Progress Report

Changes in February

Unifying Interfaces

Previously, FrontierNav only had one visualisation: a map. With the new Affinity Charts for Xenoblade 2, I've been looking into various approaches to present the same information along side different visualisations.

For example, showing both the Affinity Charts, and allowing users to navigate to the map while retaining their view of the "entity" they're looking like, like the Affinity Reward or the Enemy requirement.

There are a few candidate ideas I'll be fleshing out a bit.

  • One's a windowing system like any Operating System with the visualisation as a background.
  • Another is a "bubble" system, kind of like Facebook's Android app and Samsung's Touchwiz window system.

Data Imports

More raw data has been coming out for Xenoblade 2, so I've started writing a parser to transform it into a compatible format for FrontierNav.

Keeping track of all of this work and keeping it organised has been a bit of a pain. I'll be organising frontiernav-data to be a bit more, well, organised.

Open Source

Due to the number of moving parts and complexity of the project, open sourcing it as-is isn't as worthwhile. With the lack of documentation it'll be difficult for anyone to contribute or make use of it.

So, to get the web client into a state that can be open sourced, I've been splitting out bits into their own project. A mono-repo approach has worked well for this as it means I don't need to juggle multiple Git repos and branching dependencies.

Next Up

I'll be continue to work on the things outlined above. There's a lot to do but I'm getting a better idea of where to take FrontierNav by doing it.

Having to play new games, enjoy the first playthrough, then figure out their intricacies while also extracting data and building new features in a timely manner is really difficult.

Once Xenoblade 2's data is imported and guides are stable, I'm thinking of moving onto more classic games. The main reason being that all the data is already available and I can use them as an opportunity to build FrontierNav into a state where it's a lot easier to add new, recent games.

What games? There's quite a few. I've had an itch to replay Golden Sun Books 1 & 2 recently.



FrontierNav Report: January 2018

Progress Report

Where's December's Report?

I didn't get to do much in December as mentioned previously since to Xenoblade 2 was released, and it was a holiday month.

Changes in January

January's been a productive month. Behind the scenes, I've continued to move the application towards a more pluggable approach. It's going to be a slow process as I work on other features like new game guides and improve the user experience.

Xenoblade 2's data is fed through a spreadsheet which makes it much more easier to edit. The process is still a work in progress but I've got a good idea of where to take it. Once it's ready, I'll be moving the other games from the previous JSON-based approach to this new one.

I didn't make a release post about "Spoiler Gates" since it's pretty simple. The app can now show/hide spoilers based on the user's preference. This won't mean much for existing guides, but I can take it into considering for new guides.

Read more


FrontierNav Update: Favourite Pouch Items Guide

I've released a simple guide to each Blade's favourite pouch items. Take a look.

While it's a simple guide, there have been major changes in the background to move the data pipeline from JSON documents to a Google Spreadsheet. Once this process has been streamlined a bit more, it should provided an easier way for others to contribute data.

Pouch Favourites Preview
I've immitated the look and feel from the game.