pieterjanbuntinx / kitten-tracker Goto Github PK
View Code? Open in Web Editor NEWLicense: BSD 2-Clause "Simplified" License
License: BSD 2-Clause "Simplified" License
Whenever you bring up an interface that pauses game time (i.e bank window, npc dialogue, etc.) the timer continues counting down. After closing the interface, the plugin then tries to add back the paused time. When doing so, it adds twice as much time as it should.
Step to Reproduce:
Location of timers is interrupted by split private chat, no option to move the box
"The player may also use a ball of wool on the kitten to play with it, making it not ask for attention for 51 minutes. This will not use up the ball of wool, which will stay in the player's inventory."
plugin doesn't recognise this
I had recently handed in a grown cat for death runes and acquired a new kitten.
My active config had these entries:
$ rg kittenConfig .runelite/settings.properties
116:kittenConfig.catOverlay=true
217:kittenConfig.lastAttentionType=SINGLE_STROKE
533:kittenConfig.secondsNeglected=914
691:kittenConfig.kittenOverlay=true
912:kittenConfig.kittenAttentionOverlay=true
1036:kittenConfig.kittenHungryOverlay=true
1959:kittenConfig.secondsAlive=3194
2013:kittenConfig.secondsHungry=731
2206:kittenConfig.kittenNotifications=true
2576:kittenConfig.felineId=1621
Once the client was restarted it showed the correct info.
Using a ball of wool on the kitten no longer updates the "Needs" timer. Interacting with and stroking the kitten still works.
Don't send an alert like "Kitten will run away in 1 minute" after I've picked up the kitten.
Note: The status overlay properly tracks if the kitten is following the player
Timers keep counting when bank interface is open.
In game timers for kittens pause when the bank interface (and possibly others) are open.
After putting a kitten away in the bank for a dangerous slayer task, I later received a notification that it was 1 minute away from running away... when it wasn't following me at all. Huh?
The default size for the overlay box is too small to fit all the required text, requiring multiple lines. Since the font used isn't monospaced nor zero-padded, different time values can force the box to create more lines in order to fit the text. Visually, this can result in the box dynamically resizing every few seconds, which is quite annoying.
A work-around for this issue is to manually enlarge the box. #3
Instead, I recommend shortening the left-aligned text in the box to:
Adult
Food
Play
Additionally, the time display can be formatted as HH:mm:ss
as opposed to Xh XXm XXs
Only tested with a hell cat.
Also, Timer resetted to 3 hours when kitten turned hellish.
https://oldschool.runescape.wiki/w/Kitten#Hunger
"24 minutes after the kitten is last fed, the player is warned that the kitten is hungry. If the kitten is not fed after 3 minutes, the player gets a second warning indicating it is very hungry ("Meeeooowww!"). If then it is not fed within the next 3 minutes, the kitten will run away. Every time the kitten is fed, the timer resets to 24 minutes."
"A fresh kitten can go without attention for 25 minutes before it warns the player that it needs attention. If its needs are not met after 7 minutes, the kitten will cry out it's feeling lonely ("Meeeooowww..."). Finally, if its cries for attention are not heard in another 7 minutes, the kitten runs away."
The plugin how ever resets to 30 minutes on feed and attension! the 5 minute error caused me to lose my kitten.
edit: I am wrong!
If you use a ball of wool on your kitten and you are in combat, the combat can interrupt and prevent the dialogue box "That kitten loves to play--" from appearing. If this happens, the kitten's attention does refresh, but the plugin status timer does not.
I verified this while splashing for hours. The "Needs attention timer" reached 0 and began counting up instead, but the kitten never ran away an hour after the timer hit 0.
Whenever I use ball of wool on the kitten, even with completing the dialogue, the activity timer does not update. I was bankstanding when I attempted this so no interactions were happening that could cause a delay or dialogue skip.
2021-11-10 12:13:47 [Client] DEBUG n.r.client.config.ConfigManager - Setting configuration value for kittenConfig.felineId to 1620
2021-11-10 12:13:47 [Client] WARN n.runelite.client.eventbus.EventBus - Uncaught exception in event subscriber
java.lang.NullPointerException: null
at java.base/java.time.Duration.between(Duration.java:488)
at com.kittentracker.KittenPlugin.saveGrowthProgress(KittenPlugin.java:328)
at com.kittentracker.KittenPlugin.byeFollower(KittenPlugin.java:268)
at com.kittentracker.KittenPlugin.onVarbitChanged(KittenPlugin.java:191)
at net.runelite.client.eventbus.EventBus$Subscriber.invoke(EventBus.java:70)
at net.runelite.client.eventbus.EventBus.post(EventBus.java:223)
at net.runelite.client.callback.Hooks.post(Hooks.java:169)
at client.jy(client.java:56481)
at client.ho(client.java:6136)
at client.fc(client.java:3304)
at client.h(client.java:1540)
at ai.oz(ai.java:387)
at ai.run(ai.java:366)
at java.base/java.lang.Thread.run(Thread.java:829)
When trading in the cat in Ardougne for death runes, and receiving a new kitten from Gertrude, the timer is stuck in cat mode and will not revert to kitten mode.
unsure as to what caused it perhaps the same type of cat was rolled. The timer shows the status of an overgrown cat when I have a kitten. I tried resetting the plugin and interacting with the cat, nothing seems to make the plugin recheck what type of cat I have. When inspecting the kittens age it will change the time on the overgrown cat.
currently ball of wall does not correctly reset the needs attention timer. It looks like another issue was made about this before and it was fixed but has become broken again.
To reproduce, play on desktop until timers on a kitten are approaching zero. Next, feed and give attention to the kitten on mobile. Finally, back on desktop, timers continue to increment after reaching zero.
I am not familiar enough with java or your code so I will refrain from a pr, but I think the lines similar to the referenced one could include a call to Math.max(..., 0)
within Math.abs(...)
to solve this.
This started in the past few weeks, and affects myself and all of my friends who use Runelite along with the kitten-tracker plugin. When using a ball of wool, the needs timer just does nothing and will reach 0, then begin counting up. I wish I had paid better attention to the exact day it happened so that I could point you in the direction of perhaps what game update may have changed something?
On the kitten tracker, I think the "Hungry in" and "Needs attention in" should change color or flash when the time gets really low, for example when the "Hungry in" timer gets to 3 minutes it should flash red, etc. Just an amazing quality of life update to such an amazing plugin.
For the "Needs Attention", the timer does not update if I use a ball of wool on the cat. Stroking the kitten correctly updates the timer though. Thank you for the time format change though! Very nice to save screen space.
I'm on version bca0d07
Before the recent update it seemed to be functioning properly. Now if I give the kitten the ball of wool multiple times, it will never get above ~31 minutes as far as I can tell
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.