Sins of a Solar Empire : Real-Time Strategy. Unrivalled Scale.
© 2003-2016 Ironclad Games Corporation Vancouver, BC. All rights reserved.
© 2006-2016 Stardock Entertainment

Modder's "Get-an-Answer" Thread

Answers from Modders, for Modders who "Ask a Question"

By on April 13, 2011 12:05:46 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Sinperium

Join Date 02/2010
+213

 

This is the place to ask and recieve specific modding (mod making) questions and answers. If you have a mod making question, post it here.

If your question involves long snippets of entity files and the like, please don't paste the entire file contents here but put them at the incredibly easy to use http://pastebin.com and then provide the link to your paste in your question posted here.

Please do limit  "just comments" here to brief posts please.  If you don't know the answer or can't point to help--don't post.  Please note that a random, uninformed guess isn't an actual answer.  

You can refer people to another source--IF it actually helps answer their question.  This could be in the form of links, outside sites, specific modding-useful programs, direction towards another post or poster, etc., etc.

Remember--specific questions, specific answers.  Only respond to the ones you can help solve.  Also, feel free to amplify, clarify, suggest alternatives to or correct answers seen here if such actions are merited and help provide a real solution. No flaming, insults or put downs here in the answers or other posts please.

Thanks in advance for your help and cooperation.  The reason for the rigid rules here is those this thread becomes a usable resource in the future to new people looking for answers.

NOTE: If an answer resolves your issue, please share it here.  These answers will help others coming along later too.  Karma is a great way to respond to people providing help without clogging the thread or bombing their forum mailbox here. Thanks!

 

OTHER SINS HELPFUL MODDING LINKS*

*Links are updated regularly.





The Soase Idiot's Guide

Confused?  No idea where to even start?

Determined to work at it?

This is the place!

 


 

 
   

Sins Modding Wiki

ZombieRus's Eclipse Wizardry

 

     


Tutorials

MyFist0's full modding site.

Emphasis on modeling  and

texturing.                            

 

 

 




                    

REBELLION MODDING TOPICS

Rebellion Modding Q & A

Mesh Editing

Changing Diplomacy Files to Rebellion

IT REALLY HURTS MY BRAIN--HOW TO START

An Idiot's Guide To Getting Started

MyFist0's Modding Megasite!

MOD DOWNLOADS

ZombieRus5's Mod Yard

Directory of Planet Mods

STEAM

STEAM Sins Forums

DEVELOPERS

Sins Developer Journals Forum 2007 to Present

REFERENCE FILES

Research Modifier List

MyFist0's Exported Models & Files

Modifier List

Harpo's Converted Sins Reference Files 2011

THIRD PARTY TOOLS

3dS Texturing Toool & Tips

Ship Fleet Calculator

SoaSE Eclipse Plugin Project

Mesh Resizing Tool--courtesy of the Reqiuem team.

Harpo's Sins Utility Package -- Dropbox

The Sins Optimization Project (TSOP)

Artificial Unintelligence (Mod and AI info)

Sins Data Converter by BCXtreme

EXPLANATIONS & DISCUSSIONS

Rebellion Updates by Blair Frazier

How to Add a Fourth Race

User-updatable Ship Reference Chart

Sins Modding Dictionary

Adding phase Effects to other weapon types

Culture, Explanation/Discussion

Weapons, Explanation/Discusion

Shield Mitigation & Armor, Explanation/Discussion-1

Shield Mitigation & Armor, Explanation/Discussion -2

Graphic Chart of Sin's Counters

Annotated Guide to the Developer.exe

In-Game Map Creator

Weapons Banks & DPS

Combat Mechanics

Rebellion Shield Mitigation & Focus Fire testing

PARTICLE FORGE

Particle Forge Help Thread

GALAXY FORGE

Adding Artifacts

Working Template Examples

SemazRalan's Template Guide

Pirates Base Start Template

SOUND RESOURCES

[SFX] Black Sun SFX/Music Resource for Modders

MODELING & TEXTURING--SOFTIMAGE XSI, 3DS MAX

XSI Texturing, Tutorial

3dS Model Exporter

3DS Max Rigging, Texturing & Exporting, Guide

Modding/Modelling/Texturing/Converting, Tutorials

WIKI'S

Sins of a Solar Empire Official Wiki

 

2667 Replies
Search this post
Subscription Options


Reason for Karma (Optional)
Successfully updated karma reason!
August 15, 2014 10:42:22 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Strange... seems like they recorded lines for Capital victory to alert the player when your or your allies capitals are under attack, and about to die. Yet they don't seem to be linked into the player entities.

 

Reason for Karma (Optional)
Successfully updated karma reason!
August 15, 2014 10:42:24 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Quoting Volt_Cruelerz,

[snip]

So I'm guessing the relevant code is:

// f is the file that the system is trying to load
String path = f.getPath();
path = path.substring(0, path.lastIndexOf("\\") + 1);
path = path + "ConvertData_Rebellion.exe";
Process process = new ProcessBuilder(path, f.getName(), f.getName(), "txt").start();

Is path incorrect by any chance? Drop in a println(path); right before the last line I quoted, see if it kicks out the correct path. Otherwise I'm stumped as well... maybe something to do with the way ConvertData handles args?

 
 
Reason for Karma (Optional)
Successfully updated karma reason!
August 15, 2014 10:57:59 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Quoting Wintercross,

Strange... seems like they recorded lines for Capital victory to alert the player when your or your allies capitals are under attack, and about to die. Yet they don't seem to be linked into the player entities.

 

The player entities are missing a lot of potential lines to play for things too. And at least one of them there is a line in the player entity file, but not in the sound folder/sounddata files.

In short, yeah that section is a bit messy, you could probably find a lot of little things to fix there.

Reason for Karma (Optional)
Successfully updated karma reason!
August 15, 2014 11:38:26 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Quoting GoaFan77,


Quoting Wintercross,

Strange... seems like they recorded lines for Capital victory to alert the player when your or your allies capitals are under attack, and about to die. Yet they don't seem to be linked into the player entities.

 



The player entities are missing a lot of potential lines to play for things too. And at least one of them there is a line in the player entity file, but not in the sound folder/sounddata files.

In short, yeah that section is a bit messy, you could probably find a lot of little things to fix there.

 

Well I've already found a few unused events that I will likely make use of, and some that just had the generic 'error' sound.

 

Reason for Karma (Optional)
Successfully updated karma reason!
August 16, 2014 1:44:57 AM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Quoting Delnar_Ersike,


Quoting Volt_Cruelerz,

[snip]



So I'm guessing the relevant code is:

// f is the file that the system is trying to load
String path = f.getPath();
path = path.substring(0, path.lastIndexOf("\\") + 1);
path = path + "ConvertData_Rebellion.exe";
Process process = new ProcessBuilder(path, f.getName(), f.getName(), "txt").start();

Is path incorrect by any chance? Drop in a println(path); right before the last line I quoted, see if it kicks out the correct path. Otherwise I'm stumped as well... maybe something to do with the way ConvertData handles args.

To my knowledge, it's fine...  The process is running just above the GameInfo folder with the path being set to GameInfo/ConvertData_Rebellion.exe.  I'd previously tried the full path starting at the drive-level and that didn't work either

Oddly enough, it's now throwing an exception that says that it's already in use by another process.  I tried rebooting and I still get the error.  I have no idea what's going on  Even after going in and manually killing the JRE, I now get an error if I try to run it manually (that is, outside Buff Builder) with a popup from Windows saying that it can't run on my machine and to contact the publishers for a version that does...  It was running just fine with manual operation earlier...  I have no idea what's going on...

Reason for Karma (Optional)
Successfully updated karma reason!
August 16, 2014 1:26:30 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

I don't know a whole lot on the usage of the ConvertData exes, and know nothing of Java (I use vb script), so not sure how much help I'll be....

Does ConverData automatically overwrite files?  By looking at what you got there, it looks like it's converting and saving to the same location & name.

Are you looping too fast on ConvertData and can it support multiple instances running at once?  My own script that calls and uses it waits for each call to complete before looping back.

"I now get an error if I try to run it manually"... assuming you're referencing running the ConvertData exe manually... I seem to remember getting that once, too, but can't remember now what I did to solve it.  I know it's not making sure there were supporting files in the same directory as the exe... mine is empty save the exe, my script, and the files to convert/were converted.  Check make sure that Galaxy Forge runs?? (Assumption that they use the same supporting files and that maybe something got corrupted... and actually, on that note, see if you can grab a fresh copy of the ConvertData exe in case it itself was corrupted.)

Beyond that, all I can think of is showing you the snippet that's relevant in my code and see if something sticks out to you:

Set WshShell = WScript.CreateObject("WScript.Shell")
'other code that defines workingFile as the file to convert
Result = WshShell.Run ("""" & objStartFolder & "\ConvertData_Rebellion.exe"" entity """ & workingFile.Path & """ """ & Replace(workingFile.Path, "\Orig\", "\Text\") & """ txt",0,True)

EDIT: Wow, yeah, that formatting is horrible.  WTF??  Took out the code wrappers....

Reason for Karma (Optional)
Successfully updated karma reason!
August 16, 2014 1:45:51 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

I don't suppose you could just call a bat file to do the conversion? If that works, its definitely a running the program too many times at once issue.

Reason for Karma (Optional)
Successfully updated karma reason!
August 16, 2014 4:21:48 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Normally I just use batch files for conversion but again, ConvertData is now claiming to not be able to run on my computer

Traditionally, I just use batch files to do mass converts between the two formats, but even they aren't working now.  Rebooting doesn't fix it.  I have no idea what's wrong with this...

 

For the record, Galaxy Forge does run.  Also, I'm only trying to run one instance at a time.  The idea being that whenever you import or export from Buff Builder into .entity files, it will automatically convert it so that the entity files are always stored in the BIN format unless they are actively being edited.

 

EDIT: I had another copy of ConvertData elsewhere that's still working...  this is weird...

EDIT 2: does ConvertData require the tabbing to be right or a particular text encoding or something?  Because my files run just fine when picked up by the game but for some reason, ConvertData won't run them but it will run stock files...

Reason for Karma (Optional)
Successfully updated karma reason!
August 16, 2014 6:39:16 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

in my experience with the convertdata'a, they just require a dosbox and either starting in the folder or with explicit paths specified for the exe and entities

harpo

 

Reason for Karma (Optional)
Successfully updated karma reason!
August 16, 2014 11:39:54 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Maybe instantiate Process process as public static to make sure only one process is running at the same time? Also, does Process require a destroy() call or something similar to clean things up? I'm fairly new to Java threading and process management in general, so if it's taken care of by the garbage collector just like (almost) all other Java classes, then no biggie.

 
Reason for Karma (Optional)
Successfully updated karma reason!
August 17, 2014 12:01:33 AM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Quoting Delnar_Ersike,

Maybe instantiate Process process as public static to make sure only one process is running at the same time? Also, does Process require a destroy() call or something similar to clean things up? I'm fairly new to Java threading and process management in general, so if it's taken care of by the garbage collector just like (almost) all other Java classes, then no biggie.

 


It can't possibly be called more than once based on the surrounding code.  I've since added destroy to the code, but it just fails.  I think the problem is that it is expecting a different file format, either tabbing or something other than UTF-8 which is what my program spits out

Reason for Karma (Optional)
Successfully updated karma reason!
August 17, 2014 1:16:42 AM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

volt, in my text-bin gui I just use standard ASCII text with full paths to each of the files supplied as a sttring to the command shell, and in some of my testing I have had over 10 copies of convertdata running at the same time, but was not able to verify that the files were converted except when I was limiting it to one file at a time and waiting for the convert to finish

harpo

 

Reason for Karma (Optional)
Successfully updated karma reason!
August 17, 2014 1:44:44 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Oh, I am a numbnut. ConvertData requires 4 arguments, not 3. The correct line should be:

Process process = new ProcessBuilder(path, "entity", f.getName(), f.getName(), "txt").start();

See if that helps. Also, if you're calling f.getName() a lot, maybe you should consider just storing it in a second variable for optimization purposes. Memory size will increase, but you replace at least 2 getName() calls with a single getName() call and a String instantiation+assignment.

 
Reason for Karma (Optional)
Successfully updated karma reason!
August 17, 2014 1:51:12 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Quoting Delnar_Ersike,

Oh, I am a numbnut. ConvertData requires 4 arguments, not 3. The correct line should be:

Process process = new ProcessBuilder(path, "entity", f.getName(), f.getName(), "txt").start();

See if that helps. Also, if you're calling f.getName() a lot, maybe you should consider just storing it in a second variable for optimization purposes. Memory size will increase, but you replace at least 2 getName() calls with a single getName() call and a String instantiation+assignment.

 


I already had this...

Process process = new ProcessBuilder(path,"entity", fName,fName,"txt").start();

 

where fName was defined earlier as f.getName().

Reason for Karma (Optional)
Successfully updated karma reason!
August 19, 2014 6:52:28 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

For whatever stupid reason the quote button isn't working for me....

Volt wrote: "EDIT: I had another copy of ConvertData elsewhere that's still working...  this is weird..."

Yup, somehow the one you were using had gotten corrupted.

Now, did you solve this?  As I see you have v1.0 of the tool released now.

On the chance that you haven't, for my sake of clarity (as I can't seem to find any info on this), I'm assuming the "getName()" function is returning the fully qualified path of the file (including the file name)?

 

Reason for Karma (Optional)
Successfully updated karma reason!
August 19, 2014 11:21:29 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

dont know if this has been asked before, and i probably missed it elsewhere on the forums, but are alliance pacts/diplomacy pacts still hard coded to the original three races?

Reason for Karma (Optional)
Successfully updated karma reason!
August 19, 2014 11:45:56 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Pacts themselves have never been hard coded, only the number of pacts you can have is hard coded. You can change them or redistribute them to different factions however you wish, or even give different factions the same pact.

 

That said, if that still isn't acceptable, I believe some mods like Sins of the Fallen and STA 3 have manged to combine research and pacts to get a similar effect for any number of races. You may wish to look at them.

Reason for Karma (Optional)
Successfully updated karma reason!
August 20, 2014 12:38:01 AM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Aw, alright then thats kinda the answer i was looking for, ill play around with the current ones and see if i can come up with something different. If i cant i will look at those mods, thank you again!

Reason for Karma (Optional)
Successfully updated karma reason!
August 20, 2014 1:09:23 AM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Research locked pacts are easy, just make the pact bonus a prereq for a research file.  We have subjects for SOA2, not much filling them out, but you gain bonus research access based on the subject of the pact you got from another side.

Reason for Karma (Optional)
Successfully updated karma reason!
August 24, 2014 3:27:59 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Quoting psychoak,

Research locked pacts are easy, just make the pact bonus a prereq for a research file.  We have subjects for SOA2, not much filling them out, but you gain bonus research access based on the subject of the pact you got from another side.

Huh, that is interesting for sure. as soon as i can download large ish files ill take a look.

 

In the meantime thought another question, Is it possible to have a frigate or capital ship factory build a ship without showing the mesh? the Aldar use portals and having the mesh of the ship being shown while it is built just doesnt work with their factory models as is. ill change them if i have to though.

Reason for Karma (Optional)
Successfully updated karma reason!
August 24, 2014 9:45:01 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

I haven't ever seen any way to do race specific build methods.  The effect is controlled by GS_ShipBuilding.fx, I would not expect to find a setting to skip it.  You can however fake it by using location.

 

The build effect is centered on the build point in the mesh, DataString "ShipBuild", and will be centered if you simply leave out the point.

 

If you place this at say Z -100k, no one would ever see it.

Reason for Karma (Optional)
Successfully updated karma reason!
August 24, 2014 10:05:43 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Quoting psychoak,

I haven't ever seen any way to do race specific build methods.  The effect is controlled by GS_ShipBuilding.fx, I would not expect to find a setting to skip it.  You can however fake it by using location.

 

The build effect is centered on the build point in the mesh, DataString "ShipBuild", and will be centered if you simply leave out the point.

 

If you place this at say Z -100k, no one would ever see it.

I would try Y honestly. Solar systems do not vary much on the Y coordinate, being disks. It is a good idea though.

Another thing to try might be to building a dummy version of the ship with no mesh, and give it an ability that spawns the correct ship with the mesh after it is built.

Reason for Karma (Optional)
Successfully updated karma reason!
August 25, 2014 7:42:11 PM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Quoting GoaFan77,


Quoting psychoak,

I haven't ever seen any way to do race specific build methods.  The effect is controlled by GS_ShipBuilding.fx, I would not expect to find a setting to skip it.  You can however fake it by using location.

 

The build effect is centered on the build point in the mesh, DataString "ShipBuild", and will be centered if you simply leave out the point.

 

If you place this at say Z -100k, no one would ever see it.



I would try Y honestly. Solar systems do not vary much on the Y coordinate, being disks. It is a good idea though.

Another thing to try might be to building a dummy version of the ship with no mesh, and give it an ability that spawns the correct ship with the mesh after it is built.

 

Hmm i think if i leave it out and then make the portal effect be shown on both sides of the factory would work. if that fails i can give the other one a go as well. thank you both again!

 

Reason for Karma (Optional)
Successfully updated karma reason!
August 31, 2014 1:44:31 AM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Greetings.  I figure this is the place to ask for this particular question.

 

I've been playing SoaSE for a while now and enjoy making little mods for my own enjoyment.

 

One thing I am currently unable to figure out how to do, however, is give one race's research to another.  In particular, I am trying to figure out how to give the Advent's max allegiance research to the Tec and Vasari.  ( Yeah, I know.  You're rolling your eyes.  It's for personal use, so please don't talk about it unbalancing the game. )

 

I assume if I can figure out how to do it for one specific research, it will be roughly the same for all.

 

I've been doing my best to figure out, precisely, how to do it through Google but alas, I am having no luck as I can not find what, precisely, is tying it to solely the Advent.  I am not finding online and, after spending a number of hours pouring over the reference files, I am not finding anything in there for each race's specific tech tree.

 

( All of my modifications thus far have been things like ship abilities, stats, how many times you can do research, etc.  One example is I created an Iconus guardian that I removed weapons from and turned it's repulsion ability into a passive buff that only effects strike craft. )

 

Any help is appreciated, and please excuse my ramblings.  I tend to over explain things.  

Reason for Karma (Optional)
Successfully updated karma reason!
August 31, 2014 2:05:15 AM from Sins of a Solar Empire Forums Sins of a Solar Empire Forums

Quoting emportakaten,

One thing I am currently unable to figure out how to do, however, is give one race's research to another.  In particular, I am trying to figure out how to give the Advent's max allegiance research to the Tec and Vasari.  ( Yeah, I know.  You're rolling your eyes.  It's for personal use, so please don't talk about it unbalancing the game. )

Research are assigned to a particular race in the player entity file (like PlayerPsiRebel.entity). However, be aware that the position of the tech in the tree is in the Research entity file. If you give a research to one race, and that race already has a research in that position, only one of them will show up. In that case you might have to make an entirely new research that does the same thing in a position that will work for the new race.

Reason for Karma (Optional)
Successfully updated karma reason!
Stardock Forums v1.0.0.0    #108433  walnut3   Server Load Time: 00:00:00.0000375   Page Render Time: