Open samgray96 opened 3 years ago
That is expected behaviour, we don't check mod dependencies.
Ah, I mis-interpreted this in the log then?
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? boblogistics >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? FactorioExtended-Plus-Transport >= 0.1.5' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? Krastorio2 >= 0.9.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? RandomFactorioThings >= 1.0.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? UltimateBelts >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? UltimateBelts_Owoshima_And_Pankeko-Mod >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? space-exploration >= 0.1.95' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 completed copying the response.Body
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '(?) bobinserters >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? boblogistics >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? FactorioExtended-Plus-Transport >= 0.1.5' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? Krastorio2 >= 0.9.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? RandomFactorioThings >= 1.0.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? UltimateBelts >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? UltimateBelts_Owoshima_And_Pankeko-Mod >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:15 skipping dependency '? space-exploration >= 0.1.95' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '(?) bobinserters >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? boblogistics >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? FactorioExtended-Plus-Transport >= 0.1.5' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? Krastorio2 >= 0.9.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? RandomFactorioThings >= 1.0.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? UltimateBelts >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? UltimateBelts_Owoshima_And_Pankeko-Mod >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? space-exploration >= 0.1.95' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '(?) bobinserters >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? boblogistics >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? FactorioExtended-Plus-Transport >= 0.1.5' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? Krastorio2 >= 0.9.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? RandomFactorioThings >= 1.0.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? UltimateBelts >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? UltimateBelts_Owoshima_And_Pankeko-Mod >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? space-exploration >= 0.1.95' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '(?) bobinserters >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? boblogistics >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? FactorioExtended-Plus-Transport >= 0.1.5' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? Krastorio2 >= 0.9.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? RandomFactorioThings >= 1.0.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? UltimateBelts >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? UltimateBelts_Owoshima_And_Pankeko-Mod >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? space-exploration >= 0.1.95' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '(?) bobinserters >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? boblogistics >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? FactorioExtended-Plus-Transport >= 0.1.5' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? Krastorio2 >= 0.9.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? RandomFactorioThings >= 1.0.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? UltimateBelts >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? UltimateBelts_Owoshima_And_Pankeko-Mod >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:27 skipping dependency '? space-exploration >= 0.1.95' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:42 skipping dependency '(?) bobinserters >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:42 skipping dependency '? boblogistics >= 0.17.1' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:42 skipping dependency '? FactorioExtended-Plus-Transport >= 0.1.5' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:42 skipping dependency '? Krastorio2 >= 0.9.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:42 skipping dependency '? RandomFactorioThings >= 1.0.0' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:42 skipping dependency '? UltimateBelts >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:42 skipping dependency '? UltimateBelts_Owoshima_And_Pankeko-Mod >= 0.16.4' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:42 skipping dependency '? space-exploration >= 0.1.95' in 'miniloader': optional dependency or invalid format
factorio-server-manager1 | 2021/01/24 08:53:42 download complete
factorio-server-manager1 | StatusCode: 200
factorio-server-manager1 | Status: 200 OK```
Those outputs are from listing the installed mods. When we list installed mods, we search for the dependency of "base" mod. Every other dependency will print such an output. https://github.com/OpenFactorioServerManager/factorio-server-manager/blob/bcbf3ffd3d15dd6600f25ae6681d1bf6f55a9374/src/factorio/mod_modInfo.go#L89
Hello, if it helps you @samgray96 I have this tool installed on my server that I use when I need to install or remove mods : https://github.com/Tantrisse/Factorio-mods-manager it's in python so pretty easy to use, even on windows.
Then I use factorio-server-manager to manage the my server, enable/disable a mods, create mod packs, saves, etc.
I'm really happy as the dependencies system is really working well : https://github.com/Tantrisse/Factorio-mods-manager#about-dependencies it check the dependencies of dependencies :) and also clean the dependencies when you remove a mod (but you can also avoid it with the -nrrd flag).
It could be cool to have something like that integrated in factorio-server-manager but if it's too complex you can just live with the two tools :)
Okay, I would suggest to at least put a warning there, because I searched for hours why some mods where not working after installing them within the server manager :(
What worked for me, is setting up mods as you want them on desktop first, saving, uploading the save to OFSM and then selecting "Load Mods From Save". This way you will have all the dependencies you need.
That is expected behaviour, we don't check mod dependencies.
What is the rationale behind this being the default behaviour?
Those outputs are from listing the installed mods. When we list installed mods, we search for the dependency of "base" mod. Every other dependency will print such an output.
With respect @knoxfighter, there might have been a misunderstanding here. The intention may have been to just check for base dependencies, but the logs end up confusing as a result. I believe the log output to be incorrectly stating that all mods with dependency flag prefixes are optional or incorrectly formatted because only 3 fields of the dependency string are being parsed as seen from the whole section from which you quote
When a mod fails to load due to missing dependencies, the mods gui page or fsm server logs do not reveal in any way that there are missing or incorrect dependencies or even incompatible mods as indicated by the flags. I feel that parsing mod info could be a little more resilient, and give the user a better understanding of the situation. issue #393 is a case in point.
I shall attempt some modification to check the flag prefix and output a corresponding log string and perhaps a mods gui page indication. A subsequent PR will follow in due course if they are being accepted?
FYI from https://wiki.factorio.com/Tutorial:Mod_structure
The possible prefixes are: ! for incompatibility ? for an optional dependency. (?) for a hidden optional dependency ~ for a dependency that does not affect load order no prefix for a hard requirement for the other mod.
I am sure that back when the code was created the ~
dependency was not a thing yet.
The whole mod installation part is subject of a rework with proper dependencymanagement. I am currently getting back to this project and will tackle it later. For now i will remove that message, cause we skip everything except the base mod and it also only checks for the base mod.
Yes, the flags were simpler back then and the message does inappropriately catch everything that has a flag.
I'm pleased to hear that you are looking at the dependencies, and I look forward to seeing the improvements. In the meantime, I'll have a play with go, and see what I can learn too. There's a few other places in the gui that could do with some enhancements ie indicating activity during larger downloads (graphics packs) that I'll be sure to raise issues for.
Issue that when downloading a mod which has required dependancies, they are not also pulled down with the mod so thus don't load, Mod example is LTN which requires Flib