Skip to content

Unable to convert story state to JSON #29

@j0rdanit0

Description

@j0rdanit0

blade-ink version: 1.1.1

What is wrong

I get the following stacktrace when trying to convert my story state to JSON:

java.lang.ArrayIndexOutOfBoundsException: Index 26 out of bounds for length 26
	at com.bladecoder.ink.runtime.Json.writeRuntimeObject(Json.java:174) ~[blade-ink-1.1.1.jar:na]
	at com.bladecoder.ink.runtime.Json.writeListRuntimeObjs(Json.java:48) ~[blade-ink-1.1.1.jar:na]
	at com.bladecoder.ink.runtime.Flow$2.write(Flow.java:50) ~[blade-ink-1.1.1.jar:na]
	at com.bladecoder.ink.runtime.SimpleJson$Writer.writePropertyString(SimpleJson.java:388) ~[blade-ink-1.1.1.jar:na]
	at com.bladecoder.ink.runtime.SimpleJson$Writer.writeProperty(SimpleJson.java:306) ~[blade-ink-1.1.1.jar:na]
	at com.bladecoder.ink.runtime.Flow.writeJson(Flow.java:47) ~[blade-ink-1.1.1.jar:na]
	at com.bladecoder.ink.runtime.StoryState$2.write(StoryState.java:1240) ~[blade-ink-1.1.1.jar:na]
	at com.bladecoder.ink.runtime.SimpleJson$Writer.writePropertyString(SimpleJson.java:388) ~[blade-ink-1.1.1.jar:na]
	at com.bladecoder.ink.runtime.SimpleJson$Writer.writeProperty(SimpleJson.java:306) ~[blade-ink-1.1.1.jar:na]
	at com.bladecoder.ink.runtime.StoryState.writeJson(StoryState.java:1237) ~[blade-ink-1.1.1.jar:na]
	at com.bladecoder.ink.runtime.StoryState.toJson(StoryState.java:924) ~[blade-ink-1.1.1.jar:na]

Possibly useful information

The stacktrace points to a place in the code where an array (controlCommandNames) is being accessed at index 26, but there are only 26 entries in it (max index would be 25). The index is coming from ControlCommand.CommandType.ordinal(), which is an enum that indeed has 27 values, so the last value would have an ordinal of 26.

My best guess is that this is related to supporting the latest version of Ink, and the controlCommandNames array was supposed to be updated to add a new entry and it was missed?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions