Skip to content
TORNLIFE More

API Bug

Started by marsey99 [1404499] on in Graveyard.

146 replies · 4.57k views · thread synced · 6 days ago · View on torn.com

Posts archived: 147 / 147 posts (100%) · the total is Torn's reply count + the opening post at the last fetch

OddPotato [2029408]
Well, we are not asking it to be reverted per se. I am fine with chain not getting reverted , but saying it's your fault for trusting one of the official data sources and the blame is all yours is kind of shitty IMO.

If someone is providing an official API I'd expect it to work as intended else mark it as experimental/buggy or third-party.
Varides [2176530]
Agreed. It's a shitty way to learn that lesson for sure, but also as far as the unprecedented issues Ched referred was early in the halloween attack with the increased user base, which was a drain on the servers. This appears to be a completely unrelated incident that probably occurred from a developer attempting a patch update or change to the API functionality, which wasn't caught. This may actually be a result of Ched allowing developer updates to get pushed through as completed, rather than previously on tuesday's only.

Just a personal thought as I'm not a developer, and this is only what appears to have occured.
FilthyCasual [2527073]
How do I, the customer, know that I can trust the in-game timer if I cannot trust the API that is supposedly giving the same information? Why weren't all chains paused or any notification given? You said nothing is 100% fail proof- as a customer, is that my problem? If nothing is 100% fail proof, how can I know that the site timer is accurate but the timer from the site data is not? Why should I believe the visual aid of the timer when I cannot trust the raw data moving around behind the scenes? Don't they get their data from the same source? How TF would I know any of this as a customer unless I had web experience?

If the trader bases their prices on API calls and the API comes back and tells the trader that donator packs are 16m when it is really the 6pack of energy drinks that is- that is Torn's fault, not the trader. The API, when queried for a donator pack price, returned a 6pack of energy drink price. Not the traders fault that the API was returning a complete different price. Further, it is Torn's fault if they were aware that the query was off for 5 hours but did not communicate it and continued to let traders trade at this price.

If the API cannot tell the difference between a 6pack of energy drink and a donator pack- disable the API and notify the customers that there is an issue. That is literally it. Notify the customers that the timer in-game is working but timers elsewhere are not. Simple.

If the API cannot tell the difference between 6packs and DP's and I communicate that to my users but they don't read it- that is the customer's fault. I tried. I cannot force you to read my notification. But if I don't send one and let you keep selling your DP's for 16m, that is poor business policy on my part.
Ahab [1735214]
Is a timer on site that you can easily use so you don't have to be monitoring the site every couple of minutes
[image: i.imgur.com]
The whole let the api play torn for us is as dumb as ched not being able to detect scrapping and so giving the api so people can just automate and abuse it by doing calls that have a reach nobody not using the api can manage.
mawal1995 [2265109]
LoL I'm just frustrated mate, venting out via meme.., I returned to torn after 3yrs of inactivity and got kinda too invested and this shit happened, also we aren't wrong to ask for restore because of some stupid bug.

[image: media.tumblr.com]

#introducebugswattermeelewepon
miros [1848626]
A tampermonkey script that inflates the chain timer and sends notifications based on its value may work, while respecting the site ToC.

Although when the lag hits, the timer may be off, and I have seen in the past the chain counter display "Chain in CD" when in fact it was not. So nothing is really 100% foolproof.

Edit: oh, that's what you were showing. LOL. My connection is not so good, so it did not show me the image.
FilthyCasual [2527073]
How do you know the timer on the site works when the data that feeds other timers identical information doesn't work? You and Valides keep assuming that the timer on the site is accurate but why would anyone know it was accurate if they're getting conflicting information from elsewhere?

No one is letting an API play for them. Well, people probably are somewhere. But assuming that the site's timer is accurate when the site's data output for that same information is inaccurate is not "letting the API play for them."
Riot [974353]
We along with every other faction I'm sure developed our own discord bot that pings on low chain timers.

I have to reiterate every so often to not rely on these tools, they are simply there to assist and bring in additional hitters should our regular chain watchers for whatever reason have failed.
mawal1995 [2265109]
False equivalance !

Actual Analogy -

Hey Google: Should we Undo the Fine on Citizens Caused by Malfunctioning of a Traffic Light?

#yes
Varides [2176530]
You know what? You are right. How can we trust anything from Torn? Maybe this entire time Xanax was supposed to be 500 energy instead of 250! Where's the justice!?!?!

But on a serious note, the API has always been a "use at your own discretion" item. Maybe it's because I don't actually code and I have to rely on the tools others make, but that always made me a bit more reluctant to always see them as this Torn given right for use. Yeah, it's certainly a bonus to have access on that level and can make things better, but I'm also not relying on the API to ensure I'm taking my 3 xan a day, or refills etc.

Using the API didn't limit your ability to do what you needed to do to keep the chain alive. That was the issue with the server's early in the halloween event. Server's went down, and there was no way to make those attacks to keep the chain up. API went down or was non existent, you still had the ability to keep up your end of the bargain, but you didn't.

I agree with oddpotato that it sucks, and not getting the chain back is a thing that just needs to be dealt with, but why mark it as incomplete/buggy? There are recalls on vehicles ever day in the world, and yet those are sold as complete functioning entities as far as they are aware (generally). The API was functioning properly up until the very moment it wasn't. Nothing is perfect and they are constantly being updated. Seems a bit far fetched to assume the API was forever going to be without fault.
Tembrawar [2647532]
1) we love the API functionality, don't take it away
2) inaccurate data is worse than no data. yah. but "no data" isn't the answer either
3) thank you for working to resolve customer complaints/feedback and improve service

sooooo ....




[image: i.imgur.com]
Ahab [1735214]
Seems to work fine and unless it's horrendous desync if you set it up so it isn't to the wire you will get alerted multiple times anyway. Did forget about the false cd but can't recall what triggers that and an alert could be coded in for that as well as it would have to flip instantly and should be easy enough to pick up.

I lean towards people should at least be on torn if they playing but can easily be pushed to discord, though would want it to go via something as multiple people running it would be needed really and you can't just give randoms your webhook keys.
SirEdge [2609907]
If the tool makes a mistake, that is on the builder of the tool.
If the game provides bad data, that is on the game developers.

Whether the users rely on the human interface or rely on the API shouldn't matter a bit.
Nexus [105937]
Tbf, any program ingesting third party API data should be validating the data before using it. You cant assume that just because its returning data, that it's valid.

I know the bots, etc aren't commercial software and most just kind of barely work, but for example, you should never trust a 3rd party API if a call to it directly contradicts certain existing data tbh.

In the case of a chain for example, if you're polling the API every minute or 30 seconds, the time remaining cant jump from say 300 seconds to 0 seconds in 30 seconds, this should have flagged as an API error in the software tbh, and the service (bot) should go into a "degraded" state and notify the client of API data errors.

(This is just a quick, no thought example of one way to validate Torn API data, there are potentially hundreds of other ways)

Relevant Experience: Dealing with dog-shit tier 3rd party client APIs on the daily.
OddPotato [2029408]
I agree with oddpotato that it sucks, and not getting the chain back is a thing that just needs to be dealt with, but why mark it as incomplete/buggy? There are recalls on vehicles ever day in the world, and yet those are sold as complete functioning entities as far as they are aware (generally). The API was functioning properly up until the very moment it wasn't. Nothing is perfect and they are constantly being

I wouldn't call any API that has problems as incomplete/experimental, there will be bugs in APIs, I deal with them everyday, but I take responsibility for the problems caused by my bugs in API in some way. I won't tell my API consumer you shouldn't have relied on API when I provide you a dashboard.

If something broke because of any bug I introduced in my API and causes my consumer to lose days of work, I'll apologise and compensate in some way or accept the blame but never would I say you shouldn't have relied on my API. If I want to be free of responsibility over problems caused by my API I'll mark it as experimental or un-official or un-supported but here that's not the case.
rhcp [760794]
I don’t get why third party programs are even allowed... who wants to download a bunch of extra shit just to play the game? But if you don’t you’re at a disadvantage
SirEdge [2609907]
Bogie, it isn't a question of entitlement. The game offers the data. It is up to the game developers to have that data be right. Whether it is consumed through the webpage or the API.

I would be laughed out of my job if I tried to pass this "oh, it's the API, so it's okay if it's wrong" line to my customers.
Ahab [1735214]
I mean you aren't on the site and are waiting for a notification based on the api to tell you to do something in torn, can't really call that anything but letting the api play for you.
Nexus [105937]
Id actually argue its on the part of the developer of the tool to validate the data before displaying/using it...

Should be some kind of even basic alerting, so the user can contact the API provider with an error report.