Pages: 1 2 3 4 5 6 7 8 9 10 11 12 [13] 14 15 16 17 18 19 20 .. 26 :: one page |
|
Author |
Thread Statistics | Show CCP posts - 2 post(s) |
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.11.16 21:44:00 -
[361]
Edited by: Amida Ta on 16/11/2009 22:07:43 I guess you are talking about DataCore. I'll make them available for the next version there.
BTW: If you have any ideas just write them and I may implement them if they make sense. But some things are design decisions, so I'd rather not change them (e.g. having TRUE Objects without IDs). _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Muesli Reep
|
Posted - 2009.11.18 00:11:00 -
[362]
Hi,
I'm trying to retrieve market data but I want to be able to use the item name and not its id to look it up. So I browsed a bit in this thread and found some info I wanted but when implementing I get an "ArgumentException was unhandled".
This is wat I'm using:
EveApi api = new EveApi(); EveAI.DataCore dataCore = new EveAI.DataCore(); EveAI.DataReader reader = new EveAI.StaticDataDataReader(dataCore); reader.Read(EveAI.DataTypes.Products); EveCentralMarketApi marketApi = new EveCentralMarketApi(dataCore); EveAI.Product.ProductType product = dataCore.FindProductType(api.EveApiCore.GetIdForObject(api.EveApiCore.ProductTypes.Equals("Tritanium"))); ProductStatistics p = marketApi.GetProductStatistics(product);
I'm not sure what I'm doing wrong so any help would be much appreciated
|
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.11.18 14:53:00 -
[363]
api.EveApiCore.ProductTypes.Equals("Tritanium") is surely not doing what you are trying to do. In fact it will always just return FALSE as a result.
I think you want to do: EveAI.Product.ProductType product = api.EveApiCore.ProductTypes.Find (p=>p.Name == "Tritanium"); _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Muesli Reep
|
Posted - 2009.11.18 16:57:00 -
[364]
Yes thats what I need , but if I use it as follows:
Quote: EveApi api = new EveApi(); EveAI.DataCore dataCore = new EveAI.DataCore(); EveAI.DataReader reader = new EveAI.StaticDataDataReader(dataCore); reader.Read(EveAI.DataTypes.Products);
EveAI.Product.ProductType product = api.EveApiCore.ProductTypes.Find(p=>p.Name == "Tritanium");
EveCentralMarketApi marketApi = new EveCentralMarketApi(dataCore);
ProductStatistics pStat = marketApi.GetProductStatistics(product);
label2.Text = pStat.Product.ToString(); label3.Text = pStat.BuyOrders.Median.ToString();
I cant use the .Find() method.
Quote: 'System.Collections.Generic.ICollection<EveAI.Product.ProductType>' does not contain a definition for 'Find' and no extension method 'Find' accepting a first argument of type 'System.Collections.Generic.ICollection<EveAI.Product.ProductType>' could be found (are you missing a using directive or an assembly reference?)
I googled a bit and I cant see if I'm missing a reference or not.
Im using .Net 3.5 C# with EveAI_Live_1.1.10c
|
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.11.19 00:48:00 -
[365]
Edited by: Amida Ta on 19/11/2009 00:52:30 Oh, its an ICollection<T> that doesn't have find. (Did not test that before) Then you have to use something from ICollection<T>. First or Single seems to be what you want. http://msdn.microsoft.com/de-de/library/y2fx0ty0.aspx
EveAI.Product.ProductType product = api.EveApiCore.ProductTypes.Single (p=>p.Name == "Tritanium"); _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.11.25 18:31:00 -
[366]
EveAI Live Version 1.2 PRE1 has been released!
This is a PRERELEASE version for Dominion. It contains breaking changes and some things might not work against the current API server. This version allows planning for updates for the Eve Dominion Release, for all other cases use the last available EveAI.Live version.
There is no guarantee that there won't be other breaking changes till the 1.2release
Notable changes since last version:
Updated static Data to Eve Dominion StarbaseDetailApi: ClaimSovereignty property removed MapSovereigntyApi is renamed to SovereigntyApi MapSovereigntyEntry is renamed to SovereigntyEntry SovereigntyStatus: Completely new API SovereigntyStatusEntry: Class for SovereigntyStatus entries MailMessageApi: Completely new API MailMessage: Support class for MailMessageApi NotificationApi: Completely new API Notification: Support class for NotificationApi Here is the new version: http://dl.eve-files.com/media/corp/Foxfire/EveAI_Live_1.2_Pre1.zip _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.11.29 02:10:00 -
[367]
EveAI Live Version 1.2 PRE2 has been released!
This is a PRERELEASE version for Dominion. It contains breaking changes and some things might not work against the current API server. This version allows planning for updates for the Eve Dominion Release, for all other cases use the last available EveAI.Live version.
There is no guarantee that there won't be other breaking changes till the 1.2release
Notable changes since last version:
Activities Attribute moved from ProductType to BlueprintType. If you used that you will need to change from product.Activities to product.Blueprint.Activities
BlueprintType has lots of additional properties and methods for getting the material and base material usage (working for T1 and T2 materials) BlueprintType.WasteFactor: Now saved as decimal factor (e.g. 0.10 instead of 10) Here is the new version: http://dl.eve-files.com/media/corp/Foxfire/EveAI_Live_1.2_Pre2.zip _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.12.01 16:25:00 -
[368]
Edited by: Amida Ta on 01/12/2009 16:28:13 There is a tiny (already fixed) bug with the SovereigntyStatusApi. I will wait for DOMINION to go online before releasing another version as I currently can't seem to test the evemail and notification apis (they both work but I don't get any data back except an empty list). _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.12.03 00:31:00 -
[369]
EveAI Live Version 1.2 PRE3 has been released!
This is a PRERELEASE version for Dominion.
Notable changes since last version:
Fixed two small errors which prevented the new APIs from working correctly. Could not test the Notifications API a lot, but everything seems to work. Here is the new version: http://dl.eve-files.com/media/corp/Foxfire/EveAI_Live_1.2_Pre3.zip _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Al'kanree
|
Posted - 2009.12.09 12:45:00 -
[370]
humm, i am not sure but I think that the mapsovereintystatus doesn't work
|
|
Cableworth
|
Posted - 2009.12.09 17:20:00 -
[371]
I'm fairly certain that the EveAI is reporting the incorrect server status. When I run it, it returns false with 0 users while EVEMON and the server itself are reporting that it's fine.
Could it be a caching issue?
|
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.12.11 01:11:00 -
[372]
Originally by: Al'kanree humm, i am not sure but I think that the mapsovereintystatus doesn't work
CCP disabled the mapsovereintystatus API. So it won't work any longer. _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.12.11 01:21:00 -
[373]
Originally by: Cableworth Edited by: Cableworth on 10/12/2009 07:29:48 I'm fairly certain that EveAI is reporting the incorrect server status. When I run it, it returns false with 0 users while EVEMON and the server itself are reporting that it's fine.
Could it be a caching issue?
Edit: this occurs after downtime.
I just checked and everything seems to be correct. It might be that EVEMON is not using the official API (there is another way to probe for the server status).
But I'll try to find out what happenes at a downtime. BTW: Caching is set to 3 min by the server. _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.12.11 01:42:00 -
[374]
Originally by: Cableworth Edit2: After further experimentation, I'm not sure whether it's something that I'm doing wrong or what, but the cache seems to work solely off the characters ID's and ignores the api key altogether. If a user submits a valid user ID yet the api key is modified slightly, EveAI will still return valid data. This is a problem since the method I'm using to verify if auth data is correct is to determine if there are any characters returned by this (any better ideas?). It's artificially creating valid entries when they should be invalid.
Here is what I'm doing:
EveApi eve = new EveApi(newUser.APIID, newUser.APIKey);
List<AccountEntry> accounts = eve.GetAccountEntries(); if (accounts.Count == 0) { //Send error }
^ This problem was resolved by comparing the API ID rather than the API Key with existing ones. Looks like your internal implementation of the cache only checks against ID's :).
Your observations are completely correct. In fact this mechanism is a protection (otherwise you would create tons of useless cache files in your case).
For your problem: 1) A far better idea would be to check if the API returned a specific error if you are looking for it. In your case it should be as simple as: if (eve.LastErrors.Contains (EveApiError.AuthenticationFailure)) // Send error
2) You will still have the problem if VALID AND UNEXPIRED=ACTIVE cache data still exists. But on the other hand I don't think in that case it's really a problem because the user will get the cached data anyways. _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Evo YaMing
|
Posted - 2009.12.11 11:11:00 -
[375]
Hi Amida, i am trying to receive EVE mail messages but the only thing i receive is a empty list.
List<MailMessage> myevemail = api.GetCharacterMailMessages();
Any idea?
|
Cableworth
|
Posted - 2009.12.11 13:12:00 -
[376]
Thanks for the feedback, I'll use that method for authentication instead. In terms of the online status, I'm stumped as to what the problem could be...how would I go about viewing the raw data from the API to make sure I'm not going mad? Also what's the way evemon uses?
|
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.12.11 15:50:00 -
[377]
Originally by: Cableworth Thanks for the feedback, I'll use that method for authentication instead. In terms of the online status, I'm stumped as to what the problem could be...how would I go about viewing the raw data from the API to make sure I'm not going mad? Also what's the way evemon uses?
The easiest way is to look at the cache files. They are just the server response with a few added xml fields. I don't know which method evemon uses. But prior to the ServerStatus API some programms basically faked being a regular game client up to the login screen which gives you the current user count. However this method is discouraged (they wanted to forbid it completely by some time) by CCP. _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2009.12.11 16:01:00 -
[378]
Originally by: Evo YaMing Hi Amida, i am trying to receive EVE mail messages but the only thing i receive is a empty list.
List<MailMessage> myevemail = api.GetCharacterMailMessages();
Any idea?
You can only call the api one single time. Each following time you will only get your new mails (or you wait 6 hours, see the dev-blog for details). This is some new caching mechanism by CCP that does not (yet?) have any special support in EveAI.Live. So you have to handle that behaviour yourself. _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Fathora
|
Posted - 2009.12.16 16:51:00 -
[379]
Edited by: Fathora on 16/12/2009 16:52:10 Hi Amida,
Great work with the library.
I was wondering if something funky is going on with the .PossibleOnlineTime property of the Starbase class? It's currently always returning a fuel result for no sov (even if a system has sov).
MapSovereigntyEntry returns a correct result for Alliance.Name but always -1 for .SovereigntyLevel
Could a solution be to apply the 25% discount if the Alliance.Name matches the alliance name of the character supplied to the initital API call?
I mean of course I could write a lot of extra code to calculate it based on the actual resources in the tower, but .PossibleOnlineTime is a cool property and it probably only needs a little tweak :)
|
Laxxor Borocillicase
Freelance Assassins
|
Posted - 2009.12.31 00:55:00 -
[380]
Edited by: Laxxor Borocillicase on 31/12/2009 01:07:34 Hi
I was wondering if there was any hint you could give as to the following:
Given the following code
MarketApi mEveCentral = new EveCentralMarketApi(); mEveCentral.EveApiCore = mEveData.EveApiCore;
//' any product from the EveApiCore.ProductTypes list mEveCentral.GetProductStatistics(tmpProducts[0].Blueprint.Product)
Generates an exception:
Invalid Eve-Central response structure Input string was not in a correct format.
at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) at System.Number.ParseInt64(String value, NumberStyles options, NumberFormatInfo numfmt) at System.Int64.Parse(String s) at EveAI.Live.Market.EveCentralMarketApi.ReadTradeQuoteXml(XmlNode node) at EveAI.Live.Market.EveCentralMarketApi.ReadProductStatistics(String xmlText)
I am using 1.1.10b.
It's been a while since I dabbled with your API and possibly I'm forgetting something I learnt previously, but this code used to work with 0.9 about 9-15 months ago.
Excellent work and many thanks
Laxxor
Using EveMetricsMarketApi does not produce the exception.
|
|
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2010.01.05 17:57:00 -
[381]
Edited by: Amida Ta on 05/01/2010 17:57:17 This is a problem with EveAI and has already been fixed in 1.1.10c:
Quote: òAdded workaround for bug or unannounced change in Eve Central
_________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Laxxor Borocillicase
Freelance Assassins
|
Posted - 2010.01.06 18:16:00 -
[382]
Originally by: Amida Ta Edited by: Amida Ta on 05/01/2010 17:57:17 This is a problem with EveAI and has already been fixed in 1.1.10c:
Quote: òAdded workaround for bug or unannounced change in Eve Central
Nice - might want to update the link on the first post and the EVEAI page on EveDev as they both point to "b".
Many thanks
|
Laxxor Borocillicase
Freelance Assassins
|
Posted - 2010.01.06 20:35:00 -
[383]
Originally by: Amida Ta
The library is (or should be) able to dynamically identify if it does not have physical drive access. In that case it disables HDD caching by default and will only do memory caching.
Should this also be the case for XBAP deployment? I'm gettng:
at System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet) at System.Security.CodeAccessPermission.Demand() at System.Reflection.Assembly.VerifyCodeBaseDiscovery(String codeBase) at System.Reflection.Assembly.GetName(Boolean copiedName) at System.Reflection.Assembly.GetName() at EveAI.Live.EveApiConfiguration..cctor() The action that failed was: Demand The type of the first permission that failed was: System.Security.Permissions.FileIOPermission
The first permission that failed was: <IPermission class="System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" PathDiscovery="snip...EveAI.Live.DLL"/>
The demand was for: <IPermission class="System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" PathDiscovery="snip...EveAI.Live.DLL"/>
When attempting to run it.
Thanks
|
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2010.01.07 10:28:00 -
[384]
Originally by: Laxxor Borocillicase
Originally by: Amida Ta
The library is (or should be) able to dynamically identify if it does not have physical drive access. In that case it disables HDD caching by default and will only do memory caching.
Should this also be the case for XBAP deployment?
Never tried for XBAP. But it seems it has no support for any reflection by default. Will try to fix that for the next version. Should not be too hard for this specific case. _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Zaepho
Gallente Phoenix Propulsion Labs
|
Posted - 2010.01.23 02:06:00 -
[385]
Any updates for the new 1.1 APIs in the pipeline? Specifically I'm looking for the Research API. I'm happy to test a pre-release/beta build.
Thanks
|
Allan Atlantica
Gallente
|
Posted - 2010.01.24 20:11:00 -
[386]
I don't know about the rest of you, but I could use a little documentation.
Amida, how about including the test application code, as part of the project, so we could see some real examples of EveAI being used?
Regards,
Allan
|
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2010.02.11 14:12:00 -
[387]
EveAI Live Version 1.2.1 has been released!
Please note here are SEVERAL breaking changes which require you to possibly change class names or add namespace declarations to your code!
Notable changes since last version:
Static Data has been updated to Dominion 1.1.1 EveAI.Core: CelestialAreas (like SolarSystem, Region and Constellation) have a new Attribute Area INSTEAD of MinLocation and MaxLocation. Also the locational attributes have been changed to float/single instead of double. So if you are using this you need to use system.Area.MinLocation instead of system.MinLocation. CelestialAreas Faction will always display a faction if available (even when inherited). Station is now in the namespace EveAI.SpaceStation instead of EveAI directly. School class has been removed. Agent related classes are in the namespace EveAI.Npc. NPC Corp related classes are in the namespace EveAI.Npc.
EveAI.Live: Research Point Status API has been added. Tax info has been added to the Character Wallet Journal Page.
Here is the new version: http://dl.eve-files.com/media/corp/Foxfire/EveAI_Live_1.2.1.zip _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2010.02.12 12:16:00 -
[388]
Edited by: Amida Ta on 12/02/2010 12:17:15
Originally by: Allan Atlantica I don't know about the rest of you, but I could use a little documentation.
Amida, how about including the test application code, as part of the project, so we could see some real examples of EveAI being used?
Thats actually what I originally wanted to do, but it currently is a test application for the api and me. The relevant code to control the api is absolutely minimal and surely not of much value for anybody. In fact it is only a few lines of code:
Quote: String[] names = Enum.GetNames (typeof (EveApiType)); Array.Sort (names); selectApi.Items.AddRange (names);
api = new EveApi ();
Quote: EveApiType typeToGet = (EveApiType)Enum.Parse (typeof (EveApiType), (String)selectApi.SelectedItem); currentObject = api.CallApi (typeToGet); propertyGrid.SelectedObject = new ObjectHolder (currentObject);
So its very heavy on reflection and not how you would usually use the api. _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
Laxxor Borocillicase
Freelance Assassins
|
Posted - 2010.02.13 00:56:00 -
[389]
Edited by: Laxxor Borocillicase on 13/02/2010 00:57:26 Edited by: Laxxor Borocillicase on 13/02/2010 00:57:01 There are a few other changes that I've noticed which is possibly more to do with the static data than your API I expect, but for those not aware:
- Maufactring materials for blueprints can now be found in ManufacturingBaseMaterials property (they used to be part of one of the Manufacturing Activities
- Something seems to have changed with regards to GetProductStatistics, but I've not located what exactly
|
Amida Ta
German Mining and Manufacture Corp.
|
Posted - 2010.02.14 12:51:00 -
[390]
There haven't been any changes with the market API, so it has to be some coincidence in slower servers if you see both with degraded performance.
There have been quite some changes to reprocessing information (as I wrote for version 1.2 Pre 2). The most important one maybe that you can now get the basic mineral reprocessing data for every item regardless if it is t1, t2 or t3. Also there are lots of additional helper properties and methods there. _________________________ EveAI.Live - The EVE-Online API/class library for .Net, C# and VB.Net |
|
|
|
|
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 [13] 14 15 16 17 18 19 20 .. 26 :: one page |
First page | Previous page | Next page | Last page |