Coder Social home page Coder Social logo

hab-o-tica's People

Contributors

probaton avatar

Stargazers

 avatar

hab-o-tica's Issues

Reset last-used-skill on class change

Ik wil Burst of flames casten maar ongeacht of ik deze handmatig selecteer of dat de app hem al suggereert, wanneer ik op 'spam until I'm out of mana' klik krijg ik de error spell not found :(

Add new food types

Apparently they added new fancy food types. These need to be added to the food-mapping algorithm.

Test environment!

I want it! Probably to talk to Habitica while it's running locally in dev?

Optimize gear for skill use

Once #6 is implemented, you can automatically equip the optimal gear set before casting a skill and then switch back after casting is complete.

Ideally, the optimal gear should be selected dynamically based on what items the user has access to, although I'm not exactly sure how to access gear stat bonuses as this doesn't seem to be stored in userData.json.

Wardrobe to handle whole look

Instead of just equipment, it would be great if you could save the whole look of the avatar, including skin, hair etc. + background and maybe even pet/mount.

returnKeyType

This keeps popping up in the browser console.

returnKeyType is deprecated. Use enterKeyHint.

Doesn't break anything, but hopefully an easy fix.

FR: Only spam skill until boss is defeated

I like the Spam until I'm out of Mana feature. For classes that are able to use skills to kill bosses (and I suppose you'd need to detect class somehow for this idea to work) it would be handy to not spam until they're out of Mana, but to Spam until the boss is dead.

Requirements:

  • Detect class of current user
  • Get bosses total health, current health

Complications:
How would you calculate how much damage a skill does? Would you do some math? Would you apply the skill once, see the difference it made in health, and use that to calculate how many more times the skill should be used? Would you apply the skill one at a time and keep applying until boss health is reduced to less than or equal to zero?

Just an idea, if you feel like it'd add value to the app.

[NEW] Haxx it button does nothing

Title is pretty self-explanatory. Would also be good when you ship new ui changes to put a brief description in the Google play update screen on what's new

Offer to hatch new pet

When pet feeding results in a new mount, the app should check if the same egg/hatching potion combo is available. If so, it should offer to hatch a new pet at the push of a button.

Brutal Smash doesn't work when on a challenge

When on a guild challenge, some tasks can't be Brutal Smashed. As a result the auto skill use of BS fails with an error: "Brutal Smash failed after 0 casts: Casting a skill on challenge tasks is not allowed." I would expect that spamming a skill would work on all other tasks and the system would automatically ignore challenge tasks, which are handily tagged with a challenge

Automated test suite

  • Just the backend is good enough for now.
  • Helper methods to create/insert userData.
  • Some way to mock AsyncStorage?
  • May be worthwhile to adjust various backend APIs to make the more consistent. E.g. decide to always/never pass userData in its entirety, or always/never as a Promise.
  • Update readme with instructions on how to run them.
  • Make an informed decision on which test runner to use.

64-bit support

This release is not compliant with the Google Play 64-bit requirement

The following APKs or App Bundles are available to 64-bit devices, but they only have 32-bit native code: 12.

From August 1, 2019 all releases must be compliant with the Google Play 64-bit requirement.

Include 64-bit and 32-bit native code in your app. Use the Android App Bundle publishing format to automatically ensure that each device architecture receives only the native code it needs. This avoids increasing the overall size of your app.

List all armoire results

Show an overview of all armoire results after spamming it. Preferably some sort of aggregate! Obviously only pending the merge of #15

Only refresh data on submit, not cancel

Home currently passes a closeDialogs as the close parameter of all its dialogs, which also does a refresh. That's great, when close is called during the dialog's onSubmit flow, but is obviously redundant when the user hits cancel.

Maybe split out close and refresh parameters in dialogs? Although maybe that just means a couple lines extra code in every dialog without any meaningful improvements.

Spam armoire

Base scenario is use-x-times, with use-until-broke as override. Bonus feature: use-until-no-more-items!

Wardrobe

It would be the most awesomest thing ever if I could store my current outfit and then re-equip it with the push of a button! The feature should allow me to store both my equipment and my costume, and also allow me to mass-equip to both slots.

Bonus feature: allow individual slots to be selected with some sort of checkbox. E.g. save every gear slot except the offhand.

README.md

Stuff I want to be in a read-me:

  • Summary of what Hab[o]tica is.
  • Background on the technologies used, including links.
    • Expo
    • React-native
    • TypeScript
  • Instructions on how to submit a merge request.
  • Instructions on how to get started as a developer, including running the emulator.

Bump Android API version

Target API level requirements from August 2019
Warning:

Your app currently targets API level 26 and must target at least API level 28 to ensure it is built on the latest APIs optimized for security and performance.

From August 2019, new apps must target at least Android 9.0 (API level 28).
From November 2019, app updates must target Android 9.0 (API level 28).

List skills results

Similar to how armoire results are shown, it would be nice to see the results of spamming skills. Especially ones that are not just buffs and gain XP, gold, health etc.

Store user data centrally

At the moment, user data is re-retrieved every time a new interaction is triggered. That means users have to wait longer to start their interaction, as they have to wait for user data to be returned from Habitica. Additionally, we're potentially doing more requests than necessary if a user triggers more than one interaction in a single session.

Simple solution is to immediately trigger a user data request when the app loads and storing the blob in state. Then we probably need a time-out of some sort? Trigger user data refresh if now - timeOfDownload > time-out? A keep-alive seems overkill, so I propose only refreshing if a new interaction is triggered. I'm guessing we'll go for a time-out of three, maybe five minutes? And I can't imagine people using the app are ever going to keep it open that long anyway.

Better error messages for no mana/no food

The app currently returns 'failed after 0...' when attempting a feeding or skill cast without enough resources. It would look better if it returned a more friendly 'you can't do that because you don't have bla' message.

Pet feed type filtering not working correctly

Currently I am not able to feed any of my standard pets with standard food. When I select a standard pet from the dropdown, then the type dropdown changes so it only shows magic potion types. And same if I first choose standard type, then pet dropdown only shows quest pets.

Don't know if it's related, but I have already got all pets and mounts once and released them with the kennel keys.

Label multiple tasks at once

Een lijst met alle bestaande to do's waarbij je meerdere tegelijk kan selecteren. En dan een drop down van je aangemaakte labels. En dat al die tot do's dan dat label krijgen <3

Bulk sell stuff

Totally awesome for when you're about to rebirth.

Simple version sells all vanilla hatching potions and eggs, maybe with a field to tell hab-o-tica how many to keep? Default 10 or something?

Totes mega-fancy version would include a full checkbox list of all qualifying items along with how many you have of each. By default only the vanilla pots/eggs should be selected. Still requires a field to submit the number of each to keep.

Reverse pet type/species selection

At the moment, I can't select my type until I've selected a species. That's fine if I have a specific pet in mind, but if I'm just emptying my larder it'd be cool if I could select the type first. That probably means I need to build two separate maps? One based on type and one for species? And users have to be able to 'empty' either drop-down.

Padding on Interaction is weird

Figure out a better way to display the home page items (including pop-ups!) that doesn't mess with elements further down the chain.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.