Skip to content

ChIT Crashes in "Z is for Zootomist" Path When Using Grafted Familiar Skills #43

Description

@LojoIsMe

Issue:
In the new Spring 2025 challenge path "Z is for Zootomist", ChIT crashes when using a nipple-grafted familiar skill (e.g., "Drink The Milk of..."). As long as the effect attempts to show in the character pane (whether or not it's active), the relay window resets to the default KoL layout, and KoLMafia displays this error:

(charpane.ash, line 870)
Script execution aborted (java.lang.IllegalArgumentException: URLDecoder: Illegal hex characters in escape (%) pattern - Error at index 0 in: "n ")

Original line 870:

matcher howUp = create_matcher("cmd\\=((cast 1 )?(.+?))&pwd", url_decode(columnArrow));

Cause:
It seems the columnArrow variable contains full HTML anchor elements (<a> tags) instead of just a raw encoded URL string for these new skills. ChIT attempts to url_decode() the full <a> tag, and throws the error.

Fix:
Potential workaround/fix: Modifying original line 870 in 'charpane.ash' to extract only the href value before decoding:

matcher howUp = create_matcher("href=[\"']([^\"']+)[\"']", columnArrow);
if (howUp.find()) {
    string extractedUrl = howUp.group(1);
    matcher skillMatcher = create_matcher("cmd\\=((cast 1 )?(.+?))&pwd", 
    url_decode(extractedUrl));
}

Tested:
ChIT appears to load the character pane correctly after this, with all skill effects displayed, and no debug errors or crashes. Further testing is ongoing.

*edited to add original line from 'charpane.ash'

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions