VISAB-ORG / VISAB

VISAB is a standalone utility to visualize artificial intelligence agent behavior in games.
1 stars 0 forks source link

F settings view #45

Closed TimKuno closed 3 years ago

TimKuno commented 3 years ago

The settings view allows the user to configure the settings in visab. The settings are saved in json file in the workspace and is also manually editable from hand (a hand edit does not work a runtime).

TimKuno commented 3 years ago

I have updated the view so all settings are now displayed in the same way

leRoe93 commented 3 years ago

Looks good to me, just added simple logging and inacceptance of 0 seconds as a timeout value. :)

I think we should eliminate the hostName from the settings, because this host name will always refer to the machine which is running VISAB, isn't it?

Furthermore, on changing the port, we would need to shut down the current WebApi thread and reload it to listen on the newly configured port.

vanessas97 commented 3 years ago

I'm having an issue with this PR, see below snippet of exception(s):

... Caused by: java.lang.NullPointerException at org.visab.newgui.settings.model.Settings.<init>(Settings.java:30) at org.visab.newgui.settings.SettingsViewModel.<init>(SettingsViewModel.java:17) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) at java.base/java.lang.Class.newInstance(Class.java:584) at de.saxsys.mvvmfx.internal.viewloader.DependencyInjector.getInstanceOf(DependencyInjector.java:74) at de.saxsys.mvvmfx.internal.viewloader.ViewLoaderReflectionUtils.lambda$createAndInjectViewModel$4(ViewLoaderReflectionUtils.java:265) at de.saxsys.mvvmfx.internal.viewloader.ReflectionUtils.lambda$accessMember$3(ReflectionUtils.java:165)

For information:

Maybe we can find out why this issue exists, we will also try to find it :)

leRoe93 commented 3 years ago

Now works under Mac OS, because the VISABUtil shall not cut off the first slash for unix-like OS's, somehow the loading of config is weird and I don't know why, e.g:

Minor bug/issue, but we need to keep this in mind!

mfroeh commented 3 years ago

Now works under Mac OS, because the VISABUtil shall not cut off the first slash for unix-like OS's, somehow the loading of config is weird and I don't know why, e.g:

  • No settings are in workspace/config
  • VISAB tries to read them (fails because files do not exist)
  • VISAB then proceeds with default settings from the resources
  • But this does not get logged properly, although I put messages at the correct places

Minor bug/issue, but we need to keep this in mind!

This works perfectly on Windows (including log messages).

TimKuno commented 3 years ago

I think we should eliminate the hostName from the settings, because this host name will always refer to the machine which is running VISAB, isn't it?

I understand what you mean and i think your are actually right, that the hostName refers to the machin VISAB is running on. It would be no problem to change it back as a constant and remove it from the settings.json for me. Maybe we should discuss this in our next meeting?

mfroeh commented 3 years ago

Resolved the merge conflicts. You can now merge whenever you'd like 👍

TimKuno commented 3 years ago

Thanks i will first take a look at your idea for the allowed games