Git Product home page Git Product logo

livesplit-spelunky2's People

Contributors

dregu avatar gmjosack avatar mauvealerts avatar zappatic avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

livesplit-spelunky2's Issues

split{} constantly failing

I've noticed that sometimes splits don't happen, with an exception being thrown (see debug prints below). I have things configured for 'normal' speed categories (e.g. any%).

I suspect the issue is vars.journal defaults to a List<byte> which can't be cast to System.Byte[] (you could call ToArray() tho). This cast happens happens whenever saveptr wasn't found; ReadBytes returns an array. Notably, my settings don't have journal or tracker enabled (complete settings further down), so I expect initTracker() is only called during init.

Log captured with LiveSplit 1.8.16 and unmodified Spelunky 1.21.0c.

00000005	4.60402822	[9472] LiveSplit.exe Information: 0 : 	
00000006	4.60422421	[9472] [ASL] Loading new script: C:\Users\mauve\Manual Apps\LiveSplit\Components\LiveSplit-Spelunky2.asl 	
00000007	4.60769415	[9472] LiveSplit.exe Error: 0 : 	
00000008	4.60785961	[9472] HRESULT: [0x8007001E], Module: [SharpDX.DirectInput], ApiCode: [DIERR_INPUTLOST/InputLost], Message: The system cannot read from the specified device. 	
00000009	4.60785961	[9472] 	
00000010	4.60785961	[9472] 	
00000011	4.60785961	[9472]    at SharpDX.Result.CheckError() 	
00000012	4.60785961	[9472]    at SharpDX.DirectInput.Device.GetDeviceData(Int32 arg0, IntPtr arg1, Int32& arg2, Int32 arg3) 	
00000013	4.60785961	[9472]    at SharpDX.DirectInput.CustomDevice`3.GetBufferedData() 	
00000014	4.60785961	[9472]    at LiveSplit.Model.Input.GamepadHook.Poll() 	
00000015	7.30919123	[9472] LiveSplit.exe Information: 0 : 	
00000016	7.30989122	[9472] [ASL/66572856] Running startup 	
00000468	147.67013550	[9472] LiveSplit.exe Information: 0 : 	
00000469	147.67015076	[9472] [ASL/66572856] Connected to game: Spel2 (using default state descriptor) 	
00000470	147.67109680	[9472] LiveSplit.exe Information: 0 : 	
00000471	147.67111206	[9472] [ASL/66572856] Initializing 	
00000477	148.91052246	[9472] LiveSplit.exe Information: 0 : 	
00000478	148.91061401	[9472] AutoSplitter: 7ff6e0fa6df0 	
00000491	150.93234253	[9472] LiveSplit.exe Information: 0 : 	
00000492	150.93243408	[9472] [ASL/66572856] Init completed, running main methods 	
00000529	153.56692505	[9472] LiveSplit.exe Information: 0 : 	
00000530	153.56697083	[9472] Characters: 0 -> 20 	
00000531	153.57546997	[9472] LiveSplit.exe Information: 0 : 	
00000532	153.57550049	[9472] Shortcuts: 0 -> 6 	
00000575	164.65191650	[9472] LiveSplit.exe Information: 0 : 	
00000576	164.65203857	[9472] Screen: 0 -> 1 	
00000577	164.66148376	[9472] LiveSplit.exe Information: 0 : 	
00000578	164.66169739	[9472] World: 0 -> 1 	
00000579	164.66809082	[9472] LiveSplit.exe Information: 0 : 	
00000580	164.66825867	[9472] Level: 0 -> 1 		
00000625	187.72633362	[9472] LiveSplit.exe Information: 0 : 	
00000626	187.72644043	[9472] Screen: 1 -> 2 	
00000627	201.80374146	[9472] LiveSplit.exe Information: 0 : 	
00000628	201.80915833	[9472] Screen: 2 -> 3 		
00000709	257.87567139	[9472] LiveSplit.exe Information: 0 : 	
00000710	257.87579346	[9472] Screen: 3 -> 4 	
00000711	259.60543823	[9472] LiveSplit.exe Information: 0 : 	
00000712	259.60562134	[9472] Screen: 4 -> 9 	
00000713	262.86965942	[9472] LiveSplit.exe Information: 0 : 	
00000714	262.86972046	[9472] Screen: 9 -> 11 	
00000715	267.81219482	[9472] LiveSplit.exe Information: 0 : 	
00000716	267.81228638	[9472] Door frame: 0 -> 6622 	
00000717	274.80548096	[9472] LiveSplit.exe Information: 0 : 	
00000718	274.80563354	[9472] Screen: 11 -> 12 	
00000719	275.45874023	[9472] LiveSplit.exe Information: 0 : 	
00000720	275.45889282	[9472] Start: Level 	
00000721	275.61199951	[9472] LiveSplit.exe Error: 0 : 	
00000722	275.61212158	[9472] Exception thrown: 'Microsoft.CSharp.RuntimeBinder.RuntimeBinderException' in 'split' method:	
00000723	275.61212158	[9472] Cannot convert type 'System.Collections.Generic.List<byte>' to 'byte[]'	
00000724	275.61212158	[9472] 	
00000725	275.61212158	[9472]    at ASL line 158 in 'split'	
00000726	275.61212158	[9472] 	
00000727	275.61212158	[9472]    at LiveSplit.ASL.ASLMethod.Call(LiveSplitState timer, ExpandoObject vars, String& version, Double& refreshRate, Object settings, ExpandoObject old, ExpandoObject current, Process game) 	
00000728	275.61212158	[9472]    at LiveSplit.ASL.ASLScript.RunMethod(ASLMethod method, LiveSplitState state, String& version) 	
00000729	275.61212158	[9472]    at LiveSplit.ASL.ASLScript.DoUpdate(LiveSplitState state) 	
00000730	275.61212158	[9472]    at LiveSplit.UI.Components.ASLComponent.UpdateScript() 	
00000731	275.63482666	[9472] LiveSplit.exe Error: 0 : 	
00000732	275.63500977	[9472] Exception thrown: 'Microsoft.CSharp.RuntimeBinder.RuntimeBinderException' in 'split' method:	
00000733	275.63500977	[9472] Cannot convert type 'System.Collections.Generic.List<byte>' to 'byte[]'	
00000734	275.63500977	[9472] 	
00000735	275.63500977	[9472]    at ASL line 158 in 'split'	
00000736	275.63500977	[9472] 	
00000737	275.63500977	[9472]    at LiveSplit.ASL.ASLMethod.Call(LiveSplitState timer, ExpandoObject vars, String& version, Double& refreshRate, Object settings, ExpandoObject old, ExpandoObject current, Process game) 	
00000738	275.63500977	[9472]    at LiveSplit.ASL.ASLScript.RunMethod(ASLMethod method, LiveSplitState state, String& version) 	
00000739	275.63500977	[9472]    at LiveSplit.ASL.ASLScript.DoUpdate(LiveSplitState state) 	
00000740	275.63500977	[9472]    at LiveSplit.UI.Components.ASLComponent.UpdateScript() 	

Complete settings

  <AutoSplitterSettings>
    <Version>1.5</Version>
    <ScriptPath>C:\Users\mauve\Manual Apps\LiveSplit\Components\LiveSplit-Spelunky2.asl</ScriptPath>
    <Start>True</Start>
    <Reset>True</Reset>
    <Split>True</Split>
    <CustomSettings>
      <Setting id="st" type="bool">True</Setting>
      <Setting id="stlevel" type="bool">True</Setting>
      <Setting id="stast" type="bool">False</Setting>
      <Setting id="stdoor" type="bool">False</Setting>
      <Setting id="sp" type="bool">True</Setting>
      <Setting id="trans" type="bool">True</Setting>
      <Setting id="world" type="bool">False</Setting>
      <Setting id="tiamat" type="bool">True</Setting>
      <Setting id="hundun" type="bool">True</Setting>
      <Setting id="co" type="bool">True</Setting>
      <Setting id="shortcut" type="bool">False</Setting>
      <Setting id="character" type="bool">False</Setting>
      <Setting id="characters" type="bool">False</Setting>
      <Setting id="journal" type="bool">False</Setting>
      <Setting id="rs" type="bool">True</Setting>
      <Setting id="rsrestart" type="bool">True</Setting>
      <Setting id="rsast" type="bool">False</Setting>
      <Setting id="rsdata" type="bool">False</Setting>
      <Setting id="rsmenu" type="bool">True</Setting>
      <Setting id="rstitle" type="bool">True</Setting>
      <Setting id="pacifist" type="bool">False</Setting>
      <Setting id="tm" type="bool">True</Setting>
      <Setting id="tmforce" type="bool">True</Setting>
      <Setting id="ms" type="bool">True</Setting>
      <Setting id="tracker" type="bool">False</Setting>
    </CustomSettings>
  </AutoSplitterSettings>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.