Return to “Technical”

Post

Modding

#1
I would like ask what Josh's opinion of modding is. As you have said that the project will be closed source and presumably you're planning to sell it, then obviously you don't want people freely sharing complete copies of the game. However, I can't think of an example where tolerance of modding has led to a less enjoyable experience for all players. I would be keen to do some myself (assuming it was within my ability) but I will respect Josh's wishes.
Post

Re: Modding

#2
Here are a couple of pertinent quotes from Josh:
For now, LT will remain closed-source. I wasn't aware that closed-source projects had licenses associated with them! I do not currently have any license associated with the LT Engine.

I've been toying with the idea of OpenLT, an open-source Limit Theory implementation that the community could mod and extend, but that's quite a far-off dream. I may consider working on such a project after releasing LT. I was thinking it would be really neat to try out writing everything in Python/Cython/PyOpenGL, as I use it for prototyping and coding is just absurdly simple and fast compared to c++, which the entire LT engine is written in. That would make it super easy to extend, and I'm sure people would end up doing ridiculously-cool things with the game (as they do with every moddable game!)

But. I'm getting ahead of myself. Need to finish the real deal first!
Yeah, if I did make OpenLT at some point, it would obviously not be for profit...I would basically just want to see what people could do with the space sim genre if I gave them the starter code for it (i.e., Limit Theory)! I think if people had an easy-to-understand (read: Python :roll: ) implementation of a space sim, we could really get some awesome community involvement in a cutting-edge space sim. That just sound so cool to me!
I know not what life is, nor death.
Year in year out-all but a dream.
Both Heaven and Hell are left behind;
I stand in the moonlit dawn,
Free from clouds of attachment.
Post

Re: Modding

#3
I would like to second Tesseract.
Many - in the beginning - good games faded in time, when new games came up and they didn't/couldn't adjust :
I-WAR2 EdgeOfChaos, Yager, Aquanox (ok, not really "space" but very similar gameplay) come to my mind.

On the other side, games that had the possibilty of modding and adapting to the market (gamers wishes) far
surpassed their intended lifetime : X2, Freespace2, Freelancer (as the probably most prominent).

The possibility to add some "selfmade" content : perhaps some own ship-part models, some selfmade textures
for ship/station parts in your "favored" color ....

BTW, couldn't this be a way of reducing the workload for Josh ?
I'm sure there would be enough people to find, that would do such kind of niggling, time consuming work of perfecting
lil' details just for the fun to do so (could be seen in the game communities mentioned above).
It would free Josh for the BIG stuff of coding to be done, balancing, adding gameplay features ... :mrgreen:
Post

Re: Modding

#4
NucNuc wrote:I would like to second Tesseract.
Many - in the beginning - good games faded in time, when new games came up and they didn't/couldn't adjust :
I-WAR2 EdgeOfChaos, Yager, Aquanox (ok, not really "space" but very similar gameplay) come to my mind.

On the other side, games that had the possibilty of modding and adapting to the market (gamers wishes) far
surpassed their intended lifetime : X2, Freespace2, Freelancer (as the probably most prominent).

The possibility to add some "selfmade" content : perhaps some own ship-part models, some selfmade textures
for ship/station parts in your "favored" color ....

BTW, couldn't this be a way of reducing the workload for Josh ?
I'm sure there would be enough people to find, that would do such kind of niggling, time consuming work of perfecting
lil' details just for the fun to do so (could be seen in the game communities mentioned above).
It would free Josh for the BIG stuff of coding to be done, balancing, adding gameplay features ... :mrgreen:
If you read the quotes I provided, I am fairly certain that you can sense that Josh wants the game to grow with the community. First things first, however. Josh wants to see the game that he dreamed of and envisioned to become reality. Were he to make it open-source now he would essentially be surrendering creative control over the project. Be patient and allow him to release the game and to see how a wider audience reacts to it. Once that has happened, I have every expectation that Josh will give access to the modding community to make the LT universe (pun intended) expand and flourish.
Last edited by Tom on Sat Nov 24, 2012 8:24 pm, edited 1 time in total.
I know not what life is, nor death.
Year in year out-all but a dream.
Both Heaven and Hell are left behind;
I stand in the moonlit dawn,
Free from clouds of attachment.
Post

Re: Modding

#5
Please don't get me wrong.

I didn't want to refer to anything relating the codesource, no scripting, no OpenLT.
As said, maybe at some point in future.

I thought more of the "material" stuff, the "arts" part.
Time consuming when doing it by himself. Funds consuming when "buying" it from professional artists.
Post

Re: Modding

#6
Well, the music will be contracted out. Art assets, however, will not be needed, as all such will be procedurally generated.

Like I said, let's trust Josh to make the right decisions for Limit Theory. It is his project after all. In this case it is also his dream that he is working to turn into reality.

Once the game is released, it will be judged by gamers and critics alike. After that I expect that Josh will find it easier to allow it to grow organically.
I know not what life is, nor death.
Year in year out-all but a dream.
Both Heaven and Hell are left behind;
I stand in the moonlit dawn,
Free from clouds of attachment.
Post

Re: Modding

#7
Hey NucNuc,

The issue is not that I am concerned about my "secrets" or anything like that. The issue is that it is difficult to integrate moddability into the engine at this stage, when I am quite far along in the development process and have already written most of the interfaces in native c++. To enable modding I would have to set up a script interface for pertinent objects and functions, and I don't think I have time to do that! The only other option is to allow DLL modding, but then I have to release all headers and give instructions for compilation and such, and I think it will not be very accessible for most of the audience.
“Whether you think you can, or you think you can't--you're right.” ~ Henry Ford
Post

Re: Modding

#8
Tom wrote:Well, the music will be contracted out..
AFAIK, Josh will compose the music himself.

EDIT: Maybe you confused the music with the sound effects? The sound effects will be contracted out, according to the budget outline in Update #2.
Last edited by Atarun on Sun Nov 25, 2012 3:21 am, edited 1 time in total.
Post

Re: Modding

#9
JoshParnell wrote:The issue is not that I am concerned about my "secrets" or anything like that. The issue is that it is difficult to integrate moddability into the engine at this stage, when I am quite far along in the development process and have already written most of the interfaces in native c++. To enable modding I would have to set up a script interface for pertinent objects and functions, and I don't think I have time to do that! The only other option is to allow DLL modding, but then I have to release all headers and give instructions for compilation and such, and I think it will not be very accessible for most of the audience.
Yeah, mod-support and open-source are totally different things. To make something open-source, you pick a license, attach, release the code, done. To make something mod-compatible, however, you need to have an interface between the game core and user-produced content. Many games I've seen take the path of script-integration, integrating the core engine with a LUA or Python or Perl interpreter and dedicating some of the game logic to those languages, so that modders can tweak a lot of the game without ever touching the core engine.

Not only is that hard to do as an afterthought, it's also a matter of deciding what should be scripted. The combat rules? The economics? The PCG itself?
Post

Re: Modding

#10
Atarun wrote:Yeah, mod-support and open-source are totally different things. To make something open-source, you pick a license, attach, release the code, done. To make something mod-compatible, however, you need to have an interface between the game core and user-produced content. Many games I've seen take the path of script-integration, integrating the core engine with a LUA or Python or Perl interpreter and dedicating some of the game logic to those languages, so that modders can tweak a lot of the game without ever touching the core engine.

Not only is that hard to do as an afterthought, it's also a matter of deciding what should be scripted. The combat rules? The economics? The PCG itself?
Exactly, and I've tried and failed numerous times to determine where I would draw that line. I can't think of many things in the engine right now that I could replace with a script and make out alright on performance, sadly.
“Whether you think you can, or you think you can't--you're right.” ~ Henry Ford
Post

Re: Modding

#11
JoshParnell wrote:Exactly, and I've tried and failed numerous times to determine where I would draw that line. I can't think of many things in the engine right now that I could replace with a script and make out alright on performance, sadly.
I can but imagine.

The problem, I think, is that most games are extremely scripted. If LT had just one finite scripted universe, it'd be easy for you to let people create their own factions, NPCs, quest lines, planets, etc, because that's how you would have created all those things yourself... by scripting them. Had you scripted them in a compiled language, I take it you wouldn't lose all that much replacing that by a script, since it's just definitions.

But LT is not scripted at all. Since you yourself have never specifically hand-crafted any element, it's hard to see what you could give users hand access to...

Maybe you could take only the parameters out? You must have experimented with parameters a lot, right? Maybe modders would love to play around with the input parameters of the PCG and see what it does.
Post

Re: Modding

#12
Yes, that's true, it's possible that I could expose a parameter configuration file for the numerous constants that I have hanging around that affect the PCG.

PS ~ Congrats on 100+ posts ;)
“Whether you think you can, or you think you can't--you're right.” ~ Henry Ford
Post

Re: Modding

#13
I think (as a semi-programmer!) that for sure if you have not built the current Limit Theory base to be mod friendly, then you are best not spending too much time re-jigging everything for that (even if I'd love to be able to mod it!).

Maybe for the initial game you could run threads here for specific mod-type threads, maybe discussions that could lead to expansion pack contents etc? I have no idea what your long-term vision or desires for Limit Theory are, but for sure, speaking from experience in lots of mod projects, modding adds huge life span to most games ( i still play and self-mod my +250 mod version of Morrowind for example, preferring the depth that offers compared to Oblivion or Skyrim).

Another option might be to look at a 'Limit Theory II' in the future that you could build with mod design built in from start? I had a discussion with Soren Johnson about that aspect of CivIV and he told me that in hindsight he would have chosen LUA over the Python route they ended up taking for that game, just because LUA is much, much quicker than Python and that did impact CivIV, especially in the late game.

Anyway just some food for thought on the mod aspect of Limit Theory, and for sure i think at some point you should look to modding as being a real great way to give your title much longer lasting appeal than if it was not present. I think as an indie dev you want to consider the longtail as being as important as the short-term, and i get the feeling Limit Theory is a labour of love, and one you probably want to carry on with in the future?

And hey - your nearly at your goal in the KS campaign! :D
Post

Re: Modding

#14
@Zak Gordon: your enthusiasm for modding is heartwarming. :D

That said, please take into account that LT is not scripted at all, whereas a game like Morrowind is entirely scripted. It's much much much easier to make an Elder's Scrolls game mod-compatible, since literally everything is hand-crafted. It is not so with Limit Theory. You couldn't create your own characters and missions, for instance, since none of them are hand-crafted in the game.

With your modding experience, what do you think could be moddable in Limit Theory, taking into account that most of it is procedurally generated?
Post

Re: Modding

#15
JoshParnell wrote:Yes, that's true, it's possible that I could expose a parameter configuration file for the numerous constants...
This is a good solution.

My favorit game developing company Paradox Interactive does this with all their devloped games. Basically any constant parameter that will affect gamebalance is exported to relevant text files (unit Y.txt , buildings.txt and so on).

Works wonders for both modders and also for themself when they want to try out some new balance quickly without having to dig through the code and compile.

For your game:

Weapons and Armor/Shields data for balancing I assume should be easy to export.
The weapon type, range mod, speed mod and damage mod should probably not be random/PCG for example.
Perhaps you could even export the effect types and colors to allow modders to easilly create new weapons using similar/same base effects.

Engine mod, sensors mod and tech (if done) could also be exported I assume.

(With "mod" I mean modifier, or the multiplier used to determin final power/value based on size and tech lvl)

Online Now

Users browsing this forum: No registered users and 8 guests

cron