Page MenuHomeSchine - Phabricator

Starmade | F1 + P or radial menu with no chambers can crash you
Closed, FinishedPublic

Description

If you open up the chamber GUI for a ship that has no chambers, you get a runtime exception saying you have no tree.
I know it's done on purpose but no harm in having a report about it so it's not forgotten.

java.lang.RuntimeException: No Tree: 0
	at org.schema.game.client.view.gui.reactor.GUIReactorPanel.getSelectedTree(GUIReactorPanel.java:350)
	at org.schema.game.client.view.gui.reactor.GUIReactorPanel$4.toString(GUIReactorPanel.java:210)
	at org.schema.schine.graphicsengine.forms.gui.newgui.GUIHorizontalButton.init(GUIHorizontalButton.java:43)
	at org.schema.schine.graphicsengine.forms.gui.newgui.GUIHorizontalButton.<init>(GUIHorizontalButton.java:58)
	at org.schema.schine.graphicsengine.forms.gui.newgui.GUIHorizontalButtonTablePane.addButton(GUIHorizontalButtonTablePane.java:88)
	at org.schema.game.client.view.gui.reactor.GUIReactorPanel.createReactorSelect(GUIReactorPanel.java:203)
	at org.schema.game.client.view.gui.reactor.GUIReactorPanel.createTestTab(GUIReactorPanel.java:155)
	at org.schema.game.client.view.gui.reactor.GUIReactorPanel.onInit(GUIReactorPanel.java:122)
	at org.schema.game.client.view.gui.reactor.ReactorTreeDialog.<init>(ReactorTreeDialog.java:21)
	at org.schema.game.client.controller.manager.DebugControlManager.handleKeyEvent(DebugControlManager.java:176)
	at org.schema.game.client.controller.manager.GlobalGameControlManager.handleKeyEvent(GlobalGameControlManager.java:126)
	at org.schema.game.client.controller.GameClientController.handleKeyEvent(GameClientController.java:3467)
	at org.schema.schine.input.BasicInputController.updateInput(BasicInputController.java:185)
	at org.schema.game.client.controller.GameClientController.updateStateInput(GameClientController.java:1465)
	at org.schema.schine.graphicsengine.core.GLFrame.doFrameAndUpdate(GLFrame.java:673)
	at org.schema.schine.graphicsengine.core.GraphicsContext.mainLoop(GraphicsContext.java:808)
	at org.schema.schine.graphicsengine.core.GraphicsContext.startUp(GraphicsContext.java:705)
	at org.schema.game.client.controller.GameMainMenuController.startGraphics(GameMainMenuController.java:1148)
	at org.schema.game.common.Starter.startMainMenu(Starter.java:1452)
	at org.schema.game.common.Starter.main(Starter.java:996)

Details

Commits
Restricted Diffusion Commit
Restricted Diffusion Commit
Restricted Diffusion Commit
Restricted Diffusion Commit
Task Type
Bug
Testing Results
Affected Gamemode(s)
Single and Multi
Reproducible
Yes
Last tested (version)
0.200.228
Category
Control Block System: Systems
First occurrence (version)
0.199.654
Hardware/Software/System
OS-Specific
No
Hardware-Specific
No
Video Card Vendor
uncertain
Steps to reproduce
  1. ship core with new power but no chambers
  2. F1 + P with having it selected
Tester information (Internal use only)

Partially fixed.
If you place down a new reactor block on a ship core, then remove it, you can still access the reactor menu. It doesn't crash you, but it does not make sense either at least not while the old system is still around.


Same behavior as before.

Serverconfig (server.cfg)
<replace this line with the file content>
Clientconfig (settings.cfg)
<replace this line with the file content>

Event Timeline

lancake created this task.Sep 4 2017, 3:12 PM
lancake created this object in space Restricted Space.
Restricted Application added a project: CBS: Systems. · View Herald TranscriptSep 4 2017, 3:12 PM
schema added a commit: Restricted Diffusion Commit.Sep 7 2017, 3:36 PM
schema changed the task status from In Queue to Resolved by committing Restricted Diffusion Commit.
Restricted Application edited projects, added Quality Assurance; removed Game Development. · View Herald TranscriptSep 7 2017, 3:36 PM
Restricted Application added a subscriber: AndyP. · View Herald Transcript
lancake renamed this task from New Power: F1 + P with no chambers to F1 + P with no chambers.Oct 6 2017, 2:21 PM

This should be fixed, but had it happen several times with multiple reactors on my entity. Can't reproduce yet but will most likely run into it again at some point.

lancake changed Last tested (version) from 0.199.654 to 0.200.114.Oct 6 2017, 2:26 PM
lancake renamed this task from F1 + P with no chambers to F1 + P or radial menu with no chambers can crash you.
lancake shifted this object from the Restricted Space space to the S3 Starmade space.Oct 8 2017, 2:36 PM
lancake changed the task status from Resolved to In Queue.Nov 1 2017, 8:31 PM

-QA Testing-

If there is no old or new reactor on your ship, you can still use the "Reactor" Radial menu option (and crash).

java.lang.RuntimeException: No Tree: 0
	at org.schema.game.client.view.gui.reactor.GUIReactorPanel.getSelectedTree(GUIReactorPanel.java:452)
	at org.schema.game.client.view.gui.reactor.GUIReactorPanel$6.toString(GUIReactorPanel.java:303)
	at org.schema.schine.graphicsengine.forms.gui.newgui.GUIHorizontalButton.draw(GUIHorizontalButton.java:77)
	at org.schema.schine.graphicsengine.forms.gui.newgui.GUIHorizontalButtonTablePane.draw(GUIHorizontalButtonTablePane.java:67)
	at org.schema.schine.graphicsengine.forms.gui.GUIAncor.draw(GUIAncor.java:38)
	at org.schema.schine.graphicsengine.forms.gui.GUIAncor.draw(GUIAncor.java:38)
	at org.schema.schine.graphicsengine.forms.gui.newgui.GUIInnerTextbox.draw(GUIInnerTextbox.java:55)
	at org.schema.schine.graphicsengine.forms.gui.newgui.GUIContentPane.draw(GUIContentPane.java:199)
	at org.schema.schine.graphicsengine.forms.gui.newgui.GUIMainWindow.draw(GUIMainWindow.java:117)
	at org.schema.game.client.view.gui.reactor.GUIReactorPanel.draw(GUIReactorPanel.java:107)
	at org.schema.game.client.view.gui.GuiDrawer.draw(GuiDrawer.java:210)
	at org.schema.game.client.view.WorldDrawer.drawGUI(WorldDrawer.java:842)
	at org.schema.game.client.view.MainGameGraphics.framebufferPass(MainGameGraphics.java:910)
	at org.schema.game.client.view.MainGameGraphics.draw(MainGameGraphics.java:454)
	at org.schema.schine.graphicsengine.core.GLFrame.draw(GLFrame.java:502)
	at org.schema.schine.graphicsengine.core.GLFrame.render(GLFrame.java:546)
	at org.schema.schine.graphicsengine.core.GLFrame.doFrameAndUpdate(GLFrame.java:693)
	at org.schema.schine.graphicsengine.core.GraphicsContext.mainLoop(GraphicsContext.java:828)
	at org.schema.schine.graphicsengine.core.GraphicsContext.startUp(GraphicsContext.java:725)
	at org.schema.game.client.controller.GameMainMenuController.startGraphics(GameMainMenuController.java:1148)
	at org.schema.game.common.Starter.startMainMenu(Starter.java:1457)
	at org.schema.game.common.Starter.main(Starter.java:1001)
Restricted Application edited projects, added Game Development, QA-Return; removed Quality Assurance. · View Herald TranscriptNov 1 2017, 8:31 PM
lancake edited Tester information (Internal use only). (Show Details)Nov 1 2017, 8:31 PM
lancake changed Last tested (version) from 0.200.114 to 0.200.148.
Valck added a subscriber: Valck.Nov 2 2017, 8:59 AM
schema added a commit: Restricted Diffusion Commit.Nov 2 2017, 11:45 AM
schema changed the task status from In Queue to Resolved by committing Restricted Diffusion Commit.
Restricted Application edited projects, added Quality Assurance; removed QA-Return, Game Development. · View Herald TranscriptNov 2 2017, 11:45 AM
lancake changed the task status from Resolved to In Queue.

-QA Testing-

Partially fixed.
If you place down a new reactor block on a ship core, then remove it, you can still access the reactor menu. It doesn't crash you, but it does not make sense either at least not while the old system is still around.

Restricted Application edited projects, added Game Development, QA-Return; removed Quality Assurance. · View Herald TranscriptNov 2 2017, 4:31 PM
lancake edited Tester information (Internal use only). (Show Details)Nov 2 2017, 4:31 PM
lancake changed Last tested (version) from 0.200.148 to 0.200.151.
schema added a commit: Restricted Diffusion Commit.Nov 3 2017, 11:58 AM
schema changed the task status from In Queue to Resolved by committing Restricted Diffusion Commit.
Restricted Application edited projects, added Quality Assurance; removed QA-Return, Game Development. · View Herald TranscriptNov 3 2017, 11:58 AM
lancake changed the task status from Resolved to In Queue.Nov 23 2017, 3:57 PM

-QA Testing-

Same behavior as before.

Restricted Application edited projects, added Game Development, QA-Return; removed Quality Assurance. · View Herald TranscriptNov 23 2017, 3:57 PM
lancake edited Tester information (Internal use only). (Show Details)Nov 23 2017, 3:58 PM
lancake changed Last tested (version) from 0.200.151 to 0.200.176.
schema added a commit: Restricted Diffusion Commit.Nov 29 2017, 5:23 PM
schema changed the task status from In Queue to Resolved by committing Restricted Diffusion Commit.
Restricted Application edited projects, added Quality Assurance; removed QA-Return, Game Development. · View Herald TranscriptNov 29 2017, 5:23 PM
lancake closed this task as Closed.

-QA Testing-

Fix confirmed.

Restricted Application removed a project: Quality Assurance. · View Herald TranscriptDec 9 2017, 4:20 PM
Restricted Application removed a subscriber: AndyP. · View Herald Transcript
lancake changed Last tested (version) from 0.200.176 to 0.200.228.Dec 9 2017, 4:20 PM