skadistats / clarity

Comically fast Dota 2, CSGO, CS2 and Deadlock replay parser written in Java.
BSD 3-Clause "New" or "Revised" License
649 stars 120 forks source link

CS2 Demo crash, possible new version. #319

Open any626 opened 1 month ago

any626 commented 1 month ago

I think there might be a new version of the demo for CS2. Currently running a simple program to get CCSPlayerController. When using a demo from December 2023 it works, but when running a new one from yesterday it crashes.

Exception in thread "main" skadistats.clarity.processor.runner.ControllableRunner$3: Runner thread was terminated by an exception
    at skadistats.clarity.processor.runner.ControllableRunner.waitForTickReached(ControllableRunner.java:292)
    at skadistats.clarity.processor.runner.ControllableRunner.seek(ControllableRunner.java:311)
    at org.example.Main.<init>(Main.java:35)
    at org.example.Main.main(Main.java:26)
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 24 out of bounds for length 13
    at skadistats.clarity.io.s2.Serializer.getField(Serializer.java:24)
    at skadistats.clarity.io.s2.field.SerializerField.getChild(SerializerField.java:23)
    at skadistats.clarity.model.state.NestedArrayEntityState.setValueForFieldPath(NestedArrayEntityState.java:109)
    at skadistats.clarity.io.FieldChanges.applyTo(FieldChanges.java:20)
    at skadistats.clarity.processor.entities.Entities.executeEntityCreate(Entities.java:445)
    at skadistats.clarity.processor.entities.Entities.lambda$queueEntityCreate$4(Entities.java:440)
    at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
    at skadistats.clarity.processor.entities.Entities.processAndRunPacketEntities(Entities.java:321)
    at skadistats.clarity.processor.entities.Entities.onPacketEntities(Entities.java:313)
    at skadistats.clarity.event.AbstractInvocationPoint.invoke(AbstractInvocationPoint.java:86)
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 24 out of bounds for length 13

    at skadistats.clarity.event.Event.raise(Event.java:41)
    at skadistats.clarity.processor.reader.InputSourceProcessor.processEmbedded(InputSourceProcessor.java:245)
    at skadistats.clarity.event.AbstractInvocationPoint.invoke(AbstractInvocationPoint.java:86)
    at skadistats.clarity.event.Event.raise(Event.java:41)
    at skadistats.clarity.processor.reader.InputSourceProcessor.processSource(InputSourceProcessor.java:172)
    at skadistats.clarity.event.AbstractInvocationPoint.invoke(AbstractInvocationPoint.java:86)
    at skadistats.clarity.event.Event.raise(Event.java:41)
    at skadistats.clarity.processor.runner.AbstractFileRunner.initAndRunWith(AbstractFileRunner.java:38)
    at skadistats.clarity.processor.runner.ControllableRunner.lambda$runWith$0(ControllableRunner.java:241)
    at java.base/java.lang.Thread.run(Thread.java:1583)
spheenik commented 2 weeks ago

Please supply the replay.