Space Engineers 2 - Official Client Side Only Mods (Independent from Servers)
To start off I want to say that I hugely appreciate the work Keen is doing for Space Engineers 2 and that I am no expert in Space Engineers modding but I have a decent understanding of the core concepts.
While on Space Engineers (1) we have https://sepluginloader.github.io to unofficially load Client Side Only mods independently of the server you are connecting to, it would be extremely beneficial for players and server owners to have Space Engineers 2 support Client Side Only mods Officially, independently of the server you are connecting to, just like in Deep Rock Galactic and even bigger games like Minecraft (though unofficially thanks to all the loaders there are).
This would make it incredibly easy for average players to customize UIs, icons, colors, textures, models, animations, sounds and ideally more complex client specific behaviors independently of which server they are going to play on, players should be able to load up the game using any mod they like and join any server they like, if supported Officially, the servers could even be able to blacklist (or whitelist even) any client side mod they might not want to be used! (so users can use "approved" ones them on official servers as well!).
Mods themselves should be more detached from the server, (this could be already the case though I do not know for sure) they could have some metadata to show if the mod is Client Side Only, Server Side Only, Client and Server Side, Client and/or Server Side (can be in only one but works better / is more integrated on both) and allow the player to choose what client side specific mods they want to add or remove from the suggested server mod list (Client Side Only mods can be removed or added at will only obviously).
We already have a part of this now thanks to https://sepluginloader.github.io but it would be so much better for both average users and server admins for Space Engineers 2 to support this Officially, the modding community would be able to make so much more and the player would have such an easier time if they just want to customize UIs, icons, colors, textures, models, animations, sounds and ideally more complex client specific behaviors, anything to their liking without the need for the server owner to manually have to add those mods! (which is insanely annoying and not applicable in most situations currently), also this is true the other way around, if a server owner wants to add new grid spawns, make the speed limit higher, control trading outpost trades or anything that doesn't need a Client Side mod they should be able to do it and have players be able to join using Vanilla Clients or with their own Client Side modded clients :D
I feel like the community would seriously appreciate this, if this doesn't get implemented then it will be done by the community again most likely, making it less centralized, harder to integrate and not administrable by server owners (as it currently is).
If this is not something Keen is interested in and they would rather continue with a similar hands-off approach for Client Only mods in Space Engineers 2 as well then I suggest at least to have proper Official "Resource Pack" system just like we have in Minecraft Officially as well.
This way while players would not be able to customize more complex client specific behaviors, they would at least be able to fully customize UIs, icons, colors, textures, models, animations and sounds to their likings.
Thanks in advance :D
Also making the distinction between mod types more clear and distinct could end up benefitting a lot console versions as well, while they will most likely not be able to support client side mods as it currently is and has always been for consoles, embracing this limitation in the core of Space Engineers 2 by making the separation more clear and having more support in the core of the game could make it so making server side only mods will be better than ever for console players and even vanilla computer clients would be able to connect to these servers with server side only mods and work anyway!
Also making the distinction between mod types more clear and distinct could end up benefitting a lot console versions as well, while they will most likely not be able to support client side mods as it currently is and has always been for consoles, embracing this limitation in the core of Space Engineers 2 by making the separation more clear and having more support in the core of the game could make it so making server side only mods will be better than ever for console players and even vanilla computer clients would be able to connect to these servers with server side only mods and work anyway!
Related Reddit Discussion: https://www.reddit.com/r/spaceengineers/comments/1hxqcbs/vote_for_space_engineers_2_official_client_side/
Related Reddit Discussion: https://www.reddit.com/r/spaceengineers/comments/1hxqcbs/vote_for_space_engineers_2_official_client_side/
I like it a lot since it'd probably give servers whitelist/blacklist abilities as well as everything mentioned in the third-to-last paragraph being very true. Official support would make it way more accessible since it could be as easy as subscribing to normal mods and enabling them in-game (with a restart of course).
I like it a lot since it'd probably give servers whitelist/blacklist abilities as well as everything mentioned in the third-to-last paragraph being very true. Official support would make it way more accessible since it could be as easy as subscribing to normal mods and enabling them in-game (with a restart of course).
Paradox Interactive has similar approach, where they calculate checksum based on game version and mods; and certain mods like music mods, icons / ui mods, artworks / certain textures and other ones which do not change the gameplay count as vanilla and don't require host/other players to have those installed in multiplayer, which is very convenient.
I am thrilled to see there is part of solution for SE available on github and more indepth conversations were in place.
Paradox Interactive has similar approach, where they calculate checksum based on game version and mods; and certain mods like music mods, icons / ui mods, artworks / certain textures and other ones which do not change the gameplay count as vanilla and don't require host/other players to have those installed in multiplayer, which is very convenient.
I am thrilled to see there is part of solution for SE available on github and more indepth conversations were in place.
Whilst I can see the benefit to this, when I host a Server, I make it a true Hardcore Nightmare. Everything from Mining to Brightness gets modded and I will sometimes even make only Small Grids able to move.
If players are able to have their own Client Side Mods that change this, it could give them an advantage over other Players, or just break the spirit of the Server.
Whilst I can see the benefit to this, when I host a Server, I make it a true Hardcore Nightmare. Everything from Mining to Brightness gets modded and I will sometimes even make only Small Grids able to move.
If players are able to have their own Client Side Mods that change this, it could give them an advantage over other Players, or just break the spirit of the Server.
This is a very dangerous topic. Which entails many pitfalls. It is better not to do this, it will significantly worsen the game with mods.
This is a very dangerous topic. Which entails many pitfalls. It is better not to do this, it will significantly worsen the game with mods.
First of all, I want to say that I have never created mods for Space Engineers, so I might be wrong or unaware of some details.
I would suggest categorizing mods into three types: functional, utility (or QoL), and visual.
Functional mods affect the game mechanics. They add new items or blocks, change recipes, and so on.
Utility mods include various calculators and chat features (including voice chat), statistics, and help for players. For example, a mod could highlight a container that holds a needed item or display the status of a block that an engineer is looking at. I would also classify interface changes under utility mods.
Visual mods are those that replace icons, colors, HUD elements, and so forth.
Therefore, functional mods should only be server-side mods that server owners need to install themselves. The other two types of mods can be installed by players on both the client and the server.
Having white, black, and mandatory mod lists for servers would be very convenient.
However, there is another issue with mods: the programming language. As far as I remember, it is C#. This is a compiled language, which presents a problem. Firstly, I would not accept mods without source code due to security concerns. It’s unclear what a mod will do on a user's machine—whether it will perform as expected or potentially steal user data. Therefore, publication should require the source code to be open to everyone, allowing Keen to distance themselves from others' code. Secondly, the mod should be compiled in the same environment as the game, considering library versions, compilers, and so on. This would mean additional costs for Keen to support CI/CD servers.
First of all, I want to say that I have never created mods for Space Engineers, so I might be wrong or unaware of some details.
I would suggest categorizing mods into three types: functional, utility (or QoL), and visual.
Functional mods affect the game mechanics. They add new items or blocks, change recipes, and so on.
Utility mods include various calculators and chat features (including voice chat), statistics, and help for players. For example, a mod could highlight a container that holds a needed item or display the status of a block that an engineer is looking at. I would also classify interface changes under utility mods.
Visual mods are those that replace icons, colors, HUD elements, and so forth.
Therefore, functional mods should only be server-side mods that server owners need to install themselves. The other two types of mods can be installed by players on both the client and the server.
Having white, black, and mandatory mod lists for servers would be very convenient.
However, there is another issue with mods: the programming language. As far as I remember, it is C#. This is a compiled language, which presents a problem. Firstly, I would not accept mods without source code due to security concerns. It’s unclear what a mod will do on a user's machine—whether it will perform as expected or potentially steal user data. Therefore, publication should require the source code to be open to everyone, allowing Keen to distance themselves from others' code. Secondly, the mod should be compiled in the same environment as the game, considering library versions, compilers, and so on. This would mean additional costs for Keen to support CI/CD servers.
And here you lost me: "This would make it incredibly easy for average players to customize UIs, icons, colors, textures, models, animations, sounds..."
Why? Cheating! All that stuff could be used to cheat in PvP. I have absolutely zero tolerance for multiplayer cheaters, it would put me off playing online even more and drive me even more into single player only. A game with PvP should never support Cheating in any way. I was even against WoW UI customization in WoW Open Beta and I was right with it. Players always use such stuff for their advantages against other players and that leads into a more toxic Community. Did we really want that?
Yeah, some of that stuff would be nice, but always in life, sometimes you have to do without something in favor of something else.
UI: you can improve the visibility of enemies, so you easier can spot them = heavy cheating
Icons: if we talk about the icons for the blocks only, that is not much an issue. if we talk about marker icons = cheating possible by improving their visibility.
Colors: some colors are much easier to spot in space than others. Can also be a advantage and so be used for cheating.
Textures: Making the enemies weapon (or armor parts) or even the character itself shining bright = heavy cheating
Models: Making blocks transparent = heavy cheating
Animations: Creating more visible animations can also improve the visibility of enemies = heavy cheating
Sounds: Changing sounds that make enemy ships or even enemy characters can also used for cheating.
And here you lost me: "This would make it incredibly easy for average players to customize UIs, icons, colors, textures, models, animations, sounds..."
Why? Cheating! All that stuff could be used to cheat in PvP. I have absolutely zero tolerance for multiplayer cheaters, it would put me off playing online even more and drive me even more into single player only. A game with PvP should never support Cheating in any way. I was even against WoW UI customization in WoW Open Beta and I was right with it. Players always use such stuff for their advantages against other players and that leads into a more toxic Community. Did we really want that?
Yeah, some of that stuff would be nice, but always in life, sometimes you have to do without something in favor of something else.
UI: you can improve the visibility of enemies, so you easier can spot them = heavy cheating
Icons: if we talk about the icons for the blocks only, that is not much an issue. if we talk about marker icons = cheating possible by improving their visibility.
Colors: some colors are much easier to spot in space than others. Can also be a advantage and so be used for cheating.
Textures: Making the enemies weapon (or armor parts) or even the character itself shining bright = heavy cheating
Models: Making blocks transparent = heavy cheating
Animations: Creating more visible animations can also improve the visibility of enemies = heavy cheating
Sounds: Changing sounds that make enemy ships or even enemy characters can also used for cheating.
Replies have been locked on this page!