SR3 Save Editor C

Discussion in 'Tool Releases' started by Corrodias, Jun 21, 2012.

  1. Works very nicely with SR3!

    And on a side note, is there a version of this for Sr4 or SR:GOOH?
     
  2. Thanks about this awesome piece of software! Helped me a bit.

    Now I ran into some issues with it at SR3 Steam Linux version. I'm playing under Linux Mint 19.2 64-bit now. Java version is 1.7.0_80-b15 64-bit. At first noticed a bug on save game location autodetection:
    Code (Text):
    Oct 28, 2019 12:04:34 AM java.util.prefs.FileSystemPreferences$1 run
    INFO: Created user preferences directory.
    java.lang.NoSuchMethodException: java.util.prefs.FileSystemPreferences.WindowsRegOpenKey(int, [B, int)
        at java.base/java.lang.Class.getDeclaredMethod(Class.java:2475)
        at com.stackoverflow.question.number_62289.WinRegistry.<clinit>(WinRegistry.java:36)
        at corrodias.sr3.save.editor.Main.getSavePath(Main.java:46)
        at corrodias.sr3.save.editor.MainFrame.<init>(MainFrame.java:78)
        at corrodias.sr3.save.editor.Main.main(Main.java:29)
    Oct 28, 2019 12:04:34 AM corrodias.sr3.save.editor.Main getSavePath
    INFO: java.lang.NullPointerException
    That is fine. SR3 Steam Linux saves are located elsewhere - under "/home/<user>/.steam/steam/userdata/57567017/55230/remote". Would be nice to fix that later, but nothing critical.

    Another bug popped up in console on opening saves after mission "We're Going to Need Guns":
    Code (Text):
    Oct 28, 2019 12:06:53 AM corrodias.sr3.save.editor.MainFrame$LoadButtonListener actionPerformed
    SEVERE: null
    java.lang.ClassCastException: class java.lang.Byte cannot be cast to class java.lang.Integer (java.lang.Byte and java.lang.Integer are in module java.base of loader 'bootstrap')
        at java.base/java.lang.Integer.compareTo(Integer.java:59)
        at java.desktop/javax.swing.SpinnerNumberModel.incrValue(SpinnerNumberModel.java:362)
        at java.desktop/javax.swing.SpinnerNumberModel.getPreviousValue(SpinnerNumberModel.java:401)
        at java.desktop/javax.swing.plaf.basic.BasicSpinnerUI.updateEnabledState(BasicSpinnerUI.java:514)
        at java.desktop/javax.swing.plaf.basic.BasicSpinnerUI.updateEnabledState(BasicSpinnerUI.java:494)
        at java.desktop/javax.swing.plaf.basic.BasicSpinnerUI$Handler.stateChanged(BasicSpinnerUI.java:1084)
        at java.desktop/javax.swing.JSpinner.fireStateChanged(JSpinner.java:461)
        at java.desktop/javax.swing.JSpinner$ModelListener.stateChanged(JSpinner.java:388)
        at java.desktop/javax.swing.AbstractSpinnerModel.fireStateChanged(AbstractSpinnerModel.java:120)
        at java.desktop/javax.swing.SpinnerNumberModel.setValue(SpinnerNumberModel.java:460)
        at java.desktop/javax.swing.JSpinner.setValue(JSpinner.java:355)
        at corrodias.sr3.save.editor.MainFrame.readPlayerPanelData(MainFrame.java:831)
        at corrodias.sr3.save.editor.MainFrame.access$1700(MainFrame.java:25)
        at corrodias.sr3.save.editor.MainFrame$LoadButtonListener.actionPerformed(MainFrame.java:1028)
        at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
        at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308)
        at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405)
        at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
        at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279)
        at java.desktop/java.awt.Component.processMouseEvent(Component.java:6632)
        at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
        at java.desktop/java.awt.Component.processEvent(Component.java:6397)
        at java.desktop/java.awt.Container.processEvent(Container.java:2263)
        at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5008)
        at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
        at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840)
        at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
        at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
        at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
        at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
        at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772)
        at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
        at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
        at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
    Saves themselves opens and are editable, saveable and loads in game without issues. Dunno, what it is. Maybe related to 64-bit Java, maybe not.

    Also increased money amount above $12,000,000 become negative. $29,000,000 loaded as -$12,000,000.
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice