Jump to content

What is keeping you from starting your KSP2 Mod?


LuxStice

Recommended Posts

Hi! Me and a couple of other people have been developing tools similar to the ones we have in KSP1 for modding. Things like B9 Parts Switch, ModuleManager, Firespitter, Waterfall, Community Resources, Toolbar etc.
And we would like to know what is your think its keeping you from starting your mod!

We would like recommendations of modding tools and resources that you think would be helpful to your modding experience!

please understand that this is a new game, with new technologies, so a lot of what you're used to might not be applicable. 

Edited by LuxStice
Link to comment
Share on other sites

  • 2 weeks later...

You mean, besides not being a C coder?  :D

I have an idea for a mod that I'd love to write, but I'm simply not sure how to get it done.  Without the proper modding tools (like @theJesuit mentioned above), I simply don't have the C knowledge to put it into practice.  And I wrote a mod for KSP2 that currently has 1100+ downloads.  So what does that say about the ease with which to write mods?

Link to comment
Share on other sites

Users!

BcbfRhM.png

Makes no sense on investing time (and modding is a huge time investment!!!) on a thingy with less than 100 users while I get way more results on supporting my add'ons on a game with 1260 users at the same time.

Also note that even at the best times, (Sunday), the proportion is still abysmal:

evBVS3i.png

 

So it makes absolutely no sense on modding a Game that:

  • Have almost no users online, sometimes literally
    • [edit: the zero points are glitches on the Steam Charts, KSP1 is getting some now (2023-0623)]
    • Spoiler

      AemNrBD.png

  • It doesn't runs on any of my machines with a minimally acceptable performance
    • And I'm not willing to commit resources on a new rig right now.
    • TL;DR: I can't even run the thing.
  • Have no published API
    • So I need to Reverse Engineer the thing myself
      • And this is not exactly allowed under some Legislations
      • Not to mention the huge additional time investment on it 
    • There's absolutely no Demo Projects published by the Developes, so Reverse Engineering is really the only way to go
  • And, adding offense to the insult, I need to learn how to build a Unity Game in order to be able do deliver something - no kidding, I need to learn the whole pipeline.
    • On KSP, all I need is Notepad, Paintbrush and sometimes Visual Studio CE to compile a DLL

It just doesn't worth it at this point.

— — POST EDIT — — 

This was also discussed on the thread below:

 

Edited by Lisias
EDIT: KSP1 is getting zero points too, it was a glitch on the Steam Charts - see editions in italics between brackets.
Link to comment
Share on other sites

  • 2 weeks later...
15 hours ago, zer0Kerbal said:

Officially sanctioned ModManager.

Or public, reliable and Forum Rules compliant information allowing us to write one ourselves - but, frankly, it would be a waste if they are going to implement their own later.

Link to comment
Share on other sites

  • 2 weeks later...
On 6/23/2023 at 1:28 PM, Lisias said:

Or public, reliable and Forum Rules compliant information allowing us to write one ourselves - but, frankly, it would be a waste if they are going to implement their own later.

I'm mostly certain that they wont introduce nothing like ModuleManager (as in a text based modding method) since they already have a list of the supported languages on the code, and theres nothing similar to what ModuleManager is
This will most probably have to be something that we modders make...

Link to comment
Share on other sites

44 minutes ago, LuxStice said:

I'm mostly certain that they wont introduce nothing like ModuleManager (as in a text based modding method) since they already have a list of the supported languages on the code, and theres nothing similar to what ModuleManager is

They are risking the whole scene going South - MM, besides all its flaws (and there're many) works as an effective arbitrator to inject/remove new features on existing parts, or even creating new ones using the existent as templates.

Having many different noses sniffing programatically the GameDatabase is going to be a hell of a headache in the instant new people start to get into the Modding Scene.

They lost a huge opportunity here, a critical one IMHO.

Link to comment
Share on other sites

17 minutes ago, Lisias said:

They are risking the whole scene going South - MM, besides all its flaws (and there're many) works as an effective arbitrator to inject/remove new features on existing parts, or even creating new ones using the existent as templates.

Having many different noses sniffing programatically the GameDatabase is going to be a hell of a headache in the instant new people start to get into the Modding Scene.

They lost a huge opportunity here, a critical one IMHO.

thats why i made this post. To know what you guys found important to be done, as in tools, to avoid many people sniffing the code to make such tools, i actually find it pretty entretaining to do, as most of us do.
Also its for the best that they didn't make a MM type configurer, its not easy specially on a professional level, and theres a LOT of other reasons to divert from it but!
We on KSP2 modders (mainly Munix and cheese) are making a version of it, there's not release date but its surely being made.

Link to comment
Share on other sites

1 hour ago, LuxStice said:

Also its for the best that they didn't make a MM type configurer, its not easy specially on a professional level, and theres a LOT of other reasons to divert from it but!

With all due respect, I disagree. Letting a pivotal feature be handled by 3rd parties puts them in a weak spot in the long run. 

In 2016 a serious drama happened around here, made worst by MM being withdrawn from CKAN and playing havoc on the users' installations that relied on it.

Not to mention everything and the Kitchen's sink embedding differeent versions of MM in the distribution packages, and so a Windows graded DLL hell infected the scene, with older MM being inadvertently injected on the GameData - and Kraken knows how may man/months I spent diagnosing and fixing user's installations due the breakage (made worst by the inifinite number of bugs on KSP itself).

From the strategic point of view, I.G. is going to commit the same mistakes Squad did on this matter.

I'm a absolutely sure you guys are intending to do better,  but earning trust of the OG's is going to be an uphill battle: once bitten, twice shy...

Edited by Lisias
Tyops as usulla
Link to comment
Share on other sites

11 hours ago, Lisias said:

With all due respect, I disagree. Letting a pivotal feature be handled by 3rd parties puts them in a weak spot in the long run. 

MM is only pivotal because there was no better solution. I said that there's reasons to divert from a coding/programmatically prespective, because its not the best solution to what its intended for, sure it works for modders, but for programmers its hell, just the fact that it was a whole new language/syntax is a strong point to back it up.
My guess is that by modding support, they (IG) mean they'll provide Unity tools that will be made available to the public, and an API to mess with the code.


As for the DLL madness that happened, that won't happen with SpaceWarp since its 1 DLL per folder, also we dont recommend modders to package other mods with theirs, also PatchManager (MM for KSP2) won't be a dependency so theres no reason for modders to include it in their mods.


Furthermore i do understand what you're saying as is not a good strategy from IG, it really isn't, but MM wasn't made by squad either, so we can't really say that IG (or squad) support that style of modding.

 

8 hours ago, qwery123 said:

Lack of a proper GameData folder.

well you have the BepInEx folder, the lack of GameData is for the better, since all game assets are now in Addressable Bundles which is what makes the game load so much faster, i dont expect the GameData to come back, at least not how you're used to.
The game's files are under KSP2_x64_Data and you can't really reliably put your own files in that same folder... And pretty much all core assets now have to be in a addressables Bundle, sure there's ways to load them externally but that slows the game's loading times significantly

Link to comment
Share on other sites

Just to clear things up, the game's internal mod loader does make use of a GameData folder, if I recall correctly, it will be loading mods from KSP2/GameData/Mods, but those mods will be very different from KSP 1 mods.

The internal mod loader already has support for asset loading, even if not publicly documented, and it uses the same addressable bundles that we do with BepInEx+SpaceWarp mods, because that's how the core game is built to work. It greatly improves performance and especially loading times over the "naive" approach of KSP, which was loading all assets from individual files from the disk. This likely won't change, so there's no point in waiting for it.

Link to comment
Share on other sites

8 hours ago, LuxStice said:

MM is only pivotal because there was no better solution. I said that there's reasons to divert from a coding/programmatically prespective, because its not the best solution to what its intended for, sure it works for modders, but for programmers its hell, just the fact that it was a whole new language/syntax is a strong point to back it up.

What suggests that things are being made to make programers' life easier at the expenses of the modders.

Well, we had reasons to avoid modding KSP2 as it appears. And we still have.

 

8 hours ago, LuxStice said:

Furthermore i do understand what you're saying as is not a good strategy from IG, it really isn't, but MM wasn't made by squad either, so we can't really say that IG (or squad) support that style of modding.

I'm afraid you can't tell cause from consequence. MM had flaws, no doubt, but it was not the flaws that played havoc on the Scene.

You are reducing the problem as a technical one, ignoring the fact that the technical problems were the logical consequence of something else.

I may be wrong though. I hope I am.

 

8 hours ago, LuxStice said:

well you have the BepInEx folder, the lack of GameData is for the better, since all game assets are now in Addressable Bundles which is what makes the game load so much faster, i dont expect the GameData to come back, at least not how you're used to.

Time will tell, but I'm afraid this is something that it's already being told. We will need to wait and see what happens from now.

 

8 hours ago, munix said:

The internal mod loader already has support for asset loading, even if not publicly documented

And this is the root of all evils - no documentation. It was what played havoc around here in the past, and apparently this is not going to change!

Link to comment
Share on other sites

8 hours ago, Lisias said:

And this is the root of all evils - no documentation. It was what played havoc around here in the past, and apparently this is not going to change!

What does that even mean? We know that modding is not officially supported yet, so why would it be documented already?  And we have been told multiple times that it is coming at some point, we just don't know when, so we simply took matters into our hands and started modding the game without the official support.

SpaceWarp is used as an API around many of the game's systems and around the BepInEx mod loader, and right now we're working on abstracting away the last few remaining bits of commonly used BepInEx APIs so that whenever official modding support arrives, most if not all of the work needed to make mods work with the official mod loader will simply be a backend change in SpaceWarp, with minimal changes to existing mods required.

That means that people can play with mods right now, which make the game much more enjoyable in many regards, since many of them fill in some of the gaps and missing features or even fix some annoying bugs. At the same time, it will be most likely very easy to update any of the mods we have today to work with the official mod loader as well.

9 hours ago, Lisias said:

Time will tell, but I'm afraid this is something that it's already being told. We will need to wait and see what happens from now.

This was in my opinion one of the best decisions they could have made - the naive approach in KSP 1 where all the assets for the base game and mods were loaded from individual files on the disk was maybe fine in 2011 and with like 100 parts in the game, but it's obvious now that the performance of it is absolutely dreadful - before I bought a much beefier computer, I had several installs that would take anywhere between 15 and 40 minutes to load. We don't really have any benchmarks yet on how much faster using addressable bundles is, but I can guarantee it will be a significant improvement, at virtually no cost to modders - all we have to do is open Unity, drop the assets into a project, give them a label, and build the bundle, the whole process takes maybe a minute, and the benefits massively outweigh the cost. It's been 12 years since KSP first came out, and KSP 2 shouldn't be stuck with the same outdated technologies and approaches when we can do better.

In the end, user experience should always be the most important thing, both for the developers of the game and for us modders, so I 100% welcome this change. Making modding easier at the expense of performance and user comfort is a mistake I really wouldn't want KSP 2 to repeat, especially since the extra "cost" to modders is minimal, as I described.

9 hours ago, Lisias said:

What suggests that things are being made to make programers' life easier at the expenses of the modders.

Well, we had reasons to avoid modding KSP2 as it appears. And we still have.

Lux simply gave you an opinion on how MM was designed and its syntax, which doesn't in any way reflect opinions of the game's actual developers, so I don't understand the "we had reasons to avoid modding KSP2 as it appears" thing. You avoid modding KSP 2 because there are modders who disagree with you or criticize the shortcomings of Module Manager?

Link to comment
Share on other sites

1 hour ago, munix said:

What does that even mean? We know that modding is not officially supported yet, so why would it be documented already?  And we have been told multiple times that it is coming at some point, we just don't know when, so we simply took matters into our hands and started modding the game without the official support.

And that's the whole point! :)

 

1 hour ago, munix said:

In the end, user experience should always be the most important thing, both for the developers of the game and for us modders, so I 100% welcome this change. Making modding easier at the expense of performance and user comfort is a mistake I really wouldn't want KSP 2 to repeat, especially since the extra "cost" to modders is minimal, as I described.

There will be no user experience without modders writting code and assets to create such experience.

Modding is a hobby, not a job. If you want paramount quality on something, pay for it: hire the guys and pay a proper fare.

You can't push your weight on people doing Pro Bono work.

 

1 hour ago, munix said:

<….>, so I don't understand the "we had reasons to avoid modding KSP2 as it appears" thing. You avoid modding KSP 2 because there are modders who disagree with you or criticize the shortcomings of Module Manager?

No. We have reasons to avoid modding KSP2 because the people that are paving the way for it are behaving very similarly to the people that screwed the Scene at that times.

You were being criticised, not attacked. We were being asked about the reasons we would be avoiding modding KSP, and some of us had answered the call.

Edited by Lisias
Quoted too much.
Link to comment
Share on other sites

On 7/8/2023 at 8:34 AM, Lisias said:

What suggests that things are being made to make programers' life easier at the expenses of the modders.

Well, we had reasons to avoid modding KSP2 as it appears. And we still have.

 

On 7/8/2023 at 7:13 PM, Lisias said:

And that's the whole point! :)

i hope that you understand that modding support (most of the times) means easier for programmers to dig into the game, and later make tools for modders to mod. Most games with modding support are like this, they dont provide tools for modders, they provide better ways for programmers to modify the game. Its up to the programmers to make such tools to help the community. IG won't give us a "make part tool" or a "patch that tool", it will give us the code documentation, and maybe some guides on how to do things (as was already annouced to us), realistically, anything more than that they're spoiling us.

[Snip]

Edited by James Kerman
redacted by a moderator
Link to comment
Share on other sites

1 hour ago, Lisias said:

No. We have reasons to avoid modding KSP2 because the people that are paving the way for it are behaving very similarly to the people that screwed the Scene at that times.

Well then maybe instead of just telling us that we're screwing up KSP 2 modding, you could enlighten us with how we should improve it.

1 hour ago, Lisias said:

There will be no user experience without modders writting code and assets to create such experience.

Modding is a hobby, not a job. If you want paramount quality on something, pay for it: hire the guys and pay a proper fare.

You can't push your weight on people doing Pro Bono work.

There already are modders writing code and making assets, and all those people don't seem to mind that they have to spend like 1 more minute on asset bundling, if it means that the game loading times will actually be reasonable. It makes 0 sense to be so defensive about this simple change which seems to only really have positive impact on the game.

One more thing I'd like to point out is that I already said earlier that Cheese and I are already working on a successor for Module Manager for KSP 2, exactly for the reason that we want to make KSP 2 modding as accessible and friendly to non-programmers as possible (without sacrificing performance). If you have some feedback on that, you're absolutely free to share it, we welcome all conversations about it, as we have since the start of the project.

Edited by munix
Link to comment
Share on other sites

I'm modding KSP1 and not KSP2 at the moment because I'm not playing KSP2. There's no reason to mod a game that you don't play, and KSP2 has less players than KSP1, so it would follow that there will be less active modders.

- KSP 30-day average player count: 1771
- KSP2 30-day average player count: 273
KSP2 has had 15% as many players in the last month.

- New KSP mods on Spacedock in the last month: 9
- New KSP2 mods on Spacedock in the last month: 3
KSP2 has had 33% as many new mods in the last month.

So my response to this survey, as well as @schlosrat's open letter, is that you shouldn't worry about it. KSP2 modding is doing great proportionally and will grow as the game itself grows. A better question might be "why aren't as many people playing KSP2?", which has been answered ad nauseam.

Link to comment
Share on other sites

I never understood the reasoning that modders won't mod because there's a low player count. Maybe it's just me, but I don't mod because of how many people will use my mod. I mod because it's fun. (that's not what you said @Halban, so I'm not responding to you. I agree with what you said :))

Edited by Falki
Link to comment
Share on other sites

18 minutes ago, Halban said:

So my response to this survey, as well as @schlosrat's open letter, is that you shouldn't worry about it. KSP2 modding is doing great proportionally and will grow as the game itself grows. A better question might be "why aren't as many people playing KSP2?", which has been answered ad nauseam.

I agree that it's probably inevitable that KSP1 modders will migrate to KSP2, and your point about the active players is valid for a number of reasons. Some modders may feel like there's not much point to modding a game while the player base is lower - but setting that aside for a moment, there's the corollary that whatever holds back the general player base would likely also hold back modders - why mod a game you're not playing? (agreeing with you here too)

That said, a significant factor in my posting what I did is this crazy notion that KSP2 shouldn't be modded. I disagree with that position with every fiber of my body, and I would love to stomp that silly idea into the dust so hard you can't even find it. That was a central point of my post - that modding helps right now, today, this very moment. That modding KSP2 is a good thing and should be celebrated just like anything else that makes the game more fun. I don't think you disagree with that point, and I do respect your choice to set KSP2 modding aside for now, I just want to make it clear that my motivation was much broader than trying to persuade KSP1 modders to come give KSP2 modding a try. I mean, yeah - that will be fantastic as more of them eventually do, but as you pointed out that problem will eventually solve itself.

Personally, I think right now is a fantastic time to begin modding KSP2. There are some really smart people who are doing an amazing job of making it easier to get into modding. They aren't just making modding easier in KSP2, they're actively working to apply lessons learned from KSP1 to ensure that things run smarter and more smoothly. My plea for KSP1 modders to come join us was mainly about that. We want their input! We value it! To the extent that they may choose to engage with us, they'll be able to help share their wisdom and experience. In return, they'll gain insights that will ease their own eventual transition to modding KSP2.

30 minutes ago, Falki said:

I never understood the sentiment that modders won't mod because there's a low player count. Maybe it's just me, but I don't mod because of how many people will use my mod. I mod because it's fun. (that's now what you said @Halban, so I'm not responding to you. I agree with what you said :))

Another reason modding KSP2 right now is a good thing is that you get time to hone and improve your mod so that as the player base does eventually ramp up they will discover an already polished mod that works well right out of the box! It's like getting a head start on something, and the players that are here really appreciate our work and give us valuable feedback!

Plus, as you said, it's fun!

Link to comment
Share on other sites

Also one thing I would like to say here is that there was never any intention on our (KSP 2 modders) side to alienate or attack KSP 1 modders, if anything, (and now I'm really speaking more so for myself personally) we have been users of your mods for years, and they made the game a much more enjoyable experience, I don't think I would have kept playing KSP for 5 years now if there weren't so many amazing mods. And I think that there's a misunderstanding between the two camps here - as much as it pains me to see it, it's definitely pretty clear there's a strong divide between the KSP 1 modding and KSP 2 modding communities, sometimes to the point of needless animosity, when all we want is for KSP 2, a game we see a ton of potential in, to have a modding community as strong as our beloved KSP 1.

We simply wanted to have a discussion about what we could do to make KSP 2 modding more accessible to you, and in general, to everyone who wants to take part in it, that's why Lux's original post said:

On 6/2/2023 at 9:30 PM, LuxStice said:

And we would like to know what is your think its keeping you from starting your mod! This way we can focus on the right tools first and bring more modders to expand this game!

We obviously can't really influence the number of players the game has, or the direction of modding that IG is taking the game in, but what we can do is try to work around any limitations and obstacles to make modding as accessible as possible, which is what we have been trying to do this whole time. That's why all these have been made:

  • SpaceWarp - the general modding API, which abstracts some of the game's and mod loader's APIs so that whenever there's a backend change in either of those, all we need to do is update SpaceWarp, and modders don't need to worry about making changes to their mods. This also means that whenever the official mod loader is actually finished and made public, existing mods built with SpaceWarp should still work just fine, with most changes only happening under the hood in SpaceWarp's internals.
  • SpaceWarp.Template - a collection of various mod .NET project templates to get you set up with a mod project that you can build, deploy and run in the game with literally one keybind.
  • Patch Manager - the KSP 2 Module Manager successor, which is still WIP, but is meant to provide an easy-to-understand syntax for the patching of the game's JSON assets (which are basically the successor of KSP 1's .cfg files).
  • UITK for KSP 2 - a collection of a runtime library, a C# API, and a Unity extension package allowing modders to use the modern Unity UI Toolkit framework and the built-in visual editor for their mod UIs instead of IMGUI, which is a debugging library with really bad performance that was never meant to be used for actual user-facing UIs.
  • KSP 2 Unity Tools - a Unity package which helps with the creation of parts in Unity, giving you visual indicators for things like CoM, CoL and drag cubes, localization tools, automatic generation of JSON part definitions, etc.
  • KSP 2 Community Fixes - a community project with various bug fixes for KSP 2, which make it easier for both players and modders to focus on actually playing the game, or testing their mods, respectively.
  • KSP 2 API Docs Project - a community-driven documentation of the KSP 2 API.
  • Lux's OAB Extensions - a mod that in addition to adding some cool features to the VAB, also has an API for things such as custom part size categories.
  • LFO (Lux's Flames and Ornaments) - a spiritual successor to Waterfall, library for custom engine plumes.
  • ShowKSP2Events - an in-game tool which allows you to see which messages/events the game triggers, when it happens, and how many times/how often, so that you know exactly which ones to hook into from your mods

The community is (sometimes literally) working day and night on making both the game and the actual process of modding the game more accessible and more enjoyable. Many of the mods and libraries that I listed are not finished, or perfect, but we're doing our best, and we're open to discussions about all of this. So what we really wanted to hear was: what can we do better to make modding more accessible for you? What are the tools you would like to exist? Please, let's engage in actual fruitful discussion instead of telling people things such as that they're screwing up the modding scene without offering any actual constructive criticism or advice. Thank you all in advance.

Edited by munix
Link to comment
Share on other sites

12 minutes ago, munix said:

Patch Manager - the KSP 2 Module Manager successor, which is still WIP, but is meant to provide an easy-to-understand syntax for the patching of the game's JSON assets (which are basically the successor of KSP 1's .cfg files).

you also have konfig that does the same thing in a different way and is out now.

Quote

In 2016 a serious drama happened around here, made worst by MM being withdrawn from CKAN and playing havoc on the users' installations that relied on it.

This is another good thing about the current state of ksp2 modding, you have options on what you use unlike with ksp1 where you only have 1 bad option.

Edited by ShadowDev
Added quote
Link to comment
Share on other sites

19 minutes ago, ShadowDev said:

This is another good thing about the current state of ksp2 modding, you have options on what you use unlike with ksp1 where you only have 1 bad option.

Great point Shadow! This is another good reason to jump in now. Why not help shape the options Working to make things better now will be so much easier than delaying. A big part of our current efforts is to lay a strong foundation that helps minimize problems. It will only be harder to apply lessons learned and valuable insights if they show up later.

If folks in the KSP1 modding community are not eager to come over and make KSP2 mods, then perhaps some will be willing to at least engage with us as we plan these efforts.

@Lisias, which of the things that @munix listed fall into the category of harming the KSP2 modding scene? Can you be specific and perhaps elaborate on why?

Link to comment
Share on other sites

16 hours ago, Falki said:

I never understood the reasoning that modders won't mod because there's a low player count. Maybe it's just me, but I don't mod because of how many people will use my mod. I mod because it's fun.

Because we don't do all the work by ourselves. We need help on tests and feedback on features, and we don't get that if people don't play our toys. :)

Modding is not all fun, there're some serious efforts on debugging when things go South and we don't know why. The more people are helping you on the task, more time you have to implement new and fun things. Modding alone is essentially doing Q/A all the time - All work and no play makes Jack a dull boy.

 

14 hours ago, schlosrat said:

@Lisias, which of the things that @munix listed fall into the category of harming the KSP2 modding scene? Can you be specific and perhaps elaborate on why?

I didn't said they are harming KSP2's modding (besides I'm considering it now). I said they are reproducing the problems that harmed KSP1's modding in the past. For starters, the cavalier attitude about what we are asking and the praising of tools that are not solving our problems as a solution for our problems because such tools are solving their problems.

Or, in fewer words, which ones of my list of concerns such tools are going to fix so I can be lured into modding KSP2?

You can't push your weight on people doing Pro Bono work: you give them what they need, or they will leave - what's exactly what happened in the past, and I'm afraid is what may be happening now.

 

15 hours ago, ShadowDev said:

<…> use unlike with ksp1 where you only have 1 bad option.

One of the main reasons we had only one bad option is the bad behaviour of the maintainers of the thing, pushing away people that were trying to make the thing better by criticising what it was doing wrong.

Another one was the impossibly of offering an alternative by non technical reasons.

Edited by Lisias
Grammars. Don't you hate this thing?
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...