Resources ReSourced

    Resources ReSourced 0.5e - Mercantile

    • "Fix" for unspawnable blueprint issue. I now suspect that this is StarLoader related and not something I can practically fix, but at the very least there is a semi-fix provided in RRS now. If you encounter a blueprint that is completely full but the "spawn" button is still disabled, simply exit and rejoin the game, and you should at least be able to attempt a blueprint spawn and get most of your items back.
      -
    • Added a bit of code to migrate unloaded extractors in case a resource source (gas giant, star, planet, etc.) gets its internal data changed by some RRS generation update. Should reduce the need to reload/unload extractors under odd circumstances to get them to generate materials again.
    No new content/features with this patch. Just another attempt to fix desynch bugs by removing global state variables (i.e. recorded information that may accidentally get "stuck" and pass between galaxies or other procedural constructs depending on load order) from the mod's galaxy generation tech and replacing them with per-galaxy/per-system/per-zone information. Hopefully scanners and multiplayer generation inconsistency should be fixed, but unfortunately there are likely more issues to sort out.

    Also, clients that were getting ArrayOutOfBoundsExceptions on join may no longer encounter those issues. Other problems will probably appear though, as StarLoader does not appear to properly maintain block configuration consistency. I'll have to look into this more as well.

    As always, report any new bugs.

    WARNING: Your galaxies' zone names will be changed, and RRS features (zones, gas giants, etc.) may be rearranged. I attempted to avoid this and I apologize if it does happen, but I can't guarantee that it won't.
    This version introduces a new map system. Rather than a spiderweb of lines, Resource Zones are displayed as rings around their principal star. Mousing over the star or focusing on any contained system on the map will display an indicator around all star systems in the Zone. Clicking on a zone ring will "pin" the zone. Clicking elsewhere will unpin it.

    This map system is made possible by IR0NSIGHT's MapMarkerUtils library. Thanks a lot!



    🐞BUG: NPC territory boxes will prevent gas giant icons within them from being visible. This seems to be an issue inherent to StarLoader map drawer systems. To see gas giants in NPC territory, simply disable faction territory display in the map GUI panel.

    OTHER CHANGES:
    • Added a few more zone adjectives/name possibilities
    • Potentially fixed some generation determinism issues
    • Fixed a persistence bug wherein any resource sources in use would be reset upon loading/generation (sources will now only reset if resource types at that sector change)
    • Fixed issue with overtaxed passive resource sources never assigning resources to extractor profiles
    After this (and any associated hotfixes) I hope to finally begin work on getting shop prices and inventory in line with RRS's zones. The plan is for things made with local resources to be cheaper and more plentiful, while things made with foreign resources are more expensive and uncommon.

    In the farther future, the positioning of shops (and other non-player stations) may be changed as well, as part of another planned mechanic wherein each star system gains a 'subtype', such as "local trade hub", "mining center", "industrial center", "undeveloped", and more.
    Old factories and manufacturing materials (Paints, hardeners) will now appear properly in shops and the Creative Mode inventory. Costs may need balancing, but that's a story for another day...
    Reverted most of previous build's changes, except for the mod recipe and circuitry recipe fix. Unknown and nigh-untraceable map error on the Skies of Eden server forced this temporary revert in order to maintain a functional gameplay experience.
    • Recipe translator now properly pulls other mods' blocks for recipe addition
    • Standard circuitry is no longer insanely expensive
    • Added error logging to help track down the infamous "Asteroid machine broke" error
    • Fixed some sus static variables that could theoretically cause inconsistent behavior
    Fixed an issue where blueprint metaitems didn't work and would instead spit out all of their contained Components as dropped items.

    Anti-exploit blueprint metaitem validation would try to compare the component list in the blueprint with the block list in the catalog, which caused problems. Blueprints in catalog will now be updated to list Components whenever a BP metaitem is received, so spawn attempts will pass the validation step.
    Fix for asteroid type selection being heavily skewed towards random off-types. Asteroid types outside of certain zone classes should make more sense now.
    Having a live testing environment on SoE feeding me information live has been extremely valuable. Big thanks to everyone involved with the project, also go check out the server if you get the chance. It's where all the cool people are! Anyhow, another set of emergency fixes:
    • As it turns out, previous hotfix DID accidentally disable asteroids, and for no reason - the problem it was designed to prevent was impossible anyway (also it may or may not have partially been the result of a typo)
    • Blueprint ingredient lists no longer "decay" down the manufacturing chain every time they get reloaded; no more raw resources or capsules or removed vanilla items or other nonsense in your blueprint reqs
    • Another attempt to fix NPC-shop prices. Didn't work on my end, but your mileage may vary.
    • Contrary to the name, version 0.3c does NOT fix the bug wherein gas giants can occasionally catapult you at 0.3 times the speed of light. That physics bug will elude me until the end of time, I think. :P
    Minor stability patch. Still some fires to put out, but it's getting there slowly.
    • Fixed ClassCastException spam when messing around with asteroids
      (result of StarMade/StarLoader bug with internal function)
    • Temporarily "fixed" (really, duct taped) safety checking nullpointer for asteroid generation - may mean that asteroids fail to spawn in some cases. Requires further investigation.