Fractal Softworks Forum

Please login or register.

Login with username, password and session length
Pages: [1] 2 3

Author Topic: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition  (Read 18102 times)

Kaysaar

  • Captain
  • ****
  • Posts: 389
    • View Profile


Requires LunaLib, MagicLib, LazyLib
SAFE TO ADD IN EXISTING SAVES.


Before you will download important note!
Spoiler
Hi, a lof of you know me as main developer of Ashes of the Domain. Due to recent events prev author of exotica - Matt, was banned from this community. I asked him for permission to basically take exotica under my umbrella.I always liked this mod and did not wanted this to basically fall int obscurity, due to previous author's actions.

For now I can only promise life support, at least for first few months. Isssue here is that I also have a gigantic mod to maintain (AoTD), and currently I am involved with development of UAF.
Once my workload wont be that much I start work on this mod. So far I already have few plans , two potential collabs and UI overhaul of Exotica interface.

I have checked and this version does not have any crash-code. But if you will spot, that I missed something, please report to me that immediately. Then i ll basically do fix asap.
[close]

Inspired by Extra Systems Reloaded, Exotica Technologies offers an RPG element to Starsector that makes your ships AND enemies harder, better, faster, stronger through upgrades and exotics! These upgrades do not take OP or hullmod slots! Each ship has a limit to the number of upgrades they can install so choose wisely! The cost of each upgrade will require common materials salvaged across the sector such as metal and transplutonics. However, as upgrades get more complex and specialized, they tend to consume more resources and even demand special items found through research stations and mining stations!

How does it work?!
Encounter any fleet that might randomly have Exotica Technologies and fight them as they drop for it.



OR find them at derelict ships and wrecks!
Then, start equipping them and upgrading them at any friendly market!


Still unfamiliar? Hover over every icon and button you see. I encourage you to do so!
[close]
Mod Integration!
We welcome mod integration and are willing to help with integrating mods with Exotica Technologies to ensure a great end-user experience!
ModNotes
Industrial EvolutionSupports Ship and Rare components to be used in purchases and installations of upgrades for your ships!
Iron ShellUnlocks Iron Shell - Armor is more effective versus high explosive damage, but doesn't fare as well against other kind of damage types
(TBD)
Tahlan ShipworksTBD
[close]

Obviously! some fights might be much, much harder with this mod installed because the AI are equipped with technologies as well!
Be prepared, and take advantage of everything that Exotica Technologies has to offer you to overcome these increased threats.
This mod is NOT compatible with ESR and no further development will be continued for ESR (who I formerly modded).

Thanks to many people for this:
  • Matt for creating this mod
  • LazyWizard for LazyLib
  • Tartiflette, Wisp and the modding community for MagicLib.
  • Lukas04 for LunaLib
  • Haplogynae for the shop music
  • Wisp for making the Gradle mod template that this mod uses.
  • Histidine for making Nexerelin, which this mod has (some) integration for, and also for an update to the scanning UI.
  • Techpriest/Tim for making Iron Shell, which this mod has (some) integration for, and also for making this forum thread.
  • Zym from the Unofficial Starsector Chat discord for being a great help with ideas and balance for the mod.
  • Ms. Vella from the Unofficial Starsector Chat discord for making the plasma flux catalyst cargo item icon
  • Thyrork, Phearlock, Ishman, Strb 103D for being a beta tester for the mod's update, which had undergone extensive changes and crashes.
  • Thyrork again for making a post-release guide for the mod, which you can read below.
  • Originem and Iridicens for making the original mod and its 0.9.1 update.
  • The community at large for using this new version of the mod. I greatly appreciate any and all feedback, even if you want to say you like the mod, or don't.

Changelog


v1.8.6
Updated to .97 version
Ensured previously detected crash-code was deleted

v1.8.5

    fixed GUERRILLA type not calculating positive and negative mult correctly
    made Exotic Type tooltips easier to find
    fixed IndEvo upgrade methods not saving properly
    Quick Jets and Drive Flux Vent are now more controllable by the AI
    Exotica markets now refresh every month
    exotic generation is reduced a lot. exotic chance is now based on DP rather than hull size.
    exotic recovery is twice as likely now.

v1.8.4

hotfix:

    fixed a crash that occurred due to loading a save applying fleet member stats before the fleets are populated with members.
    -- second hotfix for the same issue because APPARENTLY the same issue applies to the player fleet. which is ridiculous.
    fixed a crash when attempting to install upgrades on module ships with Industrial Evolution enabled.
    -- second hotfix for the same issue.

1.8.3:
hotfix:
- fixed a crash that occurred due to loading a save applying fleet member stats before the fleets are populated with members.
-- second hotfix for the same issue because APPARENTLY the same issue applies to the player fleet. which is ridiculous.

1.8.2:
hotfix:
    fixed a crash that occurred due to loading a save applying fleet member stats before the fleets are populated with members.

1.8.1:
hotfix
    PURE type now uses base bandwidth when calculating the used bandwidth ratio.
    -- this is because Alpha Subcore has a positive multiplier for the extra bandwidth it gives from its Exotic type, creating a circular dependency that would crash your game.
    -- as a result, PURE-type exotics can now get much worse.


1.8.0:
- Scan Fleet option now appears in the main dialog rather than comm link (thanks AtlanticAccent)
- modifications can now be installed on modules directly
-- parent ship modifications will no longer propagate to modules
-- this does mean fitting module ships is much more expensive
- added Quick Jets upgrade, which adds an ability that makes a ship turn much faster
- drive flux vent's active is now 25% longer
- full metal salvo now works again (?)
- overclocked fabricators now spawns more often on carriers.
- spooled feeders now spawns more often on ships with Safety Overrides.
- hacked missile forge recovery chance reduced by 75%
-- it's still stupidly common in pirate fleets
-- also reduced damage further, from 25% TO 40%. use other exotics pls
- reduced cost and bandwidth of Wasp Defense Drones
-- also added more wasps
- PURE-type exotics no longer count themselves after installation
- rewrote UI code to be more performant
- post-battle salvage data expires after 1 day now, rather than uselessly staying in the save until the fleet is despawned/destroyed.

1.7.0:
- misc fixes
- added music by Haplogynae

1.6.6 hotfix:
- fixed exploration crash (upgrades were being generated with level 0)
- fixed fleet UI being broken
- fixed scanner UI not displaying exotics correctly with high UI scaling

1.6.5
- fixed crate disappearing when you open it (sorry)
-- crates now share a global inventory
- added filters to upgrade and exotic UI
- added new upgrade Oversized Magazines
- fixed OCD in ship mod panel
- fixed debris field generation and scanning again
- fixed newer exotics not dropping from salvage loot (like research stations)
- fixed exotic types not appearing in salvage loot
- added upgrades to salvage loot. total value of exotica drops has increased to offset this
- nerfed terminator subsystems
-- range reduced by 33% (this means it is 66% of the original ship system's range)
-- drone recharge time increased from 20 seconds to 30 seconds
-- also tri tachyon will use them less now lol

1.6.4
- multiple UI level improvements
-- fixed refit menu scaling
-- chip lists now use refit variant, fixing multiple bugs with that display
-- upgrade chip list now displays all upgrade chips for an upgrade, but sorts based on whether you can actually apply it.
-- fixed resource displays not displaying quantity stored in the current market's storage
- opening a crate now merges all other creates in your inventory into it
- phase ship check now checks for the phase hint
- added flux use for terminator subsystem use
- fleet mods generation will now generate for all allied and enemy fleets in an encounter. before, it only generated for the main enemy fleet.

1.6.3
    buffed exotic and upgrade drop rates from enemy fleets
    fixed drive flux vent AI activation, and it now has reduced cooldown (15s to 10s)
    updated terminator subsystems AI to use drones more frequently if it has more
    fixed drone stuff applying to modules
    fixed pain from dropping as part of certain ships (it is now removed after battle)
    noticed that pure type exotics were the most used ones:
    -- corrupted type exotics positive mult increased (150% to 200%), and negative mult (150% to 175%)
    -- guerilla type exotics positive mult increased (175% to 200%). note that it still scales with fleet size
    blocked alpha subcore from having any effect if the SHU Armament Support System is installed
    -- additionally prevented alpha subcore from being installed if the SHU Armament Support System is installed
    multiple UI level improvements
    -- upgrades and exotics now display both description and effects at once
    -- overview tab is now the main source to view all upgrades/exotics that your ship has at once
    -- removed hullmod expanding info

1.6.2
- fixed wasp bp dropping
- performance improvements for refit button

1.6.1
- fixed some bugs with certain exotics
- fixed upgrade filters being broken
- added in-refit menu thanks to Lukas04, creator of LunaLib

1.6.0
- improved generation of upgrades by making it prefer already-generated upgrades even more, so upgrade distribution should generate higher-leveled upgrades for a spikier distribution
- fixed antimatter boosters (sindrian diktat exclusive upgrade) not having description
- exotics and upgrades can now have multiple tags
- fixed automated ship checking not checking for automated hullmod
- fixed equalizer core giving 100x the damage bonus for over-ranged weapons
- fixed bandwidth button not updating when buying credit upgrades
- generate enemy ships with much higher bandwidths
- exotic destruction and bandwidth degradation on death for enemy ships so overall loot doesn't change as much and you can't as easily extract nice exotics from salvaged ships
- curate exotic lists per faction more
- upgrades and exotics now weight more towards ships and variants that they would be better on (e.g. armored ships or ships with Heavy Armor hullmod will get the Welded Armor upgrade for even more armor)
- added some drone upgrade and exotic
- added some pain

1.5.3
- updated for 0.96a
- fixed guerilla penance engine sometimes disabling the ship permanently
- fixed hacked missile forge reloading much faster than intended
- fixed phased fighter tether breaking terminator sequence
- fixed exotica market allowing you to go into debt
- fixed hyperspec LPC adding 1% for each fighter bay removed rather than multiplying
- reduced exotic drop rate from fleets

1.5.1
hotfix:
- fixed drive flux vent crash
- fixed equalizer core giving a lot of damage

1.5.0

general:
- attempted improvement to crate code to fix instances of it not pulling chips into itself
- improved chip rendering code and icons
- added a market for chips to the exotica technologies branch for each market

exotics:
- added TWO exotics, one exclusive to the path
- tier 3b drive now stacks
- missile forge now reduces damage but enables you to spam missiles, and reloads weapons individually
- added combat activators for salvo, feeder, and drive flux vent exotics
- hangar forge -> phased fighter tether
- daemon core now correctly applies bandwidth from types, and does not drop as salvage. you must use archdaemon cores to install this now.
- alpha subcore has salvage chance reduced by 75%. you will probably have to use alpha cores to install this now.
- exotics generate more commonly on larger ship sizes
- exotics generate less on civilian ships
- pure type now scales on base bandwidth used and exotics used
- improved type overlay icons to be more visible

upgrades:
- added FOUR upgrades
- buffed assault wings, forced overtime, infernal engines, welded armor, commissioned crews
- nerfed advanced flux coils and derelict weapons assistant by giving them drawbacks that don't really hurt either faction's ships much
- nerfed hel engines by increasing bandwidth slightly (this will probably result in some existing ships going over their bandwidth cap. good for you!)
- rebalanced overcharged shields by shifting more into promoting active shield play by increasing unfold rate further, and both flux/s and flux/dam stats are increased
- fixed a bunch of upgrade drawbacks not starting at level 3
- reduced salvage chance of faction-specific upgrades to 10% (from 450%) (if you change this you have weak bones)
- reduced salvage change of high-level upgrades by up to 75%
- upgrades generate more commonly on larger ship sizes
- added upgrade level to icon

1.3.0
- added a couple of exotics and an upgrade
- refactored a bunch of exotics, also use new MagicLib status bars
- added overview tab to shop
- added some console commands that tim kept bothering me about

1.2.9
removed alpha subcore's non-functioning downside. its primary downside is not having a more interesting exotic
full metal salvo now works for the initial burst of damage and actually speeds up projectiles, although the initial burst can't be sped up due to game limitations.
fixed some stats not applying completely (i.e. 100x less than they should be)

1.2.7
exotic rebalancing for alpha subcore, equalizer core, hangar forge
fixed phasefield engine again
battle carrier wing upgrade
missile guidance upgrade
new exotic

1.2.4
new UI!
upgrades now configuration-based so you can make them as overpowered as you want them to be! who cares about balance???????????? also mods can implement their own too.
iron shell now has an upgrade.

1.1.6
destroyed gradle
fixed crate duping issue
fixed derelict mods not showing up
added ship name to fleet member in generation

1.1.5
added a crate to contain chips
rebalanced a lot of upgrades and some exotics

1.1.4
fixed fleets with 4 or more S-mods causing freeze

1.1.3
fixed being able to upgrade past max level.

1.1.1
fixed upgrades not applying until you upgraded bandwidth.
fixed hangar forge being weird in certain cases.

1.1.0
added two new logistics upgrades.
upgrades and exotics from enemy ships now have a (very large) chance to drop from a ship that has them.
ships with s-mods will now have higher quality and are more likely to generate upgrades and exotics. this scales, so ships with 3 s-mods will have extremely high quality.
refactored upgrade generation. it should more strongly favor smaller amounts of higher leveled upgrades especially on ships that have more S-mods.
fixed some upgrades not spawning on random fleets.
added a blacklist for the missile forge that can prevent it from reloading certain weapons. see modSettings.json
block random generation of ship modifications on ships in the player fleet.
fully integrated new UI from Histidine (thanks)
woops went and made a whole UI over the past week.
probably some other things.

1.0.12
- fixed infernal engines deceleration buff not displaying in tooltip
- fixed indevo component methods not allowing to purchase upgrades if you had the exact amount required

1.0.11
- fixed a rare issue with salvaging a debris field that had a ship with exotica modifications. also fixed all (surely) instances of recovered ships not keeping their upgrades.

1.0.10
- fixed a bug when loading a save while a fleet with special upgrades was out and about

1.0.9
- fixed a bug with special interactable objects
Spoiler
red planet, in particular
[close]
- hacked missile forge now reduces missile capacity by half and reloads the final capacity fully

1.0.8a/b
- fixed a crash on startup/when you generate bandwidth
- fixed a crash when interacting with a derelict fleet

1.0.8
- nerfed drops of exotics by a lot
- removed a debug log that was probably raising the file size of logs by a ton.
- buffed drive flux vent
- added more debug logs that should help explain why some people's upgrades are disappearing.
- potentially fixed an issue where upgrades were disappearing due to putting them into a different submarket e.g. indevo's repair docks
- fixed alpha subcore (and potential future bandwidth-increasing exotics) preventing base bandwidth upgrades
- nerfed overcharged shields slightly, but reduced upkeep for ships with high shield upkeep
- changed equalizer core to modify weapon base range (now it acts like ballistic rangefinder)

1.0.7
added a derelict upgrade
fixed upgrade colors being off
fixed relic component upgrade method using ship component pricing
fixed bandwidth calculation being too high
use upgrade spawnchance stat

1.0.6
fixed saves failing to load due to the game not loading the sector seed until after the game actually loads all game object data (alex why)

1.0.5
fixed saves failing to load due to vanilla code that switches a very special ship's ID around a lot (the ship's ID is generated on sector load, changed when you recover it, and returned when you restart the game.)
1.0.4
updated Plasma Flux Catalyst icon with new one provided by Ms. Vella on the Unofficial Starsector Chat discord
fixed a crash related to one of the final fights in the sector
fixed an incorrect Deceleration tooltip in Infernal Engines upgrade

1.0.3
most upgrade drawbacks now start at level 3 instead of level 1
[close]
« Last Edit: March 15, 2024, 05:10:51 PM by Kaysaar »
Logged

McBeard

  • Ensign
  • *
  • Posts: 1
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #1 on: March 15, 2024, 04:35:19 PM »

I had just made peace with the fact that this wouldn't be updated any more and started downloading mods for my next playthrough, and this pops up.

You've made my night! Thank you!
Logged

Shogouki

  • Captain
  • ****
  • Posts: 368
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #2 on: March 15, 2024, 05:04:06 PM »

Kaysaar, you are my Starsector hero...  I hope this means PMD is ok with this, that would be really wonderful.
Logged

Kaysaar

  • Captain
  • ****
  • Posts: 389
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #3 on: March 15, 2024, 05:08:15 PM »

Kaysaar, you are my Starsector hero...  I hope this means PMD is ok with this, that would be really wonderful.
Yes i got permission from both Alex and Matt to continiue exotica
Logged

mathyou

  • Ensign
  • *
  • Posts: 13
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #4 on: March 15, 2024, 09:49:38 PM »

Does this mean PMD is not going to keep working on it? I was hoping the 2.0 release on GitHub meant he'd keep developing it
Logged

PieceOfGood

  • Ensign
  • *
  • Posts: 22
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #5 on: March 15, 2024, 10:26:24 PM »

First of all, let me thank you for having the courage to make this commitment! Despite the modest content, this modification makes significant changes to the way the game can be played.
Looking at the work you've done on AoTD gives me confidence that Exotic is in good hands.

Please tell me, is your fork based on 1.8.5, or the latest progress v2.0.0rc4?
In the latest version, the interface has been redesigned, new, interesting upgrades have been added, as well as crafting, which allows you to process existing exotic modules into modules of a different type, but of the same quality, which made life easier when you can find yourself in a situation where there are any other modules are pure, corrupted and guerrilla quality, but not what you need for your play style.
Logged

Kaysaar

  • Captain
  • ****
  • Posts: 389
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #6 on: March 16, 2024, 01:44:55 AM »

Does this mean PMD is not going to keep working on it? I was hoping the 2.0 release on GitHub meant he'd keep developing it
About that Version.
I have released 1.8.6 mainly due to me needing to understand code. I know this Version is stable , furthermore once i will have time i will be doing my own UI Overhaul with 2.0.0 update
For now as i stated this mod will be on life support , but once I will finish few other things pilled up , I will start to work on Exotica in same way as i am working on Either Aotd or UAF
Logged

pappyodaniel

  • Ensign
  • *
  • Posts: 19
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #7 on: March 16, 2024, 02:02:40 AM »

Hi Kaysaar, thank you so much for taking this on.

Before all the nonsense went down recently, I was working on my own private fork of this that adds a bunch more exotics. Happy to contribute what I've got so far if it's interesting.

Otherwise please let me know if you would like any additional help and I'll see what I can do. Thanks again.
Logged

Hussrball_PL

  • Ensign
  • *
  • Posts: 3
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #8 on: March 16, 2024, 02:26:40 PM »

It's... beautiful
Logged

Holyhell

  • Ensign
  • *
  • Posts: 4
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #9 on: March 17, 2024, 09:22:20 AM »

Are you still human ?

Praise be god !  ;D

Ps : Testing AOTD for the first time, amazing work thank you !
Logged

Moon Spirit

  • Ensign
  • *
  • Posts: 5
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #10 on: March 18, 2024, 10:44:56 AM »

I have the game closing and crushing when trying to improve the UAF Solvernia ship.
The logs say this -

Spoiler
323154 [Thread-3] ERROR com.fs.starfarer.combat.CombatMain  - java.lang.NullPointerException
java.lang.NullPointerException
   at exoticatechnologies.integration.indevo.ShipComponentUpgradeMethod.getComponents FromFleetForUpgrade(ShipComponentUpgradeMethod.java:104)
   at exoticatechnologies.integration.indevo.ShipComponentUpgradeMethod.getTotalCompo nents(ShipComponentUpgradeMethod.java:100)
   at exoticatechnologies.integration.indevo.ShipComponentUpgradeMethod.getOptionTool tip(ShipComponentUpgradeMethod.java:39)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeMethodsUIPlugin.showMethods(UpgradeMethodsUIPlugin.kt:125)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeMethodsUIPlugin.createTooltip(UpgradeMethodsUIPlugin.kt:68)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeMethodsUIPlugin.layoutPanels(UpgradeMethodsUIPlugin.kt:38)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradePanelUIPlugin.layoutPanels(UpgradePanelUIPlugin.kt:58)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeShopUIPlugin.showPanel(UpgradeShopUIPlugin.kt:65)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeShopUIPlugin$layoutPanel$1.pickedItem(UpgradeShopUIPlugin.kt:42)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeShopUIPlugin$layoutPanel$1.pickedItem(UpgradeShopUIPlugin.kt:39)
   at exoticatechnologies.ui.lists.ListUIPanelPlugin.itemClicked(ListUIPanelPlugin.kt:119)
   at exoticatechnologies.ui.lists.ListItemButtonHandler.checked(ListItemButtonHandler.kt:8 )
   at exoticatechnologies.ui.InteractiveUIPanelPlugin.checkHighlightedButton(InteractiveUIPanelPlugin.kt:79)
   at exoticatechnologies.ui.InteractiveUIPanelPlugin.processInput(InteractiveUIPanelPlugin.kt:36)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.O.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.o0Oo.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.campaign.CampaignState.processInput(Unknown Source)
   at com.fs.starfarer.BaseGameState.traverse(Unknown Source)
   at com.fs.state.AppDriver.begin(Unknown Source)
   at com.fs.starfarer.combat.CombatMain.main(Unknown Source)
   at com.fs.starfarer.StarfarerLauncher.super(Unknown Source)
   at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
   at java.lang.Thread.run(Thread.java:748)
[close]
« Last Edit: March 18, 2024, 10:48:43 AM by Moon Spirit »
Logged

Kaysaar

  • Captain
  • ****
  • Posts: 389
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #11 on: March 18, 2024, 11:00:55 AM »

I have the game closing and crushing when trying to improve the UAF Solvernia ship.
The logs say this -

Spoiler
323154 [Thread-3] ERROR com.fs.starfarer.combat.CombatMain  - java.lang.NullPointerException
java.lang.NullPointerException
   at exoticatechnologies.integration.indevo.ShipComponentUpgradeMethod.getComponents FromFleetForUpgrade(ShipComponentUpgradeMethod.java:104)
   at exoticatechnologies.integration.indevo.ShipComponentUpgradeMethod.getTotalCompo nents(ShipComponentUpgradeMethod.java:100)
   at exoticatechnologies.integration.indevo.ShipComponentUpgradeMethod.getOptionTool tip(ShipComponentUpgradeMethod.java:39)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeMethodsUIPlugin.showMethods(UpgradeMethodsUIPlugin.kt:125)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeMethodsUIPlugin.createTooltip(UpgradeMethodsUIPlugin.kt:68)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeMethodsUIPlugin.layoutPanels(UpgradeMethodsUIPlugin.kt:38)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradePanelUIPlugin.layoutPanels(UpgradePanelUIPlugin.kt:58)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeShopUIPlugin.showPanel(UpgradeShopUIPlugin.kt:65)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeShopUIPlugin$layoutPanel$1.pickedItem(UpgradeShopUIPlugin.kt:42)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeShopUIPlugin$layoutPanel$1.pickedItem(UpgradeShopUIPlugin.kt:39)
   at exoticatechnologies.ui.lists.ListUIPanelPlugin.itemClicked(ListUIPanelPlugin.kt:119)
   at exoticatechnologies.ui.lists.ListItemButtonHandler.checked(ListItemButtonHandler.kt:8 )
   at exoticatechnologies.ui.InteractiveUIPanelPlugin.checkHighlightedButton(InteractiveUIPanelPlugin.kt:79)
   at exoticatechnologies.ui.InteractiveUIPanelPlugin.processInput(InteractiveUIPanelPlugin.kt:36)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.O.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.o0Oo.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.campaign.CampaignState.processInput(Unknown Source)
   at com.fs.starfarer.BaseGameState.traverse(Unknown Source)
   at com.fs.state.AppDriver.begin(Unknown Source)
   at com.fs.starfarer.combat.CombatMain.main(Unknown Source)
   at com.fs.starfarer.StarfarerLauncher.super(Unknown Source)
   at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
   at java.lang.Thread.run(Thread.java:748)
[close]
I ll release fix soon
Logged

Moon Spirit

  • Ensign
  • *
  • Posts: 5
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #12 on: March 19, 2024, 02:05:34 AM »

I have the game closing and crushing when trying to improve the UAF Solvernia ship.
The logs say this -

Spoiler
323154 [Thread-3] ERROR com.fs.starfarer.combat.CombatMain  - java.lang.NullPointerException
java.lang.NullPointerException
   at exoticatechnologies.integration.indevo.ShipComponentUpgradeMethod.getComponents FromFleetForUpgrade(ShipComponentUpgradeMethod.java:104)
   at exoticatechnologies.integration.indevo.ShipComponentUpgradeMethod.getTotalCompo nents(ShipComponentUpgradeMethod.java:100)
   at exoticatechnologies.integration.indevo.ShipComponentUpgradeMethod.getOptionTool tip(ShipComponentUpgradeMethod.java:39)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeMethodsUIPlugin.showMethods(UpgradeMethodsUIPlugin.kt:125)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeMethodsUIPlugin.createTooltip(UpgradeMethodsUIPlugin.kt:68)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeMethodsUIPlugin.layoutPanels(UpgradeMethodsUIPlugin.kt:38)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradePanelUIPlugin.layoutPanels(UpgradePanelUIPlugin.kt:58)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeShopUIPlugin.showPanel(UpgradeShopUIPlugin.kt:65)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeShopUIPlugin$layoutPanel$1.pickedItem(UpgradeShopUIPlugin.kt:42)
   at exoticatechnologies.ui.impl.shop.upgrades.UpgradeShopUIPlugin$layoutPanel$1.pickedItem(UpgradeShopUIPlugin.kt:39)
   at exoticatechnologies.ui.lists.ListUIPanelPlugin.itemClicked(ListUIPanelPlugin.kt:119)
   at exoticatechnologies.ui.lists.ListItemButtonHandler.checked(ListItemButtonHandler.kt:8 )
   at exoticatechnologies.ui.InteractiveUIPanelPlugin.checkHighlightedButton(InteractiveUIPanelPlugin.kt:79)
   at exoticatechnologies.ui.InteractiveUIPanelPlugin.processInput(InteractiveUIPanelPlugin.kt:36)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.impl.StandardTooltipV2.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.I.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.O.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.newui.o0Oo.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.ui.o000.dispatchEventsToChildren(Unknown Source)
   at com.fs.starfarer.ui.o000.processInputImpl(Unknown Source)
   at com.fs.starfarer.ui.thissuper.processInput(Unknown Source)
   at com.fs.starfarer.campaign.CampaignState.processInput(Unknown Source)
   at com.fs.starfarer.BaseGameState.traverse(Unknown Source)
   at com.fs.state.AppDriver.begin(Unknown Source)
   at com.fs.starfarer.combat.CombatMain.main(Unknown Source)
   at com.fs.starfarer.StarfarerLauncher.super(Unknown Source)
   at com.fs.starfarer.StarfarerLauncher$1.run(Unknown Source)
   at java.lang.Thread.run(Thread.java:748)
[close]
I ll release fix soon

Problem solved. I can improve Solvernia.
I couldn't make improvements because the ship was fresh just buying it. I had to do 1 battle. After 1 battle, everything worked.
Apparently because I have a lot of mods installed, the error appeared.
« Last Edit: March 19, 2024, 02:07:55 AM by Moon Spirit »
Logged

FelixG

  • Ensign
  • *
  • Posts: 26
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #13 on: March 21, 2024, 01:38:15 AM »

Awesome! Thanks for reviving it after the dude did scummy things with his code!
Logged

allehator

  • Ensign
  • *
  • Posts: 4
    • View Profile
Re: [0.97a-RC11] Exotica Technologies: Kaysaar's Toolbox Theory Edition
« Reply #14 on: March 24, 2024, 12:53:55 PM »

I definitely bit more than I could chew with this mod :D
Guys, any advice on how can I can safely remove it from my save? Or at least make it so NPC fleets spawn without these?
I will be ok ignoring the feature on my end.
Logged
Pages: [1] 2 3