EVE SSO OAuth

With an understanding of how to retrieve data from the public CREST API endpoints, I want to get down the authentication side of things before I get into the fun stuff. Third-party applications for EVE Online can now make use of the Single Sign On (SSO) user flow, allowing users to authenticate the application via the EVE login servers. This is great for web-based applications but causes a bit of hassle for non-web applications....

February 22, 2016 · 2 min · Alastair

EVE Static Data Export & Solar Systems

Shoot for the moon! Part of the goal for the EVE Online CREST API challenge was to visualize the chosen trade route. To do this I’ve made use of both the CREST API and Static Data Export (SDE) to populate a series of uGUI buttons for each region. There’s not a whole lot of reasons to use the CREST API to poll static data such as regions, but it shows that I know how to use it....

February 21, 2016 · 1 min · Alastair

LINQ Queries

Ok, so we’re back in development mode now. I’ve pulled lots of data from the CREST API and it’s being displayed but we need to be able to filter and sort it so it’s useful to us. Hopefully you’ve come accross LINQ at some point - Language-INtegrated Query. This stuff is great, it’s basically cheat codes for programming. The first thing we want to do is sort all sell orders by price because we want to know where to go for the best deal in New Eden....

February 19, 2016 · 1 min · Alastair

Meta Data

With the data in and stored in sensible C# classes, we can start to have some fun - I’ve added in some meta data about the current search item. By checking the lastest history item with the latest but, comparisons can be made about their differences. in this case, the change in price and percentage change. double _latest = hist.items[hist.items.Count - 1].avgPrice; double _latestButOne = hist.items[hist.items.Count - 2].avgPrice; double _change = (_latest - _latestButOne); double _percentChange = (_change / _latestButOne); DateTime _latestDate = DateTime....

February 15, 2016 · 1 min · Alastair

Search Period

One of the main features of the EVE Online Market view is filtering history by a date range, allowing the player to see trends over 1 year, 6 months, 3 months, and the last 7 days. Luckily all entries in the history come with a date time string, which can be parsed directly to a .NET DateTime object. Compare this with a date from six months ago and we can filter the results....

February 15, 2016 · 1 min · Alastair

Unity & Graph Maker

Make something already! Ok, so we’re gonna be pulling down loads of information from the CREST API so it’s going to have to be displayed in a sensible way and there’s nothing more sensible than graphs. Graph Maker is a fantastic plugin for Unity that allows the creation of fully dynamic 2D graphs and charts, honestly, the work put into this is just incredible - oh and it’s fully supported by the new Unity UI framework....

February 15, 2016 · 2 min · Alastair

JSON to C#

Introduction The following post explains how to deserialize JSON into C# classes using the Unity game engine. It provides an overview of CREST API endpoints, which can be used to request data in Unity, and suggests a few tools and resources for parsing and serializing JSON data. Getting started With a knowledge of the CREST API endpoints, requests can start being made for data - in Unity this is as simple as initialising a new WWW object with the specified endpoint URL....

February 12, 2016 · 3 min · Alastair

Making The First Call

The CREST API has a fistful of endpoints available to 3rd party developers. Interestingly, sending a request to the root endpoint returns a JSON string of all available endpoints; pretty handy. https://public-crest.eveonline.com/ Most browsers will return this object as a download as there is no filetype associated with the response. When sent through an application however, the string can be read as normal. This stuff is pretty straight forward as all that needs doing is identifying the desired endpoint, some examples are outlined below....

February 12, 2016 · 2 min · Alastair

Developer or Gamer

As a developer it becomes difficult to see games in the same way as gamers. The perfect example of this for me is EVE Online - the fantastically technical MMO. I’ve tried to play it many times - and like many others found it difficult to really get into; now this isn’t a criticism of the game, I guess it’s just not my play style. But what I do love is it’s technical magnificence....

February 11, 2016 · 2 min · Alastair

EVE Online Static Data Export (SDE)

Show me what you’ve got! EVE Online does something wonderful with its data, it doesn’t hide it away behind fancy graphics and menus; it puts it on display for the whole universe to see. Almost everything you see in many of EVE’s user interfaces is pulled from a database with IDs, put in a table for you to filter and analyze as you see fit. However, these IDs are not shown in the game, instead their name and description are used to identify items in a market search for example....

February 11, 2016 · 2 min · Alastair