1
Mods / Re: [0.7.1a] Fleaden New Regime v1.1.2
« on: February 16, 2016, 11:34:18 AM »Still need to mess with files to play with nexerelin?Yes
Starsector 0.97a is out! (02/02/24); New blog post: Save/Load UI, Autosave, Intel Map Markers, and More (04/10/24)
Still need to mess with files to play with nexerelin?Yes
exerelinFactionConfig/Fleaden.json has a missing comma (,) at the end of the miningVariantsOrWings line that makes the config fail to load.OK, I will fix it at next version.
While ive been working on your text file, ive found an error with Anti-Fleaden.It will be fix at next version.
When you remove there last planet in nexelerin the faction tag stays in the game forever...the codes not ending the faction tag like it does for Fleaden.
Open up the relevant json in config/exerelinFactionConfig and set "showIntelEvenIfDead":true to "showIntelEvenIfDead":falseThanks for your help. It will fix at next version.
Love the mod and the work you put into it, but the english and writing on the weapons and descriptions of everything....do you use google translate? I think theres one there in your mod call "Very Heavy Connon....it just for dps!" Do you have an english speaking friend to help you out on it?1.Yes...Probably I need a English speaker to help me about that.
Also, if you are able to, when you do an update please post a change log so we can see whats been updated, and whether its worth going through Save Game migration.
1: You have fail your class Mine_AI, ( java editor see this error), one reason why your game crash.Thank you so much!
2: This Mine_AI is on weapons, but your mine_AI package on missileAI....
3: It is also a problem of compilation : Install netbeans or Intel ( You have tutorial in modding ressources)
4: For unknow reason, i have lost your mod in my list of mod. I do not understand why, ah ah. But, after delete modinfo and reset, it is fine, now.
Warning, i link your your file compiled, but after you cannot change a file.java with just a notebloc, he read compiled file in priority.
I link a file who have all lib (shaderlib and lady, so you do not need active theses mod, ah ah, yes 10 Mo your mod if you do not clean, you can rego 6Mo, if you clean, but you need know how run a compiled java, i think.
After, also, i have modified mod_info, i have not idea why, but this file is corrupted, so, yes, you need put description, again, ah ah. I need go sleep, sorry ><.
http://www.mediafire.com/download/xj1zdag5bxwxc6j/Fleaden_en.rar
You have not forgot compiled your code?http://www.mediafire.com/download/nc2r5rr1qrrk4c7/Fleaden_en.rar
at org.codehaus.janino.UnitCompiler.compileError(UnitCompiler.java:10174)
Because, if you use janino, you cannot maybe compile this script who need be compiled. You can send my your file, i compile a jar and test, if you want( If you do not compile)
What a wonderful nice error :QuoteCaused by: java.lang.ClassNotFoundException: File 'data/scripts/FleadenModPlugin.java', Line 29, Column 19: Unknown variable or type "ShaderLib"
at org.codehaus.janino.JavaSourceClassLoader.generateBytecodes(JavaSourceClassLoader.java:226)
at org.codehaus.janino.JavaSourceClassLoader.findClass(JavaSourceClassLoader.java:178)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
Global.getSettings().getScriptClassLoader().loadClass("org.dark.shaders.util.ShaderLib");
Maybe=>
Class<?> def = Global.getSettings().getScriptClassLoader().loadClass("exerelin.campaign.SectorManager");
Delete maybe also import org.dark.shaders.util.ShaderLib; because you import in this line, maybe?
78714 [Thread-5] ERROR com.fs.starfarer.combat.CombatMain - java.lang.RuntimeException: Error compiling [data.scripts.FleadenModPlugin]
java.lang.RuntimeException: Error compiling [data.scripts.FleadenModPlugin]
at com.fs.starfarer.loading.scripts.ScriptStore$3.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: File 'data/scripts/FleadenModPlugin.java', Line 28, Column 15: Assignment conversion not possible from type "java.lang.String" to type "int"
at org.codehaus.janino.JavaSourceClassLoader.generateBytecodes(JavaSourceClassLoader.java:226)
at org.codehaus.janino.JavaSourceClassLoader.findClass(JavaSourceClassLoader.java:178)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more
Caused by: org.codehaus.commons.compiler.CompileException: File 'data/scripts/FleadenModPlugin.java', Line 28, Column 15: Assignment conversion not possible from type "java.lang.String" to type "int"
at org.codehaus.janino.UnitCompiler.compileError(UnitCompiler.java:10174)
at org.codehaus.janino.UnitCompiler.assignmentConversion(UnitCompiler.java:9071)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:1344)
at org.codehaus.janino.UnitCompiler.access$1700(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$4.visitSwitchStatement(UnitCompiler.java:942)
at org.codehaus.janino.Java$SwitchStatement.accept(Java.java:2402)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:958)
at org.codehaus.janino.UnitCompiler.compileStatements(UnitCompiler.java:1007)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:2293)
at org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:822)
at org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:794)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:507)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:393)
at org.codehaus.janino.UnitCompiler.access$400(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$2.visitPackageMemberClassDeclaration(UnitCompiler.java:347)
at org.codehaus.janino.Java$PackageMemberClassDeclaration.accept(Java.java:1139)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:354)
at org.codehaus.janino.UnitCompiler.compileUnit(UnitCompiler.java:322)
at org.codehaus.janino.JavaSourceClassLoader.generateBytecodes(JavaSourceClassLoader.java:224)
... 5 more
package data.scripts;
import com.fs.starfarer.api.BaseModPlugin;
import com.fs.starfarer.api.Global;
import com.fs.starfarer.api.campaign.SectorAPI;
import data.scripts.world.fleadenModGen;
import com.fs.starfarer.api.PluginPick;
import com.fs.starfarer.api.campaign.CampaignPlugin;
import com.fs.starfarer.api.combat.MissileAIPlugin;
import com.fs.starfarer.api.combat.MissileAPI;
import com.fs.starfarer.api.combat.ShipAPI;
import data.scripts.weapons.Mine_AI;
public class FleadenModPlugin extends BaseModPlugin
{
public static final String MINE_ID = "mine_mirv";
private void initFleaden() {
new fleadenModGen().generate(Global.getSector());
}
public void onNewGame()
{
// Calling a separate method avoids duplicate code with onEnabled()
initFleaden();
}
@Override
public PluginPick<MissileAIPlugin> pickMissileAI(MissileAPI missile, ShipAPI launchingShip) {
switch (missile.getProjectileSpecId()) {
case MINE_ID:
return new PluginPick<MissileAIPlugin>(new Mine_AI(missile, launchingShip), CampaignPlugin.PickPriority.MOD_SET);
default:
return null;
}
}
}
This is a cross-post from the Hiigaran thread for notification purposes.Thank for his and your help.
***EDIT***
If you are having trouble loading Fleaden and Hiigaran mods alongside each other, please consider making the following changes to the Fleaden ..\data\scripts\world\AddMarketplace.java file.
DISCLAIMER: Thorough testing of these changes has not been performed. Marketplace and economy oddities, however, should be nil.
Rename File:
AddMarketplace.java
TO
F_AddMarketplace.java
Change:
Line 9 - public class AddMarketplace{
TO
public class F_AddMarketplace{
Line 11 - public static MarketAPI F_AddMarketplace
TO
public static MarketAPI F_AddMarketplaceBoth mods implement the same class in same file (although different case).
Fleaden mod contains:
\data\scripts\world\AddMarketplace.java
Hiigaran mod contains:
\data\scripts\world\addMarketplace.java
The Fleaden mod gets loaded first (as mods get loaded in alphabetical order), and so Java loads and compiles 'data.scripts.world.AddMarketplace' from the file '\data\scripts\world\AddMarketplace.java' which (on Windows) can't coexist with 'data.scripts.world.addMarketplace' in the file '\data\scripts\world\addMarketplace.java'. However, I think this would probably work OK on Linux with a case-sensitive filesystem...
Then, once it gets round to compiling HiiModPlugin later, it's looking for '\data\scripts\world\addMarketplace.java' which on Windows is actually the same as '\data\scripts\world\AddMarketplace.java' and so Java says 'I know this one already! Here you go!' but unfortunately it doesn't contain the expected class.
Workaround is to rename one of the class files (i.e. hii_addMarketplace.java), and then the class inside it to match (i.e. public class hii_addMarketplace), and then the references to it in calling code (I think just HiiPolarisGen.java).
Original PostSpoilerAh, that explains it. I'm using JRE 7 for my java
Edit: Nvm, I'm pretty sure there's a conflict with the Fleaden mod on station spawns. I removed the Fleaden mod and the mod loads up fine now.
I replicated this problem today. Tested further, but have yet to find a workaround.
*Active Mods* - Latest versions of StarSector+ (all updated required, compatible, and optional mods included), Nexerelin, Hiigaran Descendants (Released 12/31/15), Fleaden en 1.1.1 (Released 01/05/16), Practice Targets 1.01, and a few other Nexerelin supported factions\ships.
Java 8v66
There does appear to be a compatibility problem between the latest Fleaden and Hiigaran mods. The StarSector error log points to ..\Data\Scripts\World\HiiModPlugin.Java of Hiigaran's files as a potential location for this error.
CTD Launch LogSpoiler40689 [Thread-5] ERROR com.fs.starfarer.combat.CombatMain - java.lang.RuntimeException: Error compiling [data.scripts.world.HiiModPlugin]
java.lang.RuntimeException: Error compiling [data.scripts.world.HiiModPlugin]
at com.fs.starfarer.loading.scripts.ScriptStore$3.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: Compilation unit 'data.scripts.world.addMarketplace' does not declare a class with the same name
at org.codehaus.janino.JavaSourceClassLoader.generateBytecodes(JavaSourceClassLoader.java:226)
at org.codehaus.janino.JavaSourceClassLoader.findClass(JavaSourceClassLoader.java:178)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more
Caused by: org.codehaus.commons.compiler.CompileException: Compilation unit 'data.scripts.world.addMarketplace' does not declare a class with the same name
at org.codehaus.janino.JavaSourceIClassLoader.findIClass(JavaSourceIClassLoader.java:160)
at org.codehaus.janino.IClassLoader.loadIClass(IClassLoader.java:254)
at org.codehaus.janino.UnitCompiler.findTypeByName(UnitCompiler.java:6893)
at org.codehaus.janino.UnitCompiler.findTypeByFullyQualifiedName(UnitCompiler.java:9883)
at org.codehaus.janino.UnitCompiler.importSingleType(UnitCompiler.java:8593)
at org.codehaus.janino.UnitCompiler.reclassifyName(UnitCompiler.java:7151)
at org.codehaus.janino.UnitCompiler.reclassifyName(UnitCompiler.java:6801)
at org.codehaus.janino.UnitCompiler.reclassify(UnitCompiler.java:6788)
at org.codehaus.janino.UnitCompiler.getType2(UnitCompiler.java:5419)
at org.codehaus.janino.UnitCompiler.access$15400(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$16.visitAmbiguousName(UnitCompiler.java:5149)
at org.codehaus.janino.Java$AmbiguousName.accept(Java.java:3135)
at org.codehaus.janino.UnitCompiler.getType(UnitCompiler.java:5159)
at org.codehaus.janino.UnitCompiler.findIMethod(UnitCompiler.java:7333)
at org.codehaus.janino.UnitCompiler.compileGet2(UnitCompiler.java:3873)
at org.codehaus.janino.UnitCompiler.access$6900(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$10.visitMethodInvocation(UnitCompiler.java:3263)
at org.codehaus.janino.Java$MethodInvocation.accept(Java.java:3974)
at org.codehaus.janino.UnitCompiler.compileGet(UnitCompiler.java:3290)
at org.codehaus.janino.UnitCompiler.compileGetValue(UnitCompiler.java:4368)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:2662)
at org.codehaus.janino.UnitCompiler.access$4400(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$7.visitMethodInvocation(UnitCompiler.java:2627)
at org.codehaus.janino.Java$MethodInvocation.accept(Java.java:3974)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:2654)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:1643)
at org.codehaus.janino.UnitCompiler.access$1100(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$4.visitExpressionStatement(UnitCompiler.java:936)
at org.codehaus.janino.Java$ExpressionStatement.accept(Java.java:2097)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:958)
at org.codehaus.janino.UnitCompiler.compileStatements(UnitCompiler.java:1007)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:2293)
at org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:822)
at org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:794)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:507)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:393)
at org.codehaus.janino.UnitCompiler.access$400(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$2.visitPackageMemberClassDeclaration(UnitCompiler.java:347)
at org.codehaus.janino.Java$PackageMemberClassDeclaration.accept(Java.java:1139)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:354)
at org.codehaus.janino.UnitCompiler.compileUnit(UnitCompiler.java:322)
at org.codehaus.janino.JavaSourceClassLoader.generateBytecodes(JavaSourceClassLoader.java:224)
... 5 more[close]
Both mods function normally when not loaded together, but can and will fail side-by-side.
Further testing with only StarSector+, ShaderLib, LazyLib, Nex, Fleaden (with Nex files active), and Hiigaran produced the same results: StarSector would crash when Fleaden and Hiigaran were loaded together.
Please advise.[close]
......Quote@OverrideMy plugin pick, why mod_specific? And you have very bad placement of your return null, also xD
public PluginPick<MissileAIPlugin> pickMissileAI(MissileAPI missile, ShipAPI launchingShip) {
switch (missile.getProjectileSpecId()) {
case IDARS:
return new PluginPick<MissileAIPlugin>(new CustomARS(missile, launchingShip), CampaignPlugin.PickPriority.MOD_SET);
case IDARN:
return new PluginPick<MissileAIPlugin>(new CustomARS(missile, launchingShip), CampaignPlugin.PickPriority.MOD_SET);
case IDABS:
return new PluginPick<MissileAIPlugin>(new CustomABS(missile, launchingShip), CampaignPlugin.PickPriority.MOD_SET);
default:
return null;
}
Mine_MIRV, you copy my idea of mine missile? (But, yes, i have not create a mine AI, just a Mine plugin)
66367 [Thread-5] ERROR com.fs.starfarer.combat.CombatMain - java.lang.RuntimeException: Error compiling [data.scripts.FleadenModPlugin]
java.lang.RuntimeException: Error compiling [data.scripts.FleadenModPlugin]
at com.fs.starfarer.loading.scripts.ScriptStore$3.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: File 'data/scripts/FleadenModPlugin.java', Line 29, Column 19: Unknown variable or type "ShaderLib"
at org.codehaus.janino.JavaSourceClassLoader.generateBytecodes(JavaSourceClassLoader.java:226)
at org.codehaus.janino.JavaSourceClassLoader.findClass(JavaSourceClassLoader.java:178)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more
Caused by: org.codehaus.commons.compiler.CompileException: File 'data/scripts/FleadenModPlugin.java', Line 29, Column 19: Unknown variable or type "ShaderLib"
at org.codehaus.janino.UnitCompiler.compileError(UnitCompiler.java:10174)
at org.codehaus.janino.UnitCompiler.getType2(UnitCompiler.java:5424)
at org.codehaus.janino.UnitCompiler.access$12300(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$16.visitPackage(UnitCompiler.java:5115)
at org.codehaus.janino.Java$Package.accept(Java.java:3164)
at org.codehaus.janino.UnitCompiler.getType(UnitCompiler.java:5159)
at org.codehaus.janino.UnitCompiler.getType2(UnitCompiler.java:5419)
at org.codehaus.janino.UnitCompiler.access$15400(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$16.visitAmbiguousName(UnitCompiler.java:5149)
at org.codehaus.janino.Java$AmbiguousName.accept(Java.java:3135)
at org.codehaus.janino.UnitCompiler.getType(UnitCompiler.java:5159)
at org.codehaus.janino.UnitCompiler.findIMethod(UnitCompiler.java:7333)
at org.codehaus.janino.UnitCompiler.compileGet2(UnitCompiler.java:3873)
at org.codehaus.janino.UnitCompiler.access$6900(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$10.visitMethodInvocation(UnitCompiler.java:3263)
at org.codehaus.janino.Java$MethodInvocation.accept(Java.java:3974)
at org.codehaus.janino.UnitCompiler.compileGet(UnitCompiler.java:3290)
at org.codehaus.janino.UnitCompiler.compileGetValue(UnitCompiler.java:4368)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:2662)
at org.codehaus.janino.UnitCompiler.access$4400(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$7.visitMethodInvocation(UnitCompiler.java:2627)
at org.codehaus.janino.Java$MethodInvocation.accept(Java.java:3974)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:2654)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:1643)
at org.codehaus.janino.UnitCompiler.access$1100(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$4.visitExpressionStatement(UnitCompiler.java:936)
at org.codehaus.janino.Java$ExpressionStatement.accept(Java.java:2097)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:958)
at org.codehaus.janino.UnitCompiler.compileStatements(UnitCompiler.java:1007)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:2293)
at org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:822)
at org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:794)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:507)
at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:393)
at org.codehaus.janino.UnitCompiler.access$400(UnitCompiler.java:185)
at org.codehaus.janino.UnitCompiler$2.visitPackageMemberClassDeclaration(UnitCompiler.java:347)
at org.codehaus.janino.Java$PackageMemberClassDeclaration.accept(Java.java:1139)
at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:354)
at org.codehaus.janino.UnitCompiler.compileUnit(UnitCompiler.java:322)
at org.codehaus.janino.JavaSourceClassLoader.generateBytecodes(JavaSourceClassLoader.java:224)
... 5 more
package data.scripts;
import com.fs.starfarer.api.BaseModPlugin;
import com.fs.starfarer.api.Global;
import com.fs.starfarer.api.campaign.SectorAPI;
import data.scripts.world.fleadenModGen;
import com.fs.starfarer.api.PluginPick;
import com.fs.starfarer.api.campaign.CampaignPlugin;
import com.fs.starfarer.api.combat.MissileAIPlugin;
import com.fs.starfarer.api.combat.MissileAPI;
import com.fs.starfarer.api.combat.ShipAPI;
import data.scripts.weapons.Mine_AI;
import org.dark.shaders.light.LightData;
import org.dark.shaders.util.ShaderLib;
public class FleadenModPlugin extends BaseModPlugin
{
public static final String MINE_ID = "mine_mirv";
private void initFleaden() {
new fleadenModGen().generate(Global.getSector());
}
@Override
public void onApplicationLoad() throws ClassNotFoundException{
try {
Global.getSettings().getScriptClassLoader().loadClass("org.dark.shaders.util.ShaderLib");
} catch (ClassNotFoundException ex) {
return;
}
ShaderLib.init();
LightData.readLightDataCSV("data/lights/FD_light_data.csv");
}
public void onNewGame()
{
// Calling a separate method avoids duplicate code with onEnabled()
initFleaden();
}
@Override
public PluginPick<MissileAIPlugin> pickMissileAI(MissileAPI missile, ShipAPI launchingShip) {
switch (missile.getProjectileSpecId()) {
case MINE_ID:
return new PluginPick<MissileAIPlugin>(new Mine_AI(missile, launchingShip), CampaignPlugin.PickPriority.MOD_SET);
default:
return null;
}
}
}