Major Stress Major Stress

The Hard Code Problem

The Hard Code Problem

An example of how Hard Coding can kill a mod, and what we can do about it.

Hardcoding has caused some serious problems for Sins mods. Unfortunetly most of us were unaware of these difficulties until we came upon them in our projects. There is no documentation to show what we can, or can not change.

The SoA 2 mod is being affected badly by some of these hard code issues. Other mods are being affected as well. Like the Star Wars mod, The BSG mod, etc. etc. The problem is mainly in Total Conversion mods. Where game mechanics must be changed in order to represent the IP being modded. Other mods like re-balance mods, and/or graphic enhancement mods are not affected by these issues. Only Total Conversion mods.

I will have to stop work on my SoA 2 mod. Unless some of these hard coded restrictions are lifted, or a viable way to work around then is found. It will be a shame to do that because much effort went into making the mod as it stands now.

Sins is an easy engine to import models, and other artwork, but that is pretty much all you can do with it. You can change the artwork, but not the mechanics of the game itself. Only what already exsists. So all you are doing is just making a "skin" of someone elses game. There are way too many hard coded restrictions in Sins to make a believeable Total Conversion mod. What good is importing pretty ships if you cant control the weapons firing arc, and you have weapons firing through their own hulls? Or you are unable to make a proper cloak because of hardcoded restrictions, and no matter how you try to work around it you meet with failure, and CTD's. Or all ships come to a screeching halt to slug it out, because that too is hard coded. Why are there "to hit" buffs and debuff's if nothing moves during a fight? lets not get into the hardcoded phase lanes, or single planet per gravity well issue. These are some examples of the issues at hand. Again most modders are unaware of these issues until they stumble upon them themselves, or read about others who stumble upon them.

Dont get me wrong Sins is a great game, and i would not have spent my money, all this time, and put all this effort into Modding Sins it if it wasnt. I am just frustraited to the point to where there is no point anymore. Other people are too.

 

A Total Conversion mod should NOT be a sloppy jury rigged mod that totally trashes the IP you are modding. Be it an established IP like Star Trek, or Star Wars, or something of your own creation, because of these hard code issues.

NOTE: This topic has been edited. This is a community problem. The Title, and OP has been changed to reflect that. My goal is to promote awareness, and education of the modding issues at hand, and to find civil ways of resolving them. So mods like SoA 2, BSG, Star Wars, Etc. dont die. All are welcome to discuss this.

38,535 views 88 replies
Reply #26 Top

Quoting Major, reply 22

People do offer to help me, but i cant use anyone that has absolutely no modding skills at all. While others wish to wether be intentionally, or unintentionally take over the design process. I have had a specific vision for SoA 2 from day one. I am sticking with that vision. I beta tested this game with this mod in mind. The whole plan looked great on paper, but the brick walls kinda tossed a monkey wrench into it. Unfortunetly i didnt see this coming until now.
End of Major's quote

Bingo.

It's partially, I think, because the modding community here has a very, very off signal:noise ratio. Those who can't do anything have created so many teams that the ones who can have been spread across a ton of different projects, all which are coming down like a house of cards. That really doesn't matter too much, though, as while several smaller groups have created a lot of new gameplay (Sins Plus, 7 Deadly Sins, etc), it's not enough to work for a TC.

Unfortunately, the devs seem more concerned with charging people for micro-expansions that replicate existing and relatively simple content in several mods than opening up anything, and for reasons Annatar stated it's not likely that's going to change. It's not only a problem with IP mods, it's a problem with anything that goes beyond a modification of base Sins mechanics.

Sorry guys, but Sins modding is done. It never really had too much of a future to begin with.

 

Reply #27 Top

edit: drat, double post

Reply #28 Top

Unfortunatly allot of mods are suffering from the coding limitation. The Babylon 5 is another that took a hit early on with the issue of not being able to make the Omega classes rotational section with out having to do allot of uncommon things with the engine and preformance would be hit in large numbers. Too bad to see all the project end this way, but good luck on your future projects Major!

Reply #29 Top

I'm done!? Nobody told me! :p

Does that mean Dawn of Victory is scrapped as well?

Anyway, I think there's too much pessimism going on round here.

1. Nitpicky fans giving you trouble? Tell them to do it better or shut it.

2. Hardcoded limits making you want to bang your head against your monitor? Don't snap, bend! Not over though. Just into the wind. Well. As much as possible.

3. And devs... modular structure is sort of a standard these days. Makes creating downloadable content a breeze, too.

 

Reply #30 Top

Kayden, I would be interested in learning more about the performance hit experienced, since I plan on having lots of animated parts for the Last Stand models. So far the only performance hit I experienced when using particle effects was when I specified a flair point but had no particle effect to go with it. The game works, but slows down to a crawl. Other than that, having a flair effect with a spinning particle mesh shouldn't give you that much trouble?

Reply #31 Top

In my case i can say "What mod team?" last i checked i was it. Eviljedi, and his Star Wars mod is in the same boat, but he choses to be solo. Which is cool. That is his choice.

It is true that some people started some mod topics, but yet have absolutely nothing to show for it. Except pages, and pages of "When is it gonna be released?" because they know absolutely nothing about modding. They want to form mod teams up, and propose big ideas. Hoping they can pick up people that can model, and texture, and code. They themselves have never opened up a modeling program, or made any kind of art in photoshop, or changed a single line of code. Nor do they want to bother to learn. It is as if they want a "build mod for me" button incorporated into the games. They fail to understand how modding works. I see lots of mod "directors" in many gaming communitys, but no actual modders. I spent the last TEN years learning 3dsmax. Learning Photoshop. Not just to mod this game. I have been modding as a hobby since the original Starfleet Command came out in 1998, and have a long list of games i've modded, or attempted to mod. Some succeded while others failed. Such as life. My goal is to become a full time professional modeler. That is why i didnt post anything about SoA 2 until i had something to post. Like a working "proof of concept" that the SoA 2 demo is. The way i see it is if you dont have any working mod to post. Then you shouldn't post anything at all. You dont "need" a mod team if you truly want to do this. Though having help is always a good thing.

I am sorry if i do offend anyone here. It is not my intention to, but most of the other Sins mod projects are nothing more than adding 3rd party artwork to the already existing Sins mechanics. Changing a weapons effect, and its stats to do more damage is not changing anything at all when you think about it. The game mechanic already exists. All you are doing is some number crunching, and adding a pretty picture to go along with it. That is not to dismiss what has already been done. I have seen some fine work from the aspiring artist here. Plus there are some re-balance mods which aren't half bad. There is absolutley nothing wrong with that. If someone doesnt like a certain weapon effect, or thinks cap ships are too weak they can go, and change the effect, or ship stats to their liking. Eventually it leads to a person opening up a modeling program, and learning how to model. This is how modders learn to mod. You have to start somewhere. It is not quick, and it is not easy, but sometimes if you have the patience the results can be well worth all the effort.

Carbon is correct. Anything that needs to go beyond any of the existing sins mechanics is going to hit a big brick wall. The choice of words in your post could have been a little better, but you did make some valid points.

I wouldnt say sins modding is dead. It just needs its door opened up a little more. The future expansions have the oppertunity to do this.

We already know the current games code can not be re-written. I already mentioned this. I also dont expect IC to re-write anything for a patch. It is in the expansions where things can be changed, because at least "some" of the game code must be re-written to incorporate any of those changes, and to add new content for the expansions. It is probably too late for the entrenchment expansion. However there are TWO more proposed expansions where modding can be really opened up for sins. Again we are not asking for any source code. All we are asking is to make it easier for us to get around all of these hard coded brick walls. If it is possible to incorporate a system to where we can write our own entity's then great. If another alternative is possible then even better. I am sure the remnants of Barking Dog software in Ironclad can think of something. For those that dont know Barking Dog made Homeworld: Cataclysim. There must be a way to incorporate a total, as in EVERYTHING change, conversion mod in Sins.

The dev's do listen. Otherwise sins would be a very different, and most unenjoyable game. If we didnt like the game i am sure no one would give a damn, or bother to post about this. Many of the games features exist because the beta testors, and fans suggestions, and/or request. Which is one of the reasons why patch 1.1 is taking so long to be released. To incorporate/change what the fans suggested.

This topic can be considered to be yet another fan request. Like i said nothing will be changed if only a few of us demand it. We need to show that there is a major interest in this. If not then all we will see as far as sins modding is concerned is just a few re-balance mods, and some artwork changes.

EDIT: Damn you guys post way too fast :p I already said i am not going anywhere. Just work is stopping after SoA 2 0.03 until the hard code restrictions are lifted.

 

Reply #32 Top

May they be lifted soon.  I loathe playing the standard game against the ai. :)  Honestly, your .02 demo beats it for entertainment value in the short run, doesn't hold up long term without working up the motivation to seriously tweak it, but the vanilla sins is just... boring.  A very good game, but bland sides against an ai that completely lacks finess in taking advantage of the details.

Reply #33 Top

(glad I opted for making an expansion and not a conversion mod) ;)

Jokes aside, I'm behind this 100%. The game is good, imagine how much better it could be if modders were allowed the level of freedom you get with games such as, say, Half-Life 2. I don't know if we will ever see anything close to that with Sins, but any step in that direction is definitely a good thing.

 

*edit* Oh yeah, I forgot - I noticed the unfortunate effect vanilla environment cubes have on model lighting, that is causing parts of models to be hidden in shadow which has nothing to do with the position of the star or black ship syndrome. This effect is most noticeable when the ship is viewed from the side - the top and bottom surfaces tend to be very dark. Upon examining the environment mapping textures, I noticed that the textures which have very bright areas in the middle tend to produce this effect, while textures which have more evenly distributed dark/light regions produce far better visibility results.

So I will try to actually use a HDR image and simply tint it in the appropriate color and see what will the result be.

Reply #34 Top

Thanks again for all of your hard work in creating this mod and allowing others to enjoy it. Best of luck.

Reply #35 Top

Maybe we should start a petition thread. If we get thousands to post in it maybe something will happen. It kinda amazes me that they made this game so unmoddable? I thought they supported modding? Its almost like they did it on purpose cause they had to know that people woiuld try to make full conversions. Its not like modding is something new. It also is very annoying that even if they do fix some of these things u will have to spend more money just to play a fan mod????#:(

Reply #36 Top

I don't see how the expansions can achieve the stated goal of better mod support. The mods are supposed to be enabled IF all players have them. Otherwise you have vanilla Sins. Since you have to buy them, not all players will have them. So unless they patch the core of the game, surely nothing can be changed via the expansion???

The only way I can see this happening is 1) they patch the underlying game (e.g. V1.2) or we wait until Sins2 comes out with a new game engine...

Now, I do know very little about modding. But I do know about programming. But nothing about how Sins if programmed. I am just making some assumptions here based on my programming knowledge about how easy/hard it is to make fundimental changes to a program. And I am not talking about raising a ship limit from 5-9.

What we really need here is some IC devs to explain more about what can/cannot be achieved and why...

Reply #37 Top

hack78,

Ironclad Games made their own engine, so their for them, it should be easier to "open" it up more, compared to those games that just get their engines licensed.

They already had some modding changes in some of the patches (sounds were increased to 2000 in the latest 1.1 Beta 2 for example).

For me, I don't know why there were any restrictions in the first place as that will only limit what the modder can do.

EDIT: Major Stress, most of us don't have that much coding/graphics skill as some do here, for me, I only know how to change values and test the mods/games, thats about it, although I do what to learn other bits too :)

Reply #38 Top

For me, I don't know why there were any restrictions in the first place as that will only limit what the modder can do.
End of quote

It's not as if the devs got together one day and said "hey, what sorts of totally arbitrary limits can we slap on here to block modding?". There are a variety of reasons the engine may be designed the way it is, likely including but not limited to performance concerns, resource usage, and budget constraints (as one might imagine, designing something to take all sorts of varying input is not as easy as something that will take stuff in a certain way). Some other parts may be core game mechanics that are simply outside the realm of scripting in the data files.

In any case, I've passed word of these concerns on to IC. Hopefully they can get a chance to take a moment out of slaving away on 1.1 and Entrenchment to address this in more detail.

Reply #39 Top

Well, hopefully you can get this to just tell us what is hardcoded so we don't bang our heads against the code walls in frustration.

 

Knowing what we can't mod is one of the most important things to know.  Once we know what is set in stone, we can start to basically try every dirty trick we know to go around those damn rocks.  I really don't want Sins modding to be like EA and SecuROM where people can't get a straight answer on what will cause new activations either because the devs can't tell or worse, have no clue themselves.

Reply #40 Top

For what it is worth with the x-pack starbases will be possible and that is a big step forward methinks.

Reply #41 Top

Quoting kryo, reply 13

In any case, I've passed word of these concerns on to IC. Hopefully they can get a chance to take a moment out of slaving away on 1.1 and Entrenchment to address this in more detail.
End of kryo's quote

Thank you Kyro, That is pretty much all we are askng. Yea i know i probably could have got a faster response through e-mail, or PM, but this is not just my problem. It is a community problem.

Reply #42 Top

Quoting Spartan, reply 15
For what it is worth with the x-pack starbases will be possible and that is a big step forward methinks.
End of Spartan's quote

Starbases are already possible. Just not the take-up-tactical-slots kind. ;) I am more interested in the mines... they are also possible, but the biggest problem is the AI use, which I expect IC will program in specifically for this new feature.

And yeah, thanks Kryo! :)

Reply #43 Top

They already had some modding changes in some of the patches (sounds were increased to 2000 in the latest 1.1 Beta 2 for example).
End of quote

Yes - and if you have a constant that limits something like the amount of objects you can create, then it is not hard to increase this value assuming it doesn't cause performance issues. The changes you made, while welcome for the modding community, are fairly minor if you think about. The sort of changes that Stress and others have mentioned are required would require them to redo a large portion of the engine since the way I understand it, a lot of the changes would alter things like how the AI works etc...

Let me put this in the context of doing a house renovation. Upping the ship or sound limits is like gutting a bathroom, or adding a pool to the backyard. Doesn't affect the main part of the house, or how it is built. Doesn't knock down any load bearing walls. Making the changes that Stress says he needs would be like raising the house to make it two stories instead of one. Yes it can be done, but it is not easy. Potentially it is easier to build a new house (i.e. a new engine -Sins2)

Oh yeah, it is a flawed argument to say that just because the wrote it, it should be easier to open it up. They wrote it the way they did based on a number of design decisions. Hence they may not have made the engine easy to open up - this isn't an engine from id for example them a million other people are going to licence and build their own game on top of. It could well be as simple as what has already been stated - the engine is not designed for full conversion mods, but more for expansion mods. I'm not 100% happy with it as I thought this would be a great mod, but at the end of the day, a spade is still a spade, so maybe these limits are hear to stay...

Reply #44 Top

This mod is the best Star Trek game there is! Please dont stop working on the mod!  ps.Yes,yes,yes,tes,yes.... :D

Reply #45 Top

Dont grovel... i hate it when people beg, and grovel..

Like i said i am not expecting anyone to re-write the current engine. It is as you said like trying to raise a house to put a second story on it. I am not exactly sure what changes are going to be made with any of the expansions. Entrenchment seems pretty minor. They added a few extra things. Still they had to write some code to incorporate those things, because vanilla 1.05, or 1.1 would not accept any upgradeable structures, or starbases, or mines. What i was saying that it is in the expansions is where any changes could, and should be made. Forget about 1.05, or 1.1 It aint gonna happen.

 

Reply #46 Top

Like i said i am not expecting anyone to re-write the current engine.
End of quote

I'll say it then 'The game engine needs to be rewritten', no sense dancing around the issue.

If that means waiting for SoaSE 1.5 or 2.0 then so be it, unless an alternative rears its head.

Reply #47 Top

Major Stress I am sorry to hear this but I want to thank you for what you have already released. I took the demo releases and put together a mod that my friends and i have been having a great time with and I could never have done it from the ground up. We've been playing a modifeid version of the demo release since it first hit and enjoyed it alot. Thanks for everything youve done. I wish I could help you with the actual SoA 2 but I am not a coder and really just know how to edit entity files and add in the files from other mods I want :-/

Anyways thanks for all the great work youve done on Soa 2 this far.

Reply #48 Top

Thank you. I am glad you enjoy it despite the flaws.

As i look at the OP i can see i probably could have worded it a little bit better, but what was said was out of frustration, and i edited the main post to reflect what i 'should' have said.

 

Reply #49 Top

it doesn't cause performance issues.
End of quote

Regardless of Performance issues, when you have a game at this scale and complex, it's bound to have performance issues anyway, the main issue here is how well the game is coded that is a problem.

But even then, it should allow modders to do what they want.

Not a matter of "performance issues" when restricting modders.....

The changes you made, while welcome for the modding community, are fairly minor if you think about.
End of quote

Of course it's minor, it was an example.

The sort of changes that Stress and others have mentioned are required would require them to redo a large portion of the engine since the way I understand it, a lot of the changes would alter things like how the AI works etc...
End of quote

Of course I know that it would require a rewrite, since they designed the engine to be "locked up" and key thrown away.

Why don't you think about the Stress of the modders who are trying to do something for them and their fans of the mods?  Sometimes you just have to throw away the stick and just let it all out. Modding is part of PC gaming these days and people want to do their own stuff, make their own mod, to extend their knowledge.

Let me put this in the context of doing a house renovation. Upping the ship or sound limits is like gutting a bathroom, or adding a pool to the backyard. Doesn't affect the main part of the house, or how it is built. Doesn't knock down any load bearing walls. Making the changes that Stress says he needs would be like raising the house to make it two stories instead of one. Yes it can be done, but it is not easy. Potentially it is easier to build a new house (i.e. a new engine -Sins2)
End of quote

Again, which is why I pointed out in the first place that why are their limits in the first place? when the game engine was being written? forget the "performance issues" for a minute.

This game was knowly going to be popular with modding, so why frustrate the modders by imposing the limits?

Couldn't their have been a different way, such as having 2 engines in 1? type of thing? 1 open to modders, 1 closed for normal gaming use?

Oh yeah, it is a flawed argument to say that just because the wrote it, it should be easier to open it up. They wrote it the way they did based on a number of design decisions
End of quote

It's not flawed, they can change their own engine, they only locked it up on the bases of gamers, not both modders and gamers.

Please note the bold.

the engine is not designed for full conversion mods, but more for expansion mods. I'm not 100% happy with it as I thought this would be a great mod, but at the end of the day, a spade is still a spade, so maybe these limits are hear to stay...
End of quote

Not really any point in doing mods is there? Why bother doing it half way? If modders like Major Stress knew about these limitations (instead of finding out the hardway) he wouldn't have wasted his time.

Reply #50 Top

Actually you can do expansion mods quite well. I encountered only minor obstacles so far and most of those have been tied to hardcode limits (sound, number of explosion entries etc.) and while they are annoying, to be fair IC is doing something about that, at least.

But making an expansion mod is, as was already pointed out, different from making a total conversion. So on one hand you can do mods, on the other hand this whole area of modding is severely hampered by the engine limitations. I don't expect IC to go and rewrite their engine for us. Its a time consuming process and, well, when has any game developer made major modifications to their engine for the sake of their modding community? :)

Although it can be frustrating, and even lead to unfortunate situations where you have to make hard decisions such as Major Stress had done, running headlong into brick walls is sort of a part of the modding process. So you try to work around it, stretch the envelope as much as it can be stretched and do your best, if you think its worth it. Its all the more difficult for total conversions which have a strict canon to follow. An unfortunate situation... personally, I would just say "sod it" and do things my way so that they work and look good, whining fanboys be damned. ;)