evansloan / collection-log Goto Github PK
View Code? Open in Web Editor NEWA Runelite plugin that adds visual improvements to the collection log
License: BSD 2-Clause "Simplified" License
A Runelite plugin that adds visual improvements to the collection log
License: BSD 2-Clause "Simplified" License
As I see it the plugin does not differentiate between OSRS accounts, which means the new item message does not show up if another account had already gotten that item before. Is it possible to separate different accounts' collection log data?
(Submitting this on someone else's behalf)
The plugin won't sync with the ingame collection log or recognize that the log has been opened. He's tried restarting Runelite multiple times, reinstalling the plugin, and trying with both the Character Summary and the actual Log book.
This is on the latest version of Runelite, but he's never been able to get the plugin to work after first installing it over a month ago.
When doing !log, it will show a duplicate slot for each item. For example with !Log hydra , it will show the claw twice, the necklace twice etc. See screenshot for example
https://i.imgur.com/6dIgh3g.png
Please note, this is not JUST with hydra but with all log slots. I have tried uninstalling and re-installing the plugin. I do not have any other collection log plugins installed that I'm aware of
It would be nice if players could toggle a setting so that collection log entries that are only missing the pet or jar could be a different color than those that are 100% completed. Or if 100% completed logs had some symbol next to them to annotate 100% completion and were also highlighted green, and logs only missing pet/jar get highlighted green only.
Inside createAccountButtonPanel, uploadCollectionLogBtn.setVisible(config.allowApiConnections()); fails to reflect the current value of allowApiConnections unless the app is uninstalled and reinstalled; perhaps because the panel isn't rebuilt. I imagine this could be fixed inside onConfigChanged.
Per the title, when installing this plugin for the first time, it causes an error and fails during startup. These are the logs generated in a client running with --debug
:
2020-09-12 22:21:54 [AWT-EventQueue-0] DEBUG n.runelite.client.eventbus.EventBus - Registering class net.runelite.client.events.ExternalPluginsChanged - EventBus.Subscriber(object=net.runelite.client.plugins.config.PluginHubPanel[,0,0,0x0,invalid,hidden,layout=javax.swing.GroupLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=329,maximumSize=,minimumSize=,preferredSize=], method=private void net.runelite.client.plugins.config.PluginHubPanel.onExternalPluginsChanged(net.runelite.client.events.ExternalPluginsChanged), priority=0.0, lamda=net.runelite.client.plugins.config.PluginHubPanel$$Lambda$1633/0x0000000840658840@555928f1)
2020-09-12 22:22:00 [AWT-EventQueue-0] DEBUG n.r.client.config.ConfigManager - Setting configuration value for runelite.externalPlugins to collection-log,virtual-level-ups,osrs-wiki-crowdsourcing,inventory-setups
2020-09-12 22:22:00 [pool-2-thread-1] INFO n.r.c.e.ExternalPluginManager - Loading external plugin "collection-log" version "1.2" commit "a386fdb27f35a8a0c5c841ff271f6dcacf369f38"
2020-09-12 22:22:00 [pool-2-thread-1] DEBUG n.r.client.plugins.PluginManager - Loaded plugin CollectionLogPlugin
2020-09-12 22:22:00 [pool-2-thread-1] DEBUG n.r.client.config.ConfigManager - Setting default configuration value for collectionlog.total_items to 0
2020-09-12 22:22:00 [pool-2-thread-1] DEBUG n.r.client.config.ConfigManager - Setting configuration value for collectionlog.total_items to 0
2020-09-12 22:22:00 [pool-2-thread-1] DEBUG n.r.client.config.ConfigManager - Setting default configuration value for collectionlog.notify_on_export to true
2020-09-12 22:22:00 [pool-2-thread-1] DEBUG n.r.client.config.ConfigManager - Setting configuration value for collectionlog.notify_on_export to true
2020-09-12 22:22:00 [pool-2-thread-1] DEBUG n.r.client.config.ConfigManager - Setting default configuration value for collectionlog.display_as_percentage to false
2020-09-12 22:22:00 [pool-2-thread-1] DEBUG n.r.client.config.ConfigManager - Setting configuration value for collectionlog.display_as_percentage to false
2020-09-12 22:22:00 [pool-2-thread-1] DEBUG n.r.client.config.ConfigManager - Setting default configuration value for collectionlog.highlight_completed to true
2020-09-12 22:22:00 [pool-2-thread-1] DEBUG n.r.client.config.ConfigManager - Setting configuration value for collectionlog.highlight_completed to true
2020-09-12 22:22:00 [pool-2-thread-1] DEBUG n.r.client.config.ConfigManager - Setting default configuration value for collectionlog.highlight_color to java.awt.Color[r=0,g=255,b=0]
2020-09-12 22:22:00 [pool-2-thread-1] DEBUG n.r.client.config.ConfigManager - Setting configuration value for collectionlog.highlight_color to -16711936
2020-09-12 22:22:00 [pool-2-thread-1] WARN n.r.c.e.ExternalPluginManager - Unable to start or load external plugin "collection-log"
java.lang.reflect.InvocationTargetException: null
at java.desktop/java.awt.EventQueue.invokeAndWait(EventQueue.java:1367)
at java.desktop/java.awt.EventQueue.invokeAndWait(EventQueue.java:1342)
at java.desktop/javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1480)
at net.runelite.client.externalplugins.ExternalPluginManager.refreshPlugins(ExternalPluginManager.java:306)
at net.runelite.client.util.RunnableExceptionLogger.run(RunnableExceptionLogger.java:41)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.RuntimeException: net.runelite.client.plugins.PluginInstantiationException: java.lang.NullPointerException
at net.runelite.client.externalplugins.ExternalPluginManager.lambda$refreshPlugins$2(ExternalPluginManager.java:317)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:303)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: net.runelite.client.plugins.PluginInstantiationException: java.lang.NullPointerException
at net.runelite.client.plugins.PluginManager.startPlugin(PluginManager.java:411)
at net.runelite.client.externalplugins.ExternalPluginManager.lambda$refreshPlugins$2(ExternalPluginManager.java:312)
... 13 common frames omitted
Caused by: java.lang.NullPointerException: null
at com.evansloan.collectionlog.CollectionLogPlugin.highlightCategories(CollectionLogPlugin.java:297)
at com.evansloan.collectionlog.CollectionLogPlugin.update(CollectionLogPlugin.java:330)
at com.evansloan.collectionlog.CollectionLogPlugin.startUp(CollectionLogPlugin.java:119)
at net.runelite.client.plugins.PluginManager.startPlugin(PluginManager.java:389)
... 14 common frames omitted
2020-09-12 22:22:00 [AWT-EventQueue-0] DEBUG n.r.client.plugins.PluginManager - Plugin CollectionLogPlugin is now stopped
Just noticed this is already an issue and can be deleted.
Investigate why this warning keeps popping up for users. As far as I have found out from the community, this happens after uploading.
Hi, I would basically like to be able to "reset" my collection log, and only see what drops/kc I've gotten since a given export. I imagine this could be achieved by substracting the specified collection log export from the current state. I was thinking in-game, but it would be equally useful if I could just do it from the website using two of the json exports, if that is easier for you. If it's in-game, I imagine it could be enabled with a checkbox+a string specifying the filename of the json export you wish to "start from" within the data folder.
Why? A few days ago I liquidated my bank on my main, and started playing as ironman. Just for fun, wasn't willing to start a whole new account to play ironman. Would be nice to have an accurate collection log. Although, my bank essentially serves as that for now so it's really just a QOL (also, I can use Ring of Wealth/Slayer ring "streaks" for kc). A lot of youtubers do similar "challenges" with their accounts where they wipe their banks & do something from scratch, so I'm sure it could be used for some of those as well. I created an export for myself shortly after starting this just in case this does become a feature.
I imagine this is pretty tedious to implement, so I completely understand if you aren't interested in working on it. Looking forward to your response!
When logging out with upload to collectionlog.net selected on Jagex Launcher-launched Runelite, the website displays either no collection log data, or someone else's collection log data entirely, under my RSN. This is immediately fixed by just using normal Runelite, however
I've identified a bug related to the default plugin Chat Channels ranks .
it seems sometimes when a player does !log sometimes it replaces the chat channel ranks with the collection log
Ex 1:
Someone did !log toa and this is the result
Ex 2:
Someone did !log vorkath and these are the results
EDIT:
Ex 3:
This bug is from another player. we're not sure what log is showing here.
It seems it's somehow maybe replacing an internal id for the icon map with what it gets from this plugin somehow. unsure if the bug is in Chat Channels or Collection-Log, but thought I'd report.
Thanks for your time :)
-Z
To reproduce:
It would be nice to have a shared GIM collection log that would show group unlocks next to individual unlocks in the collection log UI.
Is there an API at https://collectionlog.net where another plugin could fetch user collection log data?
Is it possible to use the local collection log data in game for the !log command?
There is a issue with this feature where if you get a new item, and then get it again without checking the log, the message will still popup
When first using the plug-in, it asks you to click through the collection logs, but this cannot be done for Callisto, Venenatis & Vet'ion, as their collection logs names changed due to the new wilderness update.
I was fighting hunleff, rotating my camera, when I saw a constant stutter.
I had just enabled the plugin about 10 minutes prior + ran through my coll log pages.
While in Hunleff, since this was the only plugin I enabled recently, I quickly disabled the plugin and the visible lag went away instantly.
My only suspicion is perhaps somehow sending the data to the 3rd party option in the settings page caused the lag in the client
Kill count amounts for all pages are being set to the value present in the Abyssal Sire page. See evansloan/collectionlog.net#66
2023-05-27 23:04:10 EDT [OkHttp Dispatcher] ERROR net.runelite.client.RuneLite - Uncaught exception:
java.lang.NullPointerException: null
at com.evansloan.collectionlog.CollectionLogPlugin$1.onResponse(CollectionLogPlugin.java:943)
at okhttp3.RealCall$AsyncCall.execute(RealCall.java:174)
at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
Does not impact functionality of the plugin, but should be cleaned up anyway
Suggestion that came from the Discord user "B A MF":
I would love it if i could custom edit each individual log title, for instance, id like to be able to right click a log of my choosing and edit that colour specifically.
as an example, i have no intentions to get the 1k LMS wins cape but i have everything else in that log, so it would be really cool if i could mark this green so it looks complete from my perspective. my reasoning is when i open the log i feel overwhelmed with a lot of unfinished logs when in reality a lot of them wont be worked on any further.
Personally I think it is a great idea to be able to customize the color. We have to consider how we would like this to work: do we allow all colors or only a fixed set of colors?
Also a suggestion that I have picked up on Discord that relates to this is to determine what and how the player defines their "own" completion. Maybe the player is not focussed on grinding for all pets and wants to exclude them, but still being able to "complete" or green their log.
[Client] WARN net.runelite.client.eventbus.EventBus - Uncaught exception in event subscriber
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was NUMBER at line 1 column 11 path $.
at com.google.gson.Gson.fromJson(Gson.java:939)
at com.google.gson.Gson.fromJson(Gson.java:892)
at com.google.gson.Gson.fromJson(Gson.java:841)
at com.evansloan.collectionlog.CollectionLogPlugin.loadItems(CollectionLogPlugin.java:384)
at com.evansloan.collectionlog.CollectionLogPlugin.onGameStateChanged(CollectionLogPlugin.java:138)
at net.runelite.client.eventbus.EventBus$Subscriber.invoke(EventBus.java:73)
at net.runelite.client.eventbus.EventBus.post(EventBus.java:222)
at net.runelite.client.callback.Hooks.post(Hooks.java:165)
at client.ys(client.java:61392)
at ft.ez(ft.java:1311)
at client.ar(client.java:1183)
at bw.u(bw.java:334)
at bw.run(bw.java:313)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was NUMBER at line 1 column 11 path $.
at com.google.gson.stream.JsonReader.beginArray(JsonReader.java:350)
at com.google.gson.internal.bind.ArrayTypeAdapter.read(ArrayTypeAdapter.java:70)
at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)
at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:187)
at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145)
at com.google.gson.Gson.fromJson(Gson.java:927)
... 13 more
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.