Showing Posts For DarkSpirit.7046:

WebSocket location server/client map thing

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

It can be useful if you provide short documentations on how we can communicate with your server if we decide to write our own client.

(edited by DarkSpirit.7046)

Improving Ranger & Pet Mechanics

in Suggestions

Posted by: DarkSpirit.7046

DarkSpirit.7046

Pets are the only distinguishing mark of a ranger. A warrior can also use a longbow and a thief can also use a shortbow. Pets are what makes a ranger special.

If the pet AI is flawed then shouldn’t they attempt to balance that by granting unique advantages for having a pet? I suggest a set of solid group buffs when a pet crits for example.

I agree that pets currently contribute very little. They don’t provide much damage and they die easily due to poor AI. Being mostly melee, they should at least have as much capability to stay alive as the warrior but they don’t. Plus, the ranger has a very limited set of group buffs compared to warriors and guardians.

If ArenaNet wants to make pets and spirits targetable, then they should balance them up to give much better buffs than the warrior’s shouts and banners which are not targetable. As it is right now, it is the reverse. The warrior’s non-targetable group buffs are way more powerful than the ranger’s targetable group buffs. That just doesn’t make sense.

(edited by DarkSpirit.7046)

Should I make my ranger a mule?

in Ranger

Posted by: DarkSpirit.7046

DarkSpirit.7046

It is impossible to “balance” classes for PvE unless you made them all the same. There is no way to make a group of necros and rangers speed-farm CoF 1 with the same effectiveness as the guardian/warrior/mesmer unless you give them the same DPS and portinh… which means that all professions are the same thing with different skins.

That is like saying, ArenaNet is constantly doing something that is doomed to fail so they should just fail constantly and make the game worse and worse until it dies.

I am absolutely certain they could have done a much better job with balancing than they have right now.

I don’t know what the problem is, they need to take BOLD steps when it comes to balancing weak classes up. If they became overpowered, then they can always nerf them in the next update. At least this way, professions would rotate to become part of the trinity and give an appearance of balance over time. Which is still better than having warrior/guardians/mesmers as the 3 most powerful classes forever.

(edited by DarkSpirit.7046)

Should I make my ranger a mule?

in Ranger

Posted by: DarkSpirit.7046

DarkSpirit.7046

The biggest complaints I hear from people who don’t like to bringing rangers into dungeons are:

1. Rangers do not have any good group synergy (except for warhorn #5 and healing spring which has a high recharge).

2. Ranger’s pets have poor AI

I propose that pets should have a special skill in pve that would be too good to miss out on in dungeons. A group-wide buff that would exceed some of the guardian’s defensive buffs or, even better, the warrior’s offensive buffs. This is the only way, that I can think of, to bring rangers back into dungeons, on par with the trinity without any major changes to its design.

If ArenaNet wants to make pets and spirits targetable, then they should balance them up to give much better buffs than the warrior’s shouts and banners which are not targetable. As it is right now, it is the reverse. The warrior’s non-targetable group buffs are way more powerful than the ranger’s targetable group buffs. That just doesn’t make sense.

(edited by DarkSpirit.7046)

Should I make my ranger a mule?

in Ranger

Posted by: DarkSpirit.7046

DarkSpirit.7046

However, I do believe things would go better if ANet would have a more open dialogue with the community prior to the patches so that we can get an idea of how they think the class is operating, and they can gauge how we feel about that, and provide some insight as to the direction they plan on taking the class.

This whole shooting at each other in the dark thing has to stop.

That is not going to happen because the community would not let them go ahead with the patch if they do that.

There is no point complaining about the patch because the moderator would simply delete any post that doesn’t make the game look good. ArenaNet can produce excellent games but for some reason, they are terrible when it comes to balancing professions for pve.

Balancing is hard but surely they can do a better job than this. Just take a look at how long the GW2 trinity has been around. They can balance the game by simply giving pets a special pve ability that would be useful in the dungeons so that groups would feel compelled to bring a ranger. This would counteract the flaws in their pet AI which is one of the main design issues with rangers.

(edited by DarkSpirit.7046)

Should I make my ranger a mule?

in Ranger

Posted by: DarkSpirit.7046

DarkSpirit.7046

If by mule, you mean the animal that kicks kitten by all means do so!

Nice that you can afford to play pvp. I can’t do WvW because I don’t have ascended rings and back pieces and I can’t have these without being able to do fractals. So I can’t do fractals and I can’t WvW, the only thing I can do with my ranger is the dailies. Maybe after some months/years I would be able to afford them with laurels. Either that or I give up playing my ranger.

If you play as whiney as you sound I won’t accept you into my dungeon groups either.

If by being whiney is to be ready to give up on my main, because pugs have been telling me that they wont accept any class outside of warrior/guardian/mesmer, then so be it.

And I thought ArenaNet was suppose to address the issue of the dungeon trinity. Guess not.

No, by whiney I mean complain until stuff happens for you.

You can’t be the only person sick and tired of Mes/War/Guard only, right? Why not look for like-minded people that want to do dungeons?

And what would that prove? That the game is now all well and perfectly balanced?

No, I want this game to be balanced. I am sorry if that is asking too much because I really thought that would indeed be THE goal before buying this game.

Should I make my ranger a mule?

in Ranger

Posted by: DarkSpirit.7046

DarkSpirit.7046

If by mule, you mean the animal that kicks kitten by all means do so!

Nice that you can afford to play pvp. I can’t do WvW because I don’t have ascended rings and back pieces and I can’t have these without being able to do fractals. So I can’t do fractals and I can’t WvW, the only thing I can do with my ranger is the dailies. Maybe after some months/years I would be able to afford them with laurels. Either that or I give up playing my ranger.

If you play as whiney as you sound I won’t accept you into my dungeon groups either.

If by being whiney is to be ready to give up on my main, because pugs have been telling me that they wont accept any class outside of warrior/guardian/mesmer, then so be it.

And I thought ArenaNet was suppose to address the issue of the dungeon trinity. Guess not. If this game is as well balanced as you seem to imply, then why are rangers being snubbed by dungeon groups? Are you saying everyone else is just mad for not accepting rangers into their group?

(edited by DarkSpirit.7046)

Should I make my ranger a mule?

in Ranger

Posted by: DarkSpirit.7046

DarkSpirit.7046

I can’t do WvW because I don’t have ascended rings and back pieces…

Uhh….why not?

Because I would be at a disadvantage against people who have superior gear.

Should I make my ranger a mule?

in Ranger

Posted by: DarkSpirit.7046

DarkSpirit.7046

No and these posts aren’t helpful in any way.

Then is there any ranger build that would equate a ranger’s strength with that of a warrior or guardian?

It is frustrating that rangers can’t do dungeons/fractals as well as the trinity classes. How can this game be balanced then?

In WvW I run Apothecary gear and can kill just about any class/build 1v1. The only builds I have a problem with are Phantasm Mesmers, and bunker Guardians/Thieves specifically because I get bored of them not dying and me not dying so I usually just run away unless I want to sit there fighting them for a good 5+ minutes.

Nice that you can afford to play pvp. I can’t do WvW because I don’t have ascended rings and back pieces and I can’t have these without being able to do fractals. So I can’t do fractals and I can’t WvW, the only thing I can do with my ranger is the dailies. Maybe after some months/years I would be able to afford them with laurels. Either that or I give up playing my ranger. It is just not working out.

(edited by DarkSpirit.7046)

Should I make my ranger a mule?

in Ranger

Posted by: DarkSpirit.7046

DarkSpirit.7046

No and these posts aren’t helpful in any way.

Then is there any ranger build that would equate a ranger’s strength with that of a warrior or guardian?

It is frustrating that rangers can’t do dungeons/fractals as well as the trinity classes. How can this game be balanced then?

Should I make my ranger a mule?

in Ranger

Posted by: DarkSpirit.7046

DarkSpirit.7046

As long as pets don’t dodge when we dodge? No.

The fact is that Warriors are there because they curbstomp pve and mesmers and guardians are the best support classes. Unless a major class upheaval happens or they create all new types of boss mechanics (no more aoe instagib zones, more armor and less health for condition builds ect) nothing will really change.

But that would mean that the game is not balanced.

Should I make my ranger a mule?

in Ranger

Posted by: DarkSpirit.7046

DarkSpirit.7046

My ranger is my main character but considering the fact that she has been nerfed into oblivion and back, I am seriously thinking of making her a mule.

Considering the fact that she already has problems getting into a dungeon group before the recent nerf, I would hate to think of the prospect of finding a dungeon group from now on. This is why I have been avoiding playing dungeon and especially fractals like a plague.

Rangers are just much weaker than all the other classes. What do you all think? Would a ranger ever be welcomed in dungeons as much as a warrior, guardian, or mesmer? (i.e. the GW2 Trinity)

(edited by DarkSpirit.7046)

Map API / Mumble Mashup

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Bonjour isn’t pre-installed on windows machines afaik.

That should not matter as developers can package their apps with free Bonjour redistributables under the Apache 2.0 license.

https://developer.apple.com/softwarelicensing/agreements/bonjour.html

Not sure if that would be a problem for ArenaNet as I am not a legal expert, but it seems ok on the surface.

The problem with just using TCP on a user machine to serve out information, without something like Bonjour, is that you do not know for sure if a particular port that you want to use, is available. For example, if I am already running my own web server there would be a conflict with apps such as GWLink that expects port 80 to be free. And not all users are technical enough to reconfigure their own servers and ports.

In case of a TCP connection that would be less of a problem.
First and foreall, nothing should require your port 80 unless you really install a webserver on it (how many users run a webserver on their machine o_o).

Port 80 is a well-known port and should just be used for the HTTP.
You should take a port from the range of 1024-49151. Those are registered ports and chances are, that they are not taken by any other application on a user machine.

Some of them are registered, so just take one from which isn’t listened here:
https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.txt

Once a new client tries to establish a new TCP connection to localhost:port the TCP handshake will establish a connection on one of the ephemeral ports anyway.

Bonjour helps the user on the configuration side when running in a network.
A service can put their service information up, and with that comes the IP address etc.
If another device now looks for services within that network, it just has to check the services available via Bonjour.
That will return a list of all sorts of services in that network, from printers to streaming services etc.
Yes GW2 could register a service there aswell, that way a user doesn’t have to configure the IP address etc.
And if the IP address changes, then the user doesn’t have to reconfigure all the data, because once the service starts, it will register with the most recent configuration, which gets deleted everytime the service shuts down.
As I said, this is mostly useful for applications running on other devices, like a secondary computer, a tablet or smartphone within the same network.
If the application is running on the same computer, then localhost or 127.0.0.1 will just do the trick perfectly fine.
The only upside of bonjour in that case would be, that the GW2 client could choose a free port from basically all available ports and register the service on that port.
Bonjour doesn’t seem to offer any help with that task (just took a quick look, and at least the port number must be defined when you register the service, which makes sense).

That is the problem with ports isn’t it? Every dev thinks that chances are, it would be unused and hardcode their apps to use the same ports.

Not to mention the ugliness of dealing with ip addresses if you want to run your app on a different machine.

So in that case, Bonjour doesn’t help you if that port isn’t free. It helps you to configure all devices/service users in case that you have to switch your service port.
But if the only reason to use Bonjour is to make this particular thing of port configuration of a single application which will connect to localhost, then using such a massive system is oversized to say the least.
You know, in that case, a simple .txt file which gets generated once the listening port is established, which includes just the port number would essentially do the same.

EDIT:
Now that I am back in my hotel, I can type more on my laptop than I could when I was on my iphone.

With Bonjour, if the port is not free, the server simply increments the port number until it finds a free port. The Bonjour service would be used to report to the client what the updated port number would be so the client can still find the service regardless of the service port number which can differ each time. I may not have a web server running before installing the ArenaNet service, but I may still decide to install a web server in the future and as a user, I don’t want to have to resolve any port conflicts ever. Bonjour is designed to do away with such unneeded limitations.

Requiring apps to run on the same machine is not acceptable as that would exclude mobile devices like Androids, iPhones/iPads, etc from running apps to interface with the proposed ArenaNet service. Excluding ArenaNet services from the huge and ever growing mobile space would defeat the purpose of them releasing APIs in the first place.

(edited by DarkSpirit.7046)

Map API / Mumble Mashup

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Bonjour isn’t pre-installed on windows machines afaik.

That should not matter as developers can package their apps with free Bonjour redistributables under the Apache 2.0 license.

https://developer.apple.com/softwarelicensing/agreements/bonjour.html

Not sure if that would be a problem for ArenaNet as I am not a legal expert, but it seems ok on the surface.

The problem with just using TCP on a user machine to serve out information, without something like Bonjour, is that you do not know for sure if a particular port that you want to use, is available. For example, if I am already running my own web server there would be a conflict with apps such as GWLink that expects port 80 to be free. And not all users are technical enough to reconfigure their own servers and ports.

(edited by DarkSpirit.7046)

Map API / Mumble Mashup

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Couldn’t we just get a socket based connection in the future? :P

…advertising through Bonjour

This should support Android, iPhone/iPad, Windows, as well as Mac, over an established Zeroconf standard.

http://stackoverflow.com/questions/8354450/can-android-support-zeroconf-bonjour-over-bluetooth-how-about-tcp-ip

(edited by DarkSpirit.7046)

GW2.NET a .NET wrapper around the GW2 API

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

where should I return an interface? could you point me to the code in question?

I am on vacation right now but, if I recall, by looking at your code in the past, didn’t you return ItemData to the client?

If you did, then you have created a dependency between the client code and your class.
Look into the design pattern to loosen the coupling between client code and your lib. For example, your Gw2ApiManager class seems like it can be modified into a Service Locator or you may decide to use a Dependency Injection pattern.

These are just some suggestions to loosen the coupling with your client code, so you may choose to ignore them if you like. I will not be offended.

(edited by DarkSpirit.7046)

Map API / Mumble Mashup

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Excellent! Thank you!

This sounds like what we need in conjunction with the events api so we can grab the events based on the map location the character is on.

(edited by DarkSpirit.7046)

How to find uncontested dungeons?

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

I have not tested them but I think these are the ones.

var eventIdToCheck = “9752677E-FAE7-4F56-A48A-275329095B8A”; // “Hold the Infinity Coil.” – CoE

var eventIdToCheck = “A1182080-2599-4ACC-918E-A3275610602B”; // “Hold the Gates of Flame against waves of Flame Legion.” – CoF

Buy Orders json file limited to 20 items

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

I don’t have many items in my buy orders right now but supplying the count parameter should work. I just tested it with my past buy orders and that works.

Use https://tradingpost-live.ncplatform.net/ws/me.json?time=now&type=buy&charid=<your charid>&offset=1&count=<your count>

(edited by DarkSpirit.7046)

Null world name

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

You can’t simply say “a null name from an API that deals in world names must be ignored” – that’s not robust, that is an assumption. Should it never make it into the dataset at the client end, or does the name become “Unknown” (if so, should the service do that, localised?), or does null now mean something important in the context of the API (world offline?) and is in-fact valid in the future.

I am not saying to null-check everything. I am saying that you should check the validity of your data, taken from the api, before you process them, if you code based on those assumptions.

For example, if having a null value world name would cause your program to crash because your code assumes that world names would never be null, then you should have a check that world names from the api are indeed not null before your code uses the data.

What you decide to do upon encountering a null value world name is up to you, but at least you write code that caught it before it causes your program to crash down the line. It helps to be a little paranoid when it comes to consuming data from a third party API.

(edited by DarkSpirit.7046)

API implementation library "master list"

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Gw2 Events Javascript library:

  • Supports Windows Scripting Host as well as web pages
  • Supports both synchronous and asynchronous calls for XmlHttpRequest
  • Supports both XmlHttpRequest and XDomainRequest, although the latter is untested.

https://github.com/DarkSpirit444/GW2JavaScriptLib

Dragon Bash Experience achievement bugged?

in Bugs: Game, Forum, Website

Posted by: DarkSpirit.7046

DarkSpirit.7046

Ok they re-adjusted the thread. I just want to point out that their 3-days old reply, on page 2 of this thread, does not address this bug from yesterday’s patch update.

Dragon Bash Experience achievement bugged?

in Bugs: Game, Forum, Website

Posted by: DarkSpirit.7046

DarkSpirit.7046

Ok just finished burning the 50 effigies and now I have 9 achievements toward “The Dragon Bash Experience” Shouldn’t I have the wings by now? It is still showing up that I am coming up short on achievements.

Exact same question

https://forum-en.gw2archive.eu/forum/livingworld/dragonbash/Dragon-Bash-achievement-is-still-10/first#post2234382

Hi everyone,

We’re aware of this behavior for the Dragon Bash meta-achievement and are looking into it. Thanks for your patience !

That was posted 3 days ago but the patch update was only yesterday so I don’t think ArenaNet has addressed this (i.e. bringing down Dragon Bash Experience requirement from 10 to 8 ) bug yet.

https://forum-en.gw2archive.eu/forum/info/news/Game-Update-Notes-June-11th-2013/first#post2230020

The thread merge wasn’t that accurate. In other words, the patch update, to bring the Dragon Bash Experience requirement down from 10 to 8 achievements, yesterday, isn’t working as expected. A 3-days old post can’t be their answer to that.

(edited by DarkSpirit.7046)

Null world name

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

If Anet are including this it would be good to at the very least give it a name (as contractually, it should have a name), but I suspect it’s a test server, or something, and shouldn’t be there.

Regardless it is causing problems to many apps.

ArenaNet is a company with many teams. One team may not realize the impact it has on the other.

The best way to protect your app is to just you make your app more robust since screening for null, if you need to, is not difficult.

You don’t need to explain software development concepts, or how large companies do things.

Name is pretty much mandatory in this context, so, it either needs a name or isn’t intended to make it into the dataset. There’s robustness, and then there’s ensuring every field is null-checked on the client as opposed to guaranteed by the service; on a field like ‘name’ in a read-only, user-focused API, that’s excessive.

We have a totally different view of what Robust Programming is then.

http://nob.cs.ucdavis.edu/bishop/secprog/robust.html

Accidents and bugs do happen regardless of how much we hate them. Don’t trust any data from the Internet, even if your app has to fail due to unrecoverable errors, it should fail gracefully.

(edited by DarkSpirit.7046)

Dragon Bash Experience achievement bugged?

in Bugs: Game, Forum, Website

Posted by: DarkSpirit.7046

DarkSpirit.7046

I have the same problem. 8 achievements as shown on my Dragon Bash Experience bar and yet only 80% done.

Looks like that update yesterday, to change the Dragon Bash Experience achievement requirement from 10 to 8, did not go in:

“Reducing “The Dragon Bash Experience” meta-achievement required total number from 10 down to 8. The Dragon Ball Achievements do not count towards its completion.”

https://forum-en.gw2archive.eu/forum/info/news/Game-Update-Notes-June-11th-2013/first#post2230020

(edited by DarkSpirit.7046)

Null world name

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

If Anet are including this it would be good to at the very least give it a name (as contractually, it should have a name), but I suspect it’s a test server, or something, and shouldn’t be there.

Regardless it is causing problems to many apps.

ArenaNet is a company with many teams. One team may not realize the impact it has on the other.

The best way to protect your app is to just you make your app more robust since screening for null, if you need to, is not difficult.

[API Suggestion/RFE] Event API wishlist

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Snapshot is better than nothing – event with boss health at 90% and 10% is very different from player perspective.

Oh yes I agree that snapshot is better than nothing. Which is why if ArenaNet can provide the location, great, otherwise the community can help out to give an approximate averaged location, since having an averaged-out approximate location is also better than nothing.

(edited by DarkSpirit.7046)

API Usage Limits?

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

I agree with Healix, you should be caching all the items and recipes as they should hardly change.

I have a script that pulls down all the items and recipes to cache them into files, so my app doesn’t ever need to pull them from the web. This improves app performance significantly.

[API Suggestion/RFE] Event API wishlist

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

If it is too much work to provide that, perhaps the community can help out by scavenging for such information and consolidating them to share with everyone.

I have many ideas, just don’t have the time to code them all.

Information gathered by community is great help, but events are too dynamic for it – for example, simple escort event would be headache because it is hard to guess where event actually is – community could gather path info to show that instead, but multiphase events would be too hard.

And I would love to use api to gather this kind of info with API not instead.

Even if the API provides the locations, you would only get a snapshot of such an event and it is probably a bad idea for everyone to spam the server just to get updated locations every so often.

I don’t think we need up-to-the-minute accurate locations of the events. We only need approximate averaged-out locations for our purpose. The community can work that out if ArenaNet can’t provide this info.

From the player’s perspective, it is good enough to know that the event is on, somewhere at a location, so he can move towards that location. When he is close enough, the game would provide more updated information on where the event actually is then.

(edited by DarkSpirit.7046)

[API Suggestion/RFE] Event API wishlist

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

That is what I would want too. Perhaps even if someone can create an overlay when you bring up the map in the game, so you don’t have to be close to a particular area in order to find out that an event is active there. You can find out all active events just by bringing up the map.

If it is too much work to provide that, perhaps the community can help out by scavenging for such information and consolidating them to share with everyone.

I have many ideas, just don’t have the time to code them all.

(edited by DarkSpirit.7046)

GW2.NET a .NET wrapper around the GW2 API

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Code looks pretty clean. Why don’t you return an interface to the client instead of a class?

I suggest looking into the Inversion of Control design pattern That should help make your *Data objects pluggable with test classes using test data or other data providers.

(edited by DarkSpirit.7046)

How to test if a temple is "open"?

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

It looks like the defend event should also not be in “Inactive” state.

That is because when I posted my reply the events API didn’t report “inactive” states then.

But thanks for updating this.

(edited by DarkSpirit.7046)

dont want to be banned...

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Zicore’s app is using the “unofficial” trading post API and so far ArenaNet employees have declined to comment on it which I take it to mean that they are neither for, nor against, such apps. I have developed a similar app on my own since ArenaNet is not against them. But I would have been more excited when ArenaNet has implemented OAuth2 and releases an official version of the trading post API.

How to test if a temple is "open"?

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

As long as the Defend event doesn’t show a status of “Fail”, then the temple should be uncontested.

According to my short script, for the US servers, Tarnished Coast Balthazar shrine should be uncontested right now.

Mystic Forge Recipes

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

I agree with your statements:

  • as far as the app is concerned, it just outputs whatever karma or skill points cost it would take.
  • the user decides their worth.

There is fine print that I find I’ll have to remain vague on, and any disagreement we might have will come from that fine print. If you use your tool to try and make money in the market, you may see some of this fine print.

Or message me directly.

//Yamagawa

Yes I certainly see your point. Is the cost of 127 skill points worth a 37g profit? Maybe or maybe not. It depends on the player, but I think with time, many characters are going to accumulate lots of skill points as they level up even at level 80. So what are they going to do with all those skill points? In the end, we would still leave it to the users to decide for themselves if it is worth it or not.

Mystic Forge Recipes

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

The wiki often starts with a mix of right and wrong info… In any case, the big challenge I faced was identifying the cheapest way to make something, when ‘cheap’ is subject to how someone defines it. I’ve got skill points and karma to burn, I’ve got a friend with neither. We both look have different choices for ‘cheapest way to craft’.
//Yamagawa

It assumes minimum cost based on gold as that is the most natural way of expressing this to the user and I believe this is how gw2spidy treats karma too.

Alternatively, we can have the user supply a conversion rate but that gets complicated and I don’t think that would matter much to the results in most cases.

(edited by DarkSpirit.7046)

Mystic Forge Recipes

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

The recipe with destroyer/molten lodestones is for Titans’ Vengance, not Jormag’s Needle.

Thanks, you are right, looks like they have updated that information on the wiki.

Titans’ Vengance recipe used to be 50 mystic coins, 100 Orichalcum sword blades, 50 corrupted lodestones and 1 eldritch scroll but I guess that was wrong info on the wiki then.

In any case, I made provisions in my code for one item to have multiple recipes. I only need to update my JSON script.

(edited by DarkSpirit.7046)

Mystic Forge Recipes

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Yes there are actually 2 recipes for this one and I just so happened to dump the first one which gives the more profitable result. I got both recipes from the wiki.

Here is the second one with the corrupted cores. Currently I assume 21 crystalline dust to be produced by upgrading incandescent dust (looks like you assumed 25 instead?) so the calculation averages out but there maybe a small rounding error.

Attachments:

(edited by DarkSpirit.7046)

Mystic Forge Recipes

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Here is another one. How much is it to craft a Jormag’s Needle? Gw2spidy wouldn’t give you an answer, but you can craft one for about 79g giving you a profit of about 40g (after tp taxes), for the price of some skill points, of course.

Attachments:

(edited by DarkSpirit.7046)

Mystic Forge Recipes

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

I tried incorporating some mystic forge recipes (i.e. the upgrades) into the mix and feed it into my minimum acquisition routine and came up with some interesting results.

Here is the crafting cost for the Rampager’s Destroyer Shield output by a small console program I developed to test my lib.

It recommends crafting with a cost of 15g 75s 20c. If I check the same shield in gw2spidy I have a crafting cost of 17g 96s 91c. Granted that spidy’s data maybe a little more outdated since my program gets data directly from the trading post, but the inclusion of the mystic forge recipes helped to find a cheaper path towards crafting than I would have had without it.

I am still working on it and there may be some bugs in my code at the moment, but at the cost of a few skill points, which my code hasn’t calculated those yet, I could have saved myself about 2g.

This is using the data provided by gw2db at the moment as the items api is still not complete and doesn’t supply me the vendor costs right now. I also gave an average estimate of 21 crystalline dusts from upgrading 250 incandescent dusts.

Attachments:

(edited by DarkSpirit.7046)

[API Suggestion] Items, Recipes, and Crafting

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Yes but items are getting “discovered” with each day so at least there is hope. The only thing that I need now from the items API is either a “SoldBy” property (with its vendor acquisition cost) for vendors OR a vendor API that lists the items each vendor sells and its cost.

With that I would be able to show where and how to unlock recipes and also be able to generate a tree view for minimum crafting cost for craftable items, like in gw2spidy.

I believe gw2spidy had to supplement their data that they got from gw2db since the SoldBy property in gw2db items API is not very complete.

[API Suggestion] Items, Recipes, and Crafting

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

That was a fast turnaround! Woot!

The new unlock_type enum:


    public enum GW2APIUnlockTypeEnum
    {
        CraftingRecipe,
        Dye,
        BagSlot,
        BankTab
    }

[API Suggestion] Vendor API

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

This can be useful as side information to supplement the Items api, so we know where to acquire certain items and their acquisition cost.

What we need are:

1. Vendor ID
2. Vendor Name
3. Vendor Location Map ID (see https://api.guildwars2.com/v1/map_names.json)
4. Items that the vendor sells :
[{ Item id1, Quantity,GoldCost}, {Item id2, Quantity,KarmaCost}, {Item id3, Quantity,SkillPointCost}, {Item id4, Quantity,LaurelCost}, etc…]

(edited by DarkSpirit.7046)

[API Suggestion] Items, Recipes, and Crafting

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Thats pretty much what i’ve already suggested in post #3, isn’t it?

That just goes to show how much the community needs this.

EDIT: If we have this, and the “SoldBy” property for items, then apps would be able to start providing useful information on how + where to unlock recipes.

If not the “SoldBy” property, we can use the Vendor API, if that is provided instead.
https://forum-en.gw2archive.eu/forum/community/api/API-Suggestion-Vendor-API/first#post2175422

(edited by DarkSpirit.7046)

[API Suggestion] Items, Recipes, and Crafting

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

I have one more suggestion. Right now there is no way for me to find out the Recipe item itself that is required to unlock a particular recipe.

For example, take the recipe for Candy Corn Custard:

https://api.guildwars2.com/v1/recipe_details.json?recipe_id=6472

…and the Recipe item to unlock the above recipe:

https://api.guildwars2.com/v1/item_details.json?item_id=36103

There is currently no way for me to link one to the other, short of doing fancy regex matches. It would be great if the recipe item can specify the recipe id that it actually unlocks OR the recipe itself, with the “LearnedFromItem” flag, can specify the recipe item that is used to unlock it.

Thanks.

[API Bug] Item Flag (Closed)

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Thanks. Fix verified.

[API Bug] Bonuses Missing (Closed)

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Thanks. Fix verified.

[API Bug]Items still missing from the API

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Comparing with all items in the trading post, it has only 49 missing items now. Looks like it is improving each day. I’ll wait a few days and test it again maybe all the items would be accounted for by then.

Request for example code for "beginners"?

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Yes I agree with Ruhrpottpatriot, I would recommend using a well-tested library if development time is a factor.

But if you are doing this for your own edification and you want to learn technologies like JSON.NET or RestSharp, etc. which could be transferable to other similar projects, then I would agree with Healix and recommend that you learn from existing libraries to implement your own library.

(edited by DarkSpirit.7046)

Simple C# Example - Rating Calculation

in API Development

Posted by: DarkSpirit.7046

DarkSpirit.7046

Nice job doing it the “man-ly” way – implementing your own parser and all. You can breakup some parts into smaller functions/objects, guilty of that myself, but otherwise it looks fine to me.

(edited by DarkSpirit.7046)