angellusmortis / boundlexx Goto Github PK
View Code? Open in Web Editor NEWAn API to get all things related to the game Boundless
Home Page: https://api.boundlexx.app/api/v1/
License: MIT License
An API to get all things related to the game Boundless
Home Page: https://api.boundlexx.app/api/v1/
License: MIT License
Something kind of like Dredd, but for OA3. Possible solutions:
https://cloud.google.com/blog/products/api-management/swagger-test-templates-test-your-apis
PS Site is having CORS issues.
Figure out what is going on
http://portal-seekers.com/playground.html
Request from DreamEvil (Discord DM);
Add filters for:
a) a resource that can be used for the resource count APIs
b) an item that can be used in the item colours API
new_color
should only be if it is new for for Sovereign/Perm planetsnew_exo_color
, will be Sovereign/Perm/Exo colorsdays_since_transform
exo_transform
days_since_exo_transform
Add resource blocks per km
Add Colors API version of https://boundlexx.app/api/v1/items/9555/sovereign-colors/
Request from DragonTamer:
Add Crafting Recipes to API
Creative worlds still show as having a cost for warping to.
Fix too-many-lines
and too-many-instance-attributes
errors
Add block drops calculation
https://gist.github.com/simonking91/0360db5109c4570d89cf4881be5f0b8a
Add an HTML name for worlds that automatically resolves emojis/colors
All worlds per world in 1 request would be cool, or all worlds summed into 1 time series would also be cool. If not I was just going to go with my original plan of using the individual series for each world and just playing with it.
Alwin, forums
part 2:
Add ability to poll buckets of resources for a single world over time.
private async Task DoPlanetSettlements(uint planetId)
{
var planet = planets.Data.Where(cur => cur.Id == planetId).FirstOrDefault();
if (planet == null)
{
return;
}
var something = JToken.Parse(planet.GameserverJson);
string apiUrl = something["apiURL"].Value<string>();
string uri = $"{apiUrl}/planet/16/5";
var req = WebRequest.Create(uri);
MemoryStream mo;
byte[] buffer = new byte[1024];
await Task.Delay(throttle);
using (WebResponse response = req.GetResponse())
using (Stream stream = response.GetResponseStream())
{
stream.Read(buffer, 0, 5);
//var a = ReadFully(stream);
ZInputStream zi = new ZInputStream(stream);
mo = new MemoryStream();
int n;
while ((n = zi.read(buffer, 0, buffer.Length)) > 0)
{
mo.Write(buffer, 0, n);
}
}
mo.Position = 0;
mo.Read(buffer, 0, 0x08);
mo.Read(buffer, 0, 4);
int settlementCount = BitConverter.ToInt32(buffer, 0);
List<SettlementRecord> settlements = new List<SettlementRecord>();
while (mo.Read(buffer, 0, 1) > 0)
{
SettlementRecord cur = new SettlementRecord();
byte length = buffer[0];
mo.Read(buffer, 0, length);
cur.Name = Encoding.UTF7.GetString(buffer.Take(length).ToArray());
mo.Read(buffer, 0, 4);
cur.Prestege = BitConverter.ToInt32(buffer, 0);
mo.Read(buffer, 0, 4);
cur.Something = BitConverter.ToInt32(buffer, 0);
mo.Read(buffer, 0, 2);
cur.Worldx = BitConverter.ToInt16(buffer, 0);
mo.Read(buffer, 0, 2);
cur.Worldy = BitConverter.ToInt16(buffer, 0);
settlements.Add(cur);
}
if (settlementCount != settlements.Count)
{
throw new Exception("length mismatch");
}
ulong curRank = 0;
foreach (var curPlanetSettlement in settlements.OrderByDescending(cur => cur.Prestege))
{
curPlanetSettlement.PlanetRank = ++curRank;
}
planet.Settlements = settlements;
}
Request from JyeGuru (via Discord DM):
Ability to access the World API for inactive worlds.
By default, World API should still only shows active worlds (non-expired or locked worlds). i.e. worlds that currently in the game API. Probable implementation is to add a filter ?show_inactive=True
or something to reveal inactive worlds.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.