It is the first version of the app, which has very basic functionality. I'm already testing a version with push notifications and other features (for example badge, so you see the progress without opening the app), so you don't need to have the app running to be notified. Hopefully, I will be able to release it soon. I have big plans with the app (more features) but I also have a RL, work, family, and Diablo so please, be patient.
If you want to help (test, localize, ...) or buy me a coffee (I have spent days building the app and drank lots of coffee , and paid a lot of money to get the app to the store) please, contact me. We will figure out something. But if you really feel like donating something (or just spread some nice words), don't forget this app won't exist without Teebling's API! He deserves some thanks as well.
The app is not available in Russia, North Korea and France To publish the app in France I need to upload some certificate about encryption in the app (because the app uses HTTPS). If someone wants to help, you are more than welcome.
I've written a simple C# application for Windows to help track Diablo Clone progression across all regions and game types. It pulls data from diablo2.io API, and it's an open source project.
Here's what the application looks like
A quick overview of the options:
- You can use filters to display only specific region/type/mode if you wish.
- The columns on the list are draggable so you can rearrange them as you see fit.
- When clicking on column it will sort and group results based on the column you clicked on, so instead of grouping them by region like in the screenshot you can group them by progress, ladder/non-ladder, hc/sc, etc.
- You have a button for refreshing the information manually and an option to set auto refresh (in seconds). Default for auto refresh is 90sec but you can change that.
- There's also an option to minimize the app to tray so it wouldn't take up your taskbar space (double clicking tray icon returns the app to the front)
If you don't care about the source code and just want the application you can download everything from this folder and run the exe file.
If anyone finds any bugs or has any suggestions or wishes to contribute to the project please open an issue on github or PM me here, though I can't promise I'll answer PMs quickly so github may be a better option.
I've written a simple C# application for Windows to help track Diablo Clone progression across all regions and game types. It pulls data from diablo2.io API, and it's an open source project.
Here's what the application looks like
d2tracker.PNG
A quick overview of the options:
- You can use filters to display only specific region/type/mode if you wish.
- The columns on the list are draggable so you can rearrange them as you see fit.
- When clicking on column it will sort and group results based on the column you clicked on, so instead of grouping them by region like in the screenshot you can group them by progress, ladder/non-ladder, hc/sc, etc.
- You have a button for refreshing the information manually and an option to set auto refresh (in seconds). Default for auto refresh is 90sec but you can change that.
- There's also an option to minimize the app to tray so it wouldn't take up your taskbar space (double clicking tray icon returns the app to the front)
If you don't care about the source code and just want the application you can download everything from this folder and run the exe file.
If anyone finds any bugs or has any suggestions or wishes to contribute to the project please open an issue on github or PM me here, though I can't promise I'll answer PMs quickly so github may be a better option.
Cheers!
Thanks for the Win app.
Can be made to play a sound or an alert when reaches an certain level? Like when reaches 5/6 to pop-up from taskbar or tray?
I've written a simple C# application for Windows to help track Diablo Clone progression across all regions and game types. It pulls data from diablo2.io API, and it's an open source project.
Here's what the application looks like
d2tracker.PNG
A quick overview of the options:
- You can use filters to display only specific region/type/mode if you wish.
- The columns on the list are draggable so you can rearrange them as you see fit.
- When clicking on column it will sort and group results based on the column you clicked on, so instead of grouping them by region like in the screenshot you can group them by progress, ladder/non-ladder, hc/sc, etc.
- You have a button for refreshing the information manually and an option to set auto refresh (in seconds). Default for auto refresh is 90sec but you can change that.
- There's also an option to minimize the app to tray so it wouldn't take up your taskbar space (double clicking tray icon returns the app to the front)
If you don't care about the source code and just want the application you can download everything from this folder and run the exe file.
If anyone finds any bugs or has any suggestions or wishes to contribute to the project please open an issue on github or PM me here, though I can't promise I'll answer PMs quickly so github may be a better option.
Cheers!
Thanks for the Win app.
Can be made to play a sound or an alert when reaches an certain level? Like when reaches 5/6 to pop-up from taskbar or tray?
Sure! I'll add that functionality when I get some spare time. Thanks for the suggestion!
Are there any plans to provide an API for Terror Zones (including schedule with time, online/offline)?
I'm currently working on online TZ tracker - funny that you ask this now of all times! I have the current Terror zones read from game client Memory, but still struggling with predicting next hour's TZ. It will be available on the site and via an API.
If you don't want to wait for my own version, check out https://d2emu.com - join the Discord linked there and there is a channel where you can request access to their API, which provides the current and next Terror zones every hour, albeit with a short delay (I think it's 10 or 20 minutes).
Are there any plans to provide an API for Terror Zones (including schedule with time, online/offline)?
I'm currently working on online TZ tracker - funny that you ask this now of all times! I have the current Terror zones read from game client Memory, but still struggling with predicting next hour's TZ. It will be available on the site and via an API.
If you don't want to wait for my own version, check out https://d2emu.com - join the Discord linked there and there is a channel where you can request access to their API, which provides the current and next Terror zones every hour, albeit with a short delay (I think it's 10 or 20 minutes).
I'll be looking forward to your API implementation. I'm planning to create a plugin for the Steam Deck that notifies about Diablo Clone events and shows today's Terror Zones schedule.
Yes, but they somehow figured out the logic and use it on their website. However, that site doesn't provide an API or the algorithm behind the Terror Zones. So right now, it's necessary to understand the schedule logic and implement it in our own API.
Kind of strange if you could sniff the data between battle.net and d2r client.
That should be encrypted.
It is TLS encrypted - I checked. So I think @DarkMaster's assumption is incorrect, unless someone has found a way to decrypt the cyphertext in the packets, but I really doubt that.
I don't think it's sent from Blizz server -> client in a packet anyway - I think that the game itself is using an algo to determine the next zone. I believe this because there is a seed specified in the desecrated_zones.json file from the game's data, so it's probably using that, combined with the current time, groupings of (or individual) area IDs etc. along with this algo, to determine the next one. The next TZ is not stored in Memory anywhere either - I checked - but the current Terror zones are.
I don't think it's sent from Blizz server -> client in a packet anyway - I think that the game itself is using an algo to determine the next zone. I believe this because there is a seed specified in the desecrated_zones.json file from the game's data, so it's probably using that, combined with the current time, groupings of (or individual) area IDs etc. along with this algo, to determine the next one. The next TZ is not stored in Memory anywhere either - I checked - but the current Terror zones are.
If you have the seed, you (theoretically) just need to figure out the PRNG algorithm used. (there's many)
And well, how it uses that PRNG in combination with other info to deterministically draw the next TZ.
I'm in CET (Central European Time), so that's UTC+1 normally and UTC+2 during DST.
My profile says Ladder, but I play bothLadder and Non-Ladder.
My profile says Softcore, but I play bothSoftcore and Hardcore.
My Holy Grail Tracker is for Offline Hardcore.
I'm curious how this works on d2emu. Where do they get the data from? It looks like they're using some kind of endpoint. Why do I think that? Because they can only predict Terror Zones up to one hour in advance.
I'm curious how this works on d2emu. Where do they get the data from? It looks like they're using some kind of endpoint. Why do I think that? Because they can only predict Terror Zones up to one hour in advance.
There is no 'official' API endpoint for anything in D2R. Mysterio (the guy behind d2emu.com) has figured out a way to 'sniff' or otherwise determine the next TZ. If you're curious, you can always ask him directly (on the d2emu official discord server or some other D2R discord community server, he's a member on several), he's quite friendly but I doubt he's going to give anyone all the technical details.
I'm in CET (Central European Time), so that's UTC+1 normally and UTC+2 during DST.
My profile says Ladder, but I play bothLadder and Non-Ladder.
My profile says Softcore, but I play bothSoftcore and Hardcore.
My Holy Grail Tracker is for Offline Hardcore.
Yes, but they somehow figured out the logic and use it on their website. However, that site doesn't provide an API or the algorithm behind the Terror Zones. So right now, it's necessary to understand the schedule logic and implement it in our own API.
yes but if you want to know next TZ you can just check that web page, no need to go d2emu and request anything, thats why i said you can see it there.
that web page says next is Rocky Waste and it list all the previous ones as well.
Kind of strange if you could sniff the data between battle.net and d2r client.
That should be encrypted.
It is TLS encrypted - I checked. So I think @DarkMaster's assumption is incorrect, unless someone has found a way to decrypt the cyphertext in the packets, but I really doubt that.
I don't think it's sent from Blizz server -> client in a packet anyway - I think that the game itself is using an algo to determine the next zone. I believe this because there is a seed specified in the desecrated_zones.json file from the game's data, so it's probably using that, combined with the current time, groupings of (or individual) area IDs etc. along with this algo, to determine the next one. The next TZ is not stored in Memory anywhere either - I checked - but the current Terror zones are.
2 years ago, that was quite a while ago. :') I was scouring this thread wondering why I was pinged, checking to see if I had left a comment then found that spoiler heh. I was going off how I believe d2emu functions (and I think how mysterio mentioned how it works but I don't remember), but I'm not an expert by any means. Like ShadowHeart said mysterio would be the one to know, could shoot him a DM on Discord or such and he might share more info.
The seed in desecrated_zones is used for offline TZs which mysterio figured out the algo for (the basis for the d2emu offline TZ calendar), and if I recall correctly he said it's not related to online TZs but again not certain.
The seed in desecrated_zones is used for offline TZs which mysterio figured out the algo for (the basis for the d2emu offline TZ calendar), and if I recall correctly he said it's not related to online TZs but again not certain.
Correct, that 64 bit seed in the json file is just for offline TZs. There's also a utc_start_time there. That's two pieces of the puzzle for discovering the underlying algorithm - the third piece requires looking at the assembly code (can't be decompiled easily - obfuscated, C++ etc., but I have been able to disassemble it) to figure out exactly what arithmetic/constants Blizz are using with the seed + start time to produce the final algorithm.
As for online TZs, it probably follows similar algorithm as the above ^ but the difference being that the seed is not stored in the client anywhere as far as I can tell. Bit of a Black box still for me.
I think he is Memory reading for dclone statuses, also looking into that. (I can currently read current online TZs from Memory so assume this is also possible providing I can find the Memory addresses for dclone status). Either that or rotating clients and screen reading the /uberdiablo status.
List trades and earn trust
Level up as you post
Give and Receive Likes
Discreet Notifications
Avatar & Profile customisation
Private Messaging
Bookmark Pages & Posts
Use Drafts & Revisions
Attach Images
Squelches this trader, making their offers on your trades invisible to anyone except themselves. Their trade listings will also be hidden from your marketplace.
Your squelch list can be managed and edited from Top right dropdown > Account Prefs > Squelches.
Hyryel
6