BLCM / OpenBLCMM

OpenBLCMM - Borderlands Community Mod Manager
GNU General Public License v3.0
30 stars 2 forks source link

[Resolved] Crashes when selecting File->Open #85

Open jasnypc opened 4 days ago

jasnypc commented 4 days ago

System Info Java 20.0.2. OpenBLCMM 1.4.1-windows Operating System: Win11 Describe the bug When clicking file-> open on OpenBLCMM 1.4.1, it shows unknown error and crashes when trying to use it for Borderlands 2.

To Reproduce

  1. Open OpenBLCMM.exe
  2. clicking file-> open

Screenshots Screenshot 2024-09-24 122720

Log

2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:172) -> Running OpenBLCMM version 1.4.1
2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:173) -> Detected OS: WINDOWS
2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:174) -> Running Java version 20.0.2
2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:175) -> Using Java VM: Java HotSpot(TM) 64-Bit Server VM 20.0.2+9-78
2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:179) -> Arguments provided; VM arguments: [] - Runtime arguments: []
2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:185) -> Free Memory: 4.3 GB
2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:189) -> Maximum Memory: 4.3 GB
2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:213) -> OpenBLCMM is installed at: D:\Game\borderlands 2\OpenBLCMM-1.4.1-Java-Windows
2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:214) -> Your user data directory is: C:\Users\[user]\AppData\Local\OpenBLCMM
2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:215) -> Datapacks will be searched for at: D:\Game\borderlands 2\OpenBLCMM-1.4.1-Java-Windows
2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:216) -> Working directory: D:\Game\borderlands 2\OpenBLCMM-1.4.1-Java-Windows
2024-09-24 12:17:01 blcmm.Startup.main(Startup.java:217) -> Default file-open location: D:\Game\borderlands 2\OpenBLCMM-1.4.1-Java-Windows
2024-09-24 12:17:01 blcmm.data.lib.DataManagerManager.<init>(DataManagerManager.java:83) -> Starting initialization of BL2 Data Manager
2024-09-24 12:17:01 blcmm.data.lib.DataManagerManager.<init>(DataManagerManager.java:91) -> Error initializing BL2 Data Manager: blcmm.data.lib.DataManager$NoDataException: No jarfiles found for BL2
2024-09-24 12:17:01 blcmm.data.lib.DataManagerManager.<init>(DataManagerManager.java:83) -> Starting initialization of TPS Data Manager
2024-09-24 12:17:01 blcmm.data.lib.DataManagerManager.<init>(DataManagerManager.java:91) -> Error initializing TPS Data Manager: blcmm.data.lib.DataManager$NoDataException: No jarfiles found for TPS
2024-09-24 12:17:01 blcmm.data.lib.DataManagerManager.<init>(DataManagerManager.java:83) -> Starting initialization of AODK Data Manager
2024-09-24 12:17:01 blcmm.data.lib.DataManagerManager.<init>(DataManagerManager.java:91) -> Error initializing AODK Data Manager: blcmm.data.lib.DataManager$NoDataException: No jarfiles found for AODK
2024-09-24 12:17:02 blcmm.gui.MainGUI.initializeTree(MainGUI.java:613) -> No file opened
2024-09-24 12:17:03 blcmm.gui.MainGUI$7.doInBackground(MainGUI.java:522) -> No new OpenBLCMM version detected
2024-09-24 12:17:11 blcmm.model.CompletePatch.createNewProfile(CompletePatch.java:150) -> Profile Editor - created profile default
2024-09-24 12:17:12 blcmm.utilities.GameDetection.detectWindows(GameDetection.java:188) -> Can't find Borderlands 2 Steam installation on registry.
2024-09-24 12:17:12 blcmm.utilities.GameDetection.getPathToLogFiles(GameDetection.java:764) -> Path to log files: C:\Users\[user]\Documents\My games\Borderlands 2\WillowGame\Logs\
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands 2 Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands 2 Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands 2 Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands 2 Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands 2 Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands 2 Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands 2 Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands 2 Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands 2 Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands 2
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands 2
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:280) -> Also can't find a log for Borderlands 2.
2024-09-24 12:17:12 blcmm.utilities.GameDetection.detectWindows(GameDetection.java:188) -> Can't find Borderlands: The Pre-Sequel Steam installation on registry.
2024-09-24 12:17:12 blcmm.utilities.GameDetection.getPathToLogFiles(GameDetection.java:764) -> Path to log files: C:\Users\[user]\Documents\My games\Borderlands The Pre-Sequel\WillowGame\Logs\
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands The Pre Sequel Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands The Pre Sequel Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands The Pre Sequel Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands The Pre Sequel Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands The Pre Sequel Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands The Pre Sequel Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands The Pre Sequel Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands The Pre Sequel Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands The Pre Sequel Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands The Pre Sequel Remastered
2024-09-24 12:17:12 blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:254) -> Disregarding path due to lack of 'steam' substring: D:\Borderlands The Pre Sequel Remastered
2024-09-24 12:17:12 blcmm.Startup$MyExceptionHandler.logError(Startup.java:388) -> class java.lang.StringIndexOutOfBoundsException: Range [0, -1) out of bounds for length 346
    java.base/jdk.internal.util.Preconditions$1.apply(Preconditions.java:55)
    java.base/jdk.internal.util.Preconditions$1.apply(Preconditions.java:52)
    java.base/jdk.internal.util.Preconditions$4.apply(Preconditions.java:213)
    java.base/jdk.internal.util.Preconditions$4.apply(Preconditions.java:210)
    java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:98)
    java.base/jdk.internal.util.Preconditions.outOfBoundsCheckFromToIndex(Preconditions.java:112)
    java.base/jdk.internal.util.Preconditions.checkFromToIndex(Preconditions.java:349)
    java.base/java.lang.String.checkBoundsBeginEnd(String.java:4608)
    java.base/java.lang.String.substring(String.java:2720)
    blcmm.utilities.GameDetection.FindGamePathInLog(GameDetection.java:250)
    blcmm.utilities.GameDetection.detectWindows(GameDetection.java:189)
    blcmm.utilities.GameDetection.windowsGameDetection(GameDetection.java:174)
    blcmm.utilities.GameDetection.findGames(GameDetection.java:156)
    blcmm.utilities.GameDetection.getBL2Path(GameDetection.java:136)
    blcmm.utilities.GameDetection.getPath(GameDetection.java:125)
    blcmm.utilities.GameDetection.getBinariesDir(GameDetection.java:472)
    blcmm.gui.MainGUI.getOpenDialogPath(MainGUI.java:1461)
    blcmm.gui.MainGUI.openMenuButtonActionPerformed(MainGUI.java:1119)
    blcmm.gui.MainGUI.access$1200(MainGUI.java:134)
    blcmm.gui.MainGUI$11.actionPerformed(MainGUI.java:779)
    java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972)
    java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2314)
    java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:407)
    java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
    java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:374)
    java.desktop/javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1029)
    java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1073)
    java.desktop/java.awt.Component.processMouseEvent(Component.java:6620)
    java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3398)
    java.desktop/java.awt.Component.processEvent(Component.java:6385)
    java.desktop/java.awt.Container.processEvent(Container.java:2266)
    java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4995)
    java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
    java.desktop/java.awt.Component.dispatchEvent(Component.java:4827)
    java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948)
    java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575)
    java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516)
    java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
    java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
    java.desktop/java.awt.Component.dispatchEvent(Component.java:4827)
    java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775)
    java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
    java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
    java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
    java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
    java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:98)
    java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
    java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
    java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
    java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
    java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
    java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
2024-09-24 12:17:12 blcmm.Startup$MyExceptionHandler.logError(Startup.java:389) -> 

 OPTIONS:

key,value
inputMouseLinkExtra1Meta,Back
showConfirmPartialCategory,true
secondsBetweenBackups,120
OELeftPaneVisible,true
highlightBVCErrors,true
inputMouseLinkPrimaryButton,1
fontsize,12
popupStatus,0
oeDeformatLevel,1
oeSearchMissions,true
fileHistory,[]
TPSBookmarks,[]
inputMouseLinkPrimaryBase,Current
inputMouseLinkExtra2Button,5
onlineServiceNumber,5
checkForNewVersions,true
developerMode,true
inputMouseLinkExtra1Active,true
oeSearchParticles,true
oeAutoFormat,true
inputMouseLinkExtra1Base,Back
editWindowHeight,560
oeDataSuccessTimestampJarTPS,0
inputMouseLinkSecondaryClicks,2
inputMouseLinkExtra2Alt,Forward
inputMouseLinkSecondaryShift,New
inputMouseLinkExtra1Shift,Back
propagateMUTNotification,true
saveAsOffline,true
openLatestPatchOnStart,true
showFullDeleteConfirmation,true
theme,Dark
oeDataSuccessTimestampJarBL2,1727021221246
inputMouseLinkPrimaryMeta,New
BL2Bookmarks,[]
inputMouseLinkSecondaryBase,New
inputMouseLinkExtra2Ctrl,Forward
oeSearchSkins,true
oeSearchAI,true
AODKBookmarks,[]
inputMouseLinkSecondaryActive,true
backupsPerSession,10
inputMouseLinkExtra2Active,true
hasSeenExportWarning,false
oeSearchActions,true
oeSearchAnimations,true
inputMouseLinkExtra2Clicks,1
inputMouseLinkPrimaryClicks,2
inputMouseLinkSecondaryMeta,New
oeSearchDialog,true
truncateCommandLength,100
inputMouseLinkSecondaryButton,2
oeDataSuccessTimestampDbAODK,0
inputMouseLinkExtra1Ctrl,Back
inputMouseLinkPrimaryActive,true
oeColonInGetall,true
inputMouseLinkExtra1Alt,Back
oeSearchWillowData,false
mainWindowWidth,880
leafSelectionAllowed,false
oeDataSuccessTimestampDbBL2,1727049436904
inputMouseLinkExtra1Button,4
inputMouseLinkExtra2Shift,Forward
preferFullObjInOE,false
inputMouseLinkPrimaryShift,Current
inputMouseLinkSecondaryAlt,New
mainWindowHeight,623
accountDataNumber,1
oeWindowHeight,670
dragAndDroppableCode,true
inputMouseLinkPrimaryCtrl,New
oeSearchBase,true
oeWindowMaximized,false
oeSearchKismets,true
editWindowWidth,830
inputMouseLinkExtra2Base,Forward
truncateCommands2,true
filenameTruncationLength,60
showDeleteConfirmation,true
oeSearchMeshes,true
oeSearchOthers,true
inputMouseLinkExtra1Clicks,1
showHotfixNames,false
oeSearchStaticMeshes,false
mainWindowMaximized,false
oeDataSuccessTimestampJarAODK,0
sessionsToKeep,5
lastImport,D:\Borderlands The Pre Sequel Remastered\Binaries\NoScalingTPS.blcm
showFlattenCategoryConfirmation,true
oeDataSuccessTimestampDbTPS,0
oeSearchPopulations,true
inputMouseLinkSecondaryCtrl,New
oeSearchBehaviors,true
inputMouseLinkExtra2Meta,Forward
oeWindowWidth,1150
oeCollapseArrays,false
inputMouseLinkPrimaryAlt,Current
apocalyptech commented 4 days ago

Hmm, sorry about the bug. I haven't had time to look at the actual code yet, but I wonder if it's maybe some edge case about having the install directory right at the root of a hard drive? Would it be a bother to move it into a subdir to see if that ends up fixing it for now?

jasnypc commented 4 days ago

I am not sure if it is a bug or not. Maybe some setting issue, but cannot figure it out after trying for a few days. I tried to put all files under D/Borderlands 2, D/Borderlands 2/Binaries, D/Borderlands 2/Binaries/Win32, but none of them works.

jasnypc commented 4 days ago

I see you are talking about game installation directory. Just tried but same result. 2024-09-24 13:11:00 blcmm.Startup.main(Startup.java:216) -> Working directory: D:\bord\Borderlands 2\OpenBLCMM-1.4.1-Windows 2024-09-24 13:11:00 blcmm.Startup.main(Startup.java:217) -> Default file-open location: D:\bord\Borderlands 2\OpenBLCMM-1.4.1-Windows

jasnypc commented 3 days ago

Resolved this with help from a post on another forum. Deleted everything in willowgame/logs and it worked.

jasnypc commented 3 days ago

This is closed.

apocalyptech commented 3 days ago

Heya, glad you got it working! I'm gonna keep this open, though, because it definitely is a bug -- the app should never crash. Worst it should do is give an error message. I'll keep it open until I can figure out what caused the problem and fix that. :) Cheers, thanks again!