Fractal Softworks Forum

Starsector => Mods => Topic started by: LazyWizard on December 27, 2012, 02:02:18 AM

Title: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: LazyWizard on December 27, 2012, 02:02:18 AM
Omnifactory
A not very lore-friendly mini-mod
Download version 1.11c (https://bitbucket.org/LazyWizard/omnifactory/downloads/Omnifactory%201.11c.zip) (mirror (http://www.mediafire.com/file/cr292anad9hpwr9/Omnifactory_1.11c.zip)) (requires LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0))
View progress and source code on BitBucket (https://bitbucket.org/LazyWizard/omnifactory)
Supports Version Checker (http://fractalsoftworks.com/forum/index.php?topic=8181)


What this mod does:
This mod adds an advanced autofactory orbiting a random planet in a random system. Any weapon or ship you store here will be disassembled and analyzed by the factory's replicators. After analysis is complete (provided the good isn't restricted), the factory will then begin producing more of this good over time. You will need to buy any Omnifactory-produced goods at a vastly inflated price.

This gives players a choice when they find a rare ship or weapon - use it immediately and risk losing it in battle, or bring it to the Omnifactory and be forced to wait for the production run to finish, but never need to worry about finding it again.

Production time is based on the size and complexity of the blueprint. By default, weapons require a flat 5/10/20 days depending on weapon size, whereas ships use a formula based on fleet point cost and hull size - from 3 days for a Talon wing to two months for a Paragon. The factory will produce up to half of a stack of each weapon in its memory banks (20/10/5 S/M/L), and 3/3/2/2/1 of each fighter/frigate/destroyer/cruiser/capital ship. Other mods that include this factory may have different production times and limits. You can customize the Omnifactory yourself by editing data/config/omnifactory/omnifac_settings.json (any changes also affect existing games).

This mod should be compatible with all mods, including total conversions, as long as they allow you to trade with stations.

All modders have my permission to include this in their own mods. You'll only need the submarket entry and the contents of the jars folder to use the station, and a "jars" entry in your mod_info.json poining to Omnifactory.jar. You will also need to let your users know they need LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0) active. I've tried to keep this as simple to implement as possible - just call OmniFacModPlugin.initOmniFac(SectorEntityToken token) with the station you want to act as a factory as the argument.

If a modder wishes to prevent specific mod weapons/ships from being replicated, they can copy the CSVs in data/config/omnifactory/ to their mod folder and add any IDs they want blocked.


Changelog:
Spoiler
Quote
Version 1.11c (March 16, 2017)
================================
Switched version file hosting to Bitbucket

 Version 1.11b (October 12, 2015)
==================================
Fixed spam if a restricted ship/item somehow ended up in the Omnifactory's cargo
Implemented support for multiple Omnifactories:
 - Change "numberOfFactories" in data/config/omnifactory/omnifac_settings.json;
   "randomStartingLocation" must be true for this setting to work
initOmnifactory() now sets up the storage submarket if it's not present

 Version 1.11 (July 11, 2015)
==============================
(this version is not save compatible with earlier versions)
Rewrote Omnifactory as a submarket plugin
Random starting location is disabled by default
Fixed resources being illegal even if the setting to make them required is on
Fixed weapon production limits being ludicrously high post-market update
Added console command OmnifacStatus, shows location and data for all factories
Added getKnownShips(), getKnownWings(), getKnownWeapons()
Added BlueprintData interface:
 - int getDaysToAnalyze()
 - int getDaysToCreate()
 - int getLastUpdate()
 - String getId()
 - String getDisplayName()
 - int getLimit()
 - int getTotal()
 - boolean isAnalyzed()
 - setAnalyzed(boolean isAnalyzed)

 Version 1.10c (January 29, 2015)
==================================
Added "randomStartingLocation" setting, enabled by default:
 - With this set to true, the Omnifactory will orbit a random planet or star
   in a random system, so long as that planet doesn't have a station already
Default sell price is now almost always 0, except with very large transactions

 Version 1.10b (January 9, 2015)
=================================
Added "ignoreGoodRestrictions" setting, allows replication of restricted goods
You can no longer sell restricted or already known ships/weapons to the factory
Omnifactory now includes a storage tab, unlocked by default
Added a description for the Omnifactory submarket
Buy/sell replaced with appropriate verbs based on tariff setting

 Version 1.10 (January 5, 2015)
================================
(this version is not save compatible with earlier versions) (duh)
Compatibility fixes for new economy/market systems
Added Version Checker support
When added to existing save, syncs factory heartbeat to beginning of next day
Settings are global, defined in data/config/omnifactory/omnifac_settings.json
Restricted goods are defined in a CSV, merged so multiple mods can add to list
Fixed ancient bug where the wrong numbers were shown for analysis phase duration
Added "omnifactoryTariff" setting, defaults to 100%
Balance tweaks (mostly due to above default tariff):
 - You no longer earn a profit when selling to the Omnifactory
 - The prices of produced ships/weapons are vastly inflated
 - Resources still cost almost nothing to store (as there's no market demand)
Added to OmniFacSettings:
 - Set<String> getRestrictedWeapons()
 - Set<String> getRestrictedShips()
 - float getOmnifactoryTariff()

 Version 1.9 (May 9, 2014)
===========================
Many changes to the mod's code, but it should be backwards-compatible with 1.8b
New methods in OmniFac:
 - New constructor: OmniFac(SectorEntityToken station, String settingsFile)
 - OmniFacSettings getSettings()
 - String getSettingsFile()
 - setSettingsFile(String settingsFile)
New class OmniFacSettings:
 - boolean shouldShowAddedCargo()
 - boolean shouldShowAnalysisComplete()
 - boolean shouldShowLimitReached()
 - boolean shouldRemoveBrokenGoods()
 - float getShipAnalysisTimeMod()
 - float getWeaponAnalysisTimeMod()
 - float getShipProductionTimeMod()
 - float getWeaponProductionTimeMod()
 - int getRequiredCrew()
 - float getRequiredSuppliesPerDay()
 - float getRequiredFuelPerDay()
 - int getMaxHullsPerFighter()
 - int getMaxHullsPerFrigate()
 - int getMaxHullsPerDestroyer()
 - int getMaxHullsPerCruiser()
 - int getMaxHullsPerCapital()
 - float getMaxStacksPerWeapon()
Settings are reloaded from JSON every session instead of stored in the savefile
 (this also means individual settings cannot be changed through code anymore,
 and must be set as a whole using setSettingsFile() and another settings JSON)
Removed all other settings-related methods in OmniFac, with the exception of
 adding/removing restricted ships and weapons
The Omnifactory now removes weapons from ships before it consumes them
Fixed the Omnifactory and fighter wing names being displayed incorrectly

 Version 1.8b (October 5, 2013)
================================
Omnifactory is now player-owned (fixes free transfer bug, requires new game)

 Version 1.8 (September 26, 2013)
==================================
(this version is not save compatible with earlier versions)
Fixed memory leak with factory lookup, updated to new ModPlugin system
Added loadSettingsFromJSON(String filePath)
 - see data/config/omnifac_settings.json for the default Omnifactory settings
 - modders can call a different settings file for each factory

 Version 1.7c (March 19, 2013)
===============================
Fixed divide-by-zero issue when using low custom analysis time modifiers

 Version 1.7b (March 9, 2013)
==============================
Fixed NPE with addRestrictedShip() and addRestrictedWeapon()

 Version 1.7 (March 8, 2013)
=============================
(this version is not save compatible with earlier versions)
Unknown goods now must be analyzed before production can begin:
 - Adds time delay before the production run will start
 - Defaults to 1x the production time of the good, can be changed by mods
 - Set the modifier to zero to disable good analysis completely
Mods can now prevent certain ships and goods from being added to the factory.
New settings:
 - setShowAnalysisComplete(boolean showAnalysisComplete)
   Sets if the station broadcasts when good analysis is done. Defaults to true.
 - setShipAnalysisTimeModifier(float modifier)
   Sets ship blueprint analysis time modifier. Defaults to 1.0.
 - setWeaponAnalysisTimeModifier(float modifier)
   Sets weapon blueprint analysis time modifier. Defaults to 1.0.
 - addRestrictedShip(String hullId)
   Adds a hull type to the restricted list (can't be replicated).
 - removeRestrictedShip(String hullId)
   Removes a hull type from the restricted list.
 - addRestrictedWeapon(String weaponId)
   Adds a weapon to the restricted list (can't be replicated).
 - removeRestrictedWeapon(String weaponId)
   Removes a weapon from the restricted list.
Other new methods:
 - boolean isRestrictedShip(FleetMemberAPI ship)
   Returns true if this ship can't be reproduced by the Omnifactory.
 - boolean isRestrictedWeapon(CargoStackAPI stack)
   Returns true if this weapon can't be reproduced by the Omnifactory.

 Version 1.6b (March 1, 2013)
==============================
Removed bundled LazyLib, now requires LazyLib utility mod active to function

 Version 1.6 (February 10, 2013)
================================
(this version is not save compatible with earlier versions)
Updated bundled version of LazyLib
'Added <x> goods' message no longer appear by default (re-enable in AddOmniFac)
Fixed 'limit reached' message being shown multiple times for the same good

 Version 1.5 (February 2, 2013)
================================
Fixed bug when parsing hull names of certain mods' ships
Lowered the maximum number of hulls produced (was 6/5/4/3/2, now 3/3/2/2/1)
Lowered the maximum stack size of weapons produced (was 40/20/10, now 20/10/5)

 Version 1.4 (January 20, 2013)
================================
Updated bundled version of LazyLib
This is now a utility mod (can be run alongside total conversions)
Generator will attempt to pick the best spot for the station in TC systems

 Version 1.3 (January 2, 2013)
===============================
(this version is not save compatible with earlier versions)
This mod now requires LazyLib (included in the download)
Omnifactory notifications are more organized and much less spammy now.
Fixed rare divide by zero bug with certain modded fighters.
New setting:
 - setMaxStacksPerWeapon(float maxStacks)
   Sets how many stacks of each weapon to produce. Defaults to 1.0.

 Version 1.2 (January 1, 2013)
===============================
(this version is not save compatible with earlier versions)
Moved mod code into a jar (better type-safety, faster loading)
The omnifactory can now optionally require fuel, supplies and crew to function.
Added warnings when factory requirements are not met.
New methods for controlling factory settings (these are all per station):
 - setShowAddedCargo(boolean showAddedCargo)
   Sets if 'X added to station' messages appear. Defaults to true.
 - setShowLimitReached(boolean showLimitReached)
   Sets if 'Limit for X reached' messages appear. Defaults to true.
 - setRemoveBrokenGoods(boolean removeBrokenGoods)
   Sets if buggy goods should be removed from memory. Defaults to false.
 - setShipProductionTimeModifier(float modifier)
   Sets ship production time modifier. Defaults to 1.0.
 - setWeaponProductionTimeModifier(float modifier)
   Sets weapon production time modifier. Defaults to 1.0.
 - setRequiredCrew(int requiredCrew)
   Sets the minimum amount of crew for the factory to function. Defaults to 0.
 - setRequiredSuppliesPerDay(float suppliesPerDay)
   Sets factory supply consumption per day. Defaults to 0.
 - setRequiredFuelPerDay(float fuelPerDay)
   Sets factory fuel consumption per day. Defaults to 0.
 - setMaxHullsPerFighter(int maxHulls)
   Sets how many of each fighter to produce. Retroactive. Defaults to 6.
 - setMaxHullsPerFrigate(int maxHulls)
   Sets how many of each frigate to produce. Retroactive. Defaults to 5.
 - setMaxHullsPerDestroyer(int maxHulls)
   Sets how many of each destroyer to produce. Retroactive. Defaults to 4.
 - setMaxHullsPerCruiser(int maxHulls)
   Sets how many of each cruiser to produce. Retroactive. Defaults to 3.
 - setMaxHullsPerCapital(int maxHulls)
   Sets how many of each capital ship to produce. Retroactive. Defaults to 2.
Other new methods:
 - boolean isUnknownShip(FleetMemberAPI ship)
   Returns true if this station has never encountered this ship's base hull.
 - boolean isUnknownWeapon(CargoStackAPI stack)
   Returns true if this station has never encountered this weapon.

 Version 1.1 (January 1, 2013)
===============================
Fixed nasty crash bug with non-standard variant IDs
Added station tracking and lookup:
 - List OmniFac.getFactories()
 - OmniFac OmniFac.getFactory(SectorEntityToken station)
 - boolean OmniFac.isFactory(SectorEntityToken station)

 Version 1.0 (December 27, 2012)
=================================
Initial release
[close]
Title: Re: Omnifactory v1.0 (.54, released 2012-12-27)
Post by: arcibalde on December 27, 2012, 02:04:39 AM
Nice :)
Title: Re: Omnifactory v1.0 (.54, released 2012-12-27)
Post by: theSONY on December 27, 2012, 02:11:04 AM
i don't have time to check the mod right now (<sad face>) BUT . . . is it required any man power or supplies for production or is it just a fun (testing) mod ?
Title: Re: Omnifactory v1.0 (.54, released 2012-12-27)
Post by: LazyWizard on December 27, 2012, 02:27:28 AM
i don't have time to check the mod right now (<sad face>) BUT . . . is it required any man power or supplies for production or is it just a fun (testing) mod ?

No, but you do have to buy the produced goods from the station at full price. :)
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: maximilianyuen on December 27, 2012, 06:49:14 AM
great is it does work as what i am imagining :D

right now I have to mod the save file to add custom ship and weapon everytime, with this it will make life much easier

what's the max quantity of the same item will appear given time? and what's the max number of individual item?
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: Okim on December 27, 2012, 07:32:04 AM
Hmm. This might be interesting to use :)
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: hadesian on December 27, 2012, 02:22:54 PM
Very very interesting... this is actually what I'd like to see as 'secret' tech you find in systems in teh full game.
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: CrashToDesktop on December 27, 2012, 03:38:40 PM
Interesting. :) I'm sure a lot of us will find this useful and fun, thanks!
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: ValkyriaL on December 27, 2012, 03:42:21 PM
This might just give my shipyard station a purpose, if i can somehow have the shipyard build ships instead of convoys delivering to it.
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: LazyWizard on December 27, 2012, 05:27:36 PM
what's the max quantity of the same item will appear given time? and what's the max number of individual item?

For weapons, one item per 5/10/20 days (based on weapon size), and the station will stop producing the item once it reaches a full stack (so 40/20/10, again dependent on weapon size).

For ships, it produces up to 6/5/4/3/2 of each fighter/frigate/destroyer/cruiser/capital it has encountered. Right now, production time uses the following formula: one hull per (fleet point cost * hull size) / 2 days, with a minimum production time of hull size * 3 days.

Each good has its own timer, so while it might take twenty days to make a large weapon, you could have several different weapons being produced at the same time. The same goes for ships.

This might just give my shipyard station a purpose, if i can somehow have the shipyard build ships instead of convoys delivering to it.

I haven't commented the code yet (I just started on this mod yesterday), so if you need help figuring anything out, feel free to ask. :)
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: CrashToDesktop on December 27, 2012, 05:30:42 PM
What mod class is it?  Utility, Total Conversion, or a regular mod? ;D It's new and untested, but it sounds good.  Just starting a new game with it, I started with my trusty Wolf, bought a Lasher and turned the Wolf in to the autofactory.  MOAR WOLVES!!!  The enemy shall be crushed. >:D
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: LazyWizard on December 27, 2012, 05:39:38 PM
What mod class is it?  Utility, Total Conversion, or a regular mod? ;D It's new and untested, but it sounds good.  Just starting a new game with it, I started with my trusty Wolf, bought a Lasher and turned the Wolf in to the autofactory.  MOAR WOLVES!!!  The enemy shall be crushed. >:D

It's a regular mod for now since the generator assumes Corvus exists (and thus wouldn't be compatible out of the box with certain total conversions). With the modding API changes in the next hotfix I will be able to upgrade it to a utility mod.

Also, you can never have enough Wolves! ;D

Very very interesting... this is actually what I'd like to see as 'secret' tech you find in systems in teh full game.

I'm planning on maintaining this past the multi-system update. It would make a good hidden bonus in some out-of-the-way sector. :)

I was considering writing lore for the mod - it could be an illegal pre-Collapse installation used by some corporation to reverse engineer their competitors' products. Thoughts?
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: silentstormpt on December 27, 2012, 08:06:08 PM
What mod class is it?  Utility, Total Conversion, or a regular mod? ;D It's new and untested, but it sounds good.  Just starting a new game with it, I started with my trusty Wolf, bought a Lasher and turned the Wolf in to the autofactory.  MOAR WOLVES!!!  The enemy shall be crushed. >:D

It's a regular mod for now since the generator assumes Corvus exists (and thus wouldn't be compatible out of the box with certain total conversions). With the modding API changes in the next hotfix I will be able to upgrade it to a utility mod.

Also, you can never have enough Wolves! ;D

Very very interesting... this is actually what I'd like to see as 'secret' tech you find in systems in teh full game.

I'm planning on maintaining this past the multi-system update. It would make a good hidden bonus in some out-of-the-way sector. :)

I was considering writing lore for the mod - it could be an illegal pre-Collapse installation used by some corporation to reverse engineer their competitors' products. Thoughts?

I wouldnt called an illegal but maybe in hands of the factory being in the hands of a neutral faction (payed by heg) are the only reason why there isnt a full scale war on the system making it the main reason why the tri are in the system (protecting their interest and maybe acquire them as well), since it is a factory with a huge benefit to "steal" other factions tech.
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: Okim on December 28, 2012, 09:45:22 AM
Added your script to my Ironclads. Now let`s the alien ship production begin!!!
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: Dr. Death[Lexx] on December 30, 2012, 04:17:17 AM
LazyWizard...this is great, downloading, testing, enjoying it.
Title: Re: Omnifactory v1.0 (.54a, released 2012-12-27)
Post by: Sproginator on December 30, 2012, 06:12:03 AM
LazyWizard, I dare to say your the most talented coder for mods on this forum :)
Title: Re: Omnifactory v1.1 (.54a, released 2013-01-01)
Post by: LazyWizard on January 01, 2013, 09:53:27 AM
A new version is up that fixes a crash bug with non-standard ship variant names. This is save-compatible with the previous version. Get it here (http://www.mediafire.com/file/ds91k94tk29nobd/Omnifactory_1.1.zip).

You don't need this update if you only use this mod with vanilla.
Title: Re: Omnifactory v1.2 (.54a, released 2013-01-01)
Post by: LazyWizard on January 01, 2013, 03:25:24 PM
A new version is up, get it here (http://www.mediafire.com/file/0iqe7c30tiruntb/Omnifactory_1.2.zip). This update adds more customization options for mods that implement this factory.

This version does break save compatibility. However, as this update has no effect on vanilla games, there's no need to upgrade yet for most users. :)

Modders: you will need to remove your existing OmniFac.java and add a line to your mod_info.json pointing to Omnifactory.jar. You can find instructions on how to do this here (http://fractalsoftworks.com/forum/index.php?topic=4760.0). No other changes are required, as all the new settings have defaults identical to the way things functioned before.

Changelog:
Spoiler
Quote
Version 1.2 (January 1, 2013)
===============================
(this version is not save compatible with earlier versions)
Moved mod code into a jar (better type-safety, faster loading)
The omnifactory can now optionally require fuel, supplies and crew to function.
Added warnings when factory requirements are not met.
New methods for controlling factory settings (these are all per station):
 - setShowAddedCargo(boolean showAddedCargo)
   Sets if 'X added to station' messages appear. Defaults to true.
 - setShowLimitReached(boolean showLimitReached)
   Sets if 'Limit for X reached' messages appear. Defaults to true.
 - setRemoveBrokenGoods(boolean removeBrokenGoods)
   Sets if buggy goods should be removed from memory. Defaults to false.
 - setShipProductionTimeModifier(float modifier)
   Sets ship production time modifier. Defaults to 1.0.
 - setWeaponProductionTimeModifier(float modifier)
   Sets weapon production time modifier. Defaults to 1.0.
 - setRequiredCrew(int requiredCrew)
   Sets the minimum amount of crew for the factory to function. Defaults to 0.
 - setRequiredSuppliesPerDay(float suppliesPerDay)
   Sets factory supply consumption per day. Defaults to 0.
 - setRequiredFuelPerDay(float fuelPerDay)
   Sets factory fuel consumption per day. Defaults to 0.
 - setMaxHullsPerFighter(int maxHulls)
   Sets how many of each fighter to produce. Retroactive. Defaults to 6.
 - setMaxHullsPerFrigate(int maxHulls)
   Sets how many of each frigate to produce. Retroactive. Defaults to 5.
 - setMaxHullsPerDestroyer(int maxHulls)
   Sets how many of each destroyer to produce. Retroactive. Defaults to 4.
 - setMaxHullsPerCruiser(int maxHulls)
   Sets how many of each cruiser to produce. Retroactive. Defaults to 3.
 - setMaxHullsPerCapital(int maxHulls)
   Sets how many of each capital ship to produce. Retroactive. Defaults to 2.
Other new methods:
 - boolean isUnknownShip(FleetMemberAPI ship)
   Returns true if this station has never encountered this ship's base hull.
 - boolean isUnknownWeapon(CargoStackAPI stack)
   Returns true if this station has never encountered this weapon.
[close]

Edit: uploaded a quick fix for an issue with the 'missing resources' warnings.
Title: Re: Omnifactory v1.2 (.54a, released 2013-01-01)
Post by: Wyvern on January 02, 2013, 11:37:38 AM
Say, LazyWizard.  Could you maybe merge messages?  Have a single message that says something like "Omnifactory inventory update: blah_laser (12/20), some_missile_thing (4/10), ...", etc?

Not 100% sure how the message display deals with line-wrapping, so there might still need to be some cleverness to deal with that, but it'd help cut down on the spamminess of the mod's messages, without actually cutting out information.

Maybe even add a mid level of output, where it just says "Omnifactory constructed new weapons" or the like?

It might also be neat if you could specify supplies or fuel per weapon / ship constructed, rather than per day.  Though that might get unreasonably clunky / unintuitive in terms of what order things get constructed in when there aren't enough supplies to build everything at once, so it may not be worth the trouble.
Title: Re: Omnifactory v1.2 (.54a, released 2013-01-01)
Post by: LazyWizard on January 02, 2013, 11:52:11 AM
Say, LazyWizard.  Could you maybe merge messages?  Have a single message that says something like "Omnifactory inventory update: blah_laser (12/20), some_missile_thing (4/10), ...", etc?

Not 100% sure how the message display deals with line-wrapping, so there might still need to be some cleverness to deal with that, but it'd help cut down on the spamminess of the mod's messages, without actually cutting out information.

Maybe even add a mid level of output, where it just says "Omnifactory constructed new weapons" or the like?

Reducing factory spam is actually what I'm working on right now. :) addMessage() doesn't support line-wrapping or newlines at all, but I wrote a class (https://bitbucket.org/LazyWizard/lazylib/src/6247ab0ed3e84f59b8f879118a1530321e0e508c/org/lazywizard/lazylib/campaign/CampaignUtils.java?at=default) to do that sort of thing for us.

Quote
It might also be neat if you could specify supplies or fuel per weapon / ship constructed, rather than per day.  Though that might get unreasonably clunky / unintuitive in terms of what order things get constructed in when there aren't enough supplies to build everything at once, so it may not be worth the trouble.

I considered it, but decided it wouldn't work for the reasons you mentioned - also, since there's no way to remove goods from the station's memory right now, it would quickly get too expensive; this is the sort of thing we'd need a menu for. I'll reconsider if/when we get the capability to create our own UI elements.
Title: Re: Omnifactory v1.2 (.54a, released 2013-01-01)
Post by: LazyWizard on January 02, 2013, 05:10:08 PM
How's this:
Spoiler
(http://i.imgur.com/2b46t.png)
[close]

That's with every weapon in vanilla. Much less spammy than before. :)
Title: Re: Omnifactory v1.2 (.54a, released 2013-01-01)
Post by: Wyvern on January 02, 2013, 05:15:10 PM
Nice.  Much improved.
Title: Re: Omnifactory v1.3 (.54a, released 2013-01-02)
Post by: LazyWizard on January 02, 2013, 06:52:07 PM
New version is up. Notifications are organized alphabetically and much less spammy now. Get it here (http://www.mediafire.com/file/7el7c0c2up30r38/Omnifactory_1.3.zip).

Changelog:
Spoiler
Quote
Version 1.3 (January 2, 2013)
===============================
(this version is not save compatible with earlier versions)
This mod now requires LazyLib (included in the download)
Omnifactory notifications are more organized and much less spammy now.
Fixed rare divide by zero bug with certain modded fighters.
New setting:
 - setMaxStacksPerWeapon(float maxStacks)
   Sets how many stacks of each weapon to produce. Defaults to 1.0.
[close]
Title: Re: Omnifactory v1.3 (.54a, released 2013-01-02)
Post by: maximilianyuen on January 02, 2013, 10:12:21 PM
New version is up. Notifications are organized alphabetically and much less spammy now. Get it here (http://www.mediafire.com/file/7el7c0c2up30r38/Omnifactory_1.3.zip).

Changelog:
Spoiler
Quote
Version 1.3 (January 2, 2013)
===============================
(this version is not save compatible with earlier versions)
This mod now requires LazyLib (included in the download)
Omnifactory notifications are more organized and much less spammy now.
Fixed rare divide by zero bug with certain modded fighters.
New setting:
 - setMaxStacksPerWeapon(float maxStacks)
   Sets how many stacks of each weapon to produce. Defaults to 1.0.
[close]

I am willing to pay again if starfarer will updated at this speed XD
Title: Re: Omnifactory v1.3 (.54a, released 2013-01-02)
Post by: Sproginator on January 03, 2013, 12:07:46 AM
New version is up. Notifications are organized alphabetically and much less spammy now. Get it here (http://www.mediafire.com/file/7el7c0c2up30r38/Omnifactory_1.3.zip).

Changelog:
Spoiler
Quote
Version 1.3 (January 2, 2013)
===============================
(this version is not save compatible with earlier versions)
This mod now requires LazyLib (included in the download)
Omnifactory notifications are more organized and much less spammy now.
Fixed rare divide by zero bug with certain modded fighters.
New setting:
 - setMaxStacksPerWeapon(float maxStacks)
   Sets how many stacks of each weapon to produce. Defaults to 1.0.
[close]

I am willing to pay again if starfarer will updated at this speed XD
It's a lot more difficult to develop a game compare to modding, especially regarding creating extensive, big free Apis.
Title: Re: Omnifactory v1.3 (.54a, released 2013-01-02)
Post by: LazyWizard on January 03, 2013, 09:26:15 AM
New version is up. Notifications are organized alphabetically and much less spammy now. Get it here (http://www.mediafire.com/file/7el7c0c2up30r38/Omnifactory_1.3.zip).

Changelog:
Spoiler
Quote
Version 1.3 (January 2, 2013)
===============================
(this version is not save compatible with earlier versions)
This mod now requires LazyLib (included in the download)
Omnifactory notifications are more organized and much less spammy now.
Fixed rare divide by zero bug with certain modded fighters.
New setting:
 - setMaxStacksPerWeapon(float maxStacks)
   Sets how many stacks of each weapon to produce. Defaults to 1.0.
[close]

I am willing to pay again if starfarer will updated at this speed XD

The original release was a prototype I threw together in a single afternoon. All these updates have just been putting in the level of polish the mod should have had in the first place. :)
Title: Re: Omnifactory v1.3 (.54a, released 2013-01-02)
Post by: sdmike1 on January 04, 2013, 12:18:49 PM
!!! that is all i have to say just !!!
Title: Re: Omnifactory v1.3 (.54a, released 2013-01-02)
Post by: maximilianyuen on January 05, 2013, 06:51:24 AM
just saying, don't meant anything bad at all to Alex and his great team :)


Title: Re: Omnifactory v1.3 (.54a, released 2013-01-02)
Post by: Spardok on January 06, 2013, 02:15:46 AM
Hmm is this fully compatable with 54.1a?
Title: Re: Omnifactory v1.3 (.54.1a, released 2013-01-02)
Post by: LazyWizard on January 06, 2013, 08:57:31 AM
Yes, it should work fine.
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: LazyWizard on January 19, 2013, 11:48:59 PM
1.4 is up. This should be save-compatible with the previous version. Get it here (http://www.mediafire.com/file/v72jf1afbhlwgd2/Omnifactory_1.4.zip).

This update brings built-in compatibility for total conversions. For non-Corvus systems, the station will try to find the best place to orbit. The generator uses the following logic:

Changelog:
Quote
Version 1.4 (January 20, 2013)
================================
Updated bundled version of LazyLib
This is now a utility mod (can be run alongside total conversions)
Generator will attempt to pick the best spot for the station in TC systems
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: Plasmatic on January 20, 2013, 08:18:10 AM
Will this mod work with other mods in terms that I put a ship/weapon from a different mod into the factory, will it produce that ship/weapon?

Does the station have a limit to the number of different things it can produce? like 20 different ships and 40 different weapons, after that anything new you sell to the station will not get produced?

How does the priorities work? if I put in 3 ships and 4 weapons at the same time, what will it produce first? will it produce everything at the same time? or does it prioritize based on complexity?
easy weapons/ships first, once those are done starts producing harder things etc.?

definately a very interesting mod that I will be downloading and trying.. now :P
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: Chronosfear on January 20, 2013, 09:29:44 AM
Will this mod work with other mods in terms that I put a ship/weapon from a different mod into the factory, will it produce that ship/weapon?

Does the station have a limit to the number of different things it can produce? like 20 different ships and 40 different weapons, after that anything new you sell to the station will not get produced?

How does the priorities work? if I put in 3 ships and 4 weapons at the same time, what will it produce first? will it produce everything at the same time? or does it prioritize based on complexity?
easy weapons/ships first, once those are done starts producing harder things etc.?

definately a very interesting mod that I will be downloading and trying.. now :P

1.yes it does ... at least for weapons i can confirm.
   think it does for hulls , too

2. Everything will be produced at the same time but takes a different time to produce it ( small goes faster then medium or large mounts )


cool addition, will be my 2nd mod which will be permanently activ.
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: Uomoz on January 20, 2013, 09:46:47 AM
May I implement this in U'sC? :)
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: Andy H.K. on January 20, 2013, 10:02:13 AM
Will this mod work with other mods in terms that I put a ship/weapon from a different mod into the factory, will it produce that ship/weapon?

Does the station have a limit to the number of different things it can produce? like 20 different ships and 40 different weapons, after that anything new you sell to the station will not get produced?

How does the priorities work? if I put in 3 ships and 4 weapons at the same time, what will it produce first? will it produce everything at the same time? or does it prioritize based on complexity?
easy weapons/ships first, once those are done starts producing harder things etc.?

definately a very interesting mod that I will be downloading and trying.. now :P

1.yes it does ... at least for weapons i can confirm.
   think it does for hulls , too

2. Everything will be produced at the same time but takes a different time to produce it ( small goes faster then medium or large mounts )


cool addition, will be my 2nd mod which will be permanently activ.

1. Yes it does for hull too, I've been happily replicating Neutrino's Super bomber ;D
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: Plasmatic on January 20, 2013, 11:15:56 AM
Will this mod work with other mods in terms that I put a ship/weapon from a different mod into the factory, will it produce that ship/weapon?

Does the station have a limit to the number of different things it can produce? like 20 different ships and 40 different weapons, after that anything new you sell to the station will not get produced?

How does the priorities work? if I put in 3 ships and 4 weapons at the same time, what will it produce first? will it produce everything at the same time? or does it prioritize based on complexity?
easy weapons/ships first, once those are done starts producing harder things etc.?

definately a very interesting mod that I will be downloading and trying.. now :P

1.yes it does ... at least for weapons i can confirm.
   think it does for hulls , too

2. Everything will be produced at the same time but takes a different time to produce it ( small goes faster then medium or large mounts )


cool addition, will be my 2nd mod which will be permanently activ.

1. Yes it does for hull too, I've been happily replicating Neutrino's Super bomber ;D

Finally I can actually have a big carrier fleet! normally the problem I get is that I run out of fighters to buy, and those stupid convoys never resupply what I need :P
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: LazyWizard on January 20, 2013, 11:20:40 AM
May I implement this in U'sC? :)

Feel free. :)

Does the station have a limit to the number of different things it can produce? like 20 different ships and 40 different weapons, after that anything new you sell to the station will not get produced?

There's no limit on how many blueprints it can store. However, the station is still bound by the cargo limits of vanilla Starsector, so it will stop producing new resources if its inventory becomes completely full (this is very visible with ships; I may have to lower the default number produced per hull for the next patch).
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: Plasmatic on January 21, 2013, 08:35:57 AM
May I implement this in U'sC? :)

Feel free. :)

Does the station have a limit to the number of different things it can produce? like 20 different ships and 40 different weapons, after that anything new you sell to the station will not get produced?

There's no limit on how many blueprints it can store. However, the station is still bound by the cargo limits of vanilla Starsector, so it will stop producing new resources if its inventory becomes completely full (this is very visible with ships; I may have to lower the default number produced per hull for the next patch).

is it possible to remove a blueprint from the omnifactory?
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: EvilWaffleThing on January 21, 2013, 02:22:05 PM
What happens if there is already something orbiting opposite the abandoned storage facility? I'm using Fleet Control Mod (http://fractalsoftworks.com/forum/index.php?topic=3758.0) which places a civilian mining station opposite the abandoned storage facility. Would the omnifactory just occupy the same space?
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: LazyWizard on January 21, 2013, 06:23:04 PM
is it possible to remove a blueprint from the omnifactory?

Not at this time.

What happens if there is already something orbiting opposite the abandoned storage facility? I'm using Fleet Control Mod (http://fractalsoftworks.com/forum/index.php?topic=3758.0) which places a civilian mining station opposite the abandoned storage facility. Would the omnifactory just occupy the same space?

I just checked, and it actually spawns the Omnifactory about 90 degrees away from the Abandoned Station. So it shouldn't be a problem. :)
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: Okim on January 22, 2013, 12:18:31 AM
Hey, there is a new script from our Chinese friends over in modding sub-forum. Its about combining things into various stuff.

Guess this might be of some use for your omni factory.
Title: Re: Omnifactory v1.0 (.54, released 2012-12-27)
Post by: Sproginator on January 22, 2013, 11:56:14 AM
i don't have time to check the mod right now (<sad face>) BUT . . . is it required any man power or supplies for production or is it just a fun (testing) mod ?

No, but you do have to buy the produced goods from the station at full price. :)
Is there any way to change this? :D
Title: Re: Omnifactory v1.0 (.54, released 2012-12-27)
Post by: gruntmaster1 on January 22, 2013, 12:31:02 PM
i don't have time to check the mod right now (<sad face>) BUT . . . is it required any man power or supplies for production or is it just a fun (testing) mod ?

No, but you do have to buy the produced goods from the station at full price. :)
Is there any way to change this? :D

Add the line "station.getCargo().setFreeTransfer(true);" after
"SectorEntityToken station;" in the AddOmniFac.java file in data -> scripts -> world folder. This can be abused to easily get a lot of money. I once thought about making a form of economics mod to produce weapons and ships, and this might help me work on it again (depending on time and how well I can implement my ideas).

Edit: In case I actually get it done, is it okay if I modify the scripts (credit will ofcouse be given for the original work)?
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: LazyWizard on January 22, 2013, 10:23:48 PM
i don't have time to check the mod right now (<sad face>) BUT . . . is it required any man power or supplies for production or is it just a fun (testing) mod ?

No, but you do have to buy the produced goods from the station at full price. :)
Is there any way to change this? :D

Like gruntmaster1 said, you can enable free transfer for the station's cargo. If you don't want the station to become overpowered, you can always make the factory require resources to run.

I've been working on making customization easier for non-coders for the next update. AddOmniFac.java now has all the relevant settings with comments describing what they do.

If you want to use this now, here's the updated file. It should be compatible with 1.4, but you would need to start a new game for the changes to take place:

data/scripts/world/AddOmniFac.java
Code
package data.scripts.world;

import com.fs.starfarer.api.campaign.CampaignFleetAPI;
import com.fs.starfarer.api.campaign.SectorAPI;
import com.fs.starfarer.api.campaign.SectorEntityToken;
import com.fs.starfarer.api.campaign.SectorGeneratorPlugin;
import com.fs.starfarer.api.campaign.StarSystemAPI;
import java.util.*;

@SuppressWarnings("unchecked")
public class AddOmniFac implements SectorGeneratorPlugin
{
    private static final String STATION_NAME = "Omnifactory";
    private static final String STATION_FACTION = "neutral";

    // Responsible for creating the spawnpoint and adjusting factory settings
    // If you wish to modify a default, uncomment and change the relevent line
    private static void initStation(SectorEntityToken station, StarSystemAPI system)
    {
        OmniFac factory = new OmniFac(station);

        // Should the player be able to freely take goods from the factory?
        //station.getCargo().setFreeTransfer(false);

        // Sets if 'X added to station' messages appear. Defaults to true.
        //factory.setShowAddedCargo(true);
        // Sets if 'Limit for X reached' messages appear. Defaults to true.
        //factory.setShowLimitReached(true);
        // Sets if buggy goods should be removed from memory. Defaults to false.
        //factory.setRemoveBrokenGoods(false);

        // Sets ship production time modifier. Defaults to 1.0.
        //factory.setShipProductionTimeModifier(1.0f);
        // Sets weapon production time modifier. Defaults to 1.0.
        //factory.setWeaponProductionTimeModifier(1.0f);

        // Sets the minimum amount of crew for the factory to function. Defaults to 0.
        //factory.setRequiredCrew(0);
        // Sets factory supply consumption per day. Defaults to 0.
        //factory.setRequiredSuppliesPerDay(0f);
        // Sets factory fuel consumption per day. Defaults to 0.
        //factory.setRequiredFuelPerDay(0f);

        // Sets how many of each fighter to produce. Retroactive. Defaults to 3.
        //factory.setMaxHullsPerFighter(3);
        // Sets how many of each frigate to produce. Retroactive. Defaults to 2.
        //factory.setMaxHullsPerFrigate(2);
        // Sets how many of each destroyer to produce. Retroactive. Defaults to 2.
        //factory.setMaxHullsPerDestroyer(2);
        // Sets how many of each cruiser to produce. Retroactive. Defaults to 1.
        //factory.setMaxHullsPerCruiser(1);
        // Sets how many of each capital ship to produce. Retroactive. Defaults to 1.
        //factory.setMaxHullsPerCapital(1);
        // Sets how many stacks of each weapon to produce. Defaults to 0.5.
        //factory.setMaxStacksPerWeapon(0.5f);

        system.addSpawnPoint(factory);
    }

    // This will try to create the station in the following places (in order):
    // 1. If the system is Corvus, at Corvus IV
    // 2. If not Corvus, a planet with no existing satellites
    // 3. If no free planets, orbit adjacent the Abandoned Storage Facility
    // 4. If no Abandoned Storage Facility, orbiting the system's star
    private static void createStation(StarSystemAPI system)
    {
        SectorEntityToken station;

        // We are in the Corvus system (not a TC), so use Corvus IV
        if ("Corvus Star System".equals(system.getName()))
        {
            station = system.addOrbitalStation(
                    system.getEntityByName("Corvus IV"), 315,
                    300, 50, STATION_NAME, STATION_FACTION);
        }
        // Not in Corvus, find a good candidate for station placement
        else
        {
            SectorEntityToken tmp;
            List planets = new ArrayList(system.getPlanets());
            List stations = system.getOrbitalStations();

            // Why is this even IN there?
            planets.remove(system.getStar());

            // Remove all planets that have stations around them
            for (int x = 0; x < stations.size(); x++)
            {
                tmp = (SectorEntityToken) stations.get(x);

                if (tmp.getOrbit() != null)
                {
                    planets.remove(tmp.getOrbit().getFocus());
                }
            }

            // Are there any free planets?
            if (!planets.isEmpty())
            {
                station = system.addOrbitalStation(
                        (SectorEntityToken) planets.get(0), 315,
                        300, 50, STATION_NAME, STATION_FACTION);
            }
            else
            {
                tmp = system.getEntityByName("Abandoned Storage Facility");

                // Does the Abandoned Storage Facility exist?
                if (tmp != null)
                {
                    station = system.addOrbitalStation(tmp.getOrbit().getFocus(),
                            315, 300, 50, STATION_NAME, STATION_FACTION);
                }
                else
                {
                    // I give up, just use the star
                    if (system.getStar() != null)
                    {
                        station = system.addOrbitalStation(system.getStar(), 315,
                                7250, 50, STATION_NAME, STATION_FACTION);
                    }
                    // Just in case somehow there's no sun in this system
                    else
                    {
                        station = system.addOrbitalStation(system.createToken(0f, 0f),
                                0, 0, 50, STATION_NAME, STATION_FACTION);
                    }
                }
            }
        }

        // Finally, create the factory
        initStation(station, system);
    }

    @Override
    public void generate(SectorAPI sector)
    {
        List systems = sector.getStarSystems();

        // This generator ran before SectorGen, delay until a system is created
        if (systems.isEmpty())
        {
            Timer deferredAdd = new Timer(true);
            deferredAdd.scheduleAtFixedRate(new DeferredAdd(sector), 1000, 1000);
        }
        else
        {
            StarSystemAPI system = (StarSystemAPI) systems.get(0);
            createStation(system);
        }
    }

    private static class DeferredAdd extends TimerTask
    {
        SectorAPI sector;

        public DeferredAdd(SectorAPI sector)
        {
            this.sector = sector;
        }

        @Override
        public void run()
        {
            CampaignFleetAPI player = sector.getPlayerFleet();

            if (player != null)
            {
                StarSystemAPI system = (StarSystemAPI) player.getContainingLocation();

                if (system != null)
                {
                    createStation(system);
                    this.cancel();
                }
            }
        }
    }
}
Title: Re: Omnifactory v1.0 (.54, released 2012-12-27)
Post by: LazyWizard on January 22, 2013, 10:24:09 PM
I once thought about making a form of economics mod to produce weapons and ships, and this might help me work on it again (depending on time and how well I can implement my ideas).

Edit: In case I actually get it done, is it okay if I modify the scripts (credit will ofcouse be given for the original work)?

Feel free. :)
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: Okim on January 22, 2013, 10:33:35 PM
1.4 is up. This should be save-compatible with the previous version. Get it here (http://www.mediafire.com/file/v72jf1afbhlwgd2/Omnifactory_1.4.zip).

This update brings built-in compatibility for total conversions. For non-Corvus systems, the station will try to find the best place to orbit. The generator uses the following logic:
  • If the system is Corvus, orbit Corvus IV
  • If not Corvus, find a planet with no existing satellites
  • If there are no free planets, orbit opposite the Abandoned Storage Facility
  • If there is no Abandoned Storage Facility, orbit the system's star

Changelog:
Quote
Version 1.4 (January 20, 2013)
================================
Updated bundled version of LazyLib
This is now a utility mod (can be run alongside total conversions)
Generator will attempt to pick the best spot for the station in TC systems

LW what should i do with my Ironclads and Omnifactory? Since its an utility mod now - i probably should remove the code that my mod is currently using? Its from the very first version of Omnifactory.

I`m using a custom star system and it has some empty planets in it, so your station will probably spawn without any problems if used as an utility mod.
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: LazyWizard on January 22, 2013, 10:40:31 PM
1.4 is up. This should be save-compatible with the previous version. Get it here (http://www.mediafire.com/file/v72jf1afbhlwgd2/Omnifactory_1.4.zip).

This update brings built-in compatibility for total conversions. For non-Corvus systems, the station will try to find the best place to orbit. The generator uses the following logic:
  • If the system is Corvus, orbit Corvus IV
  • If not Corvus, find a planet with no existing satellites
  • If there are no free planets, orbit opposite the Abandoned Storage Facility
  • If there is no Abandoned Storage Facility, orbit the system's star

Changelog:
Quote
Version 1.4 (January 20, 2013)
================================
Updated bundled version of LazyLib
This is now a utility mod (can be run alongside total conversions)
Generator will attempt to pick the best spot for the station in TC systems

LW what should i do with my Ironclads and Omnifactory? Since its an utility mod now - i probably should remove the code that my mod is currently using? Its from the very first version of Omnifactory.

I`m using a custom star system and it has some empty planets in it, so your station will probably spawn without any problems if used as an utility mod.

It's up to you. However, if you include it in your mod you can write your own generator, which will both guarantee good station placement and allow you to change how the factory behaves. :)
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: gruntmaster1 on January 23, 2013, 01:47:19 AM
Out of curiosity, why did you use advance as the loop (called every tick), instead of spawnFleet (called once a day)?
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: LazyWizard on January 23, 2013, 02:17:37 AM
Out of curiosity, why did you use advance as the loop (called every tick), instead of spawnFleet (called once a day)?

The Omnifactory actually uses its own implementation of SpawnPointPlugin instead of extending BaseSpawnPoint. If you look at BaseSpawnPoint's source you can see it also uses advance() to determine when to call its heartbeat method, but it includes some things that are unnecessary for this mod (like fleet tracking).

Creating my own implementation of SpawnPointPlugin both allows me to cut out that unnecessary overhead, and ensures my mod will still function even if BaseSpawnPoint's code changes at a later date.
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: gruntmaster1 on January 23, 2013, 02:29:06 AM
Out of curiosity, why did you use advance as the loop (called every tick), instead of spawnFleet (called once a day)?

The Omnifactory actually uses its own implementation of SpawnPointPlugin instead of extending BaseSpawnPoint. If you look at BaseSpawnPoint's source you can see it also uses advance() to determine when to call its heartbeat method, but it includes some things that are unnecessary for this mod (like fleet tracking).

Creating my own implementation of SpawnPointPlugin both allows me to cut out that unnecessary overhead, and ensures my mod will still function even if BaseSpawnPoint's code changes at a later date.
Oh, I didn't notice that xD. I got another question if you don't mind. Never having worked with java, how do i go about modifying OmniFac.java? If I add the .jar to netbeans, it says that it is read only, and if I "unpack" the .jar and add the .java to the data\scripts\world folder, then i get a compile error saying generics are not supported.
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: LazyWizard on January 23, 2013, 02:37:22 AM
Oh, I didn't notice that xD. I got another question if you don't mind. Never having worked with java, how do i go about modifying OmniFac.java? If I add the .jar to netbeans, it says that it is read only, and if I "unpack" the .jar and add the .java to the data\scripts\world folder, then i get a compile error saying generics are not supported.

Generics and for-each loops won't work with Janino, the compiler Starfarer uses for its mod scripts, which is why I implemented this mod as a jar. :)

You'll need to make a Netbeans project with the source (include LazyLib.jar and starfarer.api.jar as libraries), then clean & build (shift+F11) to create an updated jar. You can find that jar in the 'dist' folder of your Netbeans project. Just replace the jar in the mod folder with the updated version and you should be good to go. :)

Edit: a quicker way to get the source would be to download it directly from the repository, from this link (https://bitbucket.org/LazyWizard/omnifactory/get/default.zip).
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: gruntmaster1 on January 23, 2013, 02:58:18 AM
Oh, I didn't notice that xD. I got another question if you don't mind. Never having worked with java, how do i go about modifying OmniFac.java? If I add the .jar to netbeans, it says that it is read only, and if I "unpack" the .jar and add the .java to the data\scripts\world folder, then i get a compile error saying generics are not supported.

Generics and for-each loops won't work with Janino, the compiler Starfarer uses for its mod scripts, which is why I implemented this mod as a jar. :)

You'll need to make a Netbeans project with the source (include LazyLib.jar and starfarer.api.jar as libraries), then clean & build (shift+F11) to create an updated jar. You can find that jar in the 'dist' folder of your Netbeans project. Just replace the jar in the mod folder with the updated version and you should be good to go. :)

Edit: a quicker way to get the source would be to download it directly from the repository, from this link (https://bitbucket.org/LazyWizard/omnifactory/get/default.zip).

Thanks for providing the help and link. As said, this is new to me, so a bit confusing (head is spinning, trying to consume the info), but  I think I get the gist of it. Would you prefer it being over PM if I should have any more questions with this?
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: Sproginator on January 24, 2013, 12:42:15 AM
This thing it like a money factory without that transfer fee.

The way I started off:

Buy 1 pillrum LRM launcher, and transfer that into the station.
Fight for a while, till you get enough for a hound
Make sure you don't have enough crew to man the hound, this will ensure your supply per day usage stays the same
Go to the station and transfer the hound over, Then wait 6 days. With your average supply per day usage being about 0.3 a day, this is easy.
Get a hound and any pilrums you got and transfer them over to your fleet.
Head to the tri tachyon station and sell the pilrums and hound
Purchase another, less valued weapon, I chose the tac laser and Vulcan cannon(or whatever its called, the machine gun one)
Take them both to the omnifactory and just dump them in, by the time you get there, at least 1 hound should be there
Pick up the hound, fly to the Hedgemony station and fight some pirates till you get about 6k
Sell all gathered weapons that you don't need and head to the omnifactory.
Pick up all the hounds there(unless its above your FP) As well as all of the weapons there
Your hounds should be able to hold all new weapons in your cargo bay
Go to the orbital station and sell all your hounds, And your weapons, and buy a destroyer of your choice.
Now just go to the orbital station when you want more supplies and presto, your done
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: Lopunny Zen on January 29, 2013, 09:42:19 AM
aww...it cant produce antediluvian v.v...
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: gruntmaster1 on January 29, 2013, 09:49:43 AM
aww...it cant produce antediluvian v.v...

With the way the mod is made, the factory should be able to reproduce anything that you feed it. Could you elaborate how it doesn't work?
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: LazyWizard on January 29, 2013, 09:51:48 AM
aww...it cant produce antediluvian v.v...

Spoiler
(http://i.imgur.com/PCpQEre.png)
[close]

Everything seems to be working fine for me.
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: Lopunny Zen on February 01, 2013, 07:29:45 PM
right it spawns the fighter wings but anything bigger and it has an error...at least with uomoz mod..
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: theSONY on February 02, 2013, 05:19:33 AM
i got omnifactory from Uomoz's trested ver. 17
& i'll confirm that antediluvian can't be produced (except fighters wings)
Spoiler
(http://i.imgur.com/Wxwf2MM.png)
[close]
Title: Re: Omnifactory v1.4 (.54.1a, released 2013-01-20)
Post by: LazyWizard on February 02, 2013, 09:08:49 AM
Ah, found it. It was due to the way I parsed hull IDs in that version. I'm using the new ShipAPI.getHullID() method in the dev version, so I didn't run into this in my tests. I'll upload a fix momentarily, let me just remove the unfinished features for now. :)
Title: Re: Omnifactory v1.5 (.54.1a, released 2013-02-02)
Post by: LazyWizard on February 02, 2013, 09:26:06 AM
1.5 is up. Get it here (http://www.mediafire.com/file/v33xaudgbr67ugs/Omnifactory_1.5.zip).

Edit: this version should be save-compatible. It won't fix existing stored hulls, unfortunately.

Changelog:
Quote
Version 1.5 (February 2, 2013)
================================
Fixed bug when parsing hull names of certain mods' ships
Lowered the maximum number of hulls produced (was 6/5/4/3/2, now 3/3/2/2/1)
Lowered the maximum stack size of weapons produced (was 40/20/10, now 20/10/5)
Title: Re: Omnifactory v1.5 (.54.1a, released 2013-02-02)
Post by: hadesian on February 02, 2013, 09:34:36 AM
Twas streaming with this and Thaago's restock mod - I think there's an incompatibility, because it was basically eating what the restock mod gave it and spamming the log.
Title: Re: Omnifactory v1.5 (.54.1a, released 2013-02-02)
Post by: LazyWizard on February 02, 2013, 09:41:58 AM
Twas streaming with this and Thaago's restock mod - I think there's an incompatibility, because it was basically eating what the restock mod gave it and spamming the log.

Yes, that would be a problem. :D

There's not much I can do about it, though. Any fix for this would have to be made in Thaago's mod.
Title: Re: Omnifactory v1.5 (.54.1a, released 2013-02-02)
Post by: zakastra on February 08, 2013, 10:30:36 AM
Can we have an option to announce capacity reached juts once until stick depletes (or just once, full stop) the mod gets very spammy once you have a bunch of ships and weapons added over a long period of time
Title: Re: Omnifactory v1.5 (.54.1a, released 2013-02-02)
Post by: LazyWizard on February 08, 2013, 10:34:09 AM
Can we have an option to announce capacity reached juts once until stick depletes (or just once, full stop) the mod gets very spammy once you have a bunch of ships and weapons added over a long period of time

For your current save: open your campaign.xml in the saves folder, search for <SHOW__ADDED__CARGO>, and change it to false.

For all future saves: open data/scripts/world/AddOmniFac.java and uncomment the line
Code
factory.setShowAddedCargo(true);
and change it to false as well.
Title: Re: Omnifactory v1.5 (.54.1a, released 2013-02-02)
Post by: zakastra on February 08, 2013, 10:44:51 AM
Ahh, Lazywizard I should have known you would already have this covered :)
Title: Re: Omnifactory v1.5 (.54.1a, released 2013-02-02)
Post by: Lopunny Zen on February 09, 2013, 02:29:14 PM
cant create antediluvian ships at all except fighters...
Title: Re: Omnifactory v1.5 (.54.1a, released 2013-02-02)
Post by: sdmike1 on February 09, 2013, 09:02:46 PM
If memory serves it is a problem with the antediluvians mod, not omnifactory but memory doesn't often serve
Title: Re: Omnifactory v1.5 (.54.1a, released 2013-02-02)
Post by: LazyWizard on February 10, 2013, 09:43:08 AM
cant create antediluvian ships at all except fighters...

What version of this mod are you using? This should have been fixed in 1.5.
Title: Re: Omnifactory v1.6 (.54.1a, released 2013-02-10)
Post by: LazyWizard on February 10, 2013, 11:49:12 AM
Can we have an option to announce capacity reached juts once until stick depletes (or just once, full stop) the mod gets very spammy once you have a bunch of ships and weapons added over a long period of time

Oops, it looked like I introduced a bug way back in 1.3 where it would notify you that the limit had been reached for the same good multiple times. Fixed now.

Version 1.6 is up. Get it here (http://www.mediafire.com/file/ao1xhptaijwpwpt/Omnifactory_1.6.zip).

Changelog:
Quote
Version 1.6 (February 10, 2013)
================================
(this version is not save compatible with earlier versions)
Updated bundled version of LazyLib
'Added <x> goods' message no longer appear by default (re-enable in AddOmniFac)
Fixed 'limit reached' message being shown multiple times for the same good
Title: Re: Omnifactory v1.6b (.54.1a, released 2013-03-01)
Post by: LazyWizard on March 08, 2013, 11:44:55 AM
I'm working on the next update for this mod right now. Hopefully it'll be out today or tomorrow.

Here's the changelog so far:
Spoiler
Quote
Version 1.7 (March XX, 2013)
=============================
(this version is not save compatible with earlier versions)
Unknown goods now must be analyzed before production can begin:
 - Adds time delay before the production run will start
 - Defaults to 1x the production time of the good, can be changed by mods
Mods can now prevent certain ships and goods from being added to the factory.
New settings:
 - setShipAnalysisTimeModifier(float modifier)
   Sets ship blueprint analysis time modifier. Defaults to 1.0.
 - setWeaponAnalysisTimeModifier(float modifier)
   Sets weapon blueprint analysis time modifier. Defaults to 1.0.
 - addRestrictedShip(String hullId)
   Adds a hull type to the restricted list (can't be replicated).
 - removeRestrictedShip(String hullId)
   Removes a hull type from the restricted list.
 - addRestrictedWeapon(String weaponId)
   Adds a weapon to the restricted list (can't be replicated).
 - removeRestrictedWeapon(String weaponId)
   Removes a weapon from the restricted list.
Other new methods:
 - boolean isRestrictedShip(FleetMemberAPI ship)
   Returns true if this ship can't be reproduced by the Omnifactory.
 - boolean isRestrictedWeapon(CargoStackAPI stack)
   Returns true if this weapon can't be reproduced by the Omnifactory.
[close]
Title: Re: Omnifactory v1.6b (.54.1a, released 2013-03-01)
Post by: Wyvern on March 08, 2013, 11:46:19 AM
Ooh, nice.  A certain thing I'm working on will definitely benefit from those restricted lists!
Title: Re: Omnifactory v1.7 (.54.1a, released 2013-03-08)
Post by: LazyWizard on March 08, 2013, 04:09:02 PM
1.7 is up, get it here (http://www.mediafire.com/file/kbw3a9l8pbbjax9/Omnifactory_1.7.zip). This update is not save-compatible with previous versions of the mod.

This mod now requires the LazyLib utility mod to function. Get LazyLib here (http://fractalsoftworks.com/forum/index.php?topic=5444.0).

This is the first major update since 1.2 (the mod's codebase increased in size by 30% with this release), so please let me know if you find any bugs.

Changelog:
Spoiler
Quote
Version 1.7 (March 8, 2013)
=============================
(this version is not save compatible with earlier versions)
Unknown goods now must be analyzed before production can begin:
 - Adds time delay before the production run will start
 - Defaults to 1x the production time of the good, can be changed by mods
 - Set the modifier to zero to disable good analysis completely
Mods can now prevent certain ships and goods from being added to the factory.
New settings:
 - setShowAnalysisComplete(boolean showAnalysisComplete)
   Sets if the station broadcasts when good analysis is done. Defaults to true.
 - setShipAnalysisTimeModifier(float modifier)
   Sets ship blueprint analysis time modifier. Defaults to 1.0.
 - setWeaponAnalysisTimeModifier(float modifier)
   Sets weapon blueprint analysis time modifier. Defaults to 1.0.
 - addRestrictedShip(String hullId)
   Adds a hull type to the restricted list (can't be replicated).
 - removeRestrictedShip(String hullId)
   Removes a hull type from the restricted list.
 - addRestrictedWeapon(String weaponId)
   Adds a weapon to the restricted list (can't be replicated).
 - removeRestrictedWeapon(String weaponId)
   Removes a weapon from the restricted list.
Other new methods:
 - boolean isRestrictedShip(FleetMemberAPI ship)
   Returns true if this ship can't be reproduced by the Omnifactory.
 - boolean isRestrictedWeapon(CargoStackAPI stack)
   Returns true if this weapon can't be reproduced by the Omnifactory.
[close]
Title: Re: Omnifactory v1.7 (.54.1a, released 2013-03-08)
Post by: Uomoz on March 09, 2013, 02:01:06 AM
Nice! Is there any possibility of a moddable %chance of failed item analysis (with blueprint loss)?

Right now putting an item in the Omnifac is 100% profitable investment, you have nothing to lose as you'll simply multiply every rare item you can find. Setting an analysis failure chance would pose risks and interesting decisions in front of the player when the item he has to analyze is unique :).
Title: Re: Omnifactory v1.7 (.54.1a, released 2013-03-08)
Post by: LazyWizard on March 09, 2013, 03:49:31 AM
Nice! Is there any possibility of a moddable %chance of failed item analysis (with blueprint loss)?

Right now putting an item in the Omnifac is 100% profitable investment, you have nothing to lose as you'll simply multiply every rare item you can find. Setting an analysis failure chance would pose risks and interesting decisions in front of the player when the item he has to analyze is unique :).

The major tradeoff with the Omnifactory is time. You can use something now and risk losing it, or put it in the Omnifactory and wait for it to be produced - with the new analysis system, that could be a very long wait (it can take several months before you see a hull for some of the bigger mod-added cap ships).

If you check the 'customization' section in the main post, there are several settings you can change to make the Omnifactory less powerful, such as making it require fuel, crew, or supplies to function, or changing how long analysis/production takes.
Title: Re: Omnifactory v1.7b (.54.1a, released 2013-03-09)
Post by: LazyWizard on March 09, 2013, 05:04:48 PM
I uploaded a quick bugfix release (http://www.mediafire.com/file/1bqcwxvh4zg23k4/Omnifactory_1.7b.zip). Normal users don't need to download this update, only modders who plan on using the restricted cargo system.

I also learned to actually use the mod's methods when testing instead of just populating variables directly. :P

Changelog:
Quote
Version 1.7b (March 9, 2013)
==============================
Fixed NPE with addRestrictedShip() and addRestrictedWeapon()
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: LazyWizard on March 19, 2013, 01:59:36 PM
Another bugfix release is up, get it here (http://www.mediafire.com/file/6inp176o81t1692/Omnifactory_1.7c.zip).

Changelog:
Quote
Version 1.7c (March 19, 2013)
===============================
Fixed divide-by-zero issue when using low custom analysis time modifiers
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: ciago92 on March 27, 2013, 12:01:05 PM
Does anyone know what the hotfix is for UC's 17.1? I saw it mentioned somewhere but haven't been able to find it. do I just download the latest here and paste into one of its files or something?
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: LazyWizard on March 27, 2013, 06:39:06 PM
Yes. You only need to replace jars/Omnifactory.jar in Uomoz's Corvus with the one included in this mod.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: Uomoz on March 27, 2013, 08:35:20 PM
Feature suggestion: a "failed analysis" parameter (tier based would be even better), for more hardcore implementations of the omnifactory. As it stands right now the station is a sure investment, with no diminished returns. Adding the risk factor would:

1) Add more "unique" feel to ships, as in the vanilla background.

2) Put more choices in the players hand: a rare ship should be a very important asset to find, and not easily replaceable. Should you risk it or use it?

Optional request: for the "failed analysis" event to be hardcoded for each ship the player acquires so it's not reloadable.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: phyrex on March 27, 2013, 08:48:42 PM
Feature suggestion: a "failed analysis" parameter (tier based would be even better), for more hardcore implementations of the omnifactory. As it stands right now the station is a sure investment, with no diminished returns. Adding the risk factor would:

1) Add more "unique" feel to ships, as in the vanilla background.

2) Put more choices in the players hand: a rare ship should be a very important asset to find, and not easily replaceable. Should you risk it or use it?

Optional request: for the "failed analysis" event to be hardcoded for each ship the player acquires so it's not reloadable.

wouldnt it be frustrating to lose a valuable ship for no other reason than the RGN god was angry at you ?
im for having diminishing return to the omnifactory, but losing a ship outright because you rolled the wrong number seems extreme.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: Uomoz on March 27, 2013, 09:56:41 PM
That's the point, you bet the ship. Also maybe the omnifac could give you back the thing if a failed analysis occur.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: phyrex on March 27, 2013, 10:05:49 PM
That's the point, you bet the ship. Also maybe the omnifac could give you back the thing if a failed analysis occur.

i think i found how to solve your problem.
when you bring a ship to the omnifactory, it has a chance of scanning improperly. if it does fail to scan, that ship in particuliar can never be scanned again.
"but then someone can just come back with another hull to try again !" and thats where the magic occurs ! that would mean that only common/easily obtainable ships will be have more occasions to be scanned while harder to get ships (paragon, or the unsung to take your example) will take some time before another attempt can be done.

how does that sound ?
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: sirboomalot on March 27, 2013, 11:55:33 PM
That's the point, you bet the ship. Also maybe the omnifac could give you back the thing if a failed analysis occur.

i think i found how to solve your problem.
when you bring a ship to the omnifactory, it has a chance of scanning improperly. if it does fail to scan, that ship in particuliar can never be scanned again.
"but then someone can just come back with another hull to try again !" and thats where the magic occurs ! that would mean that only common/easily obtainable ships will be have more occasions to be scanned while harder to get ships (paragon, or the unsung to take your example) will take some time before another attempt can be done.

how does that sound ?

I suspect that it would be hard for the station or game to tell whether the player is bringing in a different ship or not.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: phyrex on March 28, 2013, 12:01:10 AM
That's the point, you bet the ship. Also maybe the omnifac could give you back the thing if a failed analysis occur.

i think i found how to solve your problem.
when you bring a ship to the omnifactory, it has a chance of scanning improperly. if it does fail to scan, that ship in particuliar can never be scanned again.
"but then someone can just come back with another hull to try again !" and thats where the magic occurs ! that would mean that only common/easily obtainable ships will be have more occasions to be scanned while harder to get ships (paragon, or the unsung to take your example) will take some time before another attempt can be done.

how does that sound ?

I suspect that it would be hard for the station or game to tell whether the player is bringing in a different ship or not.

wouldnt this kind of thing be easy to put ? like a metaphorical little checkmark on the hull's data ?
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: Undefined on March 28, 2013, 03:17:51 AM
I may be wrong, I'm going purely by experience rather than looking into the code but I believe if a hull is destroyed and "repaired" during a battle that code wise it is simply replaced with a new empty hull of that type.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: LazyWizard on March 29, 2013, 07:04:54 PM
I'm really not a fan of random chance in games, so I'd be reluctant to add failure rates.

What if the factory required multiple hulls to analyze before it can decipher the blueprints? Say one hull for fighters/frigates, two for destroyers/cruisers, three for capitals? It would make adding high-tier ships to the factory a much larger sacrifice than it is currently, but you could still have a healthy supply of low-level ships.

And I think if you somehow manage to capture/purchase three Paragons and are willing to give them up, you deserve to have a steady supply later on. :)
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: Uomoz on March 30, 2013, 05:40:40 PM
I'm really not a fan of random chance in games, so I'd be reluctant to add failure rates.

What if the factory required multiple hulls to analyze before it can decipher the blueprints? Say one hull for fighters/frigates, two for destroyers/cruisers, three for capitals? It would make adding high-tier ships to the factory a much larger sacrifice than it is currently, but you could still have a healthy supply of low-level ships.

And I think if you somehow manage to capture/purchase three Paragons and are willing to give them up, you deserve to have a steady supply later on. :)

Me like. Any hardcore option would be amazing, really.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: phyrex on March 30, 2013, 05:49:34 PM
I'm really not a fan of random chance in games, so I'd be reluctant to add failure rates.

What if the factory required multiple hulls to analyze before it can decipher the blueprints? Say one hull for fighters/frigates, two for destroyers/cruisers, three for capitals? It would make adding high-tier ships to the factory a much larger sacrifice than it is currently, but you could still have a healthy supply of low-level ships.

And I think if you somehow manage to capture/purchase three Paragons and are willing to give them up, you deserve to have a steady supply later on. :)

this is somehow the practical way of implementing what i suggested...
how did i NOT think about that earlier ?!
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: theSONY on March 31, 2013, 01:22:56 AM
umm... imagine, you got a unique ship/weapon & omni fail to reproduce it, what will you do ? LOAD your game
i think failure is not an option & will just be frustrating to the play
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: FireBlitz8404 on March 31, 2013, 08:51:50 PM
So what are the blueprints that you are able to buy for?  ???
I bought them and now they are just sitting in my inventory
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: LazyWizard on April 01, 2013, 10:55:03 AM
So what are the blueprints that you are able to buy for?  ???
I bought them and now they are just sitting in my inventory
Those are a feature of Uomoz's Corvus, not this mod. :)

I believe they are used to transform certain ships into their upgraded forms from this mod (http://fractalsoftworks.com/forum/index.php?topic=5762.0). You need to drop the blueprint and the ship to be upgraded into the Abandoned Storage Facility.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: Cosmitz on April 08, 2013, 04:39:21 AM
Speaking of... ran a good 6 hours today with a fresh SS and modinstall, and i'm having issues with the Omnifactory. For one, it won't build some items.. i think the Neutron Lance and the Maser offhand, but more importantly, things disappear from the market after i sell them and even after they get processed? I sold a Nevermore purely to get it analysed then i wanted to buy it back.. but when i got there.. no ship. And this has been happening with other weapons an items too. Something's buggy somewhere. :p
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: Taverius on April 08, 2013, 04:55:00 AM
Its normal and intended for the original item to disappear.

It gets analysed and disassembled, once that's done the Omnifactory starts producing it. That means the first ship will appear anywhere between 10-30 days after you sold the original item.

Not sure about the weapons, I've never had that issue, but it is set up not to manufacture weapons which you're not supposed to be able to buy. And again, depending on the weapon it can take some time for it to be analysed and manufactured. The messages the omnifactory prints in the game window have a time in days for each item. So when it says its started analyzing 'Weapon X (10d)' it means itll spend 10 days analysing it, and that itll spit one out every 10 days after that.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: Cosmitz on April 09, 2013, 04:01:18 AM
My bad, i think i misinterpreted how it works. Thanks for the clarification.

And a last question on the matter.. does the station resupply Marines? How often? I'm hostile'd to everyone (hardcore ;p) and i'm running out of them to capture enemy ships.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: Uomoz on April 09, 2013, 04:09:57 AM
My bad, i think i misinterpreted how it works. Thanks for the clarification.

And a last question on the matter.. does the station resupply Marines? How often? I'm hostile'd to everyone (hardcore ;p) and i'm running out of them to capture enemy ships.

That's U'sC version of the omnifactory, the default one holds no marines or crew.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: Cosmitz on April 09, 2013, 05:26:24 AM
I have a vague feeling i should move this conversation on your mod's thread. :)
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: HELMUT on September 25, 2013, 01:51:04 PM
Big necro, sorry but...

Is the Omnifactory going to be updated for 0.6? I didn't looked if it was still there in the lastest version of Exerelin. But it would be cool to have it while playing vanilla Starsector.
Title: Re: Omnifactory v1.7c (.54.1a, released 2013-03-19)
Post by: Taverius on September 25, 2013, 02:59:51 PM
It works just fine in 0.6.

I know LazyWizard is working on an update (there's movement on bitbucket) and right now its not a true utility mod (you need to start a new game with it) but itll plop itself down in Corvus and build stuff for you, no problem.
Title: Re: Omnifactory v1.8 (.6a, released 2013-09-26)
Post by: LazyWizard on September 25, 2013, 10:49:17 PM
1.8 is up, get it here (http://www.mediafire.com/download/1tpxl4b7xpaei95/Omnifactory_1.8.zip). This is not the rewrite, it's mostly just a bugfix patch. It also adds the ability to set the Omnifactory's settings inside of a json file instead of needing to mess around with code.

This MIGHT be save-compatible with 1.7c, but I'm marking it as incompatible just in case. Use with old saves at your own risk. :)

Changelog:
Quote
Version 1.8 (September 26, 2013)
==================================
(this version is not save compatible with earlier versions)
Fixed memory leak with factory lookup, updated to new ModPlugin system
Added loadSettingsFromJSON(String filePath)
 - see data/config/omnifac_settings.json for the default Omnifactory settings
 - modders can call a different settings file for each factory
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: LazyWizard on October 05, 2013, 02:43:14 PM
I uploaded a quick fix for the 'free transfer' issue that's making the Omnifactory so horribly broken post-.6a. Download version 1.8b here (http://www.mediafire.com/download/1h8m3avk0wc88mh/Omnifactory_1.8b.zip).

This is literally a one-word change. All it does is assign the Omnifactory to the player faction instead of neutral. If you don't want to re-download the mod, you can just open OmniFacModPlugin.java and change STATION_FACTION to "player".

This requires a new game to take effect, but if you're comfortable editing save files you can change the station's ownership in your current save by doing the following:
Code
              <owner>
                <id>player</id>
              </owner>

That should change the station's ownership to the player faction in your current game.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Taverius on October 06, 2013, 01:51:13 PM
Is it possible to turn it back to Neutral in the config if we prefer to play with the omnifactory requiring supplies to construct stuff?
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: LazyWizard on October 06, 2013, 02:00:49 PM
Yes, just follow the instructions from my previous post, except replace 'player' with 'neutral'. Also, I'm glad to hear that someone actually uses the 'costs supplies' option. :)

----------------------

I've finally started work on version 2.0. This is a total rewrite and the Omnifactory will function completely differently. For the most part this update nerfs the Omnifactory (let's face it, in its current form this mod makes the game way too easy), but hopefully the new mechanics will be interesting enough to make up for it.

I'd like to get some feedback on the current concept. If there's anything you like/don't like, or if you can think of something I should add, let me know.

Planned features:
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Uomoz on October 06, 2013, 02:06:43 PM
Nice changes, me like!
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Taverius on October 06, 2013, 03:09:42 PM
Yes, just follow the instructions from my previous post, except replace 'player' with 'neutral'. Also, I'm glad to hear that someone actually uses the 'costs supplies' option. :)
Right, I was wondering if I can set that in the settings JSON so it starts out that way in new campaigns :D

  • The Omnifactory will float around a random star from the list of all generated systems (excluding the player's spawn location). You'll have to hunt it down before you can use it. I'm tempted to make it only appear when you get close to its location. ;D
'Only appear when you get close' is cute in design phase but frustrating and unfun in gameplay phase, generally. It works for 'secret room with weapon behind hidden door' but even that is cheap design cop-out to actually designing clever secrets behind geometry in level where you would not look around, for example.

Secondly, 'random star' is fine in general but finer control will be needed ... restrict to systems with station owned by faction, one of a list of system, specific system, etc, for mods :)

  • The station starts out neutral and non-functional and is only good for item storage at first. You will need crew, supplies, and lots of time to bring it back to an operational state. Once it's repaired it will switch ownership to your faction and you can use the factory functions.
Sounds appropriate in gameplay and lore sense, hard to believe Sector factions would leave a working autofab with reverse-engineering capabilities lying around unused ...

  • Produced goods are free, but crew and supplies are required to construct them in the first place. Higher level crew will either work slightly faster, or be more survivable if an industrial accident mechanic makes it in.
Industrial accident mechanic ... I'm generally very against RNG shafting you throughout normal course of play. Chance of that should only be if state of omnifac is not ideal in the first place, ie, not enough crew to supervise safely -> accident chance.

It might be cute to make the crew at the factory require supplies/day, and have accidents if there are none, but that becomes too involved, imo.

  • Weapons and ships are no longer automatically produced. Instead you place an order with the factory, and if it has the required supplies it will attempt to create those goods.
So long as I can order 40 railguns at a time :D

Also, 'attempt'? RNG creep does not fun gameplay mechanics make. If I have enough crew and supplies then it should build it 100% of the time.

  • Newly created ships are mothballed and heavily damaged. This represents the Omnifactory's inability to make perfect replicas of a ship (it's not in great shape after sitting abandoned for 200+ years), meaning your crew has to go over new ships with a fine-toothed comb to find and fix any construction errors.
  • The Omnifactory will be upgradeable. Basic upgrades will be things like faster production, lower supply costs, less damage to created ships, that sort of thing. There are some other, more interesting upgrades, but they definitely count as feature creep and probably won't make it into the next version. One upgrade I do hope makes it in is remote communication with the Omnifactory, so you can place an order from another system and pick it up later.
'Heavily' is how much though. Many ships cost in the order of 75% as much to fully repair as they do to construct, and up to 25% of hull cost to bring to Veteran CR from mothballed.

If I have to pay twice as much for a ship made at omnifac I and most players will hunt stations instead, yes, because convenience of made-to-order ship is offset by inconvenience of finding initial ship, paying for it, carrying it, acquiring cash/supplies for construction, cash/supplies for repair and CR recovery resulting in net negative in both cost and convenience.

50% extra cost total? Maybe at the start, unupgraded, but even that's high considering everything else necessary to build and fly combat-ready ship out of there.

Configurable in settings.json, I think, for the different levels, based on % extra cost on top of base hull.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Gotcha! on October 06, 2013, 03:13:02 PM
What Uomoz said. Looking forward to it. :D
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Uomoz on October 06, 2013, 03:29:28 PM
Unlike what Taverius said, I'd like some form of random events that would require player attention, even at full efficiency, being the omnifac lost technology and such. I also like the fact that the ships are produced in a barely working state (damaged) adding some cost to the player choice. Very good job.

Personal note, making it not exclusive to the player would be amazing.

EDIT: this revision of the Omnifac could easily be core in future UsS versions.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: LazyWizard on October 06, 2013, 04:33:50 PM
  • The Omnifactory will float around a random star from the list of all generated systems (excluding the player's spawn location). You'll have to hunt it down before you can use it. I'm tempted to make it only appear when you get close to its location. ;D
'Only appear when you get close' is cute in design phase but frustrating and unfun in gameplay phase, generally. It works for 'secret room with weapon behind hidden door' but even that is cheap design cop-out to actually designing clever secrets behind geometry in level where you would not look around, for example.

Secondly, 'random star' is fine in general but finer control will be needed ... restrict to systems with station owned by faction, one of a list of system, specific system, etc, for mods :)

  • The station starts out neutral and non-functional and is only good for item storage at first. You will need crew, supplies, and lots of time to bring it back to an operational state. Once it's repaired it will switch ownership to your faction and you can use the factory functions.
Sounds appropriate in gameplay and lore sense, hard to believe Sector factions would leave a working autofab with reverse-engineering capabilities lying around unused ...

I haven't finished writing the lore, but the Omnifactory was abandoned before the Collapse and none of the current factions even know that it exists. It hasn't been rediscovered since then because the radiation from the star it orbits blocks sensors from detecting it. Pretty much the only way you could find it is if you had a navigation chart leading you to it.

I was joking with the 'only appears when near' comment, but I would like a way to prevent players from simply jumping to every system and checking the map to find it. This station is intended to be a late-game acquisition, but since at the moment end-game is only a few hours after start-game that's not really feasible right now. Eventually there will be a quest chain where you discover the Omnifactory's location, but that's far in the future.

Quote
  • Produced goods are free, but crew and supplies are required to construct them in the first place. Higher level crew will either work slightly faster, or be more survivable if an industrial accident mechanic makes it in.
Industrial accident mechanic ... I'm generally very against RNG shafting you throughout normal course of play. Chance of that should only be if state of omnifac is not ideal in the first place, ie, not enough crew to supervise safely -> accident chance.

I'm not set on accidents, but they would be avoidable if they were added. I haven't really fleshed out that part of the concept besides crew doing something other than just being a requirement to use the factory.

Quote
It might be cute to make the crew at the factory require supplies/day, and have accidents if there are none, but that becomes too involved, imo.

Good point. I'd like to avoid forcing the player to babysit the factory, especially since the size of the sector will only increase from this point on and constantly running back and forth will become even more of a chore.

Then again, if it follows the same costs as crew on ships that's only 1 supply/day per 100 crew.

Quote
  • Weapons and ships are no longer automatically produced. Instead you place an order with the factory, and if it has the required supplies it will attempt to create those goods.
So long as I can order 40 railguns at a time :D

Also, 'attempt'? RNG creep does not fun gameplay mechanics make. If I have enough crew and supplies then it should build it 100% of the time.

Sorry, that was poorly phrased. By 'attempt', I mean it would start construction, but it could fail if you decided to borrow some supplies for your fleet while it was working. ;)

I absolutely loathe when success or failure comes down to a throw of the dice, so you shouldn't worry about that sort of thing.

Quote
  • Newly created ships are mothballed and heavily damaged. This represents the Omnifactory's inability to make perfect replicas of a ship (it's not in great shape after sitting abandoned for 200+ years), meaning your crew has to go over new ships with a fine-toothed comb to find and fix any construction errors.
  • The Omnifactory will be upgradeable. Basic upgrades will be things like faster production, lower supply costs, less damage to created ships, that sort of thing. There are some other, more interesting upgrades, but they definitely count as feature creep and probably won't make it into the next version. One upgrade I do hope makes it in is remote communication with the Omnifactory, so you can place an order from another system and pick it up later.
'Heavily' is how much though. Many ships cost in the order of 75% as much to fully repair as they do to construct, and up to 25% of hull cost to bring to Veteran CR from mothballed.

If I have to pay twice as much for a ship made at omnifac I and most players will hunt stations instead, yes, because convenience of made-to-order ship is offset by inconvenience of finding initial ship, paying for it, carrying it, acquiring cash/supplies for construction, cash/supplies for repair and CR recovery resulting in net negative in both cost and convenience.

50% extra cost total? Maybe at the start, unupgraded, but even that's high considering everything else necessary to build and fly combat-ready ship out of there.

It's designed to be somewhat more expensive than simply buying ships since you're guaranteed to have them 'in stock' (for lack of a better phrase). It won't be that much more expensive though, especially since one of the upgrades for the Omnifactory is cheaper repairs (it is a factory, after all). Much like in the current version of this mod, the primary balancing factor will be time.


I only started working on this within the last week so there are a lot of rough spots. The concept will likely change radically between now and release. :)
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: dreamixpl on October 06, 2013, 10:51:06 PM
Please help :0

I want to add Omnifactory to one system (Argus) in new Ironclads mod, but i don't know how to "just add an OmniFac spawnpoint to the system with a station as the argument". Can someone write this code somewhere? That would save me (and propably not only me) a lot of trail and errors.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Gabriel_Braun on October 09, 2013, 09:45:04 AM
Please help :0

I want to add Omnifactory to one system (Argus) in new Ironclads mod, but i don't know how to "just add an OmniFac spawnpoint to the system with a station as the argument". Can someone write this code somewhere? That would save me (and propably not only me) a lot of trail and errors.

Dreamxpl this is a bit of a nightmare of toe-stepping for everyone involved.  Something like this is usually far better dealt with using private messages to avoid any creative conflict of interest, I'll do so in a few minutes ;)
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: drakhades on October 14, 2013, 05:10:37 AM
i'd also like to add an omnifactory to ironclads (i searched all the systems and it's not there)

could you let me know too plz?
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Cyan Leader on November 28, 2013, 12:27:51 PM
Is it possible to add default inventory that is always sold at Omnifactories?
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: HELMUT on November 28, 2013, 03:28:59 PM
Probably. You can also install the restock mod which will add all the weapons in the game in every stations (including Omnifactory) and a bunch of basic ships.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: LazyWizard on November 29, 2013, 12:26:42 AM
Is it possible to add default inventory that is always sold at Omnifactories?

The current version is inventory based, so all you would need to do is put one of each ship/weapon you wanted into the station's cargo and call the factory's checkCargo() method to force it to analyse them. :)
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Sir Goose on January 04, 2014, 11:32:36 AM
Hey killer mod! I feel like any Starsector play through requires it. I have a question though, it is possible to edit the omnifactory in anyway? I've looked at the files in the mod and I'm not sure if editing the plugin file or the settings file does anything.

Edit: should have read the mod description lol....
Still does editing the plugin file affect anything? And how does editing the numbers affect the omnifactory? Like do larger numbers mean faster analyzation and production times or is it the other way around?
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: LazyWizard on January 04, 2014, 12:59:04 PM
The settings file is only used when the factory is first created, so any changes require a new game or some save-file editing. Here's what each of the options does:

The core of the mod hasn't really changed much since the original release for .54a over a year ago, and it's not very flexible. That's one of the major reasons I'm planning on a rewrite.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: JDCollie on April 22, 2014, 03:37:48 AM
So I'm using Omnifactory 1.8b with Uomoz 1.2 and LazyLib 1.8c, and my omnifactory is exhibiting some strange behavior. (I started a new game with all three mods installed.)  The omnifactory will not allow me to buy or sell from it, though it gives me messages about the items it is processing/manufacturing/full of. Prior to joining a faction, it tells me that "This station is for faction use only". After joining a faction, it gives me the same message, and if I activate the Voidwalker fortress, the Omnifactory tells me that "The station's weapons activate."

I'm not really sure what's going on, but I'd love to be able to buy and sell to this lovely little station. Also interesting, I know some of the NPC factions have been selling stuff there, as I've seen a Blackrock Convoy stop there. (I also am currently affiliated with BRDY in that save as well.)

Any ideas?  ???
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: HELMUT on April 22, 2014, 05:05:46 AM
Not compatible with Uomoz's mod, i think that's intended.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: JDCollie on April 22, 2014, 09:36:23 AM
Not compatible with Uomoz's mod, i think that's intended.
Oh  :'(

EDIT:

Wait a sec . . .

Unlike what Taverius said, I'd like some form of random events that would require player attention, even at full efficiency, being the omnifac lost technology and such. I also like the fact that the ships are produced in a barely working state (damaged) adding some cost to the player choice. Very good job.

Personal note, making it not exclusive to the player would be amazing.

EDIT: this revision of the Omnifac could easily be core in future UsS versions.
HAH!!!  Well, okay, maybe not hah, but yeah, it looks like compatibility may eventually be supported :D
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: JDCollie on April 25, 2014, 08:15:54 PM
So, I've been tinkering around with the Omnifactory trying to get it compatible with Uomoz's sector (UsS) and I've . . . well, failed. Sorta. Buuuut I've figured out why it doesn't work, if anyone is interested.

Reader beware, for through 'yonder spoiler lies a wall o' text that may steal thy very heart from thee! Click at thy own risk.
Spoiler
For some context:
I uploaded a quick fix for the 'free transfer' issue that's making the Omnifactory so horribly broken post-.6a. Download version 1.8b here (http://www.mediafire.com/download/1h8m3avk0wc88mh/Omnifactory_1.8b.zip).

This is literally a one-word change. All it does is assign the Omnifactory to the player faction instead of neutral. If you don't want to re-download the mod, you can just open OmniFacModPlugin.java and change STATION_FACTION to "player".

This requires a new game to take effect, but if you're comfortable editing save files you can change the station's ownership in your current save by doing the following:
  • Open up your save's campaign.xml (make a backup first!)
  • Search for <name>Omnifactory</name>
  • Go up a few lines to the section that says something like <owner reference="../../CampaignOrbitalStation[4]/owner"></owner>
  • Replace the entire owner section with the following:
Code
              <owner>
                <id>player</id>
              </owner>

That should change the station's ownership to the player faction in your current game.



STATION_FACTION = Neutral
I found that the reason the Omnifactory gives stuff away for free when STATION_FACTION is set to "Neutral" is because UsS interprets the station's status in precisely the same way it does an abandoned station. The code that creates the dialog options for stations has the conditional  station.getFaction().isNeutralFaction() which, if it returns "True" then provides the "Stash Items / Ships" and "Take Items / Ships" options. As the only stations in Uomoz that belong to the "neutral" faction are abandoned, this normally isn't a problem. (Well, unless you're a neutral omnifactory trying to make a buck.)

STATION_FACTION = Player
Currently, if STATION_FACTION is set to "Player" the omnifactory will tell you that "This station is for faction use only," and give you the option to join its faction if you don't belong to any others. If you do join, the only option the station then gives is to leave the faction. The reason for this behavior is because the UsS code which produces the dialog options recognizes the station's faction as non-independent and with neutral reputation (0.0) toward the player, allowing the player to approach, but the subsequent elseif statements don't have a contingency for a non "Neutral" faction station with neutral reputation toward the player that isn't independent or voidwalker (there is no else statement to fall back on). Thus, the code skips the trade, sell, stash, etc options and jumps down to the "Join Faction" option.

You are allowed to join the faction because UsS evaluates factions based upon their display name. This works fine most of the time except that stations which belong to the "player" faction have the display name of "Your" (I.E., "Your Omnifactory", just like "Pirate Scout" or "Independent Trader"). Next the joinFaction() method changes the player's faction to "Your". The dialog method still evaluates the first part the same, as no reputation changes have occurred, but now you belong to the station's faction, and are given the "Leave Faction" option. If chosen, it sets the player's faction back to "Player", again with no reputation changes.

STATION_FACTION = Player & Player has 1.0 reputation with Faction "Player"
"Well, if the problem is with the player having neutral reputation with their own faction, why don't I just set player reputation to 1.0?" I thought to myself. So I did, and it worked beautifully. The station dialog method evaluated just fine, assuming that I belonged to the faction in question (since you can't really get 1.0 rep with a faction in UsS without joining them) and gave me the normal trading options for a faction station. The problem was when I activated the Voidwalker Theta station. The activateTheta() method complies a list of all of the factions in the game and sets (not adjusts) them all to -2 except the neutral faction, which it sets to 0. This means I can't just create a cheeky little Omnifactory faction and dodge the voidwalker bullet, sadly.

[close]

Long story short, the only way I can see to get the Omnifactory to fully function both before and after voidwalker activation without editing save files (or having Uomoz change his code >.<) is to find a way to get the station.getFaction().isNeutralFaction() call to return false, while still keeping the Omnifactory's station id as "neutral", and Neutral's reputation with the player positive. Since I don't know how .isNeutralFaction() is evaluated, I can't guess at how to mess with it.

(And yes, I know LazyWizard and Uomoz probably already know all of this, but I didn't so, yeah. >.>  )




However, my afternoon was not a complete failure, as I did manage to get the omnifactory to spawn in hyperspace, rather than choosing some potentially hostile sector to spawn in. (Yes, okay, fine. I know it's not that impressive a feat, but keep in mine that literally everything I know about Java I learned in the past four hours trying to get these two mods to cooperate.  :-[  )



So, here's the modified code for OmniFacModPlugin.java

(I apologize in advance for any atrocities of coding I may have committed. Seriously, the number of ClassNotFound exceptions I went through before I figured out what constructors are and what they do was truly unholy.) >.<

Code
package data.scripts.world;

import com.fs.starfarer.api.BaseModPlugin;
import com.fs.starfarer.api.Global;
import com.fs.starfarer.api.campaign.LocationAPI;
import com.fs.starfarer.api.campaign.SectorAPI;
import com.fs.starfarer.api.campaign.SectorEntityToken;
import com.fs.starfarer.api.campaign.StarSystemAPI;
import com.fs.starfarer.api.campaign.FactionAPI;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import data.scripts.world.OmniFac;

//I apologize to LazyWizard for anything terrible I may have done to his sexy, sexy mod :(

public class OmniFacModPlugin extends BaseModPlugin
{
    private static final String OMNIFAC_ENABLED_FLAG = "lw_omnifac_enabled";
    private static final String STATION_NAME = "Omnifactory";
    private static final String STATION_FACTION = "player"; //This is case sensitive, just so you know. Yeah, I found that out the hard way. NullPointerException my ass. >:(

    private static void initStation(SectorEntityToken station, SectorAPI sector)
    {
        OmniFac factory = new OmniFac(station);
FactionAPI player = Global.getSector().getFaction("player");
player.adjustRelationship("player",1);

        factory.loadSettingsFromJSON("data/config/omnifac_settings.json");
        sector.addScript(factory);
    }

    private static void createStation(SectorAPI sector)
    {
LocationAPI asd = sector.getHyperspace();
SectorEntityToken a = asd.createToken(1900, 3700);
        SectorEntityToken station = asd.addOrbitalStation(a, 90, 1, 999, STATION_NAME, STATION_FACTION);
        
        initStation(station, sector);
    }

    private static void initOmniFac()
    {
SectorAPI sector = Global.getSector();
        createStation(sector);
    }

    @Override
    public void onEnabled(boolean wasEnabledBefore)
    {
        Map data = Global.getSector().getPersistentData();
        if (!data.containsKey(OMNIFAC_ENABLED_FLAG))
        {
            data.put(OMNIFAC_ENABLED_FLAG, true);
            initOmniFac();
        }
    }
}

Here's the file if you don't feel like copy/pasting: OmniFacModPlugin.java (https://dl.dropboxusercontent.com/u/101000072/OmniFacModPlugin.java)   Just open the link, right click on the page, select "save as" and then save the document as OmniFacModPlugin.java and stick in your omnifactory folder under Omnifactory\data\scripts\world. I recommend you backup the original file before you replace it with this one because, you know, I modified it, and that probably isn't a good thing. :P


Voidwalker activation will still make the Omnifactory hostile, but you can fix this by editing your save file. Look for the following lines:
Code
<factionIdOne>player</factionIdOne>
<factionIdTwo>player</factionIdTwo>
<value>-2.0</value>
Change the -2.0 to 1.0 and you're golden again.





Anyway, there's the tale of my trials and tribulations while stumbling through the valley of code. Sorry for the spoilered wall of text, please don't hate me  :-[



EDIT: By default, Uomoz's compresses save files into a non-editable format. To get around this, you'll need to go into Uomoz's config files under "Starsector\mods\UomozSector\data\config" and find settings.json

Change "compressSaveGameData":true, to "compressSaveGameData":false, then go back into the game, load your save, save your save (preferably as a copy), and then try to edit it again :)
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Ishman on April 25, 2014, 09:27:13 PM
That's some excellent deductive work there! I went through the same problem of trying to integrate omnifactory but gave up after changing it's faction to player and discovering that didn't work. Where others fear to tread, wot wot.

I will gladly use your modification as simply giving myself weapons and ships with the console isn't as much fun as collecting them through your own actions. Much appreciated!
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: JDCollie on April 28, 2014, 12:20:34 PM
That's some excellent deductive work there! I went through the same problem of trying to integrate omnifactory but gave up after changing it's faction to player and discovering that didn't work. Where others fear to tread, wot wot.

I will gladly use your modification as simply giving myself weapons and ships with the console isn't as much fun as collecting them through your own actions. Much appreciated!
Just so you know, if you change the station faction to independent, DO NOT capitalize the "i". I spent about half an hour trying to figure out how in the heck I had broken my own changes (which had worked just fine on my other computer) until I realized I had added "Independent" rather than "independent". Go figure.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Uomoz on April 28, 2014, 03:49:09 PM
I want to add that UsS will eventually support mods like this, even If they are basically the bane of all the work on the pacing I made in UsS. I "just" need to change some stuff on the StationDialogue code, but it's not a priority.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: JDCollie on April 28, 2014, 04:20:25 PM
I want to add that UsS will eventually support mods like this, even If they are basically the bane of all the work on the pacing I made in UsS. I "just" need to change some stuff on the StationDialogue code, but it's not a priority.
I hope I didn't make it sound in my post like a fix was something easy to do, because I really do respect your work and your mod, and I recognize that every little change like that is just one more thing on what is likely a huge bucket list of stuff you want to do with it. That, and with the bounty changes you've been making, your station dialog files probably look a lot different from the ones I'm looking at.

That being said, there is a fairly simple fix (in theory) that would at least bandaid the current issues with Omnifactory.

Currently the beginning of the createInitialOptions() method in OrbitalStationInteractionDialogPluginImpl.java looks like this:
Code
	private void createInitialOptions() {
            options.clearOptions();
            if ((station.getFaction().isNeutralFaction()) && !station.getFullName().contains("Void Walkers"))
            {

If you changed it to look like this, it should prevent the Omnifactory from being treated like an abandoned station:
Code
	private void createInitialOptions() {
            options.clearOptions();
            if ((station.getFaction().isNeutralFaction()) && (!station.getFullName().contains("Void Walkers") && (!station.getFullName().contains("Omnifactory")))
            {


To get the station to allow access without messing with reputation or providing it with it's own unique dialog options, you'd have go about 37 lines down in the same method to be big ol' knarly else if statement that looks like this:

Code
            } else if ((player.getRelationship(station.getFaction().getId()) >= 0) && (!station.getFullName().contains("Void Walkers"))
                    && ((station.getFaction().getRelationship(playerFleet.getFaction().getId()) == 1) || (station.getFaction().getId().equals("independent")))) {
               

and add another OR statement so that it looks like this:

Code
            } else if ((player.getRelationship(station.getFaction().getId()) >= 0) && (!station.getFullName().contains("Void Walkers"))
                    && ((station.getFaction().getRelationship(playerFleet.getFaction().getId()) == 1) || (station.getFaction().getId().equals("independent")) || (station.getFullName().contains("Omnifactory")))) {
               


Obviously this doesn't do anything to help other mods with compatibility, but it should fix Omnifactory. (I'd test it myself, but, well, I don't actually know how to compile stuff >.> )

Anyway, just a possible fix if you feel like it / have the time. You've got an excellent mod, and I'm excited to see where you take it next, regardless of whether or not the Omnifactory works :D
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Uomoz on April 28, 2014, 04:25:50 PM
LW sent me a simple fix that I didn't think of, Omnifac will work (without any of the station dialogue additions I made though) from the next DEV onward. Nice!
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: JDCollie on April 28, 2014, 05:54:19 PM
LW sent me a simple fix that I didn't think of, Omnifac will work (without any of the station dialogue additions I made though) from the next DEV onward. Nice!
:D Yay!
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Tschudy on April 28, 2014, 06:41:51 PM
LW sent me a simple fix that I didn't think of, Omnifac will work (without any of the station dialogue additions I made though) from the next DEV onward. Nice!
Will it become part of the Uomoz Sector mod and orbit the voidwalker station? because that would be awesome to have your own factory that actually makes stuff.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Uomoz on April 28, 2014, 07:05:36 PM
LW sent me a simple fix that I didn't think of, Omnifac will work (without any of the station dialogue additions I made though) from the next DEV onward. Nice!
Will it become part of the Uomoz Sector mod and orbit the voidwalker station? because that would be awesome to have your own factory that actually makes stuff.

Well but the VW already do that D:, also you wouldn't be able to pay the ships!
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: MesoTroniK on April 28, 2014, 07:12:11 PM
Will it become part of the Uomoz Sector mod and orbit the voidwalker station?


(http://i.imgur.com/6zP4SS1.jpg)
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Aklyon on April 28, 2014, 07:18:30 PM
I want to add that UsS will eventually support mods like this, even If they are basically the bane of all the work on the pacing I made in UsS. I "just" need to change some stuff on the StationDialogue code, but it's not a priority.
Pacing is certainly good and all, but sometimes you just want a to make a bigger fleet and see how you do against the others.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Tschudy on April 28, 2014, 07:27:06 PM
LW sent me a simple fix that I didn't think of, Omnifac will work (without any of the station dialogue additions I made though) from the next DEV onward. Nice!
Will it become part of the Uomoz Sector mod and orbit the voidwalker station? because that would be awesome to have your own factory that actually makes stuff.

Well but the VW already do that D:, also you wouldn't be able to pay the ships!

The difference being the void walkers seem to have some moral objection to making weaponry for the ships.  Kinda hard to be a badass pirate king when your arsenal is limited to harsh words and whatever you found in the local dump.

Also, I am having a lot of trouble finding this thing. 
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: ahrenjb on May 04, 2014, 05:24:20 PM
Hey, first off, great mod. It works very well.

However, I was wondering how I would go about changing the production limits, or potentially removing "blueprints" from the omnifactory. I've somewhat taken to utilizing the factory as a base of operations, and the ship inventory has become kind of cluttered. I wouldn't mind reducing the production limits to say, one per type for all craft sizes, or possibly just trimming down whats available. Is there an easy way to go about this?
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: JDCollie on May 04, 2014, 09:24:58 PM
You can adjust the maximum number of a given ship class (I.E., frigates, destroyers, etc) in Omnifactory's config file. The default starts frigates out at a max of three, which always felt a bit excessive to me, so I always trim it down to one.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: Tschudy on May 06, 2014, 06:56:29 AM
You can adjust the maximum number of a given ship class (I.E., frigates, destroyers, etc) in Omnifactory's config file. The default starts frigates out at a max of three, which always felt a bit excessive to me, so I always trim it down to one.
I'm pretty sure he means preventing the omnifactory from producing certain ships.  Like stopping production of the shuttles that don't work as tugs so they do not fill up the ship shop.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: LazyWizard on May 06, 2014, 09:33:23 AM
Settings are set once at creation and stored in your savefile, so there isn't a way to change them without modifying your save file right now. If you're comfortable with that, you'd open up saves/save_<NAME>_########/campaign.xml (make a backup first!) and search for <data.scripts.world.OmniFac>. The settings for that factory should be just below this. You can also remove blueprints here, but you should be very careful when doing so. It's easy to break your entire save if you miss a closing tag somewhere.

I'm planning on releasing a backwards-compatible 1.9 update that brings the Omnifactory up-to-date with the current API (among other things, it'd use the correct name for ships and also strip/analyse the weapons of ships it consumes). Changing the production options to be per-session instead of set at creation and saved forever shouldn't be too hard.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: ahrenjb on May 06, 2014, 12:02:55 PM
You can adjust the maximum number of a given ship class (I.E., frigates, destroyers, etc) in Omnifactory's config file. The default starts frigates out at a max of three, which always felt a bit excessive to me, so I always trim it down to one.

Settings are set once at creation and stored in your savefile, so there isn't a way to change them without modifying your save file right now. If you're comfortable with that, you'd open up saves/save_<NAME>_########/campaign.xml (make a backup first!) and search for <data.scripts.world.OmniFac>. The settings for that factory should be just below this. You can also remove blueprints here, but you should be very careful when doing so. It's easy to break your entire save if you miss a closing tag somewhere.

I'm planning on releasing a backwards-compatible 1.9 update that brings the Omnifactory up-to-date with the current API (among other things, it'd use the correct name for ships and also strip/analyse the weapons of ships it consumes). Changing the production options to be per-session instead of set at creation and saved forever shouldn't be too hard.

I appreciate the responses guys, just the info I was looking for. I don't see myself starting a new game at this point, so it looks like editing the save file it is. I'll be sure to make a backup before I start messing with potentially game breaking settings. Adjusting the maximum production down to 1 for everything and removing a few blueprints should be just what I'm looking for. That in mind, removing blueprints should just prevent the factory from producing any additional craft of that type, without affecting current inventory or production of other ships, right? If that's the case, I'll have some fun buying up all the unwanted surplus and crashing them into enemy fleets.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: LazyWizard on May 06, 2014, 12:45:25 PM
That in mind, removing blueprints should just prevent the factory from producing any additional craft of that type, without affecting current inventory or production of other ships, right? If that's the case, I'll have some fun buying up all the unwanted surplus and crashing them into enemy fleets.

Removing a blueprint will prevent it from creating more, but if there's any ships of that hull type still in cargo it will immediately grab one for analysis and recreate the blueprint again.

Edit: a hacky way to disable a blueprint permanently is to change that blueprint's <size> tag to 6 in the save file. Since this isn't a valid size in the code it assumes a limit of 0. You can do the same for weapons by setting <stackSize> to 0.
Title: Re: [0.6.1a] Omnifactory v1.8b (released 2013-10-05)
Post by: ahrenjb on May 08, 2014, 11:29:10 AM
Well, I edited my save to change the maximum production to 1 ship of each class without breaking anything. I didn't bother removing any blueprints, once I buy up all the extras it should clean the inventory list up enough to be manageable. Thanks for the tips!
Title: Re: [0.6.2a] Omnifactory v1.9 (released 2014-05-09)
Post by: LazyWizard on May 09, 2014, 09:30:56 AM
1.9 is up, get it here (http://www.mediafire.com/download/vb4103o84c4auhc/Omnifactory_1.9.zip). This release is backwards-compatible with saves using 1.8b, so you'll still have all your old stuff. Remember to delete your old mod folder before upgrading!

This update mostly just changes how the factory saves its settings. Instead of them being loaded once and stored in the savefile, the factory instead remembers the path to the settings JSON and reloads them every session. This means you can change the factory's settings without starting a new game or resorting to savefile editing.

To those modders who include the Omnifactory in their own mods: if you were customizing the settings of your factory through code, be aware that those methods no longer exist (aside from adding and removing restricted weapons/ships). Instead you can have multiple settings files, then use the Omnifactory's setSettingsFile() to swap between them. This makes it easy to add a tiered upgrade system, for example.

There's one other big change that I'm sure users will be glad to see: the factory removes weapons from ships before consuming them. That means no more lost weapon blueprints because you forgot to strip your ship before dropping it into the factory. :)

Future plans: I'm pushing the full rewrite back a bit. 2.0 will just add a campaign dialog that lets you browse and remove blueprints as well as set individual limits on goods. This was intended for this release but I haven't had much free time this week.

I'll be out of town this weekend visiting family. If there's a problem with this release you can find the previous version here (http://www.mediafire.com/download/1h8m3avk0wc88mh/Omnifactory_1.8b.zip) until I can fix it.

Full changelog:
Quote
Version 1.9 (May 9, 2014)
===========================
Many changes to the mod's code, but it should be backwards-compatible with 1.8b
New methods in OmniFac:
 - New constructor: OmniFac(SectorEntityToken station, String settingsFile)
 - OmniFacSettings getSettings()
 - String getSettingsFile()
 - setSettingsFile(String settingsFile)
New class OmniFacSettings:
 - boolean shouldShowAddedCargo()
 - boolean shouldShowAnalysisComplete()
 - boolean shouldShowLimitReached()
 - boolean shouldRemoveBrokenGoods()
 - float getShipAnalysisTimeMod()
 - float getWeaponAnalysisTimeMod()
 - float getShipProductionTimeMod()
 - float getWeaponProductionTimeMod()
 - int getRequiredCrew()
 - float getRequiredSuppliesPerDay()
 - float getRequiredFuelPerDay()
 - int getMaxHullsPerFighter()
 - int getMaxHullsPerFrigate()
 - int getMaxHullsPerDestroyer()
 - int getMaxHullsPerCruiser()
 - int getMaxHullsPerCapital()
 - float getMaxStacksPerWeapon()
Settings are reloaded from JSON every session instead of stored in the savefile
 (this also means individual settings cannot be changed through code anymore,
 and must be set as a whole using setSettingsFile() and another settings JSON)
Removed all other settings-related methods in OmniFac, with the exception of
 adding/removing restricted ships and weapons
The Omnifactory now removes weapons from ships before it consumes them
Fixed the Omnifactory and fighter wing names being displayed incorrectly
Title: Re: [0.6.2a] Omnifactory v1.9 (released 2014-05-09)
Post by: Tschudy on May 09, 2014, 12:36:38 PM
so what exactly are "restricted" ships and weapons?
Title: Re: [0.6.2a] Omnifactory v1.9 (released 2014-05-09)
Post by: LazyWizard on May 09, 2014, 03:15:47 PM
It was a request by (I think) Uomoz for a way to block the Omnifactory from reproducing certain goods. Since Uomoz's Sector doesn't include the Omnifactory anymore I don't think anyone's actually using those methods. Which is a good thing, actually, since I'll probably be replacing them soon with a CSV now that that's possible (yeah, this mod is ancient).
Title: Re: [0.6.2a] Omnifactory v1.9 (released 2014-05-09)
Post by: Tschudy on May 09, 2014, 05:53:12 PM
It was a request by (I think) Uomoz for a way to block the Omnifactory from reproducing certain goods. Since Uomoz's Sector doesn't include the Omnifactory anymore I don't think anyone's actually using those methods. Which is a good thing, actually, since I'll probably be replacing them soon with a CSV now that that's possible (yeah, this mod is ancient).

Ok but which goods are restricted? Just the ship materials like electronics and whatnot?
Title: Re: [0.6.2a] Omnifactory v1.9 (released 2014-05-09)
Post by: NightfallGemini on May 19, 2014, 07:05:18 PM
Alright, I had initially deleted my post since I thought it was just because I was accidentally using the wrong version of Exerelin, but now I'm using the latest stable dev version and  this error keeps happening:

Code
99632 [Thread-5] INFO  com.fs.starfarer.loading.LoadingUtils  - Loading JSON from [data/config/omnifac_settings.json]
99632 [Thread-5] INFO  data.scripts.world.OmniFac  - Loaded settings successfully
99760 [Thread-5] ERROR com.fs.starfarer.combat.O0OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO  - java.lang.NoSuchMethodError: data.scripts.world.OmniFac.loadSettingsFromJSON(Ljava/lang/String;)V
java.lang.NoSuchMethodError: data.scripts.world.OmniFac.loadSettingsFromJSON(Ljava/lang/String;)V
at exerelin.OutSystemStationConstructionFleet$1.run(OutSystemStationConstructionFleet.java:79)
at com.fs.starfarer.campaign.ai.CampaignFleetAI.advance(Unknown Source)
at com.fs.starfarer.campaign.fleet.CampaignFleet.advance(Unknown Source)
at com.fs.starfarer.campaign.BaseLocation.advance(Unknown Source)
at com.fs.starfarer.campaign.CampaignEngine.advance(Unknown Source)
at com.fs.starfarer.campaign.A.o00000(Unknown Source)
at com.fs.starfarer.B.ØÓÒ000(Unknown Source)
at com.fs.oOOO.A.Ã’00000(Unknown Source)
at com.fs.starfarer.combat.O0OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.o00000(Unknown Source)
at com.fs.starfarer.StarfarerLauncher$2.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

I don't really know what's causing it, all I know is as soon as the station constructor fleet pulls up to the planet, the game crashes with this error. I'm set to try it with everything vanilla except LazyLib and Omnifactory to see if I can replicate it there.

E: Alright, with vanilla it just spawns the factory hanging off a random planet. Could this be an issue with Exerelin more than Omnifactory?
Title: Re: [0.6.2a] Omnifactory v1.9 (released 2014-05-09)
Post by: LazyWizard on May 19, 2014, 07:18:30 PM
Exerelin includes the Omnifactory in its mod folder, so you don't need to have this mod active when running it.

You're having that crash because Exerelin hasn't updated to the newest Omnifactory version yet. Running Exerelin with the Omnifactory mod alongside it will cause issues due to changed/removed methods in 1.9. :)
Title: Re: [0.6.2a] Omnifactory v1.9 (released 2014-05-09)
Post by: NightfallGemini on May 19, 2014, 09:12:53 PM
Ahhh, okay, thanks. Didn't know it was a pack-in, I feel quite dumb now. :v
Title: Re: [OUTDATED] Omnifactory v1.9 (released 2014-05-09)
Post by: Aklyon on November 06, 2014, 12:17:02 PM
Any chance this is going to come back, LazyWizard? It was pretty neat.
Title: Re: [OUTDATED] Omnifactory v1.9 (released 2014-05-09)
Post by: LazyWizard on November 06, 2014, 12:37:12 PM
An Omnifactory update is somewhere on the (very long) list of things to do. :)
Title: Re: [OUTDATED] Omnifactory v1.9 (released 2014-05-09)
Post by: Midnight Kitsune on November 06, 2014, 12:58:22 PM
An Omnifactory update is somewhere on the (very long) list of things to do. :)
YUSH!
Title: Re: [OUTDATED] Omnifactory v1.9 (released 2014-05-09)
Post by: McRib27 on January 05, 2015, 12:43:19 PM
An Omnifactory update is somewhere on the (very long) list of things to do. :)

Sorry to raise the dead. But if you have time can you fix the mod so it can be use in version 1.9.1a?

I know it is maybe much work but still some weapons or ships are so rare that you just keep running around and still dont find them and after looking over the mod list i dont find any mods that do the same.

McRib
Title: Re: [OUTDATED] Omnifactory v1.9 (released 2014-05-09)
Post by: LazyWizard on January 05, 2015, 12:57:25 PM
Sure, I'll try to release a quick compatibility fix today if I can. No new features, though.
Title: Re: [OUTDATED] Omnifactory v1.9 (released 2014-05-09)
Post by: McRib27 on January 05, 2015, 01:21:41 PM
Sure, I'll try to release a quick compatibility fix today if I can. No new features, though.

Take you time. We have at last 2-3 months until the next patch come around  ;D.
Title: Re: [0.65.1a] Omnifactory v1.10 (released 2015-01-05)
Post by: LazyWizard on January 05, 2015, 07:24:07 PM
Version 1.10 is finally up, get it here (https://bitbucket.org/LazyWizard/omnifactory/downloads/Omnifactory%201.10.zip) (mirror (http://www.mediafire.com/download/xfv0s8sv0zc9es9/Omnifactory_1.10.zip)). This should work with existing saves. This mod requires LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0) to function!

The big change in 1.10 is that the Omnifactory is no longer profitable. There's now a 100% tariff by default, so you effectively 'sell' ships/weapons for free and have to buy the produced copies at a vastly inflated price. This makes using the Omnifactory much less of a no-brainer than it used to be. It's still horribly broken, but you won't feel compelled to sell everything you find to it anymore. Normal resources and trade goods are virtually free to buy/sell as there's no market demand, so the Omnifactory can still act as a storage facility for those goods.

I also made it much easier for other modders to prevent specific ships/weapons from being replicated. Just copy the CSVs in data/config/omnifactory/ to your own mod folder and add any IDs you want blocked. :)

Full changelog:
Quote
Version 1.10 (January 5, 2015)
================================
(this version is not save compatible with earlier versions) (duh)
Compatibility fixes for new economy/market systems
Added Version Checker support
When added to existing save, syncs factory heartbeat to beginning of next day
Settings are global, defined in data/config/omnifactory/omnifac_settings.json
Restricted goods are defined in a CSV, merged so multiple mods can add to list
Fixed ancient bug where the wrong numbers were shown for analysis phase duration
Added "omnifactoryTariff" setting, defaults to 100%
Balance tweaks (mostly due to above default tariff):
 - You no longer earn a profit when selling to the Omnifactory
 - The prices of produced ships/weapons are vastly inflated
 - Resources still cost almost nothing to store (as there's no market demand)
Added to OmniFacSettings:
 - Set<String> getRestrictedWeapons()
 - Set<String> getRestrictedShips()
 - float getOmnifactoryTariff()
Title: Re: [0.65.1a] Omnifactory v1.10 (released 2015-01-05)
Post by: angrytigerp on January 05, 2015, 07:26:35 PM
Version 1.10 is finally up, get it here (https://bitbucket.org/LazyWizard/omnifactory/downloads/Omnifactory%201.10.zip) (mirror (http://www.mediafire.com/download/xfv0s8sv0zc9es9/Omnifactory_1.10.zip)). This should work with existing saves. This mod requires LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0) to function!

The big change in 1.10 is that the Omnifactory is no longer profitable. There's now a 100% tariff by default, so you effectively 'sell' ships/weapons for free and have to buy the reproduced copies at a vastly inflated price. This makes using the Omnifactory much less of a no-brainer than it used to be. It's still horribly broken, but you won't feel compelled to sell everything you find to it anymore. Since there's no market demand normal resources and trade goods are virtually free to buy/sell, so the Omnifactory can still act as a storage facility for them.

I also made it much easier for other modders to prevent specific ships/weapons from being replicated. Just copy the CSVs in data/config/omnifactory/ to your own mod folder and add any IDs you want blocked. :)

Full changelog:
Quote
Version 1.10 (January 5, 2015)
================================
(this version is not save compatible with earlier versions) (duh)
Compatibility fixes for new economy/market systems
Added Version Checker support
When added to existing save, syncs factory heartbeat to beginning of next day
Settings are global, defined in data/config/omnifactory/omnifac_settings.json
Restricted goods are defined in a CSV, merged so multiple mods can add to list
Fixed ancient bug where the wrong numbers were shown for analysis phase duration
Added "omnifactoryTariff" setting, defaults to 100%
Balance tweaks (mostly due to above default tariff):
 - You no longer earn a profit when selling to the Omnifactory
 - The prices of produced ships/weapons are vastly inflated
 - Resources still cost almost nothing to store (as there's no market demand)
Added to OmniFacSettings:
 - Set<String> getRestrictedWeapons()
 - Set<String> getRestrictedShips()
 - float getOmnifactoryTariff()

Well, there we go. Didn't have to go this far, LazyWizard, we could have done without, but... appreciate it.

Yeah, I always found it kind of wacky that you basically sold items for market value, and in exchange you could get them back for the same price, with the added bonus of having them restock.

EDIT: As a stress test, I'm gonna go ahead and drop this into my kitchen sink SS+ playthrough (SS+ with pretty much every 0.65-compatible modded faction). If it works with all this crap, it should work fine with ANYTHING.
Title: Re: [0.65.1a] Omnifactory v1.10 (released 2015-01-05)
Post by: McRib27 on January 06, 2015, 12:34:54 AM
So it is working with StarSector+ too? (even with the new ships?) Or do i have to change some files?
Title: Re: [0.65.1a] Omnifactory v1.10 (released 2015-01-05)
Post by: Aklyon on January 07, 2015, 07:11:33 AM
So if you set the tariff to around 30%, would that mean it costs about as much to get a ship from the omnifactory as it is from that faction?
Title: Re: [0.65.1a] Omnifactory v1.10 (released 2015-01-05)
Post by: Midnight Kitsune on January 07, 2015, 10:57:50 AM
So if you set the tariff to around 30%, would that mean it costs about as much to get a ship from the omnifactory as it is from that faction?
Yes
Title: Re: [0.65.1a] Omnifactory v1.10 (released 2015-01-05)
Post by: Gabriel_Braun on January 09, 2015, 07:24:01 AM
Hey Lazywizard great that this is back again;  are you planning to include purchasable storage in the next update?
Title: Re: [0.65.1a] Omnifactory v1.10b (released 2015-01-09)
Post by: LazyWizard on January 09, 2015, 07:18:08 PM
Funny you should mention that...

Version 1.10b is up, get it here (https://bitbucket.org/LazyWizard/omnifactory/downloads/Omnifactory%201.10b.zip) (mirror (http://www.mediafire.com/download/m44rg4amco5385d/Omnifactory_1.10b.zip)). Still requires LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0).

This minor update prevents you from selling things to the Omnifactory that it can't replicate/already knows the blueprint for. It also adds a storage tab to the station. This update should be save-compatible with 1.10.

Full changelog:
Quote
Version 1.10b (January 9, 2015)
=================================
Added "ignoreGoodRestrictions" setting, allows replication of restricted goods
You can no longer sell restricted or already known ships/weapons to the factory
Omnifactory now includes a storage tab, unlocked by default
Added a description for the Omnifactory submarket
Buy/sell replaced with appropriate verbs based on tariff setting
Title: Re: [0.65.1a] Omnifactory v1.10b (released 2015-01-09)
Post by: Gabriel_Braun on January 10, 2015, 01:39:39 AM
Hahaha uber!

Thanks dude  ;)
Title: Re: [0.65.1a] Omnifactory v1.10b (released 2015-01-09)
Post by: McRib27 on January 10, 2015, 01:53:36 AM
Thx LazyWizard for you great work here. I play with you mod a the entire time. Thanks
Title: Re: [0.65.1a] Omnifactory v1.10b (released 2015-01-09)
Post by: Sleeeper on January 23, 2015, 02:24:41 AM
Would be great to have an option to get a factory ignore default Corvus location and spawn in random place.
Title: Re: [0.65.1a] Omnifactory v1.10b (released 2015-01-09)
Post by: Gabriel_Braun on January 29, 2015, 07:56:50 AM
Okim of Ironclads fame might be able to help you with that if you ask him as he's don e some work on randomisation ;)
Title: Re: [0.65.1a] Omnifactory v1.10b (released 2015-01-09)
Post by: LazyWizard on January 29, 2015, 06:44:57 PM
The mod has actually had code for a random Omnifactory starting location for ages, which it only uses as a fallback if Corvus IV isn't found (total conversions). I'll add a setting to force it. Expect a minor update later today. :)
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: LazyWizard on January 29, 2015, 08:31:00 PM
Version 1.10c is up, get it here (https://bitbucket.org/LazyWizard/omnifactory/downloads/Omnifactory%201.10c.zip) (mirror (http://www.mediafire.com/download/pc2gcd2qn76dlwq/Omnifactory_1.10c.zip)). Still requires LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0). This update is save-compatible with 1.10b.

The Omnifactory now spawns orbiting a random planet or star in a random system. The only restriction at the moment is that it won't orbit anything that already has a station around it. That's still over 30 potential spots in vanilla alone, so have fun searching!

If you want to keep the old behavior of always orbiting Corvus IV, open data/config/omnifactory/omnifac_settings.json and change "randomStartingLocation" to false.

Changelog:
Spoiler
Quote
Version 1.10c (January 29, 2015)
==================================
Added "randomStartingLocation" setting, enabled by default:
 - With this set to true, the Omnifactory will orbit a random planet or star
   in a random system, so long as that planet doesn't have a station already
Default sell price is now almost always 0, except with very large transactions
[close]
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Midnight Kitsune on January 29, 2015, 11:09:19 PM
This won't change a current save's omnifactory location will it?
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: zaszella on January 29, 2015, 11:18:44 PM
Can omnifactory appear in hyperspace? Just like Zeta Fortress in Uomoz.
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: LazyWizard on January 29, 2015, 11:29:15 PM
This won't change a current save's omnifactory location will it?
No, this update only affects new games.

Can omnifactory appear in hyperspace? Just like Zeta Fortress in Uomoz.
Not at the moment, but I could add it in as a possibility.
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Sleeeper on January 30, 2015, 12:41:03 AM
Thanks :D
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Gabriel_Braun on January 30, 2015, 06:40:12 AM
Could you add in a dialogue event to 'activate' it too?  Maybe pay 100,000 credits and have to wait a year while crews restore systems to the autofab systems to bring it into balance?
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Sleeeper on January 30, 2015, 06:47:07 AM
And/or a requirement to bring to it some resources to make it go online.
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Aklyon on January 30, 2015, 10:26:00 AM
Pretty sure theres config options to make it need crew or supplies or fuel per day already, though I haven't seen them used.
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Midnight Kitsune on January 30, 2015, 01:20:33 PM
Pretty sure theres config options to make it need crew or supplies or fuel per day already, though I haven't seen them used.
Yep, there is. Crew, supplies and fuel can all be made required
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: ahrenjb on January 30, 2015, 01:27:50 PM
I feel like lazywizard has already set the stage for this, but I would eventually like to see this mod feel less like a cheat and more like part of the game world. I feel like the "balance" could be improved if you had to provide multiple samples of a ship or weapon to allow for reproduction, alternatively destroying enemy ships in combat could occasionally drop a "design component" or blueprint that could be used instead. "If you can't buy it, fight it" type of thing. That, and of course the requirement of actual trade resources and manpower for production. Each item would have man-hours required, and a maximum number of workers to work on it. The more workers, the faster the man-hours rack up. Ability to upgrade the station over time to accommodate higher tech or larger ships.... I'm getting a little carried away now, maybe.

Then again, a lot of this will probably be added with or overruled by the eventual campaign changes.
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: orost on January 30, 2015, 01:51:32 PM
@ahrenjb If you go a few pages back in this thread you'll see that LW is already planning something similiar for the 2.0 rewrite. I wonder what the progress on that is though. It's been a long time.
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Velox on January 31, 2015, 02:36:00 AM

This mod has given me a new and obsessively compelling drive in-game.  It may be called the "Omnifactory" but to me it has become "Pokedex Station". 
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Taverius on February 03, 2015, 07:57:16 PM
Oh lordy how do I find it. I've got every possible faction SS+ supports and already went through every system and didn't see it. Please add a console command?

VIM doesn't like looking through 900mb xml files so I can't really just look at the save.
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Wyvern on February 03, 2015, 08:12:26 PM
Oh lordy how do I find it. I've got every possible faction SS+ supports and already went through every system and didn't see it. Please add a console command?

VIM doesn't like looking through 900mb xml files so I can't really just look at the save.
Hm... I remember hearing that neutrino adds a system that doesn't show up on the map.  Don't know where it is, though.
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: LazyWizard on February 03, 2015, 09:29:16 PM
I've moved a ton of code around since the last release, but this console command should work (copy+paste into campaign console, it should be a single line):
Code
runcode SectorEntityToken tmp = (SectorEntityToken) org.lazywizard.omnifac.OmniFac.getFactories().get(0); org.lazywizard.console.Console.showMessage("Omnifactory is orbiting " + tmp.getOrbit().getFocus().getName() + " in " + tmp.getContainingLocation().getName());
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Taverius on February 04, 2015, 03:00:12 AM
Runs great! Unfortunately the OF is in Antioch >_<

Oh well - time to get friendly with the Templars :F

Can you add that as a command the OF adds to CC? Because that would be awesome.
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: LazyWizard on February 04, 2015, 03:11:34 AM
Runs great! Unfortunately the OF is in Antioch >_<

Oh well - time to get friendly with the Templars :F

Awesome. Good luck with that!

While I personally consider locations like that valid (they add structure and a goal to a playthrough), I'll add an option in the next release for players and modders to block the factory from spawning in specific systems, the same way they can already block ships/weapons from being replicated.


Quote
Can you add that as a command the OF adds to CC? Because that would be awesome.

Already done. (https://bitbucket.org/LazyWizard/omnifactory/commits/acb2f51304dbc442a687aa98d799790c97ea2d15) :)
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Tartiflette on February 04, 2015, 03:34:00 AM
Hehe in my current playthrough, it spawned next to Babylon... Yay free storage in the middle of the map!
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: orost on February 07, 2015, 12:45:51 PM
How do I make it work with the options that make the Factory require resources? It won't let me put them into the main inventory (can't replicate), and it won't use anything I put in storage.
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Taverius on February 10, 2015, 01:52:33 AM
How do I make it work with the options that make the Factory require resources? It won't let me put them into the main inventory (can't replicate), and it won't use anything I put in storage.
Sorry, haven't even tried with the latest version - since you have to pay for the original hull/weapon now and then pay twice as much as normal to buy it again it feels plenty punishing enough.

In fact, I'd like an option to control how much the surcharge is at the omnifactory, because I'd much rather pay less but have to keep the OF supplied with the stuff the way I did when it was neutral faction.
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Tartiflette on February 10, 2015, 03:10:23 AM
You can reduce the Tariff and adjust most parameters to your liking in the Omnifactory/data/config/omnifactory/omnifac_settings.json
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Taverius on February 10, 2015, 03:24:54 AM
Ah yeah.

Kind of wish you could set different tariffs for buying and selling. Edit: I wonder if that's possible by having two different market tabs, one for selling goods to be replicated, and one for buying?
Title: Re: [0.65.1a] Omnifactory v1.10c (released 2015-01-29)
Post by: Tartiflette on February 10, 2015, 04:36:07 AM
It's possible I think: you can create another market like the black ones that has no tariff to sell, and use the normal one to buy produced weapons.

I'm not sure it makes much sense to buy or sale stuff from it though. I'd rather have a system only using non-supplies resources (metal for the small ones, metal and machinery for the medium ones, rare metals and machinery for the large ones) and crew (but they could also need supplies and salaries then).
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: Midnight Kitsune on February 19, 2015, 02:57:17 PM
Hey (not so) Lazy Wizard, I think the limiter for the weapons numbers is borked as I'm getting around 80+ and had no stoppage. And I've had up around 350+ but I cleaned it out thinking it was a save transfer bug.
Also, if something wasn't blocked before and becomes blocked later, you get spammed every day with the "Omnifactor can not make this stuff" Message.
My Omnifac settings:
Code: java
{
    "randomStartingLocation":true, # Boolean
    "showAddedCargo":false, # Boolean
    "showAnalysisComplete":true, # Boolean
    "showLimitReached":true, # Boolean
    "ignoreGoodRestrictions":true, # Boolean
    "removeBrokenGoods":false, # Boolean
    "shipAnalysisTimeMod":0.1, # Double
    "weaponAnalysisTimeMod":0.1, # Double
    "shipProductionTimeMod":0.1, # Double
    "weaponProductionTimeMod":0.1, # Double
    "requiredCrewToFunction":0, # Integer
    "requiredSuppliesPerDay":0.0, # Double
    "requiredFuelPerDay":0.0, # Double
    "maxHullsPerFighter":3, # Integer
    "maxHullsPerFrigate":3, # Integer
    "maxHullsPerDestroyer":2, # Integer
    "maxHullsPerCruiser":2, # Integer
    "maxHullsPerCapital":1, # Integer
    "maxStacksPerWeapon":0.5, # Double
    "omnifactoryTariff":0.999999 # Double
}
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: sotanaht on March 27, 2015, 01:26:24 AM
I'd like to know a bit more about how this mod works without going through multiple hours of gameplay to test out the features, so if anyone could explain a bit...

I sell a ship or weapon to the omnifactory, then I wait an unspecified length of time (DO NOT buy back immediately, correct?), then the omnifactory will be guaranteed to have that ship/weapon in stock when I return, correct so far?

If I were to collect a huge number of ship/weapon variants, the omnifactory would stock them all simultaneously (or at least reliably over whatever time period is required for restocking), correct?  I don't want to risk overloading my omnifactory by selling it mid-line ships and not be able to get the best ships from it later on.

How much is available from the omnifactory when it starts producing?  Are we talking one of each ship/weapon per month or does it just make infinite?
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: LazyWizard on March 27, 2015, 02:08:22 AM
If you sell a ship or weapon to the Omnifactory that it hasn't encountered before, it will destroy it and analyze it over time, creating a blueprint for it. Once analysis is complete the production phase starts and the factory will perpetually try to keep that good in stock.

The factory will produce an unlimited amount of goods, but it halts production of a good if there's a certain amount in cargo already (3/3/2/1/1 fighters/frigates/destroyers/cruisers/capitals, half a stack for weapons). In other words, if you sell it a Wolf it will try to always keep three Wolves in stock. If you sell it every ship in the game, it will still always try to keep three Wolves in stock.

The factory produces one of a good per production cycle, and production times vary based on the complexity of the blueprint. Ships use a formula based on fleet points and hullsize, so a Talon might take a day to analyze and three days to produce each wing, whereas something as complex as a Paragon might take 37 days to analyze and 75 days to produce each hull. Weapon production times are based solely on the size of the weapon.

Blueprints don't affect each other. The production time for an individual blueprint will remain constant no matter how many blueprints you have, and production is always active for any good that isn't at its limit.

Anything produced by the Omnifactory has a huge price markup as a pathetic pretense of balance (even with the downsides it's still basically a cheat mod).

TL;DR: yes, selling something to the Omnifactory will guarantee you always have a reliable (albeit expensive) source for it, given time.
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: sotanaht on March 27, 2015, 07:22:46 AM
If you sell a ship or weapon to the Omnifactory that it hasn't encountered before, it will destroy it and analyze it over time, creating a blueprint for it. Once analysis is complete the production phase starts and the factory will perpetually try to keep that good in stock.

The factory will produce an unlimited amount of goods, but it halts production of a good if there's a certain amount in cargo already (3/3/2/1/1 fighters/frigates/destroyers/cruisers/capitals, half a stack for weapons). In other words, if you sell it a Wolf it will try to always keep three Wolves in stock. If you sell it every ship in the game, it will still always try to keep three Wolves in stock.

The factory produces one of a good per production cycle, and production times vary based on the complexity of the blueprint. Ships use a formula based on fleet points and hullsize, so a Talon might take a day to analyze and three days to produce each wing, whereas something as complex as a Paragon might take 37 days to analyze and 75 days to produce each hull. Weapon production times are based solely on the size of the weapon.

Blueprints don't affect each other. The production time for an individual blueprint will remain constant no matter how many blueprints you have, and production is always active for any good that isn't at its limit.

Anything produced by the Omnifactory has a huge price markup as a pathetic pretense of balance (even with the downsides it's still basically a cheat mod).

TL;DR: yes, selling something to the Omnifactory will guarantee you always have a reliable (albeit expensive) source for it, given time.

Thank you for the response.  I was most worried that I would end up overloading the omnifactory only to find out 20 hours into the game and have to start all over in order to get some decent use out of it.

I wouldn't be so harsh as to call it a cheat mod though.  I fully expect a similar system to make its way into the base game, but likely integrated with faction shipyards and therefor requiring you to still maintain relations with each one.
Title: Re: [0.65.2a] AutoFactory v1.0 (released 2015-04-01)
Post by: LazyWizard on April 01, 2015, 11:47:46 AM
AutoFactory
Download version 1.0 (http://www.mediafire.com/download/x01cn0j8dvjq9x2/AutoFactory_1.0.zip) (requires LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0))

I know a lot of people have been asking when the long-promised rewrite of the Omnifactory would show up. Well, wait no more! I hereby present the successor mod to the Omnifactory, the AutoFactory. Found orbiting Corvus's star, the AutoFactory provides the ability to produce ships and weapons in a more balanced manner than the old Omnifactory ever did. Have fun, and let me know if you run into any problems!
Title: Re: [0.65.2a] AutoFactory v1.0 (released 2015-04-01)
Post by: Dark.Revenant on April 01, 2015, 12:17:22 PM
Excellent update, as expected.  I didn't think it was possible to balance this mod, but somehow you pulled it off.  Hats off to you, sir!
Title: Re: [0.65.2a] AutoFactory v1.0 (released 2015-04-01)
Post by: Sproginator on April 01, 2015, 12:33:42 PM
Lazy, You continue to both astound and amaze me!
Title: Re: [0.65.2a] AutoFactory v1.0 (released 2015-04-01)
Post by: orost on April 01, 2015, 12:33:58 PM
Very nice, I can't wait to play a full campaign with the new Factory. I really like how you implemented the its defense system, it was a pain to figure out how to get through it, but it's worth it, and it's a great way of preventing the player from taking an advantage of it too early in the game.
Title: Re: [0.65.2a] AutoFactory v1.0 (released 2015-04-01)
Post by: JDCollie on April 01, 2015, 02:14:39 PM
I'm sure it would be difficult to code, but I would love it if we could get a supply based modification to the Omnifactory. What I mean is, you bring the Omnifactory items/ships, and it deconstructs them like normal. However, once it has the blueprints, I think it would be cool if it did not automatically make them, but instead required raw resources. Kind of like a hybrid of the omnifactory and the blueprint system of Uomoz's Sector, albeit without the faction specific materials.

That way you'd actually have to be supplying materials, and you wouldn't just have this magic stockpile. Like I said though, I bet it would take some coding, and sadly I don't have the skills to do it :(  (I really wish I did)
Title: Re: [0.65.2a] AutoFactory v1.0 (released 2015-04-01)
Post by: Tartiflette on April 01, 2015, 02:26:49 PM
Hummm, you can activate that exact behavior in the config file of the omnifactory.
Title: Re: [0.65.2a] AutoFactory v1.0 (released 2015-04-01)
Post by: LazyWizard on April 01, 2015, 02:38:06 PM
I'm sure it would be difficult to code, but I would love it if we could get a supply based modification to the Omnifactory. What I mean is, you bring the Omnifactory items/ships, and it deconstructs them like normal. However, once it has the blueprints, I think it would be cool if it did not automatically make them, but instead required raw resources. Kind of like a hybrid of the omnifactory and the blueprint system of Uomoz's Sector, albeit without the faction specific materials.

That way you'd actually have to be supplying materials, and you wouldn't just have this magic stockpile. Like I said though, I bet it would take some coding, and sadly I don't have the skills to do it :(  (I really wish I did)

Spoiler
That's actually how it works in the real upcoming rewrite. You bring the Omnifactory ships, it starts analyzing them (this takes much, much longer than in the current version, but every additional ship of that type you sacrifice halves the remaining analysis time), once analysis is complete you have to queue construction manually (requiring supplies plus metal/rare metal/heavy machinery depending on the blueprint). There's an upgrade that allows remote communication with the Omnifactory, so it's not as annoying as it sounds (did I mention the rewrite has an upgrade tree?). Weapons/fighter wings are still auto-produced the same way the current Omnifactory does them because nobody wants to micromanage to that level. :)
[close]
Title: Re: [0.65.2a] AutoFactory v1.0 (released 2015-04-01)
Post by: Midnight Kitsune on April 01, 2015, 02:57:48 PM
Can't tell if this is an April Fools joke or not...
Title: Re: [0.65.2a] AutoFactory v1.0 (released 2015-04-01)
Post by: JDCollie on April 01, 2015, 03:56:05 PM
I'm sure it would be difficult to code, but I would love it if we could get a supply based modification to the Omnifactory. What I mean is, you bring the Omnifactory items/ships, and it deconstructs them like normal. However, once it has the blueprints, I think it would be cool if it did not automatically make them, but instead required raw resources. Kind of like a hybrid of the omnifactory and the blueprint system of Uomoz's Sector, albeit without the faction specific materials.

That way you'd actually have to be supplying materials, and you wouldn't just have this magic stockpile. Like I said though, I bet it would take some coding, and sadly I don't have the skills to do it :(  (I really wish I did)

Spoiler
That's actually how it works in the real upcoming rewrite. You bring the Omnifactory ships, it starts analyzing them (this takes much, much longer than in the current version, but every additional ship of that type you sacrifice halves the remaining analysis time), once analysis is complete you have to queue construction manually (requiring supplies plus metal/rare metal/heavy machinery depending on the blueprint). There's an upgrade that allows remote communication with the Omnifactory, so it's not as annoying as it sounds (did I mention the rewrite has an upgrade tree?). Weapons/fighter wings are still auto-produced the same way the current Omnifactory does them because nobody wants to micromanage to that level. :)
[close]

If this isn't April fools, then <3 :D :D :D
Title: Re: [0.65.2a] AutoFactory v1.0 (released 2015-04-01)
Post by: orost on April 01, 2015, 10:35:19 PM
I would actually love to micromanage the production of weapons and fighter wings as well, and pay resources for them.
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: connortron7 on April 02, 2015, 02:07:40 PM
im confused i have a very large fleet with capital ships in it and i still get shot at by the autofactory how exactly do you even get access to it???
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: LazyWizard on April 02, 2015, 02:21:08 PM
You can't. AutoFactory was an April Fools joke (that's why A and F were capitalized weirdly). It even says so when the gun emplacements are activated. ;)

If you added the mod to an active game and want to keep that save without the station constantly shooting at you, here's a patch (http://www.mediafire.com/download/2ab1ld467wgg487/AutoFactory_1.0b.zip) that lets you remove the autofactory (just attempt to dock and select "disable mod"). Sadly, you'll need to keep the AutoFactory mod tagged forever with that save unless you're willing to scrape some faction information from your save file.
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: connortron7 on April 02, 2015, 02:25:35 PM
wow i can't believe i missed That

Well than congratulations you claimed another victim

:)
Title: Re: [0.65.2a] AutoFactory v1.0 (released 2015-04-01)
Post by: LazyWizard on April 02, 2015, 02:29:47 PM
Can't tell if this is an April Fools joke or not...
I'm sure it would be difficult to code, but I would love it if we could get a supply based modification to the Omnifactory. What I mean is, you bring the Omnifactory items/ships, and it deconstructs them like normal. However, once it has the blueprints, I think it would be cool if it did not automatically make them, but instead required raw resources. Kind of like a hybrid of the omnifactory and the blueprint system of Uomoz's Sector, albeit without the faction specific materials.

That way you'd actually have to be supplying materials, and you wouldn't just have this magic stockpile. Like I said though, I bet it would take some coding, and sadly I don't have the skills to do it :(  (I really wish I did)

Spoiler
That's actually how it works in the real upcoming rewrite. You bring the Omnifactory ships, it starts analyzing them (this takes much, much longer than in the current version, but every additional ship of that type you sacrifice halves the remaining analysis time), once analysis is complete you have to queue construction manually (requiring supplies plus metal/rare metal/heavy machinery depending on the blueprint). There's an upgrade that allows remote communication with the Omnifactory, so it's not as annoying as it sounds (did I mention the rewrite has an upgrade tree?). Weapons/fighter wings are still auto-produced the same way the current Omnifactory does them because nobody wants to micromanage to that level. :)
[close]

If this isn't April fools, then <3 :D :D :D

AutoFactory may have been a joke, but the upcoming Omnifactory 2.0 update is real. While I wouldn't expect it soon (development had the misfortune to start just before Pillars of Eternity devoured my free time was released), it's well under way. That's actually why I was able to release the April Fools mod: the work on animated station subcomponents was already done for the Omnifactory rewrite. :)
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: frogbones on April 02, 2015, 02:45:48 PM
been hearing good things about that game....
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: CopperCoyote on April 03, 2015, 02:20:23 AM
I felt some trepidation because it was released april 1 (like every thing else that day), and started a brand new game to test it. I have to say that i was really impressed with the turrets firing at my fleet.
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: Unfolder on April 20, 2015, 01:23:32 PM
I'm sure someone has already asked, but is it possible to choose specifically where the omnifac spawns?
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: sc90 on April 26, 2015, 04:34:34 AM
I'm sure someone has already asked, but is it possible to choose specifically where the omnifac spawns?

Ha i was just about a questio about that, wouldlove to have omnifactory next to spawn point.
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: LazyWizard on April 26, 2015, 04:38:34 AM
I'm sure someone has already asked, but is it possible to choose specifically where the omnifac spawns?

Ha i was just about a questio about that, wouldlove to have omnifactory next to spawn point.

There's no setting for the exact location, but if all you want is for it to be near spawn, open data/config/omnifactory/omnifac_settings.json and set "randomStartingLocation" to false. That will make the Omnifactory orbit Somnus in the Corvus system, about 20 seconds away from spawn.
Title: Re: [0.65.2a] Omnifactory v1.10c (released 2015-01-29)
Post by: Delta7 on July 11, 2015, 01:48:10 PM
love the mod but... the settings for maximum number of ships dont seem to work. when ive got mods and a whole ton of ships at the omnifactory, it can be a bit annoying to have a ridiculous number of ships to scroll through to get to the one i want. i tried setting all the ship classes to maximum of 1 hull per size, but it just plain doesnt do anything.

btw, im looking forward to the upcoming update, i tried setting my omnifactory to require fuel to function, but the code doesnt allow that either XD
Title: Re: [0.65.2a] Omnifactory v1.11 (released 2015-07-11)
Post by: LazyWizard on July 11, 2015, 04:04:45 PM
Version 1.11 is up, get it here (https://bitbucket.org/LazyWizard/omnifactory/downloads/Omnifactory%201.11.zip) (mirror (http://www.mediafire.com/download/i4dsdi9bxrqf8ic/Omnifactory_1.11.zip)). This update is not save-compatible with the old version! This is not the rewrite, it just fixes the remaining known bugs in the current version. Still requires LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0).

Changelog:
Quote
Version 1.11 (July 11, 2015)
==============================
(this version is not save compatible with earlier versions)
Rewrote Omnifactory as a submarket plugin
Random starting location is disabled by default
Fixed resources being illegal even if the setting to make them required is on
Fixed weapon production limits being ludicrously high post market update
Added console command OmnifacStatus, shows location and data for all factories
Added getKnownShips(), getKnownWings(), getKnownWeapons()
Added BlueprintData interface:
 - int getDaysToAnalyze()
 - int getDaysToCreate()
 - int getLastUpdate()
 - String getId()
 - String getDisplayName()
 - int getLimit()
 - int getTotal()
 - boolean isAnalyzed()
 - setAnalyzed(boolean isAnalyzed)
Title: Re: [0.65.2a] Omnifactory v1.11 (released 2015-07-11)
Post by: Histidine on July 12, 2015, 12:06:59 AM
Nice-o.

Is numberOfFactories a thing yet? It's not in the OmniFacSettings class, so I'm guessing I don't need to have Nexerelin support it for now.
Title: Re: [0.65.2a] Omnifactory v1.11 (released 2015-07-11)
Post by: LazyWizard on July 12, 2015, 01:03:10 AM
The numberOfFactories setting isn't used. I had meant to implement it at some point, but todo items in json files aren't listed in my IDE. ;)
Title: Re: [0.65.2a] Omnifactory v1.11b (released 2015-10-12)
Post by: LazyWizard on October 12, 2015, 02:54:38 PM
Version 1.11b is up, get it here (https://bitbucket.org/LazyWizard/omnifactory/downloads/Omnifactory%201.11b.zip) (mirror (http://www.mediafire.com/download/vz9j8jwhvrgjvwm/Omnifactory_1.11b.zip)). Still requires LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0), you know the drill.

Changelog:
Quote
Version 1.11b (October 12, 2015)
==================================
Fixed spam if a restricted ship/item somehow ended up in the Omnifactory's cargo
Implemented support for multiple Omnifactories:
 - Change "numberOfFactories" in data/config/omnifactory/omnifac_settings.json;
   "randomStartingLocation" must be true for this setting to work
initOmnifactory() now sets up the storage submarket if it's not present
Title: Re: [0.65.2a] Omnifactory v1.11b (released 2015-10-12)
Post by: cpmartins on October 13, 2015, 08:42:15 AM
Thanks for the update Wizard.
A question: Are blueprints shared between Omnifactories?
Title: Re: [0.65.2a] Omnifactory v1.11b (released 2015-10-12)
Post by: Admiralkio on October 30, 2015, 10:20:50 PM
Hi. I'm using Omnifactory (No idea if it conflicts with the Nexerelin version or not). I can mod the config just fine - but it won't let me use the omnifactory to make supplies despite turning ignoregoodsrestriction to 'true'.
Any help?
Title: Re: [0.65.2a] Omnifactory v1.11b (released 2015-10-12)
Post by: LazyWizard on October 30, 2015, 10:25:40 PM
The Omnifactory can't create supplies, only ships or weapons. The "ignoreGoodRestrictions" setting just allows you to replicate ships/weapons that are normally blocked, such as Templar equipment.
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Ceebees on December 20, 2015, 08:40:28 PM
So i'm having an interesting issue that a search on the thread didn't turn up - sorry in advance if you've already heard this one, but.

The Omnifactory spawned in Corvus, and i've been having problems with it catching me trading with the Barad pirates (who i'm hostile to) and it decreasing my faction relation with "Your". I am somewhat trepidatious about what happens if that ever goes below friendly, especially since console command reports that i can't alter a faction's relation to itself.
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Weltall on December 20, 2015, 08:58:07 PM
The Omnifactory spawned in Corvus, and i've been having problems with it catching me trading with the pirates (who i'm hostile to) and it decreasing my faction relation with "Your". I am somewhat trepidatious about what happens if that ever goes below friendly, especially since console command reports that i can't alter a faction's relation to itself.

The first thing that comes to mind with Your hating you, is MUTINY! Your own crew will turn against you. I really wonder when your own self hates you >.>
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: StarSchulz on December 20, 2015, 08:58:48 PM
I noticed something weird like that too, in my last playthrough i lost rep with myself. can't really tell what mod was doing it, as i have almost all of them installed.
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Taverius on December 25, 2015, 06:06:06 PM
Hokay. I gotta ask, how hard would it be to make the OF take a list of system-planet pairs from the .json as locations?

It gets a bit tiring rerolling a save over and over when its one with a commission that makes me hegemony-hostile ...

I mean, its not that I can't do it, but :effort: *flails feebly*
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Wyvern on January 03, 2016, 08:46:42 AM
Um.  Tried the random omnifactory location setting... is it supposed to be able to spawn in close orbit around a star, literally inside the star's corona?
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: SierraTangoDelta on February 10, 2016, 01:37:09 PM
Um.  Tried the random omnifactory location setting... is it supposed to be able to spawn in close orbit around a star, literally inside the star's corona?
That sounds ridiculous, is the star accidentally set as a usable planet?
Also, what is the default location for the factory when random location is disabled?
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Midnight Kitsune on February 10, 2016, 03:30:32 PM
Um.  Tried the random omnifactory location setting... is it supposed to be able to spawn in close orbit around a star, literally inside the star's corona?
That sounds ridiculous, is the star accidentally set as a usable planet?
Also, what is the default location for the factory when random location is disabled?
Solumus (sp?) in corvus
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: LazyWizard on February 10, 2016, 04:08:18 PM
That sounds ridiculous, is the star accidentally set as a usable planet?

It was intentional, corona effects weren't in the game when the spawn logic was written. It's an easy fix. I'll try to get around to it (and a few other suggestions in the last few posts) soon. :)

Also, what is the default location for the factory when random location is disabled?

Corvus IV- er, Somnus. Yeah.
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Wyvern on February 10, 2016, 04:11:44 PM
Ah, that makes sense.  Fortunately for me, it landed on a star with a thin corona, so I could still get to it and didn't need to roll another save.  Actually left it that way - it's a small supply tax for visiting the thing, and a good argument for not going there unless I need to.

But if it'd spawned that close to a more active star, there might've been issues.  Presumably there's some way to query (normal non-flare) corona radius so it can be put near the edge?
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: SierraTangoDelta on February 11, 2016, 09:51:56 AM
That sounds ridiculous, is the star accidentally set as a usable planet?

It was intentional, corona effects weren't in the game when the spawn logic was written. It's an easy fix. I'll try to get around to it (and a few other suggestions in the last few posts) soon. :)

Also, what is the default location for the factory when random location is disabled?

Corvus IV- er, Somnus. Yeah.

Maybe you could consider having the Omnifactory have production by-products, as in when you submit weapons and they get processed the factory would produce very basic materials, like excess sheet metal, ores, etc.
It wouldn't offset the price of the weapon, just a nice little bonus for submitting weapons/ships.
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Sy on February 20, 2016, 03:34:56 PM
i see it has already been mentioned several times before, so sorry if i'm annoying, but would it be possible to allow setting a specific location for the omnifac to spawn? i just use random starting location with a high number now, but still need to rereroll quite a few times whenever i start a new game to get one where i want it, and there's a lot of random omnifacs already floating around in various systems, which looks a bit weird. it gets even worse when i have to do the same thing again whenever i want to use Save Tranfser, as the spawn locations aren't carried over. :/
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: LazyWizard on February 20, 2016, 04:15:03 PM
i see it has already been mentioned several times before, so sorry if i'm annoying, but would it be possible to allow setting a specific location for the omnifac to spawn? i just use random starting location with a high number now, but still need to rereroll quite a few times whenever i start a new game to get one where i want it, and there's a lot of random omnifacs already floating around in various systems, which looks a bit weird. it gets even worse when i have to do the same thing again whenever i want to use Save Tranfser, as the spawn locations aren't carried over. :/

Sure, it'll be in the next version.

Maybe you could consider having the Omnifactory have production by-products, as in when you submit weapons and they get processed the factory would produce very basic materials, like excess sheet metal, ores, etc.
It wouldn't offset the price of the weapon, just a nice little bonus for submitting weapons/ships.

Sorry, but this won't happen. The current incarnation of the Omnifactory is already far too powerful (even after being nerfed in the upcoming version); granting bonus resources would just make it even worse.
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Sy on February 20, 2016, 04:28:33 PM
Sure, it'll be in the next version.
awesome! =)
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: grinningsphinx on February 24, 2016, 07:02:16 PM
That sounds ridiculous, is the star accidentally set as a usable planet?

It was intentional, corona effects weren't in the game when the spawn logic was written. It's an easy fix. I'll try to get around to it (and a few other suggestions in the last few posts) soon. :)

Also, what is the default location for the factory when random location is disabled?

Corvus IV- er, Somnus. Yeah.

Maybe you could consider having the Omnifactory have production by-products, as in when you submit weapons and they get processed the factory would produce very basic materials, like excess sheet metal, ores, etc.
It wouldn't offset the price of the weapon, just a nice little bonus for submitting weapons/ships.


concur...while it isnt as overpowered as the Prism Freeport is,  the omnifactory already makes the game easy mode past lvl 25 or so.
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Tartiflette on February 24, 2016, 11:44:29 PM
Prism Freeport? OP? It sells ships at 4 times their price! Compared to the omnifactory that can churn them out for twice the price only. You can buy an original ship, sell it to the Omnifactory and buy the first one created for less than buying a single one from Prism. And from then you'll have an unlimited supply of them. (I'm not even talking about II "Grand Starship Market" that sell most ships with the normal 30% tariff)
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: SierraTangoDelta on February 25, 2016, 01:36:42 PM
Yeah I am thinking about leaving the Omnifactory disabled, it's simply too good, I can produce 20 antimatter blasters, load up a bunch of frigates with them, and *** on basically anything of Light Cruiser level or below.
Prism Freeport is essential if you want to be able to acquire some of the boss bounty ships though, you generally can't get more than 1 of the 2 unique ships that each boss has.
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Taverius on February 25, 2016, 02:43:42 PM
The wonderful thing about mods: you can turn them off you don't want them.

Personally I'm not going to bother with turning the OF off until the game is final - I have too much fun testing mods and OF is integral to that.
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: SierraTangoDelta on February 25, 2016, 02:55:19 PM
Like I said, my issue with it is how easy it is to just mass-produce the strongest weapons in the game and from mods.
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Taverius on February 25, 2016, 02:59:50 PM
Yeah, I'm not going to call it OP until we know what Alex has planned for the production tree.

I don't think its worth LW's time to try to pre-implement such a (proably) complex system into OF either :P

Sure, it makes it easy to get many weapons, but without OF I buy basically everything and stash weapons all over like a squirrel on pcp, and frankly that's not much either.
Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Ratheden on March 31, 2016, 01:22:46 AM
Looking forward to the 7.2 version of OF. 
Thanks for the hard work you have put into it.

Title: Re: [0.7.1a] Omnifactory v1.11b (released 2015-10-12)
Post by: Wyvern on March 31, 2016, 08:41:53 AM
Current Omnifactory works fine in .7.2, at least for me, at least so far...
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: LazyWizard on March 16, 2017, 09:13:02 PM
Version 1.11c is up, get it here (https://bitbucket.org/LazyWizard/omnifactory/downloads/Omnifactory%201.11c.zip) (mirror (http://www.mediafire.com/file/cr292anad9hpwr9/Omnifactory_1.11c.zip)). This mod requires LazyLib (http://fractalsoftworks.com/forum/index.php?topic=5444.0).

This update adds no new features and only fixes the version file hosting. If you don't use Version Checker you don't need to download this.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: facc00 on April 22, 2017, 10:09:04 PM
need this for nexerelin, any date on possible release?
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: Paul_Kauphart on May 31, 2017, 01:46:24 PM
Hi Wizard,

Do you think it's possible for the next version to get the option to use metals and transplutonics as consumables and AI cores as crew-like requirements ?

Thanks a lot.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: isaacssv552 on May 31, 2017, 02:41:39 PM
Hi Wizard,

Do you think it's possible for the next version to get the option to use metals and transplutonics as consumables and AI cores as crew-like requirements ?

Thanks a lot.
Omnifac already has optional fuel/supply consumption. Making it use other commodities would probably be simple, but given that fuel/supply consumption is already disabled by default I wouldn't count on it being part of the official release.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: Paul_Kauphart on June 01, 2017, 04:35:50 PM
I know that, I want the option file to include those commodities as well, even if off by default.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: KopiG on June 02, 2017, 02:29:12 AM
May I ask if it is planned for this mod to be updated with 0.8a and later possibly to 0.8.1? Is the mod dead or just no time to update it? I would love to try it out in 0.8a!
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: Mr. Nobody on June 02, 2017, 03:22:33 AM
Question, would it be possible to have the Omnifactory spawn a self replicating fleet of sort that will then attacks yhe sector once it has been used enough times?

The idea is as follows:
Omnifactory is in a random outer system
Once the player finds it and returns to the populated sectors, there is a small chance each in game day for a "news leak" about the location.
[OPTIONAL] Once that happens some fleets may rarely go there and buy ships to bolster their forces with various stuff (up to and including IBB hulls)
Once the Omnifactory has been used enough times it will spawn a "seed" capital ship that will go around and obtain resources (whether by stationing around planets or asteroid or by attacking non Remnant fleets)
During this time it will build more and more ships (even IBB ships and other faction stuff) to culminate with the creation of another seed ship.
Informations about their last position can be gathered by some galactic updates but they might be just too late to be accurate anymore
If all the seeds are killed then nothing bad happens
If enough seed-made fleets are completed they will attack the sector, causing lots of problems for everyone

This would add some layer of risk/reward, use the omnifactory and risk a later attack or abstain and stay safe?
Also something to do for those who have exhausted all the other sources of challenge

Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: isaacssv552 on June 02, 2017, 09:48:19 AM
If the mod is dead I would be happy to continue it (I've already updated it for my own use anyway) but I think the update is probably just on hold until 0.8.1a as with many other mods.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: MesoTroniK on June 02, 2017, 05:32:48 PM
Unpopular opinion incoming...

From my own angle, and the way I see things now. The OmniFactory should be left to slumber, for it is no longer needed. The new mechanics in 0.8 make both acquiring new ships and not losing existing ones far more tenable and does so in balanced manners. While the OmniFactory is just a big giant cheat, that breaks the game mechanically and lore wise, removing all scarcity.

I understand why folks like it, but it broke the game even in old versions, and it really would now! Think about it objectively, truly isn't it an obsolete thing these days? You can make bolder decisions now, without worrying as much about losing your stuff. Adding the OmniFactory back to modern versions of the game is hilariously unwise. Perhaps let it sleep, and wait for vanilla manufacturing to be added. In the mean time, salvaging and new D ship mechanics has your back covered.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: Harmful Mechanic on June 02, 2017, 05:46:48 PM
I think there's something to be said for a fresh release with updated mechanics rather than a shambling half-life of partial restorations, but otherwise, yeah; the Omnifactory is a neat idea, but it's become less and less vital as the base game has matured.

(I wouldn't mind a procgen Omnifactory slumbering somewhere outside the core, though, guarded by nameless automated horrors...)
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: Kreuzberger on June 02, 2017, 05:52:49 PM
There is another idea of a mod, where the omnifactory could be reborn in a new way....just as a normal shipyard for the player:

http://fractalsoftworks.com/forum/index.php?topic=12514.msg212819#msg212819
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: isaacssv552 on June 02, 2017, 07:11:07 PM
What if production used metal and other commodities based on the ship? Instead of producing everything, only produce the items the player 'buys' in the market, which would then be placed into storage only when completed. AI cores would be required to store blueprints. Alpha for capital ships, beta for large weapons/cruisers, gamma for medium weapons/destroyers, and nothing for small weapons/frigates. Templar ships could require flux cores.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: LazyWizard on June 03, 2017, 04:13:11 AM
At the moment, I have no plans to continue the Omnifactory. So far I've only discussed this with Histidine and Meso, but I'll go ahead and make my thoughts public.

This mod was written for a very different game than Starsector is today (those who played the early campaign implementations will remember how hard finding certain ships and weapons could be), and has been kept updated despite ever lessening relevancy due to its popularity. I'll be frank: the Omnifactory absolutely destroys the campaign's difficulty curve by giving you a nigh-unbreakable safety net. With this mod, it doesn't matter if you anger every other faction or die a thousand times. As long as you've got the cash you can instantly rebuild your fleet by making a single run to the Omnifactory. While that's perfectly fine in an optional mod for a single-player game, I've never been happy about how the factory affects gameplay. There've been three attempts at a more balanced rewrite so far, but none even made it anywhere near completion before I lost enthusiasm for the project.

With the new Industry skills I feel that Starsector now natively supports the "collect-em-all" gameplay style in a far more balanced manner than the Omnifactory ever did. Therefore I think that now is as good a time as any to drop this mod. That said, anyone who wants to take it up and continue has my permission.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: isaacssv552 on June 03, 2017, 04:43:05 AM
I'm in the final stages of testing a completely revamped Omnifactory for .8a. Primary features are AI Core usage for analysis, commodity usage for construction, on-demand rather than passive building, and increased build time based on weapon/wing rarity. Increased build time based on ship rarity is also planned.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: Mr. Nobody on June 03, 2017, 05:36:36 AM
I'm in the final stages of testing a completely revamped Omnifactory for .8a. Primary features are AI Core usage for analysis, commodity usage for construction, on-demand rather than passive building, and increased build time based on weapon/wing rarity. Increased build time based on ship rarity is also planned.
Any plans to implement the "deal-with-the-devil" part i sketched on my previous post?
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: isaacssv552 on June 03, 2017, 05:47:27 AM
I'm in the final stages of testing a completely revamped Omnifactory for .8a. Primary features are AI Core usage for analysis, commodity usage for construction, on-demand rather than passive building, and increased build time based on weapon/wing rarity. Increased build time based on ship rarity is also planned.
Any plans to implement the "deal-with-the-devil" part i sketched on my previous post?
No, the intention is for the factory to be balanced as a standalone, although I may switch randomization on by default. I may implement faction shipyards as additional markets on large industrial worlds, but that would be a long term goal.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: isaacssv552 on June 03, 2017, 08:52:57 AM
I've finished the first revamped version. Pretty much everything works, but the exact resource requirements don't display properly. To give the Omnifactory access to resources just put them in its storage.

[attachment deleted by admin]
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: Dal on June 03, 2017, 02:36:52 PM
I don't see why having the factory as an option should be unacceptable. Its presence is entirely voluntary, and unless the argument is that players should not be allowed to tune their experience to their liking, how it effects a run's difficulty is rather irrelevant. I really enjoyed filling out my collection of blueprints, as well as being able to use a fleet I actually wanted to in the campaign. From the hours I've put into .8 so far I can tell you zipping between market hubs for ingame months is a miserable, tedious (but not difficult) experience that I would really like to not have to put up with. I hope that the mod can live on under new authors if the current one(s) no longer want to maintain it.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: SierraTangoDelta on June 03, 2017, 02:55:41 PM
What Isaac did seems like a good way to make using the Omnifactory somewhat more prohibitive, having to spend AI cores alongside giving up a ship.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: Elijah on June 03, 2017, 02:59:30 PM
Yeah, I agree. I think with the right mix of resources expenditure and core costs, the mod can still work without feeling cheaty. This mod could be a nice bridge to the outposts!
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: Mr. Nobody on June 03, 2017, 03:57:02 PM
Still unsure on the new Omnifactory.
Unless other modders refrain to exclude their ships/weapons from the "list of stuff the Omnifactory can make" (Templars, IBB, etc) then it's made mostly obsolete by the scavenging mechanics alone.
When you can afford to go to the Omnifactory to build yourself a Paragon, you can afford much earlier to *** off TriTachion, punch one of their fleet in the nose, acquire a Paragon and restore it at the nearest dock.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: isaacssv552 on June 03, 2017, 04:01:31 PM
You aren't guaranteed to find a Paragon or to get it as salvage when you do. The new Omnifactory is intended to provide a more expensive, but more reliable, source of ships/weapons.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: isaacssv552 on June 03, 2017, 06:28:38 PM
I'm currently updating at http://fractalsoftworks.com/forum/index.php?topic=12544.0. It's 99% functional, but I still can't figure out how to get the exact resource costs to display.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: Sy on June 07, 2017, 05:43:12 AM
The new mechanics in 0.8 make both acquiring new ships and not losing existing ones far more tenable and does so in balanced manners.
i actually used Omnifactory almost exclusively for weapons, not ships. acquiring new ships and replacing lost ones is much easier now thanks to the new salvage mechanics and industry skills, but weapon availability is still just as much of an issue as it was before 0.8 (except for one skill perk that increases drop chance by a bit), unless i missed something.

so i'll be sad to see Omnifactory go. of course being able to reproduce weapons in unlimited numbers is a cheat in some way, but even finding just a single one can be quite difficult for the really rare ones, and putting them in the Omnifactory also comes at increased credit cost (2-3 times the normal cost for the initial one), which can be significant with the more expensive/rare weapons.

and i just simply don't like Starsector's approach of making rarity a huge part of weapon balancing. if can't get TT to sell me a couple Tachyon Lances or Plasma Cannons despite having maxed reputation (which supposedly means i know some of their leaders personally) and despite being willing to pay 100+k credits for a single one, just because i happened to get unlucky with RNG, that's both frustrating from a gameplay view and at least as immersion breaking as being able to manufacture my own, to me. :/

i enjoyed having a place where i can customize my ships' loadouts without constantly checking whether i have enough of the weapons available to use said loadouts. without Omnifactory, i tend to spend most of my credits in early- to mid-game on weapons i find in a market somewhere, just in case i'll not be able to find them again when i need them, usually to the point where i barely have any credits left for new ships.. obviously that is my own fault, but i just hate the feeling of getting a shiny new ship later on and then realizing that i can't use any of the loadouts i wanted on it because i can't find the weapons, with no reliable way of doing anything about that.

and it doesn't help that this same issue now also applies to most hullmods. "want an ITU, got 300k credits to burn? tough luck, no ITU available. should've gotten the one you saw 20h ago, even if you couldn't really afford it then. come back in another 5h, maybe you'll get one then. maybe." <_<

sorry about the rant. i know this isn't the ideal place to complain about vanilla mechanics/balancing, and i understand the reasoning for discontinuing this mod. but it's still frustrating to me.
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: Grizzlyadamz on October 23, 2017, 01:47:12 AM
I'm going to really miss this mod.

The Omnifactory was home.
It was where I stored extra supplies & equipment, ships, meaningful tidbits or baubles.
I used to bring home stacks of goods to 'store' with the crew members & other personnel that lived there. Small arms for the marines, luxury goods & lobsters for the vets, organs for the medbay and maybe even a few illicit drugs.
Everything a station needed.
The facilities let me test & equip new ships I captured & brought back conveniently, simply, but at a premium cost. Well-worth it.
And the straight-forward collection mechanic was a robust gameplay-driving engine with its obvious goal and tangible rewards.
It was absolutely integral to how I played the game.


Did it make the base game easier? Sure. Quicker at the very least.
Was it a 'cheat'? One could certainly see it that way if one so desired.
But not everyone is out for the punishment side of challenge. Not everyone plays on ironman.
And the users were the ones that installed it & played with it. And we had fun with it.


Lazywizard, I'm sad to see it lose your favor, but I think I understand: no one would want to keep working on something they don't personally use anymore/feel inspired by.
So, thank you for creating it in the first place, & thank you for keeping it updated for so long.  :) :(

shoooooooooot
Title: Re: [0.7.2a] Omnifactory v1.11c (released 2017-03-16)
Post by: NightKev on October 23, 2017, 03:01:37 AM
I'm going to really miss this mod.
See:
I'm currently updating at http://fractalsoftworks.com/forum/index.php?topic=12544.0. It's 99% functional, but I still can't figure out how to get the exact resource costs to display.