Search results

  1. ikzann

    Feature - Implemented Prefs file backup/restore Draft PR

    On the theory that until we can consistently reproduce the bug, we are not going to be able to fix it, I spent some time this morning trying to write a test to reproduce the behavior, with no luck. My experience of the bug is some version of running a script in Mafia, closing my laptop without...
  2. ikzann

    New Content Spring Challenge Path: Z is for Zootomist

    We've fully spaded the correlation between familiars and the Grafted intrinisic, so we wouldn't even necessarily need to track that separately.
  3. ikzann

    Feature A request to make some character pane information acquirable without visit_url

    https://github.com/kolmafia/kolmafia/pull/2522 Includes everything except "recently expired effects" - which I think comes from the mood and is currently accessible via get_mood_list or something like that.
  4. ikzann

    Cargo Shorts GUI

    Sorry. I changed the branch name without thinking about how it would break existing installs. Let me just undo that
  5. ikzann

    r28087 - What's Changed [*]Create JSON API for relay scripts. by ]@phulin] in

    Here is a wiki page documenting the API. https://wiki.kolmafia.us/index.php?title=Browser_JSON_API
  6. ikzann

    r28087 - What's Changed [*]Create JSON API for relay scripts. by ]@phulin] in

    Maybe it was a little inaccurate to say it will be used by "relay scripts." It can be used by any client-side code running in the relay browser. Whether client-side code is generated by an ASH or JS mafia relay script, the code that runs client-side is all javascript by necessity, as that's the...
  7. ikzann

    r28087 - What's Changed [*]Create JSON API for relay scripts. by ]@phulin] in

    Hi folks - didn't see this thread until now, apologies. For some reason, the pinging feature that is supposed to go to my email is not working. I will figure that out. The basic purpose of this change was to provide an efficient way for relay scripts to make large and/or frequent requests for...
  8. ikzann

    Feature Proposal: allow Mafia to read/write clan dungeon chat channels

    LOL. That's the last time I rely on what someone tells me about the code... Never mind!
  9. ikzann

    Feature Proposal: allow Mafia to read/write clan dungeon chat channels

    I've been working on some clan dungeon collaboration scripts, and it would be useful to have the scripts be able to use the dungeon chat channels to communicate between players. In particular, when a player gets to the I Refuse! adventure in The Heap, it is helpful for one player to let everyone...
  10. ikzann

    Bug Mafia performance

    Thanks everyone for all the help. After the PRs I've submitted, the hot spots are still mostly the same, but overall execution time seems to have been reduced (hard to measure exactly). I think there is probably some work that could be done to the maximizer, but that may be a more in-depth...
  11. ikzann

    Bug Mafia performance

    Gausie merged my changes this morning, so I ran the 4:1 ratio benchmark against both r26905 and r26907. I still saw a 4-5x speedup or so as the old code also slows down substantially with the corrected benchmark. That's good enough for me. This is also only CPU time - obviously folks with...
  12. ikzann

    Bug Mafia performance

    Thanks. I'll rerun the tests.
  13. ikzann

    Bug Mafia performance

    That's fair. It is true that a big part of the "problem" (to the existent there is one) is saveSettingsOnSet - there are now quite a few preferences that update every combat. I am going to explore turning it off, or triggering a write once per adventure, in some of the scripts I work on. I...
  14. ikzann

    Bug Mafia performance

    Okay, after the work this weekend there is still one major outstanding question I'd like to ask folks: should we switch preferences from using a sorted TreeMap to an unsorted HashMap-style? Mafia currently spends a nontrivial amount of time doing its in-memory preference lookups - maybe 8-10%...
  15. ikzann

    Bug Mafia performance

    I have a couple PRs in now to at least ameliorate some of these issues. Still looking at a few other candidates for low-hanging fruit for improvement.
  16. ikzann

    Bug Mafia performance

    Ah, but create() inside a script must rely on the database? Hm.
  17. ikzann

    Bug Mafia performance

    Interesting. That's all extremely helpful context. Your comment about adventure() makes a lot of sense - there is no reason to refresh the model driving the UI when most of the UI is locked, anyway. The same logic would seem to apply to scripts. If a user is running a script, is there any reason...
  18. ikzann

    Bug Mafia performance

    Here is a mafia performance snapshot - you should be able to open it in Java VisualVM. This is on the branch for PR #1227. There still appear to be lots of concoction databases refreshes happening in the main code path. https://www.dropbox.com/s/29md3hjpvf9z02d/mafia-snapshot.nps?dl=0
  19. ikzann

    Bug Mafia performance

    Hi all, After getting a little frustrated with how quickly Mafia chews up my laptop battery, I decided to run it through a profiler to see what seems to be generating the most CPU usage. Below are some quick highlights from a first run while running a farming script, and I'd be happy to dive...
  20. ikzann

    Bug - Fixed After a free rest in Chateau Mantegna, Mafia assumes you have no more free rests

    I have a PR up at https://github.com/kolmafia/kolmafia/pull/1162 and just need to finish the tests. Bizarrely, the chateau_restbox action works for both free and non-free rests - which action fires depends exactly where you click on the bed/text in the Chateau.
Back
Top