It is difficult to explain the issues of Sins have without going into too much "technical detail" which some may not understand. The main problem is that Sins is an older generation 32 bit game. With a two gigabyte memory limit. This is nothing new. All 32 bit games have a 2 gig memory limit. However Sins is NOT like other 32 bit games. Most games have an ability to load their assets "on the fly", or only as needed. Some games can also unload assets that are not needed. This is how they prevent themselves from reaching the 2 gig limit. Some games have been patched to where they can use up to 4 gigs of ram on 64 bit systems.
Sins also can load only what is needed at game start up, but Sins does NOT unload what it does not use. Any assets that are loaded remain loaded throughout the entire game! If you use all three factions (Six in the case of Rebellion), Then Sins will load ALL of its game assets at start up. Entrenchment, and Diplomacy in some games loaded between 1.7 to 1.9 gigs worth of assets at game start up! Graphic settings, The size of the Map, and the amount of Players, or AI opponents also determine how much ram Sins will use in any given session.In 2006 when Sins was first conceived 32 bit Windows XP was the standard OS of the time. Single core CPU's were also still the standard. Though dual core CPU's were starting to become mainstream, and 2 gigs was considered to be "plenty" of memory. So most game developers at the time didn't have to worry about hitting that dreaded 2 gig brick wall. As time went on Computers, and Sins itself evolved into their present state which is now Rebellion, and soon to be Windows 10 running in multiple core 64 bit systems. With 16+ gigs of ram. Things have changed so much over the years. However Sins still remained the 32 bit game as it was designed in 2006. That uses only a single core of your CPU. With a two gigabyte hard coded memory limit. Sins WILL CRASH when the game reaches that 2 gig limit.There is some misunderstanding about the 2 gig crash issue. The dump happens when Sins reaches 2 gigs of Ram Usage. That means the ram that Sins uses by itself. NOT what your entire operating system, and/or other programs you are running combined uses. Only the ram that Sins uses. No matter how powerful your system is. If it is 32, or 64 bit, or if it is Windows XP, Vista, 7, 8, etc. etc. Sins WILL CRASH when it hits its 2 gig ram limit. It is hard coded into the game.Nobody was aware that this would be a major problem back when the game was first designed, because Sins was designed based on the hardware standards of 2006-2007. Before 64 bit OS's, Quad Core cpu's, and 4+ gig ram systems became the standard that they are now. There is nothing that can be done about it. Except to re-write Sins in 64 bit. Which is out of the question, because it is too cost prohibitive for the developers to do this (Ironclad said so themselves). Sins is a great game, and it is a shame that this is happening. With the Entrenchment, and Diplomacy expansions Ironclad had unintentionally pushed the game over its own hard coded limitations with all of the new added content.
Over the years as of the release of Diplomacy 1.3, and Rebellion. Stardock, and Ironclad did indeed fix all of the major game crashing issues of Sins. Using the fix's from This Project as a guide. However, NONE of these fix's ever made it into Entrenchment, or Original Sins! While the Stardock, and Ironclad developers have fixed most of these issues over years. They can not do anything to change the game itself short of reprogramming Sins over from scratch. The developers can do no more, but there is something that WE can do as modders to prevent Sins from hitting that dreaded 2 gig brick wall, and improve the performance of Sins "just a little bit more". I have taken the initiative, and applied to Sins what i have learned from my Homeworld Modding days. I present to you....
The goal of this project is to improve your Vanilla Sins gaming experience, and to eliminate the 2 gig crash issue. No changes will be made to Original Sins, or any of its Expansions in game play at all. No stat changes will be made. Nothing "new" will be added. There are other mods that can do that. Original Sins will remain Original Sins, and the Expansions will remain as they are. What we are doing is taking what game assets that Sins already has, and we are "optimizing" them to improve the performance, stability, and to moderate the ram usage in game. The side benefit will be that some lower end systems can enjoy almost the same gaming experience as the high end users do (Especially Laptop Users).The project initially started out as an idea to reduce the texture sizes, and poly counts of some models. Not just arbitrary reductions. The goal was to maintain the quality of Sins in game. To make it look as if nothing has been changed at all. We started with optimizations to the Planet's, and Skybox's, because they were the "worst offenders" as far as ram usage, and performance was concerned. Unfortunately my modeling skills left much to be desired in Softimage XSI at the time, and there were un-fixable mesh errors on the optimized planet meshes. Despite that the "proof of concept" was established. A lot of ram was saved, and there was a very noticeable increase in performance.Then we studied the Particle files, and Textures. Many of the particle textures in our opinion were way too high in resolution for the purpose that they served. A reduction in texture resolution by HALF showed no visible difference in game at all! There were some exceptions where the particle resolution reduction difference was very noticeable in game, and those textures were reverted back to their original resolutions. Remember the goal was NOT to reduce in game quality. Also all of the particle textures were changed from TGA format to DDS format, because DDS uses a little less memory, and is much more efficient, because DDS format loads directly into video memory. The particles can also utilize the mip mapping features of DDS format. Where TGA format does not. Therefore enhancing in game video performance (increased FPS). As of version 0.07 no TGA format textures load in TSOP. With the exceptions of the Mouse Cursors, and Scenario Pictures. This is due to those textures being controlled by the hard coded exe. When you change the texture format those textures do not show up in game.The developers mentioned something about a Memory Leak. I heard that a memory leak can be caused by a file searching for something over, and over again if it is not there. Example a mesh file calling for a texture that does not exist. Vanilla Sins had MANY particle, and mesh files that had that issue. We removed all of the entries that pointed to non existent textures in the mesh, and particle files. We also removed the entries that have lines like for example "C;\g\main\datasource\textures\effects\aura4.dds", and just used "aura4.dds". This will default the search to Sins, or the Mods "Textures" folder, and speed things up a bit. Also various typo's were corrected in some mesh, and particle files. Some ships had mesh nulls that were Miss-Labeled. For example the Akkan had nulls, and flairs that were miss-labeled. The engine trails, and flairs didnt show up in game. the Marza was missing its bomb nulls. etc. etc. All of this has been corrected as well. If there is a ships mesh file in the mods "Mesh" folder then it had something wrong with it that was fixed. The Soundata, and Galaxydef files had errors too. Regardless if any of these issues caused any memory leaks, or not these issues MUST be fixed! (and they were as of Diplomacy 1.3, but NOT for Original Sins, or Entrenchment).After the Meshes, Particles, Textures, and the User Interface were optimized, and the very obvious issues were fixed there was a tremendous boost in game performance. Sins ram usage was greatly reduced. As of TSOP 0.07 I could run a game of Entrenchment, or Diplomacy ALL DAY, and I NEVER used more than 1.5 gigs of ram! This was using Maximum Settings. Including Bloom enabled. Tested on Huge Random Multi Star maps with 9 AI's. The 2 gig crash problem has been solved! Our primary goal with this project has been achieved! Without having to use any external memory increasing programs! Stardock, and Ironclad took notice, and they used TSOP as a guide in the Diplomacy 1.3 patch, and for developing Rebellion.Now that the Stardock, and Ironclad have fixed the issues of the game as of Diplomacy 1.3, and Rebellion. TSOP has been focusing more on Original Sins, and Entrenchment. Since the Ironclad/Stardock fixes never made it into Original Sins, or Entrenchment. However, That is not stopping us from optimizing Diplomacy, or Rebellion "just a little bit more" You can also use Large Address Aware to give Sins an extra gig to play with, but in vanilla Original Sins, and Entrenchment the Endless Search Loop issues that were never fixed will cause the game to eventually go over that extra gig (Run vanilla Entrenchment, and watch your ram usage keep going up, and up, and up). TSOP is a solution that will stop that issue.
____________________________________________________________________________________________________________________
Downloads
The Sins Optimization Project v1.0
For Original Sins 1.195
For Entrenchment 1.055
For Diplomacy 1.37
Stardock, and Ironclad fixed all of the issues that compelled us to make TSOP. Therefore there is no TSOP for Diplomacy
For Rebellion 1.82
As with Diplomacy, Stardock, and Ironclad fixed all of the issues that TSOP pointed out, and then some in the case of Rebellion. Sins: Rebellion is as optimized as any Sins game is going to get.
NOTE: TSOP 0.07 is still hosted on ModDB, and it still works in the current versions of Trinity (OS, E, and D), but you will be playing as if Sins was patched to an older version of the game. Plus some Icons and Buttons wont be visible.
Changes in TSOP 1.0
TSOP 1.0 updated to the latest versions of Original Sins, and Entrenchment.
The User Interface is completely overhauled to use pure DDS format.
Trade Ships, Strike Craft, Mines, and Constructor Unit Meshes, and Textures are Optimized.
Starbase Textures are optimized mimicking the Stardock Rebellion Optimizations.
Sounds, and Music are optimized.
All TGA format Textures are replaced with DDS format, and TSOP "force" loads them. The only TGA textures that remain are the Mouse Cursers, and Scenario Pictures. This is due to hard code in the EXE.
"Strategic Texture Reductions" for the Particles return using newer methods to create a better looking texture.
(Original Sins, and Entrenchment) Many Mesh Null issues, and various File Errors were corrected, and Unnecessary Text Entry's were removed in both the Mesh, and Particle files. Entry's pointing to Non Existent Textures in both the mesh, and particle files removed. See the various "Fixed Files" texts in the mods Read Me for details.
(Original Sins, and Entrenchment) The Diplomacy 1.3 graphic fix's have been incorporated into the Original Sins, and Entrenchment versions of TSOP (Pipeline Effects, "White Line" error fix, and Corrected Mesh files).
TSOP 1.0 for Trinity will see the return of Optimized Planets using the planet meshes from Rebellion! but with our Optimized Original Sins Textures!
There will be no version of TSOP made for Diplomacy, or Rebellion, because there is no need for it. Only Original Sins, and Entrenchment need TSOP, because the 2 gig issue, and various other issues were never fixed in those two versions of the game.
This is the FINAL version of TSOP that i will make. If the community wants to take over the project they are more than welcome to.
Community input, and contributions are more than welcome, and they are encouraged! This is a Community Project! All can pitch in!
Note: TSOP does not fix the known issue of "Late Game Lag". It does help prolong the lag until further into the game in some cases, but sooner, or later the lag will happen. The late game lag issue is a CPU issue due to the fact that Sins (including Rebellion) is optimized to use only single core processors. Therefore Sins will use only one core in multi core CPU's. To help with the late game lag issue we recommend the following:
Playing on smaller maps.
Using fewer AI opponents.
Disabling the Trade Ship icons (this actually helps out a lot)
Stacking the icons in the empire tree (same as with disabling trade ship icons the less icons rendered the better).
Using a Strike Craft Reduction mod (The many strike craft in the game are a big CPU hog. There are some good strike craft mods that reduce the number, but maintain the balance. Search for them).
You do not need to download all versions of TSOP. You only need to download the version of TSOP for the specific version of Sins you wish to play. The Retail version of Trinity is just all three versions of Sins bundled into one package. Installation for Trinity versions of Sins are no different than if you purchased each version of Sins separately.
_____________________________________________________________________________________________________________________
Other mods are more than welcome to use TSOP. No questions asked! In fact we encourage it! Learn from it! Use it as guide, and an example! Merge it into your projects!
TSOP is intended to be a Stand Alone mod. Run with no other mods enabled. There are issues enabling TSOP with other mods. Enabling with other "Graphic Enhancement" mods is NOT recommended, because the graphic enhancement mod will defeat the entire purpose of TSOP. All of our optimized files will be overridden by that enhancement mods "enhanced" files. Increasing your ram usage instead of decreasing it. Some enhancement mods like Distant Stars are incorporating elements of TSOP into their future updates.
Read the included READ ME text's for installation instructions.
@MAJOR STRESS, re: post #408: Sorry had to clarify I have 512mb of VRAM, and 6gb of memory. I was able to play a map with two other cpu players on a 50~60 planet map without crashing but 4 players on anythin over 60 planets seems to crash. Anyways thnx for the reply.
U can set Ur virtual ram manually to what u want i set mine to 4096 mb and everything works fine with no crashes and i use 32bit XP. I can hit usage of 3 gigs and no warning of low memory.
It seem u probably need to raise it because its running out of vram.
Usoully set it to the amount u got in actual ram my defoult was 3024 mb of vram after installing the second gig stick.
palidins, I suspect that canuckles is meaning VideoRAM for VRAM not VertualRAM
harpo
Are you just playing with TSOP enabled? or do you have other stuff enabled as well?
When/If you updated Sins Diplomacy to 1.011 did you delete your Ironclad Games folder, and start a new game to create a fresh one?
Can anyone else duplicate canuckles problem?
You most certainly have the specs. I play 100+planet maps with no issues at all other than late game lag with a crappier system.
What i meant above about deleting your Ironclad Games folder in your appdata is sometimes when sins is patched some "leftover" old files may remain, and screw things up. We did this every time sins was patched just to remove all doubt nothing was left behind from an older version.
Back up all of your mods, and delete the Ironclad games folder. C:\Users\"your user name"\AppData\Local\Ironclad Games\. Nuke it from orbit to remove all doubt.
Then start a new game. Sins will automatically create a new fresh Ironclad Games folder, and subfolders. You will need to redo your game settings. Then you can drop the mods back in the mod folders.
Try that and tell me your results.
@ Canuckles
Can you play with the DEV.exe and paste the report here please. Should be able to load the saved game in the Sins of a Solar Empire Diplomacy Dev.exe
BTW Canuckles your name sounds a little canadian eh
Edit: I just noticed the Constuctor Units add-on
Major Stress, when I contacted Blair Fraser and got a reply back he stated that he was 'Very busy at work and would look into this issue on his weekends on his own time.' concerning what I pm'ed you almost two weeks ago.
I'm assuming he is working on another IronClad Games project. In the Stardock ICP it has been rumored they are working on a land based war game. This is not confirmed however in any way.
the download links won't work.
They're working now. I just tried them all.
Well, seeing as I don't have access to the Sins source code, I'm not sure what specifically you need to do to cause the executable to leak memory. But the fact is that the executable is what is running; the executable is the process that gets loaded into memory, and it's the process's address space that the executable code is responsible for managing. If it manages that memory irresponsibly, then it's the fault of the application code, period.
Well, it is possible that the executable could be leaking resources as a result of it not finding files it needs. This is a plausible situation. You might say, well, "let's fix the resources!" -- but this doesn't get to the heart of the problem. The actual problem is that the executable is leaking resources. In an ideal world, the application should be able to continue to operate without its memory ballooning unbounded just because it's getting fed some bad data.
Well, again, it depends on what the nature of the leak is. The leak is definitely in the executable, in the sense that (a) the address space of the process is being bloated, and ( the application code in the executable is responsible for the leak -- but, if it is possible to manipulate the environment outside of the executable to cause it to work better for you, then that's great, too.
It's sort of like: if you have a car that always breaks down when the temperature goes over 90 Fahrenheit, you might be inclined to say, well, just drive it when it's a bit cooler outside! You might even install extra fans or a battery operated air conditioner under the hood to try and cool off the engine a bit during hot weather. But the problem is clear: the engine itself is conking out when it gets too hot. You can try and fix the environment to allow the faulty engine to continue to run; or, you can fix the engine.
By this analogy, both of our methods -- large address aware, and optimizing resources -- are environmental in nature. That's because nobody except Ironclad has the source code to their game, so nobody but them can fix "the engine". We are both really just trying to make the environment a bit more favorable for this faulty engine to run.
Continuing the analogy: your solution is to have an air conditioner in the car itself running to try and cool down the air immediately around the engine. My solution is to go out to the major governments of the world and impose mandates on their carbon footprint, thereby changing the weather and curbing the tide of global warming, thus resulting in an overall reduction in temperature.
Well, since I'm a software engineer, it's not that big of a task. In fact, I'd claim, I have been successful in my task of implementing what I sought to implement:
Introducing pelaa. (pronounced "pay-lah").
The function of pelaa is to do just the minimum amount of work to "tap" the Large Address Aware bit, and then re-compute the checksum of the file. These two tasks go hand in hand: once you change the LAA bit, the contents of the file have changed; so you have to re-compute the checksum based on the new data.
My ultimate goal is to integrate pelaa into an easy-to-use installer that will run pelaa on your Sins executables automatically. You can then bundle this installer with your mod (or any mod) to enable LAA for the user.
For now, pelaa is just the core technology that performs the LAA bit switching. To run it, you just have to supply it the name of the executable you wish to make LAA, as the command line argument. You can do this in a .bat file, with a Windows Shortcut, or in the cmd.exe prompt.
The pelaa.exe download is living here: http://tiyukquellmalz.org/pelaa/pelaa-0.2-bin-win32.zip
The other files bundled with the executable are just text -- licensing, readme, etc. The only file you need to run the program is pelaa.exe.
I would appreciate it if people using this mod could try out pelaa on your local computer. It has no dependencies whatsoever; it is just a plain .exe. If it is successful in the wild, that will encourage me to make the installer even more
Just to emphasize: what I have done is I have duplicated the functionality of Microsoft's editbin.exe utility, which was, until I wrote pelaa, the only way (that I know of) to conveniently set the LAA bit on compiled executables.
pelaa is licensed under the GNU GPL v3, which is a Free and Open Source software license. The full source code is available at http://tiyukquellmalz.org/pelaa/pelaa-latest.tar.bz2 or via Git version control at git://tiyukquellmalz.org/pelaa.git .
I don't think 32-bit Windows executables will be phased out within a year. In fact, I predict they will stick around until Microsoft releases a major version of Windows that explicitly does not support 32-bit applications. They would do this so late in the game that there would literally be 0 applications left that don't at least have a 64-bit build, if not offer the program exclusively in 64-bit. But this will definitely, certainly, positively not happen within a year, or even two years. Wait for, say, Windows 9? I doubt that Windows 8 will be the switch -- that's probably just another patch job on Windows 7.
Also, if Ironclad is really done with Sins, then Sins will forever remain a 32-bit executable. So this issue will always be relevant with Sins, and with all older computer games that have not been released as 64-bit -- even some of the most recent ones.
One last note about this: it is entirely possible for 64-bit to "take over the market" while we're still using an operating system that can run 32-bit programs. So, perhaps, in two years' time, every mom and pop software shop will offer a 64-bit build of their software.
But why would they do this? There are many compelling reasons for them not to! This has been what has kept 64-bit from being mainstream for about 10 years, so listen carefully:
I predict that these five reasons will hold back wide-spread adoption of 64-bit executables until after Microsoft releases a production, desktop operating system that does not support running 32-bit executables at all. And I think that is further away than Windows 8.
It didn't post lol well was trying to give a heads up the vasari and advent carriers wave and plasma weapons particles are not showing u hear them but don't see em
I only see this with the tsop mod on
delete the post above this
Hey guys, excellent work done so far! But I can't seem to download from Filefront, it gives me an error. Can someone upload to a reliable download site?
Thanks!
Confirm DL links are down. Might be doing maintenance. If not up by tomorrow I will mirror but I want the new files b4 I bother if I can.
Are you officially associated with this mod project? I only ask that because I once offered to host SOA2 (another mod led by Stress) on my server, and was basically told "thanks but no thanks". In other words, I'm not sure the mod owner(s) would really appreciate you re-hosting their stuff, unless you obtain their permission. They'd rather have you click through filefront, watch ads, and wait for downed servers and stuff...
If this opinion has changed and the mod owners are amenable to having a place to host the files without ads or delays, one of us (or both) can provide them FTP accounts so they can upload stuff. I'd be happy to help with that, but I got the impression my help wasn't needed.
Anyway... has anyone had a chance to try out pelaa?
I'll be working on adding the ability for pelaa to tell you whether a binary is LAA-enabled or not, but until that feature is in, you can check whether the LAA bit is set by using the dumpbin program from Visual Studio:
Example: dumpbin /HEADERS "Sins of a Solar Empire.exe"
The Sins Optimization Project T (for trinity)
Thats my mirror and yes I did all the sound and music optimization
Myfist0 Did you include the construction ships add on in the combined trinity build?
Thanks for the info Allquixotic. Like i said i am not a programmer, and i just go by what i am told by others. The Typos and Miss-labels in the mesh, particles, and various other files which we will get to soon needed to be fixed regardless if it plugged the leak, or just made the game run smoother.
Paladins, look at the previous post above, and follow the directions for deleting the ironclad games folder. Something else in your game may be screwing with the particles causing them not to be seen. Possibly older version files leftover from the 1.01 to 1.011 update. Make sure TSOP is the only mod enabled when you play it. If you still have a problem try re-downloading the mod. Ill test this myself and see if i can duplicate the issue. Last i checked everything worked. I am assuming you are running diplomacy. EDIT: Just tested on my end, and both advent, and vasari carriers particles do work.
I am pretty much done with SoA 2. I no longer have any real interest in the mod. Nor do i have any free time to give it what it really needs. Jaytlrpcs has taken over the project, and i wish him, and the team well. I still advise from time to time, but that is about all of my involvement with SoA 2.
Myself, Myfist0, and SivCorp are The Optimization Project. Anyone else is more than welcome to join us if they know ways to improve/fix the game without changing the gameplay itself. We are Still looking for that master texture artist to help fix the planet/skybox issue.
No. It was not there when I Dled latest versions
Edit: The constructor ships link is working now and I will update the trinty 7z ASAP and make backup mirrors
the mirror doesn't work either, 404 not found
Im working on another host. Patience please.
IC isn't working on Elemental.
This is also a good mod. Me and my friends have been running into these issues recently, I'll try to get them to use this mod.
We're also thinking about using Distant Stars. Should we enable this one first or Distant Stars? Distant Stars uses Bailknight's so does it matter at all? I read that the DS guy was trying to copy some of your methods over several months ago, but not sure if that is still happening...
Same for DS
Added the Constructors
the standard DS does not work well with this mod, we are still working out the kinks though we do have a multiplayer version of DS that does use some of it
thanks myfist0
if i replace some of the optimized files with bailknights, will it still work
also, does the sound optimization affect the quality?
If the file names match you should be good replacing or overwriting files.
The sound is slightly less quality. Compare playing the same file from the root dir to the mods file with winamp. The music sins uses is 128kb/sec and we reduced it to 112kb/sec. Most ppl will not hear the difference but like you did in balknights, just delete the files you don't want optimized from the mod and it will use the stock files from the root dir.
There are many great features available to you once you register, including:
Sign in or Create Account