DANMAN3712 DANMAN3712

HARDCODED LIMITS - by DANMAN

HARDCODED LIMITS - by DANMAN

BREAKING THE MODS

Hello All,

It has been made apparent now that there are many hardcoded limits in the game, which cannot be modded around, and are like a brick wall once you hit them. For example, here are some hardcoded limits that I have come across:

Structures and units - These cannot be changed or altered, which means that you cannot mix unit types.  You cannot have a orbital defense cannon have fighters and you cannot have a fighter bay have weapons

Captial ship limit. - the limit was 5, but this has been now changed to 9 in the 1.1 BETA, which IS much better

Weapon limit - you cannot have more than 3 different weapons on a ship

Ability limit - You cannot have more than 4 abilities per unit

Star Abilities - you can only have 1 ability on a Star.  Planets can have 4

Sounds - there is a max of 1100 sounds, spread across dialog, music, and effects.  The cobination of these files cannot reach 1100, or the game will dump

MODELS- the 3D models, or meshes, can only have a maximum of 10 emitters for any particular weapon, engine, etc., or the game will crash.

STRING FILE - EDIT - No limit now, as far as I can tell.  I have over 5780 entries so far.

I am writing this for all modders, so that they know that there are hardcoded limits which they cannot be changed or modded around at this time.  I am also writing this for the developers, in hopes that they will read this and consider changing these limits so that us modders can do what we do without having to worry about hitting an invisible ceiling.

I would appreciate everyone's support in this, from both modders and gamers alike. 

Thankyou.

DANMAN

296,566 views 156 replies
Reply #76 Top
Hooray for IC listening to the community!
Reply #77 Top
Hi folks,I know that some of the limits are frustrating to the modders.  The reality is that many of them can't be changed because of stability problems when approaching RAM limits (if somebody makes a mod that eats up 4GB of memory, it's going to crash on most machines) and/or UI/design considerations (redesigning the engine to support an infinite number of ships, for instance).  However, I can tell you that we are aware of the limits and hope to increase some of them for the next version of the 1.1 beta. 


Haveing limits to make stability in the extream cases less of an issue dons't seem very future proofed does it? :P I mean what if one day we have a stable OS with lots of ram?!

I understand interface limits (not the strikecraft one though) and meshpoint limits but some don't even make sense (other than simply time saveing from the coder).
Reply #78 Top
Well, looks like we got an answer. However, they better also make the 1.1 patch compatible with mods, otherwise the increased limits wont matter because the mods will not work.
Reply #79 Top
Haveing limits to make stability in the extream cases less of an issue dons't seem very future proofed does it? I mean what if one day we have a stable OS with lots of ram?!


You actually expect that to happen with Microsoft around? And forcing mods to use a certain, limited amount of resources really puts a crimp in them, especially with 7 Deadly Sins. And knowing DANMAN, he will try to make it as fast, stable, and beautiful as possible.

Well, looks like we got an answer. However, they better also make the 1.1 patch compatible with mods, otherwise the increased limits wont matter because the mods will not work.


Well, them switching the -cl and -da texture layers around seems arbitrary, and will give most modders a crap-load of trouble because their models/textures will need some serious renovations.

Reply #80 Top
It is pretty obvious the hardcode limits need to go, or at least not be so unforgiving. However doing this will require a re-write of the game code.

Speaking as a veteran Homeworld modder to the rest of the community. What you can do with Sins is very similar to what we did with Homeworld 10 years ago. Instead of adding all new content on top of the existing vanilla sins content, You need to REPLACE the existing sins content on a one for one basis. Just as we did with the Homeworld content. Add your modded ship then wipe out all trace of the original sins ship it was intended to replace. Add your ability, then wipe out the original unmodded version. This is what you have to do to make it work right now. Especially if there are limits to how many entity's and/or lines in the scripts. I have not fully discovered what limits there are, but the list on the OP will help many modders find workarounds to their problems. Modding is all about finding a way to make your ideas work despite any hardcoded limits. We did it with Homeworld. I am doing it now with Sins, and if i can do it with little to no scripting knowledge. Then You can do it.

I am in full support of any hardcode limits being eased, or eliminated, but consider the work it would require to do so. IC is not exactly a large gaming company just as Relic wasnt during the time of homeworld. So a re-work of the existing game engine is out of the question. We will have to live with what we have, and find a way to make your ideas, and imagination work with the existing engine as best as you possibly can.

If there is to be an expansion then at least some re-write of the game code will be in order to accommodate the new content. Here is where IC can ease up on some of our biggest hardcode restrictions.

I would like to see more than one colonizable body in a single gravity well (true solar systems). I would like to see phase lanes be able to be modded out completely, and antimatter be used to limit ships jump range. I would like to see ships, and structures that can use any weapon, buff/debuff, ability, etc, etc. I would like better control of a ships firing arc.

I have seen 18 nulls flagged as weapon-0 work. So i am confused about these null limits. Exactly how many nulls can a mesh have? How many can be marked as a weapon, ability, bomb, nav light, etc, etc.?

The -cl -da layer flip flop is irrelevant, and easily fixed with a simple copy, and paste of channels.

1.1 will break any 1.05 mods. I saw this comming once the patch was announced. Once the reference files are released then mods can be fixed.

On another note.. Do we really NEED every damn entity file in the game data folder for a mod to work?? Cant we use that folder as an override like the mesh and texture folders where only the modded files are seen?
Reply #81 Top
Mistake Post
Reply #82 Top
On another note.. Do we really NEED every damn entity file in the game data folder for a mod to work?? Cant we use that folder as an override like the mesh and texture folders where only the modded files are seen?


Way back shortly after launch, psugar explained why it has to work this way, but I wouldn't be able to recount it now :(
Reply #83 Top
off topic, why the changes in the newest update that are going to cause problems with mods?

I'd like to see differentiated string files, might decrease cpu load from that single string file getting worked like a pro at the docks .
Reply #84 Top
off topic, why the changes in the newest update that are going to cause problems with mods? I'd like to see differentiated string files, might decrease cpu load from that single string file getting worked like a pro at the docks .


That wouldn't make it any faster, probably slower if anything. The main reason to have so many seperate files is for human understanding (other wise we would still be programing FORTRAN style). Once the data is loaded the various files are probably no longer used, not to mention text is not exactly "large footprint".


The reason why the new update stops mods working btw is because file formats changed, the explosions file was completly redone for example. The biggest thing is the abilitys all have new data in them. The parser just gives you tons of errors if you try and run it (with error reporting on). Once those changes are made and everything is compatable with the new format it would work fine.
Reply #85 Top
I would like to thank Psuagar for personally coming and posting here. It is good to see that the developers are indeed listening, and that there seems to be light on the horizon with either 1.1 or a new expansion pack, in which perhaps an engine re-write may be in the works to better cater to out needs.

I would also like to thank everyone else, especially Major Stress, Annatar, and members of my team coming here to voice their opinions and give all us modders support. Hopefully, as I have been saying, through one voice our concerns will be acted upon, and as the post from Psuagar shows, it seems to be working.

Thank you again for all your support!!!!

DANMAN
Reply #86 Top
I have seen 18 nulls flagged as weapon-0 work. So i am confused about these null limits. Exactly how many nulls can a mesh have? How many can be marked as a weapon, ability, bomb, nav light, etc, etc.?


If memmory serves its the flair points.
Reply #87 Top
what did I say, you just got to look at the brightside of things! definately if you dont recieve a response for a while from someone, doesnt mean their ignoring you.
Reply #88 Top
Hey peeps, just a bit more info.

1) For those of you confused about the texture channel switching, it wasn't completely arbitrary.  The channel switching bought us a little more free memory, and improved the visuals for the average user.

2) GalaxyScenarioDef file has no limits that I'm aware of.  There certainly isn't a KB limit.  The number of items and planet types should be theoretically infinite.  It's much easier to have no limits in this area because speed/memory/ui concerns are less of an issue.

3) There is no limit on the size of the string file to my knowledge.

4) We will be increasing the maximum number of sounds so you don't have to start axing existing ones to add new ones.

Cheers


Reply #89 Top
I might sounds nasty, but what about strikecraft types limit per ships? Is there is any chance to be able to have 9 types (number of free slots without game rewriting) of them on one ships ?

BTW is there is possible to limit strikecraft use via research? I mean if we would be allowed to have more than 2 types of them, the will it be possible to have, for example stock ones avaliable, but more advance bombers and fighters would require research to be ready to use?
Reply #90 Top
I'm not going to guess on increasing the number of craft allowed per ship, but if you look on the first page of this thread where I pasted a tidbit that psugar previously posted, adding new research modifiers would require a good bit of resources, testing, patching so isn't at all likely to happen.
Reply #91 Top
4) We will be increasing the maximum number of sounds so you don't have to start axing existing ones to add new ones.


Hail the game gods! Maybe we can add the new race speech files I created long long ago for 7ds.
Reply #92 Top
Hey peeps, just a bit more info.1) For those of you confused about the texture channel switching, it wasn't completely arbitrary.  The channel switching bought us a little more free memory, and improved the visuals for the average user. 2) GalaxyScenarioDef file has no limits that I'm aware of.  There certainly isn't a KB limit.  The number of items and planet types should be theoretically infinite.  It's much easier to have no limits in this area because speed/memory/ui concerns are less of an issue.3) There is no limit on the size of the string file to my knowledge.4) We will be increasing the maximum number of sounds so you don't have to start axing existing ones to add new ones.Cheers


THANK YOU, THANK YOU, THANK YOU!!!!!! NEW SOUNDS!!!!

4) We will be increasing the maximum number of sounds so you don't have to start axing existing ones to add new ones.Hail the game gods! Maybe we can add the new race speech files I created long long ago for 7ds.


YES!!!!!!! I hear Star Control sounds coming.....

DANMAN
Reply #93 Top
reminder that if your mod is not using existing assets its a matter of tidyness to get rid of all the old stuff.

can improve stability and make troubleshooting a lot easier
Reply #94 Top
Hey peeps, just a bit more info.
1) For those of you confused about the texture channel switching, it wasn't completely arbitrary. The channel switching bought us a little more free memory, and improved the visuals for the average user.
2) GalaxyScenarioDef file has no limits that I'm aware of. There certainly isn't a KB limit.  The number of items and planet types should be theoretically infinite. It's much easier to have no limits in this area because speed/memory/ui concerns are less of an issue.
3) There is no limit on the size of the string file to my knowledge.
4) We will be increasing the maximum number of sounds so you don't have to start axing existing ones to add new ones.Cheers


psugar, you are my hero.





Reply #95 Top
I might sounds nasty, but what about strikecraft types limit per ships? Is there is any chance to be able to have 9 types (number of free slots without game rewriting) of them on one ships ?BTW is there is possible to limit strikecraft use via research? I mean if we would be allowed to have more than 2 types of them, the will it be possible to have, for example stock ones avaliable, but more advance bombers and fighters would require research to be ready to use?


The strike craft have a "return to base" button on that screen so a maximum of 8 buttons on the interface but even 5 (the top row) would be great. The way they did strikecraft in the entity files, meaning EVERY ship has them but is usualy set to 'none' essentialy - as opposed to the normal way they use (like this):

numStrikeSquadrons 4
Strikecraft "techBomber"
antimatter 40
....


or something.

Im guessing this means the 'engine' is assuming there will only be two squadrons which would probably take a lot of time to fix. It is a major thing for me thouh :(.



Psugar, cool.
Reply #96 Top
Hey, what about this:

[23:58:29] randomShipCount exceeds the maximum allowed. 6 requested but only 5 allowed. If a larger number is needed bug a programmer!
Reply #97 Top
Remove limits damn it, I don't want to end up like Homeworld and other space RTS games ! :/
Reply #98 Top
Well to be honest, Homeworld 2 has almost no limits, exept a max limit of races (7-8 if you scram the "random race button").

IMO SoTSE would be really a greate joke if such game, that is annouced by developers as modding friendly, would be so chained by lots of limits that make TC mods a horror :(
Reply #99 Top

Okay.  Seeing as how DANMAN isn't here to perform emergency CPR on this thread and bring it back from the dead, I'm gonna do it.

 

Sound hardcode: Still not friggin' enough Star/Clad!  If you are going to do something like that, at least do it to a number than isn't slightly higher than the original one.  What you did was tkae the sound hardcodes, and adjust them so we wouldn't bitch.  However, you still pretty much gave the axe to a lot of the greatness of 7 Deadly Sins, especially as a lot of its new races REQUIRE custom sounds to acheive their full potential (Empire, Atlantians, Kohr-Ah, Arilou, Rogues)  That right there is more races than in standard vanilla Sins.  You really think that adding 600 new sounds is going to help much, considering unit responses, weapons, SFX in general, and music all kinda need to be custom for these things?  I really don't want to see what will happen when DANMAN really starts adding races in with the limits as they are.

 

And great work on a lot of the other hardcodes in 1.1 too, like more capitals.  Now all we need is more than two types of strikecraft per unit, ability to change unit AI without changing their entity type, and the ability to have both weapons and fighters on structures without using abilities.  Plus a phase cloak that isn't hardcoded to suck.

 

Help me out if I'm missing anything here guys.

Reply #100 Top

Obligatory rant on hardcodes.

 

:fox: