Git Product home page Git Product logo

skylobby's People

Contributors

badosu avatar drwebb avatar masterbel2 avatar p2004a avatar skynet-gh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

skylobby's Issues

Feature request: Updated multiplayer servers list

User can download & install Skylobby and it provides some hosts data to connect to.
What if some of those hosts change address or appear new ones?
Skylobby sould get updates & removals & new hosts to allow user to play around all SpringRTS community. This without deleting custom entries.

Feature request: Autofill in Chat textbox

I miss a feature I use in SpringLobby: Text autofill when pressing TAB key, for example for player nicknames.

Currently TAB key in Chat textbox produces a jump to next form control in GUI.

Arbitrary engine directories

There is no requirement for engines to be in the same directory that maps and games are, so an option to add arbitrary directories for engines is possible and has been requested.

ERROR [taoensso.timbre:925] - Uncaught exception on thread: JavaFX Application Thread

Installed skylobby-0.9.24_linux-amd64.deb over skylobby-0.9.23_linux-amd64.deb
Environment:

  • Debian GNU/Linux 11 (stable) amd64 +Gnome
  • default-jre 2:1.11-72
  • openjdk-11-jre 11.0.16+8-1~deb11u1
$ /opt/skylobby/bin/skylobby
Setting up log to /home/user/.skylobby/skylobby.log
2022-12-30T11:45:59.465Z system INFO [spring-lobby.main:258] - Main nil
2022-12-30T11:45:59.476Z system INFO [spring-lobby.main:132] - UI Main
2022-12-30T11:45:59.477Z system INFO [spring-lobby.main:134] - Set JavaFX implicit exit
2022-12-30T11:45:59.478Z system INFO [spring-lobby.main:136] - Loading initial state
2022-12-30T11:45:59.482Z system INFO [spring-lobby:144] - Slurping config edn from #spring-lobby/java.io.File "/home/user/.skylobby/config.edn"
2022-12-30T11:45:59.488Z system INFO [spring-lobby:150] - Backing up config file that we could parse
2022-12-30T11:45:59.489Z system INFO [spring-lobby:144] - Slurping config edn from #spring-lobby/java.io.File "/home/user/.skylobby/spring.edn"
2022-12-30T11:45:59.512Z system INFO [spring-lobby:150] - Backing up config file that we could parse
2022-12-30T11:45:59.513Z system INFO [spring-lobby:144] - Slurping config edn from #spring-lobby/java.io.File "/home/user/.skylobby/importables.edn"
2022-12-30T11:45:59.531Z system INFO [spring-lobby:150] - Backing up config file that we could parse
2022-12-30T11:45:59.532Z system INFO [spring-lobby:144] - Slurping config edn from #spring-lobby/java.io.File "/home/user/.skylobby/downloadables.edn"
2022-12-30T11:45:59.580Z system INFO [spring-lobby:150] - Backing up config file that we could parse
2022-12-30T11:45:59.582Z system INFO [spring-lobby:141] - Slurping config nippy from #spring-lobby/java.io.File "/home/user/.skylobby/rapid.bin"
2022-12-30T11:46:00.265Z system INFO [spring-lobby:144] - Slurping config edn from #spring-lobby/java.io.File "/home/user/.skylobby/replays.edn"
2022-12-30T11:46:00.266Z system INFO [spring-lobby:150] - Backing up config file that we could parse
2022-12-30T11:46:00.266Z system INFO [spring-lobby:141] - Slurping config nippy from #spring-lobby/java.io.File "/home/user/.skylobby/parsed-replays.bin"
2022-12-30T11:46:00.289Z system INFO [spring-lobby.main:175] - Loaded initial state in 811 ms
2022-12-30T11:46:00.292Z system INFO [spring-lobby:443] - Adding state to UI state watcher
2022-12-30T11:46:00.294Z system INFO [spring-lobby.main:232] - Creating renderer
2022-12-30T11:46:00.296Z system INFO [spring-lobby.main:240] - Mounting renderer
2022-12-30T11:46:00.299Z system INFO [spring-lobby:3890] - Creating #spring-lobby/java.io.File "/home/user/.skylobby"
2022-12-30T11:46:00.299Z system INFO [skylobby.fs:136] - Listing files in #spring-lobby/java.io.File "/home/user/.skylobby/download"
2022-12-30T11:46:00.300Z system INFO [spring-lobby.main:247] - Main finished in 824 ms
2022-12-30T11:46:00.300Z system INFO [spring-lobby:3895] - Creating #spring-lobby/java.io.File "/home/user/.spring"
2022-12-30T11:46:00.301Z system INFO [skylobby.fs:1396] - Deleting skylobby update jars: ()
2022-12-30T11:46:00.309Z system INFO [spring-lobby:3917] - Adding event handler methods from other ns
2022-12-30T11:46:00.313Z system INFO [spring-lobby:3924] - Initializing periodic jobs
2022-12-30T11:46:00.314Z system INFO [spring-lobby:903] - Starting tasks chimer for :spring-lobby/index-task
2022-12-30T11:46:00.341Z system INFO [spring-lobby:903] - Starting tasks chimer for :spring-lobby/resource-task
2022-12-30T11:46:00.342Z system INFO [spring-lobby:903] - Starting tasks chimer for :spring-lobby/download-task
2022-12-30T11:46:00.343Z system INFO [spring-lobby:903] - Starting tasks chimer for :spring-lobby/rapid-task
2022-12-30T11:46:00.344Z system INFO [spring-lobby:903] - Starting tasks chimer for :spring-lobby/other-task
2022-12-30T11:46:00.350Z system INFO [spring-lobby:1324] - Starting app update check chimer
2022-12-30T11:46:00.352Z system INFO [spring-lobby:1396] - Starting profile print chimer
2022-12-30T11:46:00.354Z system INFO [spring-lobby:1349] - Starting app config spit chimer
2022-12-30T11:46:00.358Z system INFO [spring-lobby:1051] - Starting fix battle ready chimer
2022-12-30T11:46:00.363Z system INFO [spring-lobby:1078] - Starting update matchmaking chimer
2022-12-30T11:46:00.365Z system INFO [spring-lobby:1123] - Starting update music queue chimer
2022-12-30T11:46:00.367Z system INFO [spring-lobby:1138] - Starting update now chimer
2022-12-30T11:46:00.369Z system INFO [spring-lobby:1154] - Starting update replays chimer
2022-12-30T11:46:00.371Z system INFO [spring-lobby:1173] - Starting write chat logs chimer
2022-12-30T11:46:00.373Z system INFO [spring-lobby:3966] - Finished periodic jobs init
2022-12-30T11:46:00.374Z system INFO [skylobby.server:544] - IPC server disabled
2022-12-30T11:46:00.375Z system INFO [skylobby.sql:251] - SQL db not enabled and not force start
2022-12-30T11:46:01.209Z system ERROR [taoensso.timbre:925] - Uncaught exception on thread: JavaFX Application Thread
                                          java.lang.Thread.run                                    
         com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$11           GtkApplication.java:  290
                  com.sun.glass.ui.gtk.GtkApplication._runLoop            GtkApplication.java     
             com.sun.glass.ui.InvokeLaterDispatcher$Future.run    InvokeLaterDispatcher.java:   96
    com.sun.javafx.application.PlatformImpl.lambda$runLater$11             PlatformImpl.java:  427
                   java.security.AccessController.doPrivileged                                    
    com.sun.javafx.application.PlatformImpl.lambda$runLater$10             PlatformImpl.java:  428
                                                           ...                                    
                              cljfx.renderer/request-render/fn                  renderer.clj:   45
                           cljfx.renderer/request-render/fn/fn                  renderer.clj:   45
                                 cljfx.renderer/perform-render                  renderer.clj:   22
                              cljfx.renderer/perform-render/fn                  renderer.clj:   23
                                      cljfx.renderer/create/fn                  renderer.clj:   79
                               cljfx.renderer/render-component                  renderer.clj:   59
                                          cljfx.lifecycle/fn/G                 lifecycle.clj:   17
                          cljfx.lifecycle/wrap-context-desc/fn                 lifecycle.clj:  462
                                          cljfx.lifecycle/fn/G                 lifecycle.clj:   17
                              cljfx.lifecycle/wrap-map-desc/fn                 lifecycle.clj:  450
                                          cljfx.lifecycle/fn/G                 lifecycle.clj:   17
                                            cljfx.lifecycle/fn                 lifecycle.clj:   61
                                  cljfx.lifecycle/reify/create                 lifecycle.clj:   42
                      cljfx.lifecycle/create-dynamic-component                 lifecycle.clj:   35
                                          cljfx.lifecycle/fn/G                 lifecycle.clj:   17
                                            cljfx.lifecycle/fn                 lifecycle.clj:  483
                                  cljfx.lifecycle/reify/create                 lifecycle.clj:   42
                      cljfx.lifecycle/create-dynamic-component                 lifecycle.clj:   35
                                          cljfx.lifecycle/fn/G                 lifecycle.clj:   17
                              cljfx.lifecycle/wrap-map-desc/fn                 lifecycle.clj:  450
                                          cljfx.lifecycle/fn/G                 lifecycle.clj:   17
                                  cljfx.lifecycle/wrap-many/fn                 lifecycle.clj:  281
                                           clojure.core/reduce                      core.clj: 6894
                                                           ...                                    
                               cljfx.lifecycle/wrap-many/fn/fn                 lifecycle.clj:  282
                                           clojure.core/update                      core.clj: 6237
                            cljfx.lifecycle/wrap-many/fn/fn/fn                 lifecycle.clj:  283
                                  cljfx.lifecycle/reify/create                 lifecycle.clj:   42
                      cljfx.lifecycle/create-dynamic-component                 lifecycle.clj:   35
                                          cljfx.lifecycle/fn/G                 lifecycle.clj:   17
                 cljfx.lifecycle/wrap-on-instance-lifecycle/fn                 lifecycle.clj:  493
                                  cljfx.lifecycle/reify/create                 lifecycle.clj:   42
                      cljfx.lifecycle/create-dynamic-component                 lifecycle.clj:   35
                                          cljfx.lifecycle/fn/G                 lifecycle.clj:   17
                             cljfx.lifecycle/wrap-on-delete/fn                 lifecycle.clj:  439
                                          cljfx.lifecycle/fn/G                 lifecycle.clj:   17
                    cljfx.composite/create-composite-component                 composite.clj:   39
                                            cljfx.prop/assign!                      prop.clj:   36
                                            cljfx.mutator/fn/G                   mutator.clj:   14
                                 cljfx.mutator/wrap-default/fn                   mutator.clj:  119
                                            cljfx.mutator/fn/G                   mutator.clj:   14
                                       cljfx.mutator/setter/fn                   mutator.clj:   29
                                             cljfx.fx.stage/fn                     stage.clj:   42
                                       javafx.stage.Stage.show                    Stage.java:  273
                                      javafx.stage.Window.show                   Window.java: 1189
                                javafx.stage.Window.setShowing                   Window.java: 1174
                 javafx.beans.property.BooleanPropertyBase.set      BooleanPropertyBase.java:  145
         javafx.beans.property.BooleanPropertyBase.markInvalid      BooleanPropertyBase.java:  110
                            javafx.stage.Window$12.invalidated                   Window.java: 1086
                com.sun.javafx.scene.SceneHelper.preferredSize              SceneHelper.java:   66
                            javafx.scene.Scene$2.preferredSize                    Scene.java:  393
                              javafx.scene.Scene.preferredSize                    Scene.java: 1745
                                  javafx.scene.Scene.doCSSPass                    Scene.java:  569
                                  javafx.scene.Node.processCSS                     Node.java: 9529
                    com.sun.javafx.scene.NodeHelper.processCSS               NodeHelper.java:  145
              com.sun.javafx.scene.ParentHelper.processCSSImpl             ParentHelper.java:   98
                            javafx.scene.Parent$1.doProcessCSS                   Parent.java:  125
                                javafx.scene.Parent.access$400                   Parent.java:   79
                              javafx.scene.Parent.doProcessCSS                   Parent.java: 1397
                    com.sun.javafx.scene.NodeHelper.processCSS               NodeHelper.java:  145
     com.sun.javafx.scene.control.ControlHelper.processCSSImpl            ControlHelper.java:   67
                   javafx.scene.control.Control$1.doProcessCSS                  Control.java:   89
                     javafx.scene.control.Control.doProcessCSS                  Control.java:  900
    com.sun.javafx.scene.control.ControlHelper.superProcessCSS            ControlHelper.java:   55
com.sun.javafx.scene.control.ControlHelper.superProcessCSSImpl            ControlHelper.java:   63
              com.sun.javafx.scene.ParentHelper.processCSSImpl             ParentHelper.java:   98
                            javafx.scene.Parent$1.doProcessCSS                   Parent.java:  125
                                javafx.scene.Parent.access$400                   Parent.java:   79
                              javafx.scene.Parent.doProcessCSS                   Parent.java: 1397
                    com.sun.javafx.scene.NodeHelper.processCSS               NodeHelper.java:  145
              com.sun.javafx.scene.ParentHelper.processCSSImpl             ParentHelper.java:   98
                            javafx.scene.Parent$1.doProcessCSS                   Parent.java:  125
                                javafx.scene.Parent.access$400                   Parent.java:   79
                              javafx.scene.Parent.doProcessCSS                   Parent.java: 1397
                    com.sun.javafx.scene.NodeHelper.processCSS               NodeHelper.java:  145
              com.sun.javafx.scene.ParentHelper.processCSSImpl             ParentHelper.java:   98
                            javafx.scene.Parent$1.doProcessCSS                   Parent.java:  125
                                javafx.scene.Parent.access$400                   Parent.java:   79
                              javafx.scene.Parent.doProcessCSS                   Parent.java: 1397
                    com.sun.javafx.scene.NodeHelper.processCSS               NodeHelper.java:  145
     com.sun.javafx.scene.control.ControlHelper.processCSSImpl            ControlHelper.java:   67
                   javafx.scene.control.Control$1.doProcessCSS                  Control.java:   89
                     javafx.scene.control.Control.doProcessCSS                  Control.java:  886
    com.sun.javafx.scene.control.ControlHelper.superProcessCSS            ControlHelper.java:   55
com.sun.javafx.scene.control.ControlHelper.superProcessCSSImpl            ControlHelper.java:   63
              com.sun.javafx.scene.ParentHelper.processCSSImpl             ParentHelper.java:   98
                            javafx.scene.Parent$1.doProcessCSS                   Parent.java:  125
                                javafx.scene.Parent.access$400                   Parent.java:   79
                              javafx.scene.Parent.doProcessCSS                   Parent.java: 1366
             com.sun.javafx.scene.ParentHelper.superProcessCSS             ParentHelper.java:   63
         com.sun.javafx.scene.ParentHelper.superProcessCSSImpl             ParentHelper.java:   93
                com.sun.javafx.scene.NodeHelper.processCSSImpl               NodeHelper.java:  192
                              javafx.scene.Node$1.doProcessCSS                     Node.java:  471
                                  javafx.scene.Node.access$900                     Node.java:  398
                                javafx.scene.Node.doProcessCSS                     Node.java: 9647
                 javafx.scene.CssStyleHelper.transitionToState           CssStyleHelper.java:  787
                     javafx.scene.control.Labeled$6.applyStyle                  Labeled.java:  347
                     javafx.scene.control.Labeled$6.applyStyle                  Labeled.java:  361
                 javafx.css.StyleableObjectProperty.applyStyle  StyleableObjectProperty.java:   68
                            javafx.scene.control.Labeled$6.set                  Labeled.java:  347
                            javafx.scene.control.Labeled$6.set                  Labeled.java:  375
java.lang.NoSuchMethodError: 'void com.sun.javafx.scene.NodeHelper.recalculateRelativeSizeProperties(javafx.scene.Node, javafx.scene.text.Font)'

Remove Bot impossible under linux

Impossible to remove a previous bot added via SkyLobby.
Feature icon to do so doesn't appear next to the bot's name under Linux contrary to Windows.

The only way to is to leave / come back to the battle room.

Interrogation sign issue

Skylobby 0.9.5
I wasn't capable to send this text by pressing [Enter] key at end:
Why did you come PlayerName?
I had to use mouse and press on [Send] button.

Some other signs (such as ! ) interfere typing too.

skylobby-skylobby.desktop

When UI user searches for "spring", skylobby launcher is not a result.
I propose to change some parameters in this desktop entry:

Comment=Play real-time strategy games using the Spring RTS engine
Categories=Game;StrategyGame;
Keywords=real-time;strategy;lobby;network;multiplayer;spring;

3rd party comnponents in skylobby-web interface

Following sources are warned from web browser protections:
googleapis dot com
gstatic dot com
unpkg dot com

My proposal is to apply a strict Single-Origin Policy (SOP) for every interfaces.
Today I suppose i't snot necessary to tell reasons.

error when trying to extract the engine 7z

Same on debian using the .deb version from releases an on Artix using the AUR version

2022-08-10T00:35:57.638Z artix ERROR [taoensso.timbre:828] - Uncaught exception on thread: JavaFX Application Thread
                                                                   java.lang.Thread.run                    Thread.java:  833
                                  com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$11            GtkApplication.java:  290
                                           com.sun.glass.ui.gtk.GtkApplication._runLoop             GtkApplication.java     
                                                      com.sun.glass.ui.View.notifyMouse                      View.java:  943
                                                 com.sun.glass.ui.View.handleMouseEvent                      View.java:  557
                       com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent     GlassViewEventHandler.java:  449
                          com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock            QuantumToolkit.java:  424
              com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$2     GlassViewEventHandler.java:  450
                                            java.security.AccessController.doPrivileged          AccessController.java:  399
             com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run     GlassViewEventHandler.java:  301
             com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run     GlassViewEventHandler.java:  411
                                        javafx.scene.Scene$ScenePeerListener.mouseEvent                     Scene.java: 2623
                                                   javafx.scene.Scene.processMouseEvent                     Scene.java: 1878
                                                javafx.scene.Scene$MouseHandler.process                     Scene.java: 3897
                                                           javafx.event.Event.fireEvent                     Event.java:  198
                                               com.sun.javafx.event.EventUtil.fireEvent                 EventUtil.java:   54
                                           com.sun.javafx.event.EventUtil.fireEventImpl                 EventUtil.java:   74
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   58
                    com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent  CompositeEventDispatcher.java:   59
                         com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent       EventHandlerManager.java:  191
                         com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent       EventHandlerManager.java:  234
                       com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent     CompositeEventHandler.java:   80
com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent     CompositeEventHandler.java:  247
                                  com.sun.javafx.scene.control.inputmap.InputMap.handle                  InputMap.java:  274
                     com.sun.javafx.scene.control.behavior.ButtonBehavior.mouseReleased            ButtonBehavior.java:  208
                                                       javafx.scene.control.Button.fire                    Button.java:  203
                                                            javafx.scene.Node.fireEvent                      Node.java: 8792
                                                           javafx.event.Event.fireEvent                     Event.java:  198
                                               com.sun.javafx.event.EventUtil.fireEvent                 EventUtil.java:   49
                                           com.sun.javafx.event.EventUtil.fireEventImpl                 EventUtil.java:   74
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   56
                              com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent    EventDispatchChainImpl.java:  114
                                com.sun.javafx.event.BasicEventDispatcher.dispatchEvent      BasicEventDispatcher.java:   58
                    com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent  CompositeEventDispatcher.java:   59
                         com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent       EventHandlerManager.java:  191
                         com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent       EventHandlerManager.java:  234
                       com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent     CompositeEventHandler.java:   86
                                                cljfx.coerce/event-handler/reify/handle                     coerce.clj:  135
                                                     cljfx.lifecycle/make-handler-fn/fn                  lifecycle.clj:  128
                                                                                    ...                                     
java.lang.IllegalArgumentException: No method in multimethod 'event-handler' for dispatch value: :spring-lobby/extract-7z

Ferature request: Battleroom tab: map subtab visual organization

Some UI controls in application have chaotic appearance, although they are well grouped and separated.
In this case, I think it will be better to work on a better alignment for labels and buttons to present a more ordered aspect and make easier to find what eyes are looking for;

  • Map {list selection, search, file, random, reload, rotation}
  • Display {pixels, layout}
  • Current size
  • Start positions / split
  • List maps to chat -> !list maps (with space)

Feature request: Hide dropdown arrows in lists

For example in battleroom's users list, ID, Allie, Color, Faction columns have value and dropdown triangle on each cell.
Could be these triangles be invisibilized to make view cleaner?

show in lobby ping

usefull foreach player to see if anyone was left behind before starting, useful first of all for me to understand if my partner is watching streaming without any respect .

font problem

Hello,
I have new windows installed.,
Dled and installed brand new skylobby and placed the custom-css.edn file and it doesnt work. The font size of the chat input doesnt work. Nothing works. Actually it doesnt matter what I do to it... Nothing matters no user rights nothing.
Odd that I kept other windows and the same config works well with up to date skylobby.
I cannot copy the folder becasue user name is not a match.
Otherwise the lobby works perfectly but the font small..

{".root"
{:-fx-base "rgb(20, 20, 20)",
:-fx-accent "rgb(50, 50, 50)",
:-fx-background "rgb(0, 0, 0)",
:-fx-control-inner-background "rgb(30, 30, 30)",
:-fx-selection-bar-non-focused "rgb(40, 40, 40)"},
".styled-text-area" {:-fx-background-color "rgb(0, 0, 0)"},
".text-field" {:-fx-prompt-text-fill "rgb(180, 180, 180)"},
".skylobby"
{"-normal" {"> .ikonli-font-icon" {:-fx-icon-color "white"}},
"-chat" {"-user-list" {:-fx-text-fill "lightgrey"}
"-input" {:-fx-font-size "34"}}}}

highlight the tab

it would be advisable to highlight the tabs of the menus in which you are

When passing the end of Chat history, window/tab changes

User can be pressing [up] key repeatedly to search for something said before.
After this, user can hold [down] key to go fast to last history line or new empty one.
By doing this, application frames move and focus changes to a different tab.

player color

Dear developers,

We had come to this point that we write many times... The colors are not organized in a good way. I have developed some system. Please consider it.
Color circle or hue range. choose a range like red, orange yellow for 1 team. The other team would green blue purple etc.
Assign predefined or generated colors of these to the two teams. Only the colors must be set that way that it is is not colliding disturbing etc.

In my opinion the best would be making like 64 colors and then use them. These would be related to ranges, and then these could be divided to maybe even 8 or more teams.
So the colors would never overlap in such sense that they look too similar to other teams. If you wish I can make these colors so it would be perfect.

What do you think about this?
Thank you!

Support for Beyond All Reason CDN

The current official way to fetch game from rapid and maps from springfiles for BAR is to go through our CDN, this is a feature request to support this method in skylobby as it is still used by some BAR players.

Here is the specification on how to integrate: https://gist.github.com/p2004a/5311db54df6f26a9a829c9388956275f. It's basically just setting env variables correctly for pr-downloader. You can ignore "Initial game download" as there aren't that many players going through skylobby.

Currently, data from BAR CDN and official spring host is identical, allowing players to fetch assets from either. However, this might change, due to complex relationship with official spring or if we in BAR seek to enhance rapid. In that case, players using skylobby won't be able to easily fetch BAR.

At present, we do not have a timeline for when this transition will be necessary. Once we have further information, we will update this issue accordingly.

Wrong line displayed as selected in battleslist

In main window, just after connected to server, if the row you click above is not the first row, the clicked row on which one you clicked didn't remind displayed as selected.

The selected row displayed as selected is the first row, instead of the row upon wich one I clicked.
In the below gif, I clicked on the second row or other row than the first but the selected row come back to the first row.

switch beetween battles, rows doesn't remind selected

Highlight window when rang or new direct message

Feature request: Splash card on load

On some computers Skylobby takes long time to launch and appear.
Impatient users can ask it to launch again, and it causes confusion if user has or hasn't clicked it well.
I propose to make it appear a small banner on screen, similar to LibreOffice does on launch.

Improve settings search

Currently settings can be searched by section, but it would be nice to filter individual settings as well.

Incorrect modoptions display

I had a incorrect modoptions information. Persos widgets were disaled for an ffa battle, but they were displayed as allowed.

skylobby_YBueQUcVqd -edited

Autoscroll chat log

(at least) When in a battleroom, once the user scrolls up chat frame (log), then it's very difficult to control this log to automatically follow new messages.

You often must scroll manually with mouse to discover what anyone says at any time.

Direct Connect Game Bots cannot form an alliance

Dear developers,

In a Direct Connect game, bots can be added. But the bots cannot be placed in the same ally.For example, a Bot1 is Ally 2 and Bot2 is Ally 3, then when Ally 2 is set in Bot2, a Spectator appears. (See Screenhot)
How to put the bots in an ally?
2022-03-23_23-35

Managed Spring settings

Many games have incompatible settings, so it makes sense to have an option to swap them before starting a game.

Type in font size

Thank you!
Please the css id/class list is missing, and I would like to know how can I set the TYPE IN- font size, not the log list of chat.
Thank you!

Context menu on text selection

I miss a context menu with some actions like "copy", "paste", etc. This when user presses secondary mouse button over selection.
Sometimes to be sure I'm doing those actions.
Any element selection should be able to be copied its caption (battlerooms and hosts too).

Feature request: About: version

To compare changelog with new version, I need to know which version I have already installed. This should both appeat at "Main" page and side-by-side with new version link.

Ferature request: Clean out battleroom heading buttons

[Leave Battle] [Pop Out Battle] [Pop Out Chat]

When header has a hierachy of tabs and subtabs rows, it's better not having this mixed with action buttons.

  • "Leave battle" can go to a dropdown control: Convert [Join game/Start] button to a "GO" dropdown with two options: Join/Start or Leave.
  • Each "Pop out" buttons could move to upper-right angle of respective frame, with only action symbol; and text only viewable by mouse hover (floating help).

Direct Connect Problem in Version skylobby-0.8.12

Hello skynet-gh,

since the update to skylobby-0.8.12 the direct connect function ist not starting correctly. Especially when the direct connect game tries to sync. In Version skylobby-0.8.11 the sync worked fine.

skylobby

Terminal output:

Error in :update-battle-status-sync state watcher
java.lang.Thread.run Thread.java: 833
java.util.concurrent.ThreadPoolExecutor$Worker.run ThreadPoolExecutor.java: 635
java.util.concurrent.ThreadPoolExecutor.runWorker ThreadPoolExecutor.java: 1136
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run ScheduledThreadPoolExecutor.java: 304
java.util.concurrent.FutureTask.run FutureTask.java: 264
java.util.concurrent.Executors$RunnableAdapter.call Executors.java: 539
...
chime.core/chime-at/schedule-loop/task core.clj: 99
chime.core/chime-at/schedule-loop/task/fn core.clj: 100
...
clojure.core/bound-fn*/fn core.clj: 2020
clojure.core/apply core.clj: 671
...
clojure.core/with-bindings* core.clj: 1990 (repeats 2 times)
clojure.core/apply core.clj: 667
...
spring-lobby/state-change-chimer-fn/fn spring_lobby.clj: 1368
spring-lobby/state-change-chimer-fn/fn/fn spring_lobby.clj: 1371
skylobby.battle-sync/update-battle-status-sync-watcher battle_sync.clj: 60

clojure.lang.ExceptionInfo: TODO direct connect

Search in Settings not covering all controls

Skylobby 0.9.18

When I type "Layout" in Search box, it does not find anything.
But if I type "View" there, it finds something labelled "Layout"

I think this Search mechanism should cover all words (titles, labels and values) in Settings.

First run: missing infolog

Hi!

Thank you for this lobby, it is very responsive when downloading maps, and it is certainly interesting that it is written in Clojure. Perhaps I can learn some!

To get to the point, I find that trying to start the first run (attempting an offline game), the lobby tries to back up a non-existent infolog.txt:

                              java.lang.Thread.run                  Thread.java:  833
java.util.concurrent.ThreadPoolExecutor$Worker.run      ThreadPoolExecutor.java:  635
 java.util.concurrent.ThreadPoolExecutor.runWorker      ThreadPoolExecutor.java: 1136
               java.util.concurrent.FutureTask.run              FutureTask.java:  264
                                               ...                                   
               clojure.core/binding-conveyor-fn/fn                     core.clj: 2035
                                spring-lobby/fn/fn             spring_lobby.clj: 3297
                    spring-lobby.spring/start-game                   spring.clj:  538
       spring-lobby.spring/start-game/post-game-fn                   spring.clj:  431
    spring-lobby.spring/start-game/post-game-fn/fn                   spring.clj:  436
                                  skylobby.fs/copy                       fs.clj:  672
                         skylobby.fs/java-nio-copy                       fs.clj:  656
                         skylobby.fs/java-nio-copy                       fs.clj:  665
                          java.nio.file.Files.copy                   Files.java: 1305
            sun.nio.fs.UnixFileSystemProvider.copy  UnixFileSystemProvider.java:  258
                      sun.nio.fs.UnixCopyFile.copy            UnixCopyFile.java:  548
     sun.nio.fs.UnixException.rethrowAsIOException           UnixException.java:  111
     sun.nio.fs.UnixException.rethrowAsIOException           UnixException.java:  106
   sun.nio.fs.UnixException.translateToIOException           UnixException.java:   92
java.nio.file.NoSuchFileException: /home/dan/.skylobby/spring/infolog.txt
    file: "/home/dan/.skylobby/spring/infolog.txt"

Creating the file manually leads to a different problem (so this is solved).

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.