Fractal Softworks Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

Starsector 0.9.1a is out! (05/10/19); Blog post: Skills and Story Points (07/08/19)

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Morrokain

Pages: [1] 2 3 4
1
As I have been playtesting Archean Order with .9.1a of Starsector, I noticed something different in how the AI combats fighters over prior updates.

They seem to almost completely ignore the "STRIKE,USE_VS_FRIGATES" or simply "STRIKE" AI tags now, unless they are within range of another enemy ship.

I can give you some videos if you like, but the AI uses Atropos torpedoes and ballistic strike weapons designed with very limited ammo storage against inconsequential fighters whenever other ships aren't present. This often locks them out of those weapons when the actual fight commences, and its frustrating.

If there is time in the future, I would really appreciate an AI tag that explicitly prevents those weapons from being used on fighters, literally ever. Never ever, ever.

Reasoning: There is never a good situation where that is viable in my mod since fighters are so flimsy and replaceable. To make matters worse, the Tachyon Lance is a "kill shot super weapon" with a 60 second cooldown. It is wasted on fighters more often than not even with the "STRIKE,USE_VS_FRIGATES" tag. I'm actually not really sure why on that one, since other ships are actually very much in range of 10,000 at the time. Yet still, it seems to prefer fighters...

Or, it will fire, then suddenly re-target to a fighter randomly from the ship it started its burst on.

2
Suggestions / Player Expectations and Early Game Balance
« on: March 03, 2019, 12:45:13 PM »
Overall I think the last few official updates have really helped to open up the early game's starting options.

There is a lot more nuance in what you can do to get a bit of cash flow, and that extends to a variety of play styles. You can trade effectively with missions both from the bar and intel, you can salvage what you find on the fringes of the car world and take on surveying missions if you want to explore to start, or you can get right into combat early on with paid bounties.

Though all of these options are possible and explicitly encouraged through their immediate and open representation on the mission board, in my opinion the difficulty between each option is a bit confusing to the new player right now.

Details (--CAUTION-- spoilers contained):
Spoiler
- The average starting pirate bounty is pretty strong with typically a couple to several vessels above a frigate present. That is at lv 0. A level above that can include capitals with mods, but I assume its far above the strength of the derelict equivalent.

 - The starting tiered derelict has only a couple frigates, on average, defending it. So if you are exploring you will need very little combat capability early on. Trading and bounty hunting both require a lot more by comparison.

 - The derelict survey vessels can be a large jump in strength from the probes with a lot more defenders present. So a salvager or explorer suddenly finds that they went from needing a frigate or two to several frigates and a destroyer.

 - Some bar missions leading to weapon caches, on the other hand, are guarded by high tier REDACTED and are within a star's corona. That is a really difficult encounter for a new player. To have a large enough fleet to deal with the defenders, the corona's effects get worse and more costly/difficult to manage.
[close]

Suggestions:

 - Like the fleet strength indicator added for the next update, maybe include something in the mission ui later down the line to give a general sense of the mission's difficulty.
 - I think starting encounters between play styles should roughly match each other in combat difficulty. Not 100% equal, maybe, but at least fairly close. Otherwise you run the risk of a new player unknowingly choosing a more difficult route simply because of role playing preferences. Though this point is less relevant if the player is explicitly made aware of that fact.

3
Modding / Blueprint Package Tiers
« on: January 03, 2019, 08:06:49 PM »
I recently familiarized myself with the wiki on blueprint modding and 0.9 compatibility to start campaign balance and though I have a pretty good understanding of how the blueprint system works in general and with faction spawning in the campaign.

I have a couple more questions about blueprint packages those sources don't completely cover:

How are blueprint packages, specifically, distributed to the player, and do they unlock everything in that package all at once or a single bp of the set?

Are they sold in markets? (I've browsed a few and haven't seen any). Can they be locked or unlocked with skills, or based on faction reputation such as with weapons bought wholesale? Or are they strictly limited to procgen (with the thing determining drop rate being the rare_bp tag) and raiding? I have created 3 tiers for each tech doctrine, and I want the first tier to be purchasable at favorable, the 2nd tier to unlock at welcoming and the 3rd tier to unlock only at "friendly" and above for specific factions.

4
Modding / [0.9a] Total Conversion Replace Array Resource (mod_info)
« on: December 14, 2018, 12:53:53 PM »
If you are working on a total conversion in starsector version .9 or above, changes to the way resource files are merged cause each base starsector file to attempt to merge with any mod files of the same name present in mod directories.

To get around this and truly have a total conversion, each individual file, along with its file path, must be included in the replace array inside mod_info. To save modders time, I will include all ship, skin, weapon, variant, and faction files inside the array alongside their csv files.

This will also include lines for a few other mod files in config and such that can be removed as needed. If your mod doesn't replace them, don't include them in the array.

Spoiler
  "replace":["data\\weapons\\weapon_data.csv",
          "data\\hulls\\ship_data.csv",
          "data\\hulls\\wing_data.csv",
          "data\\config\\title_screen_variants.csv",
          "data\\campaign\\sim_opponents.csv",
          "data\\campaign\\special_items.csv",
          "data\\campaign\\econ/aztlan.json",
          "data\\campaign\\econ/arcadia.json",
          "data\\campaign\\econ/askonia.json",
          "data\\campaign\\econ/eos.json",
          "data\\campaign\\econ/isirah.json",
          "data\\campaign\\econ/canaan.json",
          "data\\campaign\\econ/magec.json",
          "data\\campaign\\econ/naraka.json",
          "data\\campaign\\econ/valhalla.json",
          "data\\campaign\\econ/samarra.json",
          "data\\campaign\\econ/mayasura.json",
          "data\\campaign\\econ/thule.json",
          "data\\campaign\\econ/tyle.json",
          "data\\campaign\\econ/yma.json",
          "data\\campaign\\econ/zagan.json",
          "data\\shipsystems\\ship_systems.csv",
          "data\\strings\\descriptions.csv",
        "data\\characters\\skills\\helmsmanship.skill",
          "data\\world\\factions\\default_fleet_type_names.json",
          "data\\world\\factions\\default_ranks.json",
          "data\\world\\factions\\default_ship_roles.json",
          "data\\world\\factions\\pirates.faction",
          "data\\world\\factions\\neutral.faction",
          "data\\world\\factions\\hegemony.faction",
          "data\\world\\factions\\independent.faction",
          "data\\world\\factions\\player.faction",
          "data\\world\\factions\\sindrian_diktat.faction",
          "data\\world\\factions\\knights_of_ludd.faction",
          "data\\world\\factions\\luddic_church.faction",
          "data\\world\\factions\\luddic_path.faction",
          "data\\world\\factions\\persean_league.faction",
          "data\\world\\factions\\tritachyon.faction",
          "data\\world\\factions\\remnants.faction",
          "data\\world\\factions\\scavengers.faction",
          "data\\world\\factions\\lions_guard.faction",
          "data\\world\\factions\\derelict.faction",
          "data\\world\\factions\\poor.faction",
          "data\\world\\factions\\sleeper.faction",
   "data\\hulls\\skins\\brawler_pather.skin",
   "data\\hulls\\skins\\brawler_tritachyon.skin",
   "data\\hulls\\skins\\buffalo_d.skin",
   "data\\hulls\\skins\\buffalo_hegemony.skin",
   "data\\hulls\\skins\\buffalo_luddic_church.skin",
   "data\\hulls\\skins\\buffalo_pirates.skin",
   "data\\hulls\\skins\\buffalo_tritachyon.skin",
   "data\\hulls\\skins\\cerberus_d.skin",
   "data\\hulls\\skins\\cerberus_d_pirates.skin",
   "data\\hulls\\skins\\cerberus_luddic_path",
   "data\\hulls\\skins\\dominator_d.skin",
   "data\\hulls\\skins\\dominator_xiv.skin",
   "data\\hulls\\skins\\eagle_d.skin",
   "data\\hulls\\skins\\eagle_xiv.skin",
   "data\\hulls\\skins\\enforcer_d.skin",
   "data\\hulls\\skins\\enforcer_d_pirates.skin",
   "data\\hulls\\skins\\enforcer_xiv.skin",
   "data\\hulls\\skins\\falcon_d.skin",
   "data\\hulls\\skins\\falcon_p.skin",
   "data\\hulls\\skins\\falcon_xiv.skin",
   "data\\hulls\\skins\\hammerhead_d.skin",
   "data\\hulls\\skins\\hermes_d.skin",
   "data\\hulls\\skins\\hound_d.skin",
   "data\\hulls\\skins\\hound_d_pirates.skin",
   "data\\hulls\\skins\\hound_hegemony.skin",
   "data\\hulls\\skins\\hound_luddic_church.skin",
   "data\\hulls\\skins\\hound_luddic_path.skin",
   "data\\hulls\\skins\\kite_d.skin",
   "data\\hulls\\skins\\kite_hegemony.skin",
   "data\\hulls\\skins\\kite_luddic_path.skin",
   "data\\hulls\\skins\\kite_original.skin",
   "data\\hulls\\skins\\kite_pirates.skin",
   "data\\hulls\\skins\\lasher_d.skin",
   "data\\hulls\\skins\\lasher_pather.skin",
   "data\\hulls\\skins\\lasher_luddic_church.skin",
   "data\\hulls\\skins\\mercury_d.skin",
   "data\\hulls\\skins\\mudskipper2.skin",
   "data\\hulls\\skins\\mule_d.skin",
   "data\\hulls\\skins\\mule_d_pirates.skin",
   "data\\hulls\\skins\\onslaught_xiv",
   "data\\hulls\\skins\\sunder_d.skin",
   "data\\hulls\\skins\\tarsus_d.skin",
   "data\\hulls\\skins\\talon_tritachyon.skin",
   "data\\hulls\\skins\\afflictor_d_pirates.skin",
   "data\\hulls\\skins\\shade_d_pirates.skin",
   "data\\hulls\\skins\\wolf_d.skin",
   "data\\hulls\\skins\\wolf_d_pirates.skin",
   "data\\hulls\\skins\\wolf_hegemony.skin",
   "data\\hulls\\afflictor.ship",
   "data\\hulls\\apogee.ship",
   "data\\hulls\\astral.ship",
   "data\\hulls\\atlas.ship",
   "data\\hulls\\aurora.ship",
   "data\\hulls\\bastillon.ship",
   "data\\hulls\\berserker.ship",
   "data\\hulls\\brawler.ship",
   "data\\hulls\\brilliant.ship",
   "data\\hulls\\broadsword.ship",
   "data\\hulls\\buffalo.ship",
   "data\\hulls\\buffalo_mk2.ship",
   "data\\hulls\\centurion.ship",
   "data\\hulls\\claw.ship",
   "data\\hulls\\cobra.ship",
   "data\\hulls\\colossus.ship",
   "data\\hulls\\colossus2.ship",
   "data\\hulls\\colossus3.ship",
   "data\\hulls\\condor.ship",
   "data\\hulls\\conquest.ship",
   "data\\hulls\\constructionrig.ship",
   "data\\hulls\\dagger.ship",
   "data\\hulls\\derelict_mothership.ship",
   "data\\hulls\\derelict_mothership_bow_module.ship",
   "data\\hulls\\derelict_mothership_pod_engine_left.ship",
   "data\\hulls\\derelict_mothership_pod_m_left.ship",
   "data\\hulls\\derelict_mothership_pod_m_right.ship",
   "data\\hulls\\derelict_mothership_pod_s_right.ship",
   "data\\hulls\\derelict_mothership_sensor_mast.ship",
   "data\\hulls\\dominator.ship",
   "data\\hulls\\doom.ship",
   "data\\hulls\\dram.ship",
   "data\\hulls\\drone_assault.ship",
   "data\\hulls\\drone_borer.ship",
   "data\\hulls\\drone_pd.ship",
   "data\\hulls\\drone_pd_midline.ship",
   "data\\hulls\\drone_sensor.ship",
   "data\\hulls\\drone_terminator.ship",
   "data\\hulls\\drover.ship",
   "data\\hulls\\eagle.ship",
   "data\\hulls\\enforcer.ship",
   "data\\hulls\\falcon.ship",
   "data\\hulls\\flare.ship",
   "data\\hulls\\flash.ship",
   "data\\hulls\\fulgent.ship",
   "data\\hulls\\gargoyle.ship",
   "data\\hulls\\gemini.ship",
   "data\\hulls\\gladius.ship",
   "data\\hulls\\glimmer.ship",
   "data\\hulls\\gremlin.ship",
   "data\\hulls\\gryphon.ship",
   "data\\hulls\\guardian.ship",
   "data\\hulls\\hammerhead.ship",
   "data\\hulls\\harbringer.ship",
   "data\\hulls\\hermes.ship",
   "data\\hulls\\heron.ship",
   "data\\hulls\\hoplon.ship",
   "data\\hulls\\hound.ship",
   "data\\hulls\\hyperion.ship",
   "data\\hulls\\kite.ship",
   "data\\hulls\\lasher.ship",
   "data\\hulls\\legion.ship",
   "data\\hulls\\longbow.ship",
   "data\\hulls\\lumen.ship",
   "data\\hulls\\lux.ship",
   "data\\hulls\\medusa.ship",
   "data\\hulls\\mercury.ship",
   "data\\hulls\\merlon.ship",
   "data\\hulls\\mining_drone.ship",
   "data\\hulls\\module_armour1.ship",
   "data\\hulls\\module_armour3.ship",
   "data\\hulls\\module_armour2.ship",
   "data\\hulls\\module_armour4.ship",
   "data\\hulls\\module_armour5.ship",
   "data\\hulls\\module_bastion_pd1.ship",
   "data\\hulls\\module_bastion_pd1_lowtech.ship",
   "data\\hulls\\module_bastion1_lowtech.ship",
   "data\\hulls\\module_blocker1.ship",
   "data\\hulls\\module_blocker2.ship",
   "data\\hulls\\module_blocker2b.ship",
   "data\\hulls\\module_blocker2c.ship",
   "data\\hulls\\module_citadel1_lowtech.ship",
   "data\\hulls\\module_decor_midline1.ship",
   "data\\hulls\\module_decor_midline2.ship",
   "data\\hulls\\module_hightech_armour.ship",
   "data\\hulls\\module_hightech_attack.ship",
   "data\\hulls\\module_hightech_citadel.ship",
   "data\\hulls\\module_hightech_decor.ship",
   "data\\hulls\\module_hightech_hangar.ship",
   "data\\hulls\\module_hightech_shield.ship",
   "data\\hulls\\module_hightech_strut.ship",
   "data\\hulls\\module_large1_lowtech.ship",
   "data\\hulls\\module_large2_lowtech.ship",
   "data\\hulls\\module_midline_bastion.ship",
   "data\\hulls\\module_midline_broadside.ship",
   "data\\hulls\\module_midline_citadel.ship",
   "data\\hulls\\module_midline_support.ship",
   "data\\hulls\\monitor.ship",
   "data\\hulls\\mora.ship",
   "data\\hulls\\mudskipper.ship",
   "data\\hulls\\mule.ship",
   "data\\hulls\\nebula.ship",
   "data\\hulls\\omen.ship",
   "data\\hulls\\ox.ship",
   "data\\hulls\\odyssey.ship",
   "data\\hulls\\onslaught.ship",
   "data\\hulls\\paragon.ship",
   "data\\hulls\\perdition.ship",
   "data\\hulls\\phaeton.ship",
   "data\\hulls\\picket.ship",
   "data\\hulls\\piranha.ship",
   "data\\hulls\\platform1.ship",
   "data\\hulls\\prometheus.ship",
   "data\\hulls\\radiant.ship",
   "data\\hulls\\rampart.ship",
   "data\\hulls\\ravelin.ship",
   "data\\hulls\\remnant_armour1.ship",
   "data\\hulls\\remnant_armour2.ship",
   "data\\hulls\\remnant_armour3.ship",
   "data\\hulls\\remnant_hangar1.ship",
   "data\\hulls\\remnant_shield1.ship",
   "data\\hulls\\remnant_shield2.ship",
   "data\\hulls\\remnant_station1.ship",
   "data\\hulls\\remnant_station2.ship",
   "data\\hulls\\remnant_weapon_platform1.ship",
   "data\\hulls\\remnant_weapon_platform2.ship",
   "data\\hulls\\remnant_weapon_platform3.ship",
   "data\\hulls\\scarab.ship",
   "data\\hulls\\scintilla.ship",
   "data\\hulls\\sentry.ship",
   "data\\hulls\\shade.ship",
   "data\\hulls\\shepherd.ship",
   "data\\hulls\\shrike.ship",
   "data\\hulls\\shuttlepod.ship",
   "data\\hulls\\spark.ship",
   "data\\hulls\\starliner.ship",
   "data\\hulls\\station_small.ship",
   "data\\hulls\\station1.ship",
   "data\\hulls\\station1_hightech.ship",
   "data\\hulls\\station1_midline.ship",
   "data\\hulls\\station2.ship",
   "data\\hulls\\station2_hightech.ship",
   "data\\hulls\\station2_midline.ship",
   "data\\hulls\\station3.ship",
   "data\\hulls\\station3_hightech.ship",
   "data\\hulls\\station3_midline.ship",
   "data\\hulls\\sunder.ship",
   "data\\hulls\\talon.ship",
   "data\\hulls\\tarsus.ship",
   "data\\hulls\\tempest.ship",
   "data\\hulls\\thunder.ship",
   "data\\hulls\\trident.ship",
   "data\\hulls\\valkyrie.ship",
   "data\\hulls\\venture.ship",
   "data\\hulls\\vigilance.ship",
   "data\\hulls\\warden.ship",
   "data\\hulls\\warhound.ship",
   "data\\hulls\\warthog.ship",
   "data\\hulls\\wasp.ship",
   "data\\hulls\\wayfarer.ship",
   "data\\hulls\\wolf.ship",
   "data\\hulls\\xyphos.ship",
   "data\\weapons\\amblaster.wpn",
   "data\\weapons\\annihilator.wpn",
   "data\\weapons\\annihilator_fighter.wpn",
   "data\\weapons\\annihilatorpod.wpn",
   "data\\weapons\\arbalest.wpn",
   "data\\weapons\\atropos.wpn",
   "data\\weapons\\atropos_single.wpn",
   "data\\weapons\\autopulse.wpn",
   "data\\weapons\\bomb.wpn",
   "data\\weapons\\chaingun.wpn",
   "data\\weapons\\clusterbomb.wpn",
   "data\\weapons\\cyclone.wpn",
   "data\\weapons\\devastator.wpn",
   "data\\weapons\\dualflak.wpn",
   "data\\weapons\\flak.wpn",
   "data\\weapons\\fragbomb.wpn",
   "data\\weapons\\gauss.wpn",
   "data\\weapons\\gravitonbeam.wpn",
   "data\\weapons\\guardian.wpn",
   "data\\weapons\\hammer.wpn",
   "data\\weapons\\hammer_single.wpn",
   "data\\weapons\\hammerrack.wpn",
   "data\\weapons\\harpoon.wpn",
   "data\\weapons\\harpoon_single.wpn",
   "data\\weapons\\harpoonpod.wpn",
   "data\\weapons\\heatseeker.wpn",
   "data\\weapons\\heavyac.wpn",
   "data\\weapons\\heavyblaster.wpn",
   "data\\weapons\\heavymauler.wpn",
   "data\\weapons\\heavymg.wpn",
   "data\\weapons\\heavymortar.wpn",
   "data\\weapons\\heavyneedler.wpn",
   "data\\weapons\\hellbore.wpn",
   "data\\weapons\\hephag.wpn",
   "data\\weapons\\hil.wpn",
   "data\\weapons\\hurricane.wpn",
   "data\\weapons\\hveldriver.wpn",
   "data\\weapons\\interdictorbeam.wpn",
   "data\\weapons\\ionbeam.wpn",
   "data\\weapons\\ioncannon.wpn",
   "data\\weapons\\ioncannon_fighter.wpn",
   "data\\weapons\\ionpulser.wpn",
   "data\\weapons\\irpulse.wpn",
   "data\\weapons\\irpulse_fighter.wpn",
   "data\\weapons\\lightac.wpn",
   "data\\weapons\\lightag.wpn",
   "data\\weapons\\lightdualac.wpn",
   "data\\weapons\\lightdualmg.wpn",
   "data\\weapons\\lightmg.wpn",
   "data\\weapons\\lightmortar.wpn",
   "data\\weapons\\lightneedler.wpn",
   "data\\weapons\\locust.wpn",
   "data\\weapons\\lrpdlaser.wpn",
   "data\\weapons\\mark9.wpn",
   "data\\weapons\\minelayer1.wpn",
   "data\\weapons\\minelayer2.wpn",
   "data\\weapons\\miningblaster.wpn",
   "data\\weapons\\mininglaser.wpn",
   "data\\weapons\\mjolnir.wpn",
   "data\\weapons\\multineedler.wpn",
   "data\\weapons\\pdburst.wpn",
   "data\\weapons\\pdlaser.wpn",
   "data\\weapons\\phasebeam.wpn",
   "data\\weapons\\phasecl.wpn",
   "data\\weapons\\phasecl_bomber.wpn",
   "data\\weapons\\pilum.wpn",
   "data\\weapons\\plasma.wpn",
   "data\\weapons\\pulselaser.wpn",
   "data\\weapons\\railgun.wpn",
   "data\\weapons\\reaper.wpn",
   "data\\weapons\\sabot.wpn",
   "data\\weapons\\sabot_single.wpn",
   "data\\weapons\\sabotpod.wpn",
   "data\\weapons\\salamanderpod.wpn",
   "data\\weapons\\shredder.wpn",
   "data\\weapons\\squall.wpn",
   "data\\weapons\\swarmer.wpn",
   "data\\weapons\\swarmer_fighter.wpn",
   "data\\weapons\\tachyonlance.wpn",
   "data\\weapons\\taclaser.wpn",
   "data\\weapons\\tpc.wpn",
   "data\\weapons\\typhoon.wpn",
   "data\\weapons\\vulcan.wpn",
   "data\\weapons\\proj\\amblaster_shot.proj",
   "data\\weapons\\proj\\annihilator_rocket.proj",
   "data\\weapons\\proj\\arbalest_shot.proj",
   "data\\weapons\\proj\\atropos_torp.proj",
   "data\\weapons\\proj\\autopulse_shot.proj",
   "data\\weapons\\proj\\bomb_proj.proj",
   "data\\weapons\\proj\\chaingun_shot.proj",
   "data\\weapons\\proj\\clusterbomb_proj.proj",
   "data\\weapons\\proj\\devastator_shot.proj",
   "data\\weapons\\proj\\dualflak_shot.proj",
   "data\\weapons\\proj\\flak_shot.proj",
   "data\\weapons\\proj\\fragbomb_proj.proj",
   "data\\weapons\\proj\\gauss_shot.proj",
   "data\\weapons\\proj\\hammer_torp.proj",
   "data\\weapons\\proj\\harpoon_mrm.proj",
   "data\\weapons\\proj\\heatseeker_mrm.proj",
   "data\\weapons\\proj\\heavyac_shot.proj",
   "data\\weapons\\proj\\heavyblaster_shot.proj",
   "data\\weapons\\proj\\heavymauler_shot.proj",
   "data\\weapons\\proj\\heavymg_shot.proj",
   "data\\weapons\\proj\\heavymortar_shot.proj",
   "data\\weapons\\proj\\heavyneedler_shot.proj",
   "data\\weapons\\proj\\hellbore_shot.proj",
   "data\\weapons\\proj\\hephag_shot.proj",
   "data\\weapons\\proj\\hveldriver_shot.proj",
   "data\\weapons\\proj\\ioncannon_shot.proj",
   "data\\weapons\\proj\\ionpulser_shot.proj",
   "data\\weapons\\proj\\irpulse_shot.proj",
   "data\\weapons\\proj\\lightac_shot.proj",
   "data\\weapons\\proj\\lightag_shot.proj",
   "data\\weapons\\proj\\lightdualac_shot.proj",
   "data\\weapons\\proj\\lightmg_shot.proj",
   "data\\weapons\\proj\\lightmortar_shot.proj",
   "data\\weapons\\proj\\lightneedler_shot.proj",
   "data\\weapons\\proj\\locust_srm.proj",
   "data\\weapons\\proj\\mark9_shot.proj",
   "data\\weapons\\proj\\minelayer_mine.proj",
   "data\\weapons\\proj\\minelayer_mine_heavy.proj",
   "data\\weapons\\proj\\miningblaster_shot.proj",
   "data\\weapons\\proj\\mirv_warhead.proj",
   "data\\weapons\\proj\\mjolnir_shot.proj",
   "data\\weapons\\proj\\multineedler_shot.proj",
   "data\\weapons\\proj\\phase_charge.proj",
   "data\\weapons\\proj\\plasma_shot.proj",
   "data\\weapons\\proj\\pulselaser_shot.proj",
   "data\\weapons\\proj\\railgun_shot.proj",
   "data\\weapons\\proj\\reaper_torp.proj",
   "data\\weapons\\proj\\sabot_srm.proj",
   "data\\weapons\\proj\\shredder_shot.proj",
   "data\\weapons\\proj\\squall_rocket.proj",
   "data\\weapons\\proj\\sabot_warhead.proj",
   "data\\weapons\\proj\\tachyonlance_shot.proj",
   "data\\weapons\\proj\\tpc_shot.proj",
   "data\\weapons\\proj\\type_1_lrm.proj",
   "data\\weapons\\proj\\type_1_mirv.proj",
   "data\\weapons\\proj\\type_1_mirv_empty.proj",
   "data\\weapons\\proj\\type_1_srm.proj",
   "data\\weapons\\proj\\vulcan_shot.proj",
   "data\\variants\\aurora\\aurora_Assault.variant",
   "data\\variants\\aurora\\aurora_Assault_Support.variant",
   "data\\variants\\aurora\\aurora_Balanced.variant",
   "data\\variants\\aurora\\aurora_Escort.variant",
   "data\\variants\\aurora\\aurora_FS.variant",
   "data\\variants\\aurora\\aurora_Strike.variant",
   "data\\variants\\brawler\\brawler_pather_Raider.variant",
   "data\\variants\\brawler\\brawler_tritachyon_Standard.variant",
   "data\\variants\\buffalo\\buffalo_d_Standard.variant",
   "data\\variants\\buffalo\\buffalo_hegemony_Standard.variant",
   "data\\variants\\buffalo\\buffalo_luddic_church_Standard.variant",
   "data\\variants\\buffalo\\buffalo_pirates_Standard.variant",
   "data\\variants\\buffalo\\buffalo_Standard.variant",
   "data\\variants\\buffalo\\buffalo_tritachyon_Standard.variant",
   "data\\variants\\centurion\\centurion_Assault.variant",
   "data\\variants\\centurion\\centurion_Starting.variant",
   "data\\variants\\cerberus\\cerberus_d_pirates_Shielded.variant",
   "data\\variants\\cerberus\\cerberus_d_pirates_Standard.variant",
   "data\\variants\\cerberus\\cerberus_d_Standard.variant",
   "data\\variants\\cerberus\\cerberus_Hardened.variant",
   "data\\variants\\cerberus\\cerberus_luddic_path_Attack.variant",
   "data\\variants\\cerberus\\cerberus_Overdriven.variant",
   "data\\variants\\cerberus\\cerberus_Shielded.variant",
   "data\\variants\\cerberus\\cerberus_Standard.variant",
   "data\\variants\\cerberus\\cerberus_Starting.variant",
   "data\\variants\\conquest\\conquest_Elite.variant",
   "data\\variants\\conquest\\conquest_Standard.variant",
   "data\\variants\\derelict\\derelict_mothership_bow_module_Standard.variant",
   "data\\variants\\derelict\\derelict_mothership_pod_engine_left_Standard.variant",
   "data\\variants\\derelict\\derelict_mothership_pod_m_left_Standard.variant",
   "data\\variants\\derelict\\derelict_mothership_pod_m_right_Standard.variant",
   "data\\variants\\derelict\\derelict_mothership_pod_s_right_Standard.variant",
   "data\\variants\\derelict\\derelict_mothership_sensor_mast_Standard.variant",
   "data\\variants\\derelict\\guardian_Standard.variant",
   "data\\variants\\derelict\\rampart_Standard.variant",
   "data\\variants\\dominator\\dominator_AntiCV.variant",
   "data\\variants\\dominator\\dominator_Assault.variant",
   "data\\variants\\dominator\\dominator_d_Assault.variant",
   "data\\variants\\dominator\\dominator_Fighter_Support.variant",
   "data\\variants\\dominator\\dominator_Outdated.variant",
   "data\\variants\\dominator\\dominator_Support.variant",
   "data\\variants\\dominator\\dominator_XIV_Elite.variant",
   "data\\variants\\drones\\drone_assault.variant",
   "data\\variants\\drones\\drone_borer.variant",
   "data\\variants\\drones\\drone_pd.variant",
   "data\\variants\\drones\\drone_pd_midline.variant",
   "data\\variants\\drones\\drone_sensor.variant",
   "data\\variants\\drones\\drone_terminator.variant",
   "data\\variants\\eagle\\eagle_Assault.variant",
   "data\\variants\\eagle\\eagle_Balanced.variant",
   "data\\variants\\eagle\\eagle_d_Assault.variant",
   "data\\variants\\eagle\\eagle_xiv_Elite.variant",
   "data\\variants\\enforcer\\enforcer_Assault.variant",
   "data\\variants\\enforcer\\enforcer_Balanced.variant",
   "data\\variants\\enforcer\\enforcer_CS.variant",
   "data\\variants\\enforcer\\enforcer_d_pirates_Strike.variant",
   "data\\variants\\enforcer\\enforcer_d_Strike.variant",
   "data\\variants\\enforcer\\enforcer_Elite.variant",
   "data\\variants\\enforcer\\enforcer_Escort.variant",
   "data\\variants\\enforcer\\enforcer_Fighter_Support.variant",
   "data\\variants\\enforcer\\enforcer_Outdated.variant",
   "data\\variants\\enforcer\\enforcer_Overdriven.variant",
   "data\\variants\\enforcer\\enforcer_XIV_Elite.variant",
   "data\\variants\\falcon\\falcon_Attack.variant",
   "data\\variants\\falcon\\falcon_CS.variant",
   "data\\variants\\falcon\\falcon_d_CS.variant",
   "data\\variants\\falcon\\falcon_p_Strike.variant",
   "data\\variants\\falcon\\falcon_xiv_Elite.variant",
   "data\\variants\\falcon\\falcon_xiv_Escort.variant",
   "data\\variants\\fighters\\broadsword_Fighter.variant",
   "data\\variants\\fighters\\claw_Fighter.variant",
   "data\\variants\\fighters\\cobra_Bomber.variant",
   "data\\variants\\fighters\\dagger_Bomber.variant",
   "data\\variants\\fighters\\gladius_Fighter.variant",
   "data\\variants\\fighters\\khopesh_Bomber.variant",
   "data\\variants\\fighters\\longbow_Support.variant",
   "data\\variants\\fighters\\mining_drone_Standard.variant",
   "data\\variants\\fighters\\perdition_Bomber.variant",
   "data\\variants\\fighters\\piranha_Bomber.variant",
   "data\\variants\\fighters\\talon_Interceptor.variant",
   "data\\variants\\fighters\\thunder_Fighter.variant",
   "data\\variants\\fighters\\trident_Bomber.variant",
   "data\\variants\\fighters\\warthog_Fighter.variant",
   "data\\variants\\fighters\\wasp_Interceptor.variant",
   "data\\variants\\fighters\\xyphos_Fighter.variant",
   "data\\variants\\gryphon\\gryphon_FS.variant",
   "data\\variants\\gryphon\\gryphon_Standard.variant",
   "data\\variants\\hammerhead\\hammerhead_Balanced.variant",
   "data\\variants\\hammerhead\\hammerhead_d_CS.variant",
   "data\\variants\\hammerhead\\hammerhead_Elite.variant",
   "data\\variants\\hammerhead\\hammerhead_Overdriven.variant",
   "data\\variants\\hammerhead\\hammerhead_Support.variant",
   "data\\variants\\hammerhead\\hammerhead_Tutorial.variant",
   "data\\variants\\harbinger\\harbinger_Strike.variant",
   "data\\variants\\hermes\\hermes_d_Standard.variant",
   "data\\variants\\hermes\\hermes_FS.variant",
   "data\\variants\\hermes\\hermes_Standard.variant",
   "data\\variants\\hound\\hound_d_pirates_Shielded.variant",
   "data\\variants\\hound\\hound_d_pirates_Standard.variant",
   "data\\variants\\hound_d_pirates_Overdriven.variant",
   "data\\variants\\hound\\hound_d_Standard.variant",
   "data\\variants\\hound\\hound_hegemony_Standard.variant",
   "data\\variants\\hound\\hound_luddic_church_Standard.variant",
   "data\\variants\\hound\\hound_luddic_path_Attack.variant",
   "data\\variants\\hound\\hound_Overdriven.variant",
   "data\\variants\\hound\\hound_Standard.variant",
   "data\\variants\\kite\\kite_Interceptor.variant",
   "data\\variants\\kite\\kite_luddic_path_Raider.variant",
   "data\\variants\\kite\\kite_luddic_path_Strike.variant",
   "data\\variants\\kite\\kite_pirates_Raider.variant",
   "data\\variants\\kite\\kite_Standard.variant",
   "data\\variants\\kite\\kite_Starting.variant",
   "data\\variants\\kite\\kite_Stock.variant",
   "data\\variants\\kite\\kite_Support.variant",
   "data\\variants\\lasher\\lasher_Assault.variant",
   "data\\variants\\lasher\\lasher_CS.variant",
   "data\\variants\\lasher\\lasher_d_CS.variant",
   "data\\variants\\lasher\\lasher_luddic_church_Standard.variant",
   "data\\variants\\lasher\\lasher_luddic_path_Raider.variant",
   "data\\variants\\lasher\\lasher_Overdriven.variant",
   "data\\variants\\lasher\\lasher_PD.variant",
   "data\\variants\\lasher\\lasher_Standard.variant",
   "data\\variants\\lasher\\lasher_Starting.variant",
   "data\\variants\\lasher\\lasher_Strike.variant",
   "data\\variants\\legion\\legion_Assault.variant",
   "data\\variants\\legion\\legion_Escort.variant",
   "data\\variants\\legion\\legion_FS.variant",
   "data\\variants\\legion\\legion_Strike.variant",
   "data\\variants\\legion\\legion_xiv_Elite.variant",
   "data\\variants\\mercury\\mercury_Attack.variant",
   "data\\variants\\mercury\\mercury_d_Standard.variant",
   "data\\variants\\mercury\\mercury_FS.variant",
   "data\\variants\\mercury\\mercury_PD.variant",
   "data\\variants\\mercury\\mercury_Standard.variant",
   "data\\variants\\mora\\mora_Assault.variant",
   "data\\variants\\mora\\mora_Strike.variant",
   "data\\variants\\mora\\mora_Support.variant",
   "data\\variants\\mule\\mule_d_pirates_Smuggler.variant",
   "data\\variants\\mule\\mule_d_pirates_Standard.variant",
   "data\\variants\\mule\\mule_d_Standard.variant",
   "data\\variants\\mule\\mule_Fighter_Support.variant",
   "data\\variants\\mule\\mule_Standard.variant",
   "data\\variants\\mule\\mule_Starting.variant",
   "data\\variants\\onslaught\\onslaught_Elite.variant",
   "data\\variants\\onslaught\\onslaught_Standard.variant",
   "data\\variants\\onslaught\\onslaught_Outdated.variant",
   "data\\variants\\onslaught\\onslaught_xiv_Elite.variant",
   "data\\variants\\paragon\\paragon_Elite.variant",
   "data\\variants\\paragon\\paragon_Escort.variant",
   "data\\variants\\paragon\\paragon_Raider.variant",
   "data\\variants\\remnant\\brilliant_Standard.variant",
   "data\\variants\\remnant\\flash_Bomber.variant",
   "data\\variants\\remnant\\fulgent_Assault.variant",
   "data\\variants\\remnant\\fulgent_Support.variant",
   "data\\variants\\remnant\\glimmer_Assault.variant",
   "data\\variants\\remnant\\glimmer_Support.variant",
   "data\\variants\\remnant\\lumen_Standard.variant",
   "data\\variants\\remnant\\lux_Fighter.variant",
   "data\\variants\\remnant\\radiant_Standard.variant",
   "data\\variants\\remnant\\radiant_Strike.variant",
   "data\\variants\\remnant\\remnant_armour1_Standard.variant",
   "data\\variants\\remnant\\remnant_armour2_Standard.variant",
   "data\\variants\\remnant\\remnant_armour3_Standard.variant",
   "data\\variants\\remnant\\remnant_hangar1_Standard.variant",
   "data\\variants\\remnant\\remnant_hangar1_Strike.variant",
   "data\\variants\\remnant\\remnant_shield1_Standard.variant",
   "data\\variants\\remnant\\remnant_shield2_Standard.variant",
   "data\\variants\\remnant\\remnant_weapon_platform1_Standard.variant",
   "data\\variants\\remnant\\remnant_weapon_platform2_Standard.variant",
   "data\\variants\\remnant\\remnant_weapon_platform3_Standard.variant",
   "data\\variants\\remnant\\scintilla_Strike.variant",
   "data\\variants\\remnant\\scintilla_Support.variant",
   "data\\variants\\remnant\\spark_Interceptor.variant",
   "data\\variants\\scarab\\scarab_Experimental.variant",
   "data\\variants\\scarab\\scarab_Starting.variant",
   "data\\variants\\stations\\gargoyle_Standard.variant",
   "data\\variants\\stations\\merlon_Standard.variant",
   "data\\variants\\stations\\module_armour1_Standard.variant",
   "data\\variants\\stations\\module_armour2_Standard.variant",
   "data\\variants\\stations\\module_armour3_Standard.variant",
   "data\\variants\\stations\\module_armour4_Standard.variant",
   "data\\variants\\stations\\module_armour5_Standard.variant",
   "data\\variants\\stations\\module_bastion_pd1_Standard.variant",
   "data\\variants\\stations\\module_bastion1_lowtech_Standard.variant",
   "data\\variants\\stations\\module_blocker1_Standard.variant",
   "data\\variants\\stations\\module_blocker2_Standard.variant",
   "data\\variants\\stations\\module_blocker2b_Standard.variant",
   "data\\variants\\stations\\module_blocker2c_Standard.variant",
   "data\\variants\\stations\\module_citadel1_lowtech_Standard.variant",
   "data\\variants\\stations\\module_decor_midline1_Standard.variant",
   "data\\variants\\stations\\module_decor_midline2_Standard.variant",
   "data\\variants\\stations\\module_hightech_armour_Standard.variant",
   "data\\variants\\stations\\module_hightech_attack_minelayer_Standard.variant",
   "data\\variants\\stations\\module_hightech_attack_Standard.variant",
   "data\\variants\\stations\\module_hightech_citadel_Standard.variant",
   "data\\variants\\stations\\module_hightech_hangar_Standard.variant",
   "data\\variants\\stations\\module_hightech_shield_Standard.variant",
   "data\\variants\\stations\\module_hightech_strut_Standard.variant",
   "data\\variants\\stations\\module_large1_lowtech_Standard.variant",
   "data\\variants\\stations\\module_large2_lowtech_Standard.variant",
   "data\\variants\\stations\\module_midline_bastion_Standard1.variant",
   "data\\variants\\stations\\module_midline_bastion_Standard2.variant",
   "data\\variants\\stations\\module_midline_broadside_Standard.variant",
   "data\\variants\\stations\\module_midline_citadel_Standard.variant",
   "data\\variants\\stations\\module_midline_support_Standard.variant",
   "data\\variants\\stations\\platform1_Standard.variant",
   "data\\variants\\stations\\ravelin_Standard.variant",
   "data\\variants\\stations\\remnant_station2_Damaged.variant",
   "data\\variants\\stations\\remnant_station2_Standard.variant",
   "data\\variants\\stations\\station_derelict_survey_mothership_Standard.variant",
   "data\\variants\\stations\\station_small_Standard.variant",
   "data\\variants\\stations\\station1_hightech_Standard.variant",
   "data\\variants\\stations\\station1_midline_Standard.variant",
   "data\\variants\\stations\\station1_Standard.variant",
   "data\\variants\\stations\\station2_hightech_Standard.variant",
   "data\\variants\\stations\\station2_midline_Standard.variant",
   "data\\variants\\stations\\station2_Standard.variant",
   "data\\variants\\stations\\station3_hightech_Standard.variant",
   "data\\variants\\stations\\station3_midline_Standard.variant",
   "data\\variants\\stations\\station3_Standard.variant",
   "data\\variants\\sunder\\sunder_Assault.variant",
   "data\\variants\\sunder\\sunder_CS.variant",
   "data\\variants\\sunder\\sunder_d_Assault.variant",
   "data\\variants\\sunder\\sunder_Overdriven.variant",
   "data\\variants\\tarsus\\tarsus_d_Standard.variant",
   "data\\variants\\tarsus\\tarsus_Standard.variant",
   "data\\variants\\venture\\venture_Balanced.variant",
   "data\\variants\\venture\\venture_Outdated.variant",
   "data\\variants\\wayfarer\\wayfarer_Standard.variant",
   "data\\variants\\wayfarer\\wayfarer_Starting.variant",
   "data\\variants\\wolf\\wolf_Assault.variant",
   "data\\variants\\wolf\\wolf_CS.variant",
   "data\\variants\\wolf\\wolf_d_Attack.variant",
   "data\\variants\\wolf\\wolf_d_pirates_Attack.variant",
   "data\\variants\\wolf\\wolf_hegemony_Assault.variant",
   "data\\variants\\wolf\\wolf_hegemony_CS.variant",
   "data\\variants\\wolf\\wolf_hegemony_PD.variant",
   "data\\variants\\wolf\\wolf_Overdriven.variant",
   "data\\variants\\wolf\\wolf_PD.variant",
   "data\\variants\\wolf\\wolf_Starting.variant",
   "data\\variants\\wolf\\wolf_Strike.variant",
   "data\\variants\\afflictor_d_pirates_Strike.variant",
   "data\\variants\\afflictor_Strike.variant",
   "data\\variants\\apogee_Balanced.variant",
   "data\\variants\\apogee_Starting.variant",
   "data\\variants\\astral_Attack.variant",
   "data\\variants\\astral_Elite.variant",
   "data\\variants\\astral_Strike.variant",
   "data\\variants\\atlas_Standard.variant",
   "data\\variants\\bastillon_Standard.variant",
   "data\\variants\\berserker_Assault.variant",
   "data\\variants\\brawler_Assault.variant",
   "data\\variants\\brawler_Elite.variant",
   "data\\variants\\brawler_Starting.variant",
   "data\\variants\\buffalo2_Fighter_Support.variant",
   "data\\variants\\buffalo2_FS.variant",
   "data\\variants\\colossus_Standard.variant",
   "data\\variants\\colossus2_Pather.variant",
   "data\\variants\\colossus3_Pirate.variant",
   "data\\variants\\condor_Attack.variant",
   "data\\variants\\condor_Strike.variant",
   "data\\variants\\condor_Support.variant",
   "data\\variants\\crig_Standard.variant",
   "data\\variants\\defender_PD.variant",
   "data\\variants\\doom_Strike.variant",
   "data\\variants\\dram_Light.variant",
   "data\\variants\\doom_Support.variant",
   "data\\variants\\drover_Starting.variant",
   "data\\variants\\drover_Strike.variant",
   "data\\variants\\gemini_Standard.variant",
   "data\\variants\\gremlin_d_pirates_Strike.variant",
   "data\\variants\\gremlin_luddic_path_Strike.variant",
   "data\\variants\\gremlin_Strike.variant",
   "data\\variants\\heron_Attack.variant",
   "data\\variants\\heron_Strike.variant",
   "data\\variants\\hound_d_pirates_Overdriven.variant",
   "data\\variants\\hyperion_Attack.variant",
   "data\\variants\\hyperion_Strike.variant",
   "data\\variants\\medusa_Attack.variant",
   "data\\variants\\medusa_CS.variant",
   "data\\variants\\medusa_PD.variant",
   "data\\variants\\medusa_Starting.variant",
   "data\\variants\\monitor_Escort.variant",
   "data\\variants\\monitor_Starting.variant",
   "data\\variants\\mudskipper_Standard.variant",
   "data\\variants\\mudskipper2_CS.variant",
   "data\\variants\\mudskipper2_Hellbore.variant",
   "data\\variants\\nebula_Standard.variant",
   "data\\variants\\odyssey_Balanced.variant",
   "data\\variants\\omen_PD.variant",
   "data\\variants\\ox_Standard.variant",
   "data\\variants\\phaeton_Standard.variant",
   "data\\variants\\picket_Assault.variant",
   "data\\variants\\prometheus_Super.variant",
   "data\\variants\\sentry_FS.variant",
   "data\\variants\\shade_Assault.variant",
   "data\\variants\\shade_d_pirates_Assault.variant",
   "data\\variants\\shepherd_Frontier.variant",
   "data\\variants\\shepherd_Starting.variant",
   "data\\variants\\shrike_Attack.variant",
   "data\\variants\\shrike_Support.variant",
   "data\\variants\\starliner_Standard.variant",
   "data\\variants\\tempest_Attack.variant",
   "data\\variants\\tempest_Starting.variant",
   "data\\variants\\valkyrie_Elite.variant",
   "data\\variants\\vigilance_AP.variant",
   "data\\variants\\vigilance_FS.variant",
   "data\\variants\\vigilance_Standard.variant",
   "data\\variants\\vigilance_Starting.variant",
   "data\\variants\\vigilance_Strike.variant",
   "data\\variants\\warden_Defense.variant"]
[close]

5
Bug Reports & Support / Disappearing fighter wings
« on: February 25, 2018, 12:00:25 PM »
Built-In fighter wings on ships present in the player's fleet that share ids with active inventory fighter wings cause those wings in the inventory to vanish when visiting the refit screen.

In vanilla, this shouldn't be a huge issue, at least for the moment. Can't remember, does any ship have built in mining drones? If so, then mining drones may disappear. Still, figured I'd report it.

6


Download
Main Mod Directory


Older versions

Download and Installation Instructions for New Players
Spoiler
   -   Upon downloading the mod by clicking the link above, unzip it and click through the folders until viewing a single folder above all the data. (So the file path would read "Archean Order TC v0.8.1a/data" etc)

   -   Next, drag the folders to the "Mods" directory. It should be located under something like: "C Drive/Program Files/Fractal Softworks/Starsector/Mods" See the image in the spoiler below for an example of what the final installation directory should look like.

Spoiler
-
[close]


   -   Run the game. When the first screen appears, at the very bottom click "Mods" and a list of installed mods should appear. As long as you followed the above steps, you should see "Archean Order". For reference see the photos below in the spoiler.

Spoiler
-
[close]

   -   As displayed in the image above, other mods you may have installed will also show up here (utility mods may still be selected).

   -   However, "Archean Order" is a TOTAL CONVERSION and will NOT work with the majority of other mods due to its comprehensive editing of core files.

   -   If you think some of the "lighter touch" mods that may still work and could provide additional fun, set "totalConversion" to false in the mod_info.json file located in the primary mod directory.

   -   Still, I would advise against such mod-merging attempts as they may cause unintended issues.

   -   Checkbox "Archean Order" (utility mods not advised without prior knowledge) as shown in the above image, and be sure all other mods are unchecked. This should happen automatically. Click "Save".

   -   Click "Play Starsector" and enjoy the Archean Order mod!
[close]


Mod Features
     -     More Dialogue Options for Fleet Encounters
            - >   Request commodities and war funds from anyone you meet.
            - >   Negotiate cease-fires with hostile captains or bribe your way out of combat situations.
            - >   Demand commodities or payment from fleets using your strength and influence.
            - >   Get tactical advice from your officers, who will have an opinion of you that will effect their dialogue and performance. **Coming soon!**
            - >   Negotiate with allies to reinforce your position or attack enemy factions' fleets and installations. **Coming soon!**
            - >   Use marines to protect your commodities and prevent boarding attacks on your vessels. **Coming soon!**

     -     4 New Factions
            - >   New thematic factions with distinctive ships, weapons, culture, backstory and tactics.
            - >   Over 15 additional markets including 2 new systems of various factions added to the Core Worlds campaign map.
            - >   New and existing factions will react differently to your dialogue choices based on their motives, personality and other factors.
            - >   New factions have their own music, portraits, tech and skins.
            - >   Explore the sector to learn more and find your play style.
            - >   A customized tutorial that introduces new mechanics, ships and factions. **Coming very soon!**
            - >   A story introducing a few of the new and existing factions' characters. **Coming very soon!**

     -     New Combat Mechanics and Tactics
            - >   Over Over 50 types of fighters.
            - >   Fighters are smaller, faster, more numerous, and can deal extra damage to ships' weapons and engines.
            - >   Over 130 weapons.
            - >   Smaller weapons, more weapons per ship- designed to mimic a cinematic combat experience inspired by the Star Wars movies.
            - >   New ships spread across all hull classes and factions.
            - >   650+ variants.
            - >   New skins for existing ships - sometimes dramatically changing features and load-out options.

     -     New Starting Options and Role-Playing Scenarios
            - >   More starting ship choices and options based around play-styles.
            - >   Start as a pirate, with a reputation throughout the sector and a small raider wolfpack.
            - >   Start as a mercenary, with a powerful financial backer and a small elite strike force.
            - >   Custom tutorial options for each start, teaching new techniques and skills to succeed in that role. **Coming very soon!**

     -     An Emphasis on Story-Telling and Immersion
            - >   Rich background for all new factions- who will treat you differently based on their culture, your reputation, and your choices.
            - >   Thematic music, portraits, logos, descriptions, ships and weaponry for each new faction.
            - >   Faction colonies have custom descriptions that give insight into their history and culture.
            - >   New and existing factions are recognizable at a glance - unique faction weapons and custom skins with stat modifiers give identity to their fleets.
            - >   Engage in small-talk to learn valuable secrets and improve your reputation with others, even your officers. **Coming soon!**
            - >   Exploration, and investigation of hidden secrets leading to powerful allies, lost technology, or even shaping the politics of the sector's major factions. **Coming soon!**
            - >   Bioware-inspired notoriety system. Strike fear into those who've heard of your deeds or be known as the sector's best hope for survival. **Coming soon!**

Tactics Manual

   -    I created this tactics manual to give players a reference point for the multiple changes to the combat layer present in the mod. It should not be required to play, most of the game's descriptions will give an accurate sense of things, but it exists regardless! The tutorial will also explain a lot of things, but until I can get the bugs out of the story encounters there it is disabled.

   -   As a side note, the role playing starts will eventually require the tutorial to be played first, but I will disable that requirement until it is up and running.


Screenshots and Gifs

   -   These should provide a decent showcase of some of the mod's features, but can contain some light spoilers, so viewer discretion is advised.


New Dialogue Options
Spoiler



[close]

Combat
Spoiler

Gifs








Screenshots










[close]

Factions
Spoiler













[close]

Ships
Spoiler









[close]

Weapons
Spoiler







[close]





Performance and System Requirements

   -    More combat calculations and just the extra content/scripts in the mod will inevitably impact performance.

   -    The most noticeable performance difference from unodded Starsector is a longer loading time at start, especially the first time you load the mod.

   -    Sorry everyone, I've tried to optimize where I can but my rules file alone is around 800 entries. I wanted the dialogue features to be immersive, and that requires a lot of scenarios and dialogue to get it to feel right.

   -    It's hard to measure- I can tell you my test PC has these specs and only has noticeable performance drops during the largest of battles (60 fps otherwise):


              OS:                     -     Windows 10 Home(64x)
              PROCESSOR:        -     3.40GHz Intel i5
              RAM:                   -     8G
              VIDEO:                -     NVIDIA GeForce GTX 1060 3GB



   -    Please feel free to chime in with what kind of performance you are experiencing, alongside your specs.

   -    I know it is definitely playable on older PC's and laptops from tests, but if I need to make adjustments I can try a few things.





Credits and Thanks


            - Alex
                   - Starsector's creator and my inspiration in game design. For the countless questions and coding help over several years and the emphasis you put towards supporting the modding community, taking player suggestions seriously, and just being a general all around nice guy, a serious heart-felt thank you!

            - xenoargh
                   - Creator of EZFaction and a very active and vocal member of the modding community, thank you for your input, creative suggestions, and all the questions you've answered!

            - LazyWizard, Trylobot, kazi, TJJ, Deathfly, Dark.Revenant, Tartiflette
                   - Probably the majority of the mods that currently exist use your tools and tutorials. A big thanks for your support of the community!
                                                                                   
            - Art and Sound Assets
                   - Though the ship edits, logos, title screen and weapons were done personally, factions of this mod would not be possible without the hard work, inspiration and generous free-use permissions granted by the artists who are responsible for the portraits and music.

            - ***Special Note*** As promised under applicable licenses, I will both credit and link to the websites of those artists! Thank you! I have also taken some of these assets from free art/sound websites that do not always specifically credit the author. I have worked hard to verify these sources- however, if for whatever reason you are the owner of an asset used in this mod and either you have not been credited or I do not have your permission to use said asset, please contact me and either I will ensure you are credited or I will remove the asset from the mod. I completely understand the desire for work to have the appropriate credit and I'm not here to profit or steal anyone's stuff. I am just trying to make a fun and unique mod experience the current game doesn't offer!  :D

               **Dev Note** I am not responsible for the content on the linked websites. They may contain mature material that I have no control over. Discretion is advised where necessary.

            - Illustrations
                   Andreas Rocha - http://www.andreasrocha.com/

            - Portraits
                   SineAlas - https://sinealas.deviantart.com/
                   virink.com - https://www.pinterest.com/source/virink.com/
                   Degenerate Portrait Pack - http://fractalsoftworks.com/forum/index.php?topic=12493.0

            - Music
                   PurplePlanet - http://www.purple-planet.com/
                   Ross Budgen (SoundCloud) - https://soundcloud.com/rossbugden/epic-and-dramatic-trailer-music-olympus-copyright-and-royalty-free

            - Modding Community
                - To all the forum members who have given their advice, opinions, critiques and ideas - whether you even know it or not - you have been a big influence in shaping this mod to what it is now and inspiring me to continue working to bring this project to fruition. To say I stand on the shoulders of giants doesn't even do it justice. Again, a big thank you everyone!

7
Modding / Script Help: Advanced Scripting with Rules.csv
« on: August 24, 2017, 02:11:38 PM »
Ok, so this script is pretty big so no worries if noone feels like sifting through it, but the gist of it is that the conditions in rules.csv require it to pass or fail. Sometimes, randomly, it seems to return neither true nor false and causes the rules to fail to find a match in the conditions. Not the worst since just rehitting the dialogue option runs the script again where is passes or fails like 90% or more of the time. But weird and annoying lol.

Short end of the story: Where in the script would it "never" return true or false???

Proof of error:


Spoiler
673161 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Checking rule: CommodityRequestedBefore
673161 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Conditions: $option == Aid_request $entity.Requested_Aid score:1600 CommodityRequestCalc
673161 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Failed condition: CommodityRequestCalc
673161 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Checking rule: CommodityRequestedBeforeExalted
673161 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Conditions: $option == Aid_request $entity.Requested_Aid score:80 RepIsAtWorst $faction.id COOPERATIVE score:1500
673162 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Failed condition: RepIsAtWorst $faction.id COOPERATIVE score:1500
673162 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Checking rule: CommodityRequestedBeforeandAngry
673162 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Conditions: $option == Aid_request $entity.Requested_Aid score:1600 !CommodityRequestCalc
673162 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Failed condition: !CommodityRequestCalc

[close]


and the script...  :P

Spoiler

package archeus.rulecmd;

import java.util.List;
import java.util.Map;

import com.fs.starfarer.api.Global;
import com.fs.starfarer.api.characters.PersonAPI;
import com.fs.starfarer.api.characters.PersonalityAPI;
import com.fs.starfarer.api.characters.RelationshipAPI;
import com.fs.starfarer.api.campaign.InteractionDialogAPI;
import com.fs.starfarer.api.campaign.CampaignFleetAPI;
import com.fs.starfarer.api.campaign.rules.MemKeys;
import com.fs.starfarer.api.campaign.rules.MemoryAPI;
import com.fs.starfarer.api.campaign.FactionAPI;
import com.fs.starfarer.api.campaign.RepLevel;
import com.fs.starfarer.api.util.Misc.Token;
import com.fs.starfarer.api.impl.campaign.rulecmd.BaseCommandPlugin;
/**
 *   Commodity Request Calculation
 *    by Morrokain
 */
public class CommodityRequestCalc extends BaseCommandPlugin {
    @Override
   public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) {
      if (dialog == null) return false;

        int BaseFireChance = 40;          // base chance of success before other factors calculated in

        CampaignFleetAPI playerFleet;
        CampaignFleetAPI otherFleet;

        FactionAPI faction;
        FactionAPI playerFaction;

        playerFleet = Global.getSector().getPlayerFleet();
        otherFleet = (CampaignFleetAPI) (dialog.getInteractionTarget());
        faction = otherFleet.getFaction();
        playerFaction = playerFleet.getFaction();

        PersonAPI commander = otherFleet.getCommander(); // get commander of fleet

        RepLevel level = faction.getRelationshipLevel(playerFaction);
                                                         // get rep level relative to player

        if (level.isAtWorst(RepLevel.INHOSPITABLE));     // no chance once hostile of course.
        {
            int fireChance = BaseFireChance + (int) (Math.random() * 101);
                                                         // generates random number and adds to fireChance

            int fleetStrength = (int) otherFleet.getFleetPoints();
            int playerStrength = (int) Global.getSector().getPlayerFleet().getFleetPoints();
            double relativeStrength = 0;                 // gets relative size of fleet to player

            int repWeight = 1;                              // will impact the effect of fleet strength calc below


            if (level.isAtWorst(RepLevel.COOPERATIVE)) {    // rep impacts chance of success and weight of strength calc
                fireChance += 100;
                repWeight = 8;
            }

            if (level.isAtWorst(RepLevel.FRIENDLY)){
                fireChance += 30;
                repWeight = 6;
            }

            if (level.isAtWorst(RepLevel.WELCOMING)){
                fireChance += 30;
                repWeight = 4;
            }

            if (level.isAtWorst(RepLevel.FAVORABLE)){
                fireChance += 15;
                repWeight = 3;
            }

            if (level.isAtBest(RepLevel.NEUTRAL)){
                fireChance += 5;
                repWeight = 2;
            }

            if (level.isAtBest(RepLevel.SUSPICIOUS))
                fireChance -= 20;

            if (level.isAtBest(RepLevel.INHOSPITABLE))
                fireChance -= 40;

            if (faction.getId().equals("scicorps")) {       // faction also has an effect
                fireChance += 30;                      // different factions have different base percentages
                repWeight += 2;                        // to aid player
            }

            if (faction.getId().equals("hegemony"))  {      // fleet strength has a slightly lower impact on success rate
                fireChance += 15;                      // for some factions like hegemony and independent due to good nature
                repWeight += 1;
            }

            if (faction.getId().equals("independent")) {
                fireChance += 5;
                repWeight += 1;
            }

            if (faction.getId().equals("luddic_church")) {   // similar to hegemony in generosity.
                fireChance += 15;
                repWeight += 1;
            }

            if (faction.getId().equals("luddic_path"))
            {
                float credits = Global.getSector().getPlayerFleet().getCargo().getCredits().get();
                float aidCost = (int) Global.getSector().getPlayerFleet().getFleetPoints() * 500;

                memoryMap.get(MemKeys.LOCAL).set("$AidRequest_estCost", aidCost, 1);

                boolean canAfford;

                if (credits >= aidCost)
                {
                    canAfford = true;
                    fireChance += 10;                   // if player can afford the estimated costs of resupply,
                }                                       // much higher chance of success for greedier factions
                else
                {
                    canAfford = false;
                    fireChance -= 25;
                }
                memoryMap.get(MemKeys.LOCAL).set("$CanAfford_estCost", canAfford, 1);
            }


            if (faction.getId().equals("archean_order"))
            {
                float credits = Global.getSector().getPlayerFleet().getCargo().getCredits().get();
                float aidCost = (int) Global.getSector().getPlayerFleet().getFleetPoints() * 500;

                memoryMap.get(MemKeys.LOCAL).set("$AidRequest_estCost", aidCost, 1);

                boolean canAfford;

                if (credits >= aidCost)
                {
                    canAfford = true;
                    fireChance += 20;                   // if player can afford the estimated costs of resupply,
                }                                       // much higher chance of success for greedier factions
                else
                {
                    canAfford = false;
                    fireChance -= 15;
                }
                memoryMap.get(MemKeys.LOCAL).set("$CanAfford_estCost", canAfford, 1);
            }


            if (faction.getId().equals("adamantine_consortium")) // in general consortium doesn't give much aid
            {
                float credits = Global.getSector().getPlayerFleet().getCargo().getCredits().get();
                float aidCost = (int) Global.getSector().getPlayerFleet().getFleetPoints() * 500;

                memoryMap.get(MemKeys.LOCAL).set("$AidRequest_estCost", aidCost, 1);

                boolean canAfford;

                if (credits >= aidCost)
                {
                    canAfford = true;
                    fireChance -= 5;                   // if player can afford the estimated costs of resupply,
                }                                       // much higher chance of success for greedier factions
                else
                {
                    canAfford = false;
                    fireChance -= 35;
                }
                memoryMap.get(MemKeys.LOCAL).set("$CanAfford_estCost", canAfford, 1);
            }

            if (faction.getId().equals("trader_guilds"))
            {
                float credits = Global.getSector().getPlayerFleet().getCargo().getCredits().get();
                float aidCost = (int) Global.getSector().getPlayerFleet().getFleetPoints() * 400;

                memoryMap.get(MemKeys.LOCAL).set("$AidRequest_estCost", aidCost, 1);

                boolean canAfford;

                if (credits >= aidCost)
                {
                    canAfford = true;
                    fireChance += 10;
                }
                else
                {
                    canAfford = false;
                    fireChance -= 15;
                }
                memoryMap.get(MemKeys.LOCAL).set("$CanAfford_estCost", canAfford, 1);
            }

            if (faction.getId().equals("pirates"))
            {
                float credits = Global.getSector().getPlayerFleet().getCargo().getCredits().get();
                float aidCost = (int) Global.getSector().getPlayerFleet().getFleetPoints() * 500;

                memoryMap.get(MemKeys.LOCAL).set("$AidRequest_estCost", aidCost, 1);

                boolean canAfford;

                if (credits >= aidCost)
                {
                    canAfford = true;
                    fireChance += 10;                   // if player can afford the estimated costs of resupply,
                }                                       // much higher chance of success for greedier factions
                else
                {
                    canAfford = false;
                    fireChance -= 25;
                }
                memoryMap.get(MemKeys.LOCAL).set("$CanAfford_estCost", canAfford, 1);
            }

            PersonalityAPI personality = commander.getPersonalityAPI();

            if (personality.toString().equals("reckless")) {
                fireChance -= 15;
                repWeight -= 2;
            }

            if (personality.toString().equals("aggressive")) {
                fireChance -= 10;
                repWeight -= 1;
            }

            if (personality.toString().equals("cautious")) {
                fireChance -= 10;
                repWeight += 1;
            }


            if (personality.toString().equals("timid")) {
                fireChance += 20;
                repWeight += 2;
            }

            RelationshipAPI relationship = commander.getRelToPlayer();
            // finally, commander's personality and opinion of player matters

            if (relationship.isAtWorst(RepLevel.FRIENDLY)) {
                fireChance += 45;
                repWeight += 2;
            }

            if (relationship.isAtWorst(RepLevel.WELCOMING)) {
                fireChance += 25;
                repWeight += 1;
            }

            if (relationship.isAtWorst(RepLevel.FAVORABLE)) {
                fireChance += 15;
                repWeight += 1;
            }

            if (relationship.isAtBest(RepLevel.SUSPICIOUS))
                fireChance -= (int) (fireChance * 0.2);

            if (relationship.isAtBest(RepLevel.INHOSPITABLE))
                fireChance -= (int) (fireChance * 0.5);

            if (relationship.isAtBest(RepLevel.HOSTILE))
            {
                if (!level.isAtWorst(RepLevel.COOPERATIVE))
                {
                    fireChance = 0;                         // unless highest rep, will fail if commander is hostile
                }                                           // even then, reduces by 50% like inhospitable rep
            }

            if (repWeight <= 0)                             // safeguard for strength calc
                repWeight = 1;

            //** Note on Fleet Strength calculations: with neutral or lower rep, fleet strength is one of the primary
            // factors and those players without at least close to equal strength will be hard pressed to find any aid from
            // most factions. **


            if (fleetStrength > playerStrength) {       // less likely as other fleet gets stronger
                relativeStrength = (((playerStrength * 100) / fleetStrength)) * 0.01; // but higher rep reduces impact
                fireChance -= (int) ((fireChance - (fireChance * relativeStrength)) / repWeight); // of this calculation
            }

            if (fleetStrength <= playerStrength) {      // more likely as the other fleet gets weaker
                relativeStrength = (((fleetStrength * 100) / playerStrength)) * 0.01;
                fireChance += (int) ((fireChance * (1 - relativeStrength)));
            }                                         // modifies final chance to fire by percentage of strength difference

            memoryMap.get(MemKeys.LOCAL).set("$AidRequest_fireChance", fireChance, 1);
            memoryMap.get(MemKeys.LOCAL).set("$FleetStrength_repWeight", repWeight, 1);

            if (fireChance >= 100)
                return true;                    // request granted if fireChance over 100 (successful roll)
        }
      return false;
   }
}
[close]

And some screens of the script (and some others) for funsies  ;D

Spoiler


















[close]


8
Modding / Not recognizing compiled script: IntelliJ (solved)
« on: August 03, 2017, 10:09:49 PM »
Alright, so wrote a script to return true or false based upon the player's replevel with the interaction target and a randomly generated 'fireChance'

The idea here is that the event more or less often based on the players rep level.

Anywhoo, compiling my first script with IntelliJ and everything seems to check out and compile without any errors but I get an error message about rules saying it can't find the custom script when I try and actually run the game.

Code:
Spoiler
package archeus.rulecmd;

import java.util.List;
import java.util.Map;

import com.fs.starfarer.api.Global;
import com.fs.starfarer.api.campaign.InteractionDialogAPI;
import com.fs.starfarer.api.campaign.CampaignFleetAPI;
import com.fs.starfarer.api.campaign.rules.MemKeys;
import com.fs.starfarer.api.campaign.rules.MemoryAPI;
import com.fs.starfarer.api.campaign.FactionAPI;
import com.fs.starfarer.api.campaign.RepLevel;
import com.fs.starfarer.api.util.Misc.Token;
import com.fs.starfarer.api.impl.campaign.rulecmd.BaseCommandPlugin;
/**
 *   Consortium Tribute Calculation
 *    by Morrokain
 */
public class ConsortiumTributeCalc extends BaseCommandPlugin {
    @Override
   public boolean execute(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) {
      if (dialog == null) return false;
      
      float credits = Global.getSector().getPlayerFleet().getCargo().getCredits().get();
      float tribute = (int) Global.getSector().getPlayerFleet().getFleetPoints() * 200;
      
      memoryMap.get(MemKeys.LOCAL).set("$Consortium_tribute", (int)tribute, 0);

        int BaseFireChance = 50;          // base chance of success before rep cal


        CampaignFleetAPI playerFleet;
        CampaignFleetAPI otherFleet;

        FactionAPI faction;
        FactionAPI playerFaction;

        playerFleet = Global.getSector().getPlayerFleet();
        otherFleet = (CampaignFleetAPI) (dialog.getInteractionTarget());
        faction = otherFleet.getFaction();
        playerFaction = playerFleet.getFaction();

        RepLevel level = faction.getRelationshipLevel(playerFaction);
                                                    // get rep level relative to player

        if (level.isAtWorst(RepLevel.INHOSPITABLE)); // no chance once hostile.
        {
            int fireChance = BaseFireChance + (int) (Math.random() * 101);
                                                        // generates random number and adds to fireChance
            if (level.isAtWorst(RepLevel.COOPERATIVE))   // rep adds or subtracts fireChance
                fireChance -= 100;

            if (level.isAtWorst(RepLevel.WELCOMING))
                fireChance -= 20;

            if (level.isAtWorst(RepLevel.FAVORABLE))
                fireChance -= 15;

            if (level.isAtWorst(RepLevel.FRIENDLY))
                fireChance -= 10;

            if (level.isAtWorst(RepLevel.NEUTRAL))
                fireChance += 5;

            if (level.isAtWorst(RepLevel.SUSPICIOUS))
                fireChance += 20;

            if (level.isAtWorst(RepLevel.INHOSPITABLE))
                fireChance += 30;

            memoryMap.get(MemKeys.LOCAL).set("$Tribute_fireChance", fireChance, 0);

            if (fireChance >= 100 && credits >= tribute)  // only fire if enough player credits for tribute request
                return true;                              // and if fireChance over 100 (successful roll)
            }

      return false;
   }

}

[close]

settings entry:

Spoiler
   "ruleCommandPackages":[
          "archeus.rulecmd"
   ],
[close]

Error Message:
Spoiler
5450 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingArcheanTOffNormal
5450 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingArcheanTOffWeaker
5450 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingArcheanFriendly
5450 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingArcheanHostileWeaker
5450 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingArcheanHostileWeakerDefiant
5450 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingArcheanHostileStronger
5450 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingArcheanNeutral
5451 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingAdamantineFriendly
5451 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingAdamantineHostileWeaker
5451 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingAdamantineHostileWeakerDefiant
5451 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingAdamantineHostileStronger
5451 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: greetingAdamantineNeutral
5451 [Thread-4] INFO  com.fs.starfarer.campaign.rules.Rules  - Loading rule: ConsortiumTributeCheck
5451 [Thread-4] INFO  com.fs.starfarer.loading.scripts.OoOO  - Loading class: com.fs.starfarer.api.impl.campaign.rulecmd.ConsortiumTributeCalc
5451 [Thread-4] INFO  com.fs.starfarer.loading.scripts.OoOO  - Loading class: com.fs.starfarer.api.impl.campaign.rulecmd.salvage.ConsortiumTributeCalc
5451 [Thread-4] INFO  com.fs.starfarer.loading.scripts.OoOO  - Loading class: com.fs.starfarer.api.impl.campaign.rulecmd.newgame.ConsortiumTributeCalc
5451 [Thread-4] INFO  com.fs.starfarer.loading.scripts.OoOO  - Loading class: archeus.rulecmd.ConsortiumTributeCalc
5725 [Thread-4] ERROR com.fs.starfarer.combat.CombatMain  - com.fs.starfarer.api.util.RuleException: java.lang.RuntimeException: Command [ConsortiumTributeCalc] not found in packages:
com.fs.starfarer.api.impl.campaign.rulecmd
com.fs.starfarer.api.impl.campaign.rulecmd.salvage
com.fs.starfarer.api.impl.campaign.rulecmd.newgame
archeus.rulecmd

com.fs.starfarer.api.util.RuleException: java.lang.RuntimeException: Command [ConsortiumTributeCalc] not found in packages:
com.fs.starfarer.api.impl.campaign.rulecmd
com.fs.starfarer.api.impl.campaign.rulecmd.salvage
com.fs.starfarer.api.impl.campaign.rulecmd.newgame
archeus.rulecmd

   at com.fs.starfarer.campaign.rules.A.<init>(Unknown Source)
   at com.fs.starfarer.campaign.rules.Rules.o00000(Unknown Source)
   at com.fs.starfarer.loading.SpecStore.OO0000(Unknown Source)
   at com.fs.starfarer.loading.ResourceLoaderState.init(Unknown Source)
   at com.fs.state.AppDriver.begin(Unknown Source)
   at com.fs.starfarer.combat.CombatMain.main(Unknown Source)
   at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.RuntimeException: Command [ConsortiumTributeCalc] not found in packages:
com.fs.starfarer.api.impl.campaign.rulecmd
com.fs.starfarer.api.impl.campaign.rulecmd.salvage
com.fs.starfarer.api.impl.campaign.rulecmd.newgame
archeus.rulecmd

   at com.fs.starfarer.campaign.rules.A.getCommandClass(Unknown Source)
   ... 8 more

Process finished with exit code 1
[close]

Anyone dealt with this?

I'm fairly confident I set up the artifact correctly in the compiler, and in the 'compiled output' folder after the project builds the script shows up as a class file, so its recognized there.

Not really sure where to go from here.  ???


Edit: Solved. The dumb thing (intelliJ) renamed the jar to the project name for some reason so I just needed to update the entry in the mod_info file with the correct jar name since I can't get it to call the jar anything else for some reason.  >:(

9
Getting this error when trying to run the build:

Code
cmd.exe /c "C:/Program Files (x86)/Fractal Softworks/Starsector/starsector-core/starsector.bat"

C:\Program Files (x86)\Fractal Softworks\Starsector>..\jre\bin\java.exe -Djava.library.path=native\windows -Xms1536m -Xmx1536m -Xss1024k -Dcom.fs.starfarer.settings.paths.logs=. -Dcom.fs.starfarer.settings.paths.saves=../saves -Dcom.fs.starfarer.settings.paths.screenshots=../screenshots -Dcom.fs.starfarer.settings.paths.mods=../mods -classpath janino.jar;commons-compiler.jar;commons-compiler-jdk.jar;starfarer.res.jar;starfarer.api.jar;starfarer_obf.jar;jogg-0.0.7.jar;jorbis-0.0.15.jar;json.jar;lwjgl.jar;lwjgl_util_applet.jar;jinput.jar;lwjgl_test.jar;log4j-1.2.9.jar;lwjgl_util.jar;fs.sound_obf.jar;fs.common_obf.jar;xstream-1.4.2.jar com.fs.starfarer.StarfarerLauncher
The system cannot find the path specified.

Process finished with exit code 1

The file path is obviously intact when I look at it.

My best guess is it might be the Java 1.7 JDK I used as a dependency. I used (x64) out of habit when I think my new system needs (x86) (looking at the file path being called  ::) )

Currently going to see if that works, but any other ideas?

10
Modding / To: Those Experienced with Mod Releases
« on: June 01, 2017, 04:58:06 PM »
Early tests indicate the update fixed the problems!  ;D ;D ;D THANK YOU ALEX!! Been a long time in progress but:



Finally in the last testing phases of my tactical combat/fighter re-balance mod and looking to get some gameplay and content videos, gifs and other such stuff prepared to showcase its features! Release is looking like ~two weeks or so depending upon a couple last items I want to squeeze in.

I'm looking for recommendations on how to capture gameplay video and make gifs, etc as well as sites to store the content for displaying it in the forum topic post. Just need to know where to start looking.

Anybody have some time to give me a little direction? Kind of new to it.  :P 

11
General Discussion / Ko Combine: Info Wanted!
« on: January 26, 2017, 11:16:51 PM »
So, Imma just leave this here but... in the interim before the highly anticipated update is ready I'd really love to get some dirt on these guys since they finally make an appearance! We already kind of know what the Persean League is about. But this faction only has a couple vague references in weapon descriptions and are otherwise a total mystery lore-wise. Blog post if time maybe please?

Who are they? What is their place in the general political sphere of the sector? Are they more of a sub-faction under the dominion of one of the other powers or have they carved out their own slice of influence?

Do they have any ship / tech preferences or unique combat tactics?

 ;D

12
Suggestions / Hullmod: Adjust Fighter Installation Cost
« on: January 14, 2017, 02:24:28 PM »
Can we get support for hullmods that lower the OP cost for specific fighter wings for a ship its installed on?

I would want to use this to partially limit or at least encourage hi-tech fighters and bombers only on hi-tech ships.

Just didn't see this in the patch notes and so figured I'd suggest it if it wasn't supported already  :)

13
Suggestions / Design Discussion: Player value vs credit value
« on: November 18, 2016, 03:25:17 PM »
Been meaning to suggest this for a bit, but now that everything is coming together and the world is expanding next update I wanted to get my thoughts out on campaign progression.

Right now, I feel the primary discussion of the campaign element of the game is that many players either feel the early game is difficult, or the late game mechanics and skills favor player controlled super ships or the highly trained officers and their related skills. To those who point out that losing ships (I'll update with post links later btw, feeling lazy atm ;P) hurts the bottom line too much and to have meaningful progression losses have to be minimized, I am not suggesting otherwise, as I would agree.

But, at the other end, the game can't be too easy if loses don't mean anything or supplies become trivial because everything is super cheap and accessible. So to rebalance around early game doesn't make sense either. In the blog post on procedural generation, Alex touched on early game progression and noted that though pirate skins and built-in debuff hullmods were meant to make the early combat encounters easier, automated defense encounters would be another level down too, and other exploration content would make early game easier. I think this is a good step, but I also think something else is needed before any of the above issues truly get solved.

What I am talking about is what a player finds of value in winning an encounter vs what they lose. Right now, the biggest medium of transaction in the game is credits. Credits buy supplies, fuel, weapons and ships. It is by far the most valuable "fun gaining" resource in the game. Think of reputation, for example. All that does at best is unlock new things that also cost credits. So credits are still in play there. Nothing gained in battle outweighs the value of pure credits, because they are more flexible than just a weapon, supplies or even the costly boarding of a new ship, unless that ship or weapon cannot be bought at a market for credits anywhere else.

Losses in battle in turn cost credits as well, both in terms of CR replenishment and supplies, and the loss of ships and weapons as a whole. Because deployment cannot be without cost (because it makes things too easy), it was balanced around careful supply considerations to make it undesirable to deploy overwhelming advantages. But! This also means that losses therefore always become a redline area that makes success of the mission no longer worth the investment cost per cost.

That is because the only thing of true value gained from combat right now is additional credits. Reputation, as stated earlier, is inferior as a reward because it is also linked to having credits. And since multiple areas of the campaign and combat are finely tuned around a "mistake = lost credits" scenario, it is no surprise that only the most conservative of playstyles are successful, and then quickly become boring because they have crossed the threshold of the difficulty barrier.

So, the only real way to solve these issues is to implement 2 things across multiple areas of the game:

1) More than one (preferable a couple) accessible, reliable, repeatable and sustainable ways to make credits outside of a combat encounter.

and more importantly:

2) The has to be another (again preferably many) currency that equals or is greater than credits in terms of potential content progression.


So maybe stations can act as one, the addition of the new resources I could see as being something you would want to throw ships away over. But that's really the idea here. Imo, the game will be at its most fun when an actual decision most players make will be something along the lines of "lets tell these 2 Lashers to escort this Hyperion, because the Lashers are expendable and the Hyperion isn't." I would even go so far to say as around 65% of your fleet at any given time should be mostly expendable and fairly easily replaced. The only things you should never want to lose is exceptionally rare or, your personal favorite, ships and weapons.

The big difference in this scenario, is that their loss would be as "payment" for something else that progresses the players goals, whatever that may be. It can be a buff to reputation's relevance as a resource, new research or tech potential, or even story. There are multiple paths to go I think.

Right now, all ships are equally important, because any losses equal lost progression because the only way to progress is more credits.

There hasn't been any details released (thankfully) on the exploration content, but it should hopefully give these new progression paths an equal relevance to just getting as rich as possible, because right now too many things are a necessary drain on credits for that to work well otherwise.

I also think these progression paths should be content rewarding rather than punitive. Since most mechanics introduced right now discourage things (hyperstorms, CR, supplies, fuel, reputation tech barriers) by costing credits, there has to be a balancing end that rewards the player for losing expendable ships by increasing their access to new fun things. Reputation was a start, but it effectiveness was limited since like I said the stuff unlocked from rep still costs credits, so still equates ship losses as "unacceptable" in a player's mind.

Anyone else care to respond or give their ideas on this? I just figured now is the time since this is the kind of stuff currently under development. :)

14
Suggestions / Unlockable Codex Entries (exploration)
« on: September 23, 2016, 12:46:13 PM »
I actually have suggested this before a long time ago, but it is a lot more relevant with the procedural generation and exploration features taking shape so I will post it again.

If not already, the codex entries should have a *hidden* flag that only unflags when you find an item during the campaign.

This way, all weapons and ships, variants and skins are not just known by browsing the easily accessible codex and inadvertently finding spoilers - unless you have already encountered that ship/weapon before.

This not only makes the game a lot more fun since I am excited to find new things and new kinds of weapons I don't even know exist yet through exploration (and later technological re-discoveries that unlock new tech blueprints for the industry feature), but its also important for the potential addition of procedurally generated weapons, ships or even whole factions that are "in the codex" but not found every play through. New players could get pretty frustrated if they didn't know that beforehand.

15
Could be on my end or something unrelated, but my mod seems to ignore the lionsguard.faction file and its ship doctrine, variant definitions and weights when spawning fleets.

Mod runs fine and the faction is there, it just spawns the same ships it would in Vanilla. All other files work normally and at least seem to generally follow the weights and variant definitions.


Did I miss a script or something that makes this set?

Pages: [1] 2 3 4