Discussion External API Requirements Thread

Status
Thread Closed: Not open for further replies.
Access to current system
Access to docking status
Possibility to select a station planet or system just like on the left panel
Access to the systems and stations that we can have on the galaxy map.

Because I thought creating an app to auto select destinations just like the trip planner do but also the stations. This way you can create a trade route and it always select you where to go and back again and again. (Yes i'm lazy)
 
For all they want the client API, you can have something better ;) but it will take time and a very careful design. For the short term there should be a simple telemetry dll-isch API where you have your position, movement (seep, acceleration, rotation) and some compasses (direction to sol, to nav beacon, maybe target) maybe also some other dynamic values like shield and heat. All other data can be taken over the web API.

Why no client API? As I mentioned there should be a way to get the data but there is no need to bring to much overhead into it. Making you client to a web server or handle different requests and give multiple responses might be a little overkill because the most data can be taken from the net. Also the solutions many people want to have seems to be very specific and might be only useful for one person and this person also might be firm enough to gather data from a light weight API (or data dump) ;)

So what can be better than an API you ask? Probably there might be a real mod integration into the game e.g. implement lua, so you could modify the sidle panels or maybe even the load out of ships but the big point here is that we have a MMO and that this scripts have to stay in balance. Maybe moderated script that will be allowed in open play maybe scripts work only in solo mode. PvP makes it very difficult to bring even the simple client API but I hope this game and community manage to become a open moded MMO. Maybe I'm a bit naive but who knows with a very careful design and some tricks...
 
Seeing Pilots in other space crafts

Hi everyone,

Following up on our plan to investigate support for third party apps utilising game and player information we’re starting with the requirements capture. In this thread we will compile the wish list for the types of data people would like to see available from an API available to external apps. If you have a specific app in mind then that can make a useful test case to accompany the data requirements – it’s always useful to see real world examples of how the data is to be used.

This same process will also help guide our plans for our own apps and so we’re pausing development of expansion of the Android and Windows Phone versions of our existing Companion App until this process is complete.

Please note that this thread isn’t about discussing the merits of third party apps.

We’ll leave this thread open until February 16th. After this point we’ll review the information and put together our initial proposal. This will cover two aspects: the first is the technical design for the API and the second is the procedure for using this data. During this process we’ll also invite people based on participation in thread and other communications to form a small working group.

When the proposal is ready the private group will provide feedback on the plan, and will go on to assist in testing the system and the associated procedures as appropriate when we enter development of the API.

We’ll keep you informed as we progress and thanks in advance for your participation in this!

Michael

This may or may not be in the right thread but i would love to see other pilots in there own space crafts, when i go up to the front of there ship all i see is a empty seat. I think this is a big deal since i don't want to feel like im just killing a ship i want to feel like im actually killing a enemy that is flying the ship. Even making it to where maybe the ship you destroy makes the character that was flying it float in space with his wreckage. This to me being a very visual person is a must have, even if it is kind of cosmetic.
 
I am going to simply say that as a hardware dev who's posted the question, the biggest demand I get back is ability to recreate cockpit tools in physical switches and indicator lights.
- Ship information in real time, an ideal format would possibly be a flight-sim protocol similar to what X Plane uses, as some hardware already supports this protocol.
- Ability to retrieve information from the side screens even if they are not open, I would like to implement a tablet application which can make an Android, iOS tablet, or Windows Tablet act as a side screen, many people do have a tablet type device these days and this function would be a very affordable virtual cockpit option
- Star system information for the current star.
- Universal Cartographics database dumps, even just star name/position would be helpful, listing stations and empire ownership would be exceptionally useful.
- Market data at current station, this data is currently scraped via OCR programs, so such data is already being accessed by fans without even accessing the game files.
- Compass data to current nav destination and current target. Maybe one for current star as well.
- Graphic Asset dumps to aid production of UI elements.
- A Pony
- Ship installed systems data.

I could go into the details of these in volumes, but a majority of this is information that could be gotten through existing means with enough work (about 80% of it is a matter of OCR, machine vision or other similar mechanisms that do not even hook into the client directly. The rest would satisfy my needs for joystick/panel/control hardware creation which includes displays, gauges and other bidirectional indicators that I plan on making.

Ultimately I really just want to be able to make a complete cockpit pod with physical control panels and I've got a dozen people between my own friends, and others on the forum interested in what I could possibly create with ship telemetry. I'm sure once I start a build log I'll have more than that, even.
 
If we can have a stream (websocket or so) of ship data (json or xml) such as :
ship coordinate (but in space, all is relative, just choose an arbitrary point such as system star in hypercruise, no idea for USS :/)
ship orientation vector
ship direction vector
ship real velocity
ship requested velocity
ship firing status change (start/stop, change fire group and so)
ship temperature
use of chafff/heat sink/shield cell
(and the same data on other local ships)

I would love to create 3D replay of combat, with free look, to get a better understanding of our own movement and enemy ones.
 
Please make the API available via http requests (obviously with suitable oauth stuff).
I'd build my own Web app that would pull down my information, store it, and present it equally well on my laptop/iPad/Chromebook and my sons' Android tablets.

What I would like to access:
For exploration, I'd like to have a list of everywhere I'd been (I'd build the ability to store notes, record events etc.).
For bounty hunting, I'd like a list of my kills, where they had taken place, bounties earned etc.
For trading, I'd like a list of what/when/where I'd bought goods and what/when/where I sold stuff, and for how much etc.

I don't know the capacities of the DBs FD use, but I would like at least a couple of days worth of data to be accessible - I'd suck it down every day and store my stuff locally - FD could then delete old data to keep storage costs down.

Real excited for the possibilities
 
More than one type of API

From what i gather, there's seems to be a request for more than just one API. The way i see it, is that FD was talking about a web based API (mentioning their own Companion App etc.). But a lot of people are (by the looks of it) more interested in a client-based API.. for Current ship systems & location information, etc.
My question is will FD also provide a game client based API?

I'm asking because i have a few ideas for a Personal Log and Traders apps (which may benefit from client API) such as:
  • Log systems visited (i'm thinking of some kind of an event notification like changing system that i can consume)
  • Log in-system events such as entering a station (very useful for trading application, to measure time vs profits from a cargo run)
  • Query commodities while docked (enter station event above would be helpful in determining when querying is possible)
  • Query station information: Type, Population, Allegiance, Controlling faction, etc.

Sure, some of those mentioned may also be Web based API, but such things like notification/events & real-time data is better served locally. And helps reduce server traffic (imagine hundreds of apps polling for data). FD might want to put some query limit to the web API :)
 
FD might want to put some query limit to the web API :)

NEVER provide an API without a limit. Ever. Put a limit on everything, even if (you think) the limit is ridiculously high. Someone will find a way to reach it. Keep track of those limits, maybe they will show you areas where the data or functionality provided are lacking or need to be restructured.
 
The primary attributes I'd like to see exported into a third-party program concern markets, alliances, and purchasable items. This saves a lot of time when looking for items. The list of things I'd like to have access to are as follows

Primary Items - most important to me

- System Name
- Station/Port Name
- Economy of system/port
- Allegiance and Government
- Commodities - prices of buying/selling - available stock
- Shipyard inventory
- Outfitting inventory

For the secondary items I feel it may be useful for players who want to bounty hunt, engage in the meta (influence the economy of a system), or do any of the listed activities more efficiently.

Secondary Items - less important to me but still useful

- Factions and Influence %
- Current state (Boom, civil war, etc...) - Along with perhaps a numerical representation of how near/far a faction is from said state
- Resource extraction zones and nav beacons in the system (useful for miners, bounty hunters, and pirates)
- Population

Now some of this information is a bit redundant with what Frontier already has in ED. However, it would be nice to have some of this data be available in a third-party to increase efficiency.
 
Just an add to my previous post : Local news (incl. Ships who passed by in the last 24h, the local market fluctuation news item and the highest local bounties) for the current system would be wonderful. I'd actually welcome it if those would only be available after docking at least one at a station or outpost since jumping into the system.
 
For exploration, I'd love to see a way to pull the full current system data while in said system. It would include everything you currently know about the bodies found in it, depending on whether or not you've scanned them up close.

If it could return data in the form of
System name
System coordinates
-Main star
--Size
--Mass
--Type
--etc
---First orbiting planet
----planet size, mass, AU distance, type, etc
etc etc

I would be one heck of a happy explorer. Mixing my programming background an interest in space with Elite: Dangerous would give an endless amount of enjoyment and I see such API calls used to create crowd sourced galactic data for use in exploration, not trading, for a change.
 
There is something broader to consider when exposing a web API for external applications and this is impacted by the overall design of the game.

1. Allow access to game data (such as trade data, exploration data, etc) on a global level using an application based authentication mechanism. In other words, data scope is at a global level.
2. Allow access to game data on a player level, i.e. authentication to the API is done using the credentials of a player or a web API subset of credentials of a player for security. This means data available to application is only that which the player would see in game.

The question becomes, is exposing all trade and system data game breaking? My first thought is yes. The initial raft of external applications I can see people wanting to develop is stuff along the lines of trade route finders that find the best trade routes for people to use because the API is global. However, if the API only works on a per user level for this kind of data it might be more appealing (the best trade route for me based on my own data).

The problem with that is 3rd party services would be developed to collate that data from multiple users and essentially become global. In that case, that data should never get exposed.

I think what should first be decided upon by Frontier is what data they would want to allow access to for 3rd party applications and to which scope because of game design decisions and limit people's requests to that.
 
Helios support please

Some of us here already use Helios with DCS World and Falcon BMS, and it would great to have support for this tool from ED.
It's recently been made open source: https://github.com/Gadroc/helios

We would need data export from the ED client for import into Helios. All UI data would be nice, and ability to display an entire MFD (target info panel, sensor, ship info) at an arbitrary position on a second monitor would be great.
Here's how DCS World looks for me with Helios on a second touchscreen and a laptop (which is also running FaceTrackNoIR client):
IMG_20130811_010220.jpg
 
Current system/station location of friends. Ability to send message to friend from app. Ability for friend to share mission so that user can accept mission and be able to help when he/she gets back online.
 
If we can have a stream (websocket or so) of ship data (json or xml) such as :
ship coordinate (but in space, all is relative, just choose an arbitrary point such as system star in hypercruise, no idea for USS :/)
ship orientation vector
ship direction vector
ship real velocity
ship requested velocity
ship firing status change (start/stop, change fire group and so)
ship temperature
use of chafff/heat sink/shield cell
(and the same data on other local ships)

I would love to create 3D replay of combat, with free look, to get a better understanding of our own movement and enemy ones.

... And I'd love to write an aimbot. wth?
 
I would be happy with just having the trade-data dumped to a log file with system and station name when you enter the marked.
We all know about the OCR projects now running- the exposure of trade data is already out there for anyone to use. Getting the same data from an API would just ensure that correct data is used- not to mention the data would be up to date.
 
App functionalities I would use on my iPad:
Access the ship computer live (ie. the screens bound to the buttons 1, 2, 3 and 4). It would be great if I could slide left-right to switch between these screens on my iPad. This would allow us to multitask easier and do the following while piloting the ship

* Plotting routes
* Keeping an eye on contacts
* Target information
* Monitor communications
* The zoomed in holoradar view could have increased resolution so that it would be easier to tell contacts apart when in heavily traficked areas
* Module, power and functions management
* Target groups configuration

Furthermore the following could be added to these screens when close enough to a station, outpost or some kind of FTL managed information relay network. I imagine that super fast small automated FTL enabled drones could travel continually between systems and within systems and download/upload data to allow for a limited form of broadcast network that would stay current for systems within a certain range. Pilots could be required to pay a small fee every time they connected to this network.

* GalNet news for current system and neigbouring systems
* Live trade data
* Read bullitin boards
* Messaging system between pilots and pilot organizations?
 
Not sure if this is the kind of thing you want for this idea but i'll throw it out there anyway.

System state status- Let us see if a system is at war, an econometric boom etc. As someone who is more into killing NCPs knowing where wars are happening is a huge thing, I've tried asking on the forums but got no reply. When i was actively playing the game I would find out about wars too late to take part. This can be helpful to traders (and by extension pirates) and can draw more players into hot zones.
 
As an explorer I would love to get access to all the systems I have visited so far and all the system and detail scans I have ever done.

Info that woud be helpful:

system scan:

- name and id of system
- galactic coordinates of system
- list af all objects scanned
- timestamp

detail scan

- name of object
- stellar data (size, type, pretty much all in the systems map info for said object)
- timestamp


the idea is EDCartographyService site. Listing all my visits and stats about my scans (number of moon, asteroid belt, gas giant, black hole).

Plus lists with all explorers sortable by number of moons, icey planets, gas giants, .. scanned. even stuff like augmented info like system xyz was first visited by Cmdr x, system scanned by y. and object a first detail scanned by Cmdr z on date 1/2/3300.

In all honesty. I'd much rather have these things available ingame and integrated into HUD, galaxy and system map. As well as official App and website. But an external service via API calls would work too :)

I'd love to know who has discovered the most black holes. Or scanned the most neutron stars. been furthest from Sol....
 
Last edited:
Status
Thread Closed: Not open for further replies.
Back
Top Bottom