dfederm / clickerheroestracker Goto Github PK
View Code? Open in Web Editor NEWA progress tracker for the game Clicker Heroes
Home Page: https://clickerheroestracker.azurewebsites.net/
A progress tracker for the game Clicker Heroes
Home Page: https://clickerheroestracker.azurewebsites.net/
This is tracking all the features needed for feature parity.
Pages:
Other stuff:
0 can't be plotted on a log scale, so we fall back to linear scale.
Investigate if one of these looks better:
Some clans may not have much message traffic, so don't display stale messages. Perhaps messages older than a month.
From bug report: "The chart for 'Ascensions This Transcension' often (but not not always) shows the number from 'Ascensions Lifetime' between the end of one transcension and the beginning of the next."
Looks like this piece of code:
this.AscensionsThisTranscension = savedGame.NumAscensionsThisTranscension != 0
? savedGame.NumAscensionsThisTranscension
: savedGame.NumWorldResets;
The MockAuthenticationHandler allows arbitrary user ids to be provided which may clash with real user ids. Since we enable Mock auth in the staging environment which is connected to the prod database, in theory someone could "log in" using mock auth with a real user's user id and potentially imitate that user.
Today only the HomeController allows Mock auth though, and that controller doesn't write to the database, but we should fix this before expanding mock auth to other controllers which do.
Potential solutions include mock auth being constrained to choosing a specific mock user to imitate (ie, TestUser1, TestAdmin, etc), or to constrain the user id to be something that could never be a real user id (real user id's are GUIDs, can we support non-guids for mock users?)
From feedback:
Can you add an option to display the data on an per upload basis?
So that uploads in different intervals (e.g. over night vs. active play) show as the same length.
Some users may have manually archived saves and this would allow them to upload them all and get correct graphs and history.
This also seems more correct as it goes by the actual time in-game instead of whatever time the user happens to upload at. In practice I'd guess the difference isn't that big though.
Need to think if anything would be incorrect about this change. Perhaps around save hacking (who cares?) or restoring a backup (but the timestamp would update next time they saved?).
Finally, if we do make this change, need to think about whether to re-process all existing uploads and changing the time or to just leave them as-is.
Seems like after the very first transcendence this gets reset.
See uploads for user: mstok44
Upload at 3/27 13:07 PST had HZE of 410
Upload at 3/27 13:30 PST had HZE of 0
https://clickerheroestracker.azurewebsites.net/calculator/view?uploadId=132094
See Morg.
The game doesn't seem to be able to handle punctuation. It does seem to handle "e" though. So 1.23e10 doesn't work but 123e8 does.
Either convert the number to remove the decimal or force not using scientific notation in JS
Repros for the home controller and some API controllers like the uploads api controller.
Rolled back slot swap due to this, so don't release again until this is fixed.
Add a checkbox to indicate the best hero is leveled beyond 8k but the next cannot be afforded, which adjusts formulas.
If checked:
This is the max value for doubles, so we may need to store the numbers differently
As a replacement for uploaded the encoded save file. People on mobile don't have easy ways to get their save file.
Basically save-edit the recommended changes.
Currently it's checked when a user goes to the clans page. This means users might upload but the clan data never updates unless they check it.
Eg. Day over day or week over week.
Make a best guess like == Chronos or allow users to choose?
Replace the custom solution with Microsoft.AspNetCore.DataProtection.AzureStorage
See: https://blogs.msdn.microsoft.com/webdev/2016/11/16/announcing-asp-net-core-1-1/
From user feedback:
...the Progress graphs on Ancients don't show the impact that relics have - for example, my Atman is shown on lvl 38, although I have relics to push it to 56.
Read ItemBonusType from game data instead of hard-coding it.
Recommendation should be Lib^(0.8)
Not sure what his cost is yet. It seems similar to Solomon in my run so far, but that could be a coincidence, I don't have they at the exact same lvl.
From user feedback:
"For some reason your calculator suggests me to get libertas when I'm playing active, which is strange considering that libertas is completely worthless when playing active."
Show the number of souls left after purchasing the suggested ancients.
After transcending non-purchased ancients are missing from the progress data instead of being logged explicitly as 0. This causes graphs for these ancients to look as if the user hasn't uploaded in a long time, rather than uploading and not having purchased the ancient.
After thinking about what we should expose (and ignoring the implementation details we have to work with today), we should probably do:
GET /api/clans - Lists the clans (leaderboard)
GET /api/clans/{clanId} - Gets details for a specific clan
GET /api/clans/{clanId}/messages - Gets the messages for a specific clan
POST /api/clans/{clanId}/messages - Posts a message to a clan
Obviously some of these will return unauthorized if you try to get or post messages to a clan you're not a part of.
Also, getting the clan id for a user may require some user APIs we don't currently have. This goes hand in hand with #19 which would also require some user APIs, so we should build it with that in mind. Probably something like...
GET /api/users/{userId} - Gets all information about a user
and/or
GET /api/users/{userId}/clan - Gets clan information (like clan id) for a user
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.