-
Notifications
You must be signed in to change notification settings - Fork 31
Version History
Majiir edited this page Sep 7, 2014
·
1 revision
The following is a record of change logs for each release. Note that these logs are not updated retroactively, so information from older releases may not be accurate.
- Massive reorganization of plugin code. The previous mess of spaghetti has made way for a more organized codebase with fewer dependencies between components.
- Licensing has been revised to be more open and easier to understand. A license summary file is available in the repository root and in the download archive. Of particular note, (most of) the plugin is now available under the BSD 2-Clause license. This revision was facilitated by the aforementioned code reorganization.
- Revisions to the core resource API. The formerly monolithic KethaneData has been split into a number of classes for handling scenario state. Third-party code can now read and mutate state through accessors instead of modifying state directly.
- The resource generator interfaces now handle cell deposits through IBodyResources methods instead of the ICellResource interface (which has been removed). This reduces GC pressure in some cases (e.g. CellularResourceGenerator) and gives resource generators more control over how resources are read and extracted. In particular, cross-cell interactions can now be modeled within generators themselves.
- Toolbar support is now provided by blizzy78's wrapper code instead of an optional assembly. The KethaneToolbar.dll included with the download is intentionally empty, and the main Kethane plugin will clean it up on first run.
- Legacy save support has been removed. Saves generated prior to version 0.8.1 are now incompatible. To upgrade, load and save an old persistence file in version 0.8.8 before upgrading to 0.9.
- Reset Body Data in the debug panel now additionally resets the scan data.
- Fixed GetConnectedResources issue with converters.
- Fixed erroneous CompatibilityChecker warning.
- Rebalanced converter stats. Converters now produce useful mixes instead of individual fuels, and they no longer defy conservation of mass. There are also some waste byproducts which could be economically useful if captured.
- Logarithmic scaling of the scanning timewarp factor was removed in favor of a linear factor. This has the effect of removing the commonly observed "gaps" when scanning at medium timewarp rates. (Very high warp rates will still have gaps; this is a limitation of the simulation.)
- Part costs were adjusted across the board for the budget feature.
- The Kethane resource now has a unit cost, so it can be recovered for some value.
- Fixed optional converter inputs/outputs. (Thanks, taniwha, for the pull.)
- Enabled toggling of converters, detectors, extractors and generators from EVA. Thanks oobayly for the pull request.
- Resource selector buttons now wrap around the resource list at each end.
- Fixed a number of issues which could cause the grid overlay or other UI elements to render incorrectly.
- Added
CellularResourceGenerator
, an abstract base class which makes it much easier to write resource generator plugins for Kethane. See this post for an example. - Changed visibility from internal to public for all Kethane API components. Only utility classes remain internal.
- Kethane will automatically delete the empty MMI_Kethane.dll file on startup, so it shouldn't clutter up debug logs any longer.
- Packaged ModStatistics 1.0.1 with the installation.
- Fixed an incorrect part configuration which cluttered the debug log with texture load errors.
- Removed obsolete fixes for old KSP bugs (ScaledSpaceFix and KSPAddonFixed).
- Made various improvements to the geodesic grid code.
- Added an improved Toolbar icon, courtesy of blizzy78.
- Implemented CompatibilityChecker (version 2) warnings.
- Fixed an issue where the tracked body could return to null.
- Fixed a critical bug introduced in 0.8.3 which disabled resource mining and detector configuration.
- Fixed an issue where the toolbar button would persist in scenes without the map view.
- Added optional support for the Toolbar mod. You must install Toolbar separately. If you would like to use Toolbar without Kethane support, delete the Kethane/Plugins/KethaneToolbar.dll file.
- Fixed an issue where the presence of an unloadable plugin assembly would break Kethane functionality.
- Fixed various issues where a part misconfiguration could break Kethane functionality.
- Added a deploy/retract right-click option for drills in the ship editor.
- Reduced the masses of the KE-C090 Medium Converter, KE-C191 Heavy Converter Unit and KE-G35 Kethoelectric Reactor Unit to bring them in line with similarly-sized parts. The generator in particular is much more mass-efficient for power generation.
- Modified the geodesic raycasting algorithm to use triangular cell frusta rather than hexagonal. This fixes the flickering on grid mouseover.
- Updated the module info string formatting for KethaneConverter.
- Fixed a rendering conflict with the Visual Enhancements: Clouds & City Lights mod.
- Fixed the scan overlay disappearing when the center moves out of the camera view.
- Fixed a number of cell caching issues which could, in rare cases, cause stack overflows and cache corruption.
- Fixed exception spam in the editor from the KE-J65 jet engine.
- Added Kethane parts to the stock tech tree.
- Reduced delays when entering map view or switching between planets.
- Fixed an issue where the KE-X270 deploy/retract animation would always play.
- Fixed exceptions in the main menu scene.
- Exposed public APIs for IResourceGenerator, KethaneData and Cell (which has replaced GeodesicGrid).
- Replaced the geodesic grid code with a new system based on a recursive tree structure.
- Removed the textures for the obsolete KE-X130 and KE-TM30 parts.
- The grid overlay now conforms to terrain.
- Created an extensible deposit generator architecture.
- Added new parts with updated art assets for the KE-TM30 and KE-X130. The old parts will still load but their textures have been removed to save memory and they aren't accessible in the editor.
- Updated art assets for the KE-X270.
- Added a scanning tutorial. Open it from the Training menu.
- Converter info text is now more compact.
- Reverted an accidental change to the KE-C090 oxidizer conversion rate.
-
KethaneConverter
supports optional input and output resources. - Added an
AlwaysActive
flag toKethaneConverter
. - Added an API to
KethaneConverter
exposing resource conversion activity. - Embedded the geodesic grid shader into the plugin as an assembly resource.
- Fixed an issue where parts using
KethaneDetectorAnimatorUnity
would deploy in the ship editor.
- Reverted an accidental change to the KE-C090 which combined its LiquidFuel and Oxidizer converters.
- InstallChecker now matches Kethane plugins by name, not assembly, so it will detect old versions.
- Fixed KethaneDetectorAnimatorUnity not playing the retract or running animations.
- Extractor animators are now optional. If an extractor has no animator, it will deploy and retract instantly with no animations.
- Removed KethaneExtractorAnimatorLanded.
- IExtractorAnimator is now public.
- Detector parts will now only detect Kethane. Mods which define their own resources should include specialized detector parts.
- KethaneConverter modules now support multiple configurable input and output resources.
- Implemented a workaround for the stock KSPAddon conflict bug.
- Fixed an issue where Kethane functions would break when starting a new game.
- Fixed a potential performance issue on full-map cell refreshes.
- Added a flag by Dani-Sang.
- The KethaneWetMassIndicator label text is now configurable.
- Silenced an exception in ScaledSpaceFix.
- Kethane data is now saved in the persistence file, so it will now behave as expected through reverts and quicksaves/loads. Data is migrated from the old data file to the persistence file when the save is first loaded in either the flight or tracking station scenes. (The persistence file is not immediately saved when this happens, so perform a normal save to ensure the data is preserved.)
- Added configurable offsets for extractor raycast endpoints.
- Fixed the KE-X130 drilling height.
- The plugin now checks its location at KSP startup and warns the user if it's been installed incorrectly.
- Incorporated BloodyRain2k's scaled space fix. (This addresses the grid disappearing/jittering issue.)
- Fixed an issue where the grid overlay would appear in the sky of the space center scene.
- Fixed an issue with
KethaneDetectorAnimatorUnity
where the retract animation would not play. - Fixed an issue where settings changes could be lost on exit.
- Removed the upgrade routine for pre-0.6 save formats.
- Replaced the drilling effects on the KE-X130 with particle effects.
- The KE-J65 jet engine now works when it's started through the context menu.
- Detector altitude attenuation is now multiplicative instead of additive, and the attenuation factor was reduced from 0.5s/100km to 0.2/100km.
- The colors for empty and unscanned cells are now configurable in the settings file.
- Debugging functions are now available by setting
Debug = True
in the settings file. Debug options will appear in the resource selector window in the scan map. The debugger part is no longer necessary (and now has no function). - Fixed the center of mass of the KE-X270 drill and the KE-G35 generator.
- Revised drill animation code to further unify the behavior of the two drills.
- Fixed an issue where a corrupted Kethane save file would break the game.
- Fixed category attribute on 2-meter Kethane storage tanks. Thanks nburns for the patch.
- Parts which previously had spaces in their internal names have been renamed.
- Made miscellaneous improvements to the geodesic grid code. This probably results in some performance improvement, but it hasn't been profiled.
- Added a generic detector animator module.
- Fixed an issue where deposit and scan data could be lost when switching between saves during a session.
- Improved grid mouseover detection performance by a factor of 25. This should eliminate the stuttering issues some experienced. (It also removes the mouseover "gaps" between cells because the new algorithm ignores the actual mesh structure.)
- Fixed an issue where the grid overlay would block sunlight from solar panels.
- The mouseover window no longer stays behind when exiting map view or disabling the overlay.
- The resource selector window no longer remains when the UI is hidden.
- Improved performance of cell mouseover detection.
- Adjusted the Minmus grid radius to fix a clipping issue.
- Moved plugin-wide settings from the PluginConfiguration system to a ConfigNode. Those settings now reside in
KSP/GameData/Kethane/settings.cfg
. - The "show overlay" setting and resource selector window position are now saved to the settings file and persist between scenes.
- Added a settings option to disable the main menu overlay. But seriously, a lot of you guys complained way too hard about this.
- Disabled surface attachment for the KE-G35 generator.
- Fixed a critical scan data loading issue.
- Replaced the rectangular scan map with a geodesic grid overlay. The overlay is visible in the map view and in the tracking station. Mousing over cells will show a window with that cell's center coordinates and a list of resources present in that cell.
- Scan data is now stored along with deposit quantities in the persistence folder.
- Saved maps indicate whether a cell has been scanned, so maps will automatically update (on scene reload) when deposit quantities change.
- Detectors no longer scan cells that have already been scanned. This means multiple detectors won't clobber each other, and detectors passing over partially scanned terrain won't make redundant scans.
- Removed the random variance on detector scan times.
- Moved the resource selector UI to the map view.
- Moved the scan sound toggle to the detector context menu.
- Added a toggle action for the generator.
- Fixed a major performance issue with the KE-X270 gas particles.
- The
KethaneParticleEmitter
module now supports particle colliders. - Fixed an issue where converters would spam the output log with errors if no fuel tanks were attached. Thanks SpiritOffice for the patch.
- Removed Kethane deposits from Jool and Kerbol (the star).
- Detector sounds are now loaded through GameDatabase.
- Fixed an issue where deposits would not be reloaded when moving between saves, which could overwrite another save's deposits.
- Fixed an issue where scan map colors were scaled from the wrong resource definition.
- Fixed an issue where
Body
nodes would not override scan map colors. - The
KethaneDrillAnimator
deploy animation is now optional. - Particle effects for the
KethaneDrillAnimator
are now optional, and multiple particle emitters can be defined for the same label. (KethaneParticleDynamics
may still fail with multiple effects using the same label.)
- Added the KE-G35 Kethoelectric Reactor Unit, a Kethane-powered electrical generator that automatically regulates itself to meet power demands. This unit is slightly more efficient in atmosphere and produces a small amount of waste XenonGas while running.
- Other mods can create resource definitions which Kethane will use to generate resource deposits and facilitate detection and extraction of those resources. The Kethane resource itself is defined in this way, so deposit parameters can be configured.
- Added a resource selector to the detector user interface. This selection also affects the debugger functions.
- The KE-S110 and KE-S210 detectors can detect any resource. This will be removed in a subsequent version, so third-party developers are encouraged to make their own detector parts.
- The scanning sound setting is now persisted across all vessels and all save files.
- Kethane tanks now have a wet mass indicator in the editor.
- Converters, detectors and extractors will now remember what state they were in when resuming a vessel.
- Adjusted the breaking force and torque for the KE-C190 and KE-X270 to bring them in line with other parts of their respective sizes.
- Tweaked the parameters of the KE-X270 spark effect to tone it down a little.
- Added tank definitions to support the Modular Fuel Tanks mod.
- The detector user interface has a new skin.
- Fixed an issue where deposit info could be overwritten. While writing these notes, I realized this fix will cause an additional issue where switching between saves during a session will overwrite the second save's deposits. This will be addressed in a hotfix.
- Created a particle configuration system to make Unity particle systems configurable as part modules. Kethane particle effects now use this system and a new particle dynamics system simulates the effects of gravity and atmosphere on particles.
- Removed legacy support for the erroneous 0.5 body seeds. See compatibility notes for details.
- Detectors and extractors can be configured to detect or extract one or more resources simultaneously.
- Converter modules can be configured to accept a source resource other than Kethane.
- Added an extractor animator that doesn't require animations.
- Detectors are no longer required to be animated.
- Moved the particle effect textures out of PluginData and into the mod root directory.
- Deposit shading was implemented incorrectly in the 0.5 release and has been corrected. Bright green indicates a large (by Kethane volume) deposit, and dark green indicates a small deposit. Existing scan maps will keep the old colors, and new scan dots will use the new colors.
- Fixed an issue with deposit seeds for celestial bodies. Depending on the seed, this issue could cause many bodies to have the same deposit locations. This has been corrected for newly generated maps, and old maps will maintain their deposit locations.
- Detector scan period now has a small (±1%) variation per frame. This has no effect on overall scan time but improves the use of multiple detectors by automatically staggering them.
- Fixed an issue where gas clouds were incorrectly emitted when not over a Kethane deposit.
- Extractor deploy/retract context menu buttons will reappear when the current action is finished.
- Added the KE-WAITNONOSTOP-01, a radially mounted extractor currently under investigation by several Kerbal rights organizations.
- Restructured extractor module code to separate extraction logic from animation handling.
- Added an extractor animator using Unity animations.
- Added the KE-X270 Heavy Drilling Unit, a large stack-mounted extractor.
- Added gas and spark effects to the KE-X270. Sparks will fly when the drill head enters the ground, and gas clouds will appear when the drill finishes deploying if it's over a Kethane deposit. The effects are influenced by gravity and air pressure, so different bodies will give these effects different characteristics.
- Restructured and simplified deposit code to support a new save format and slightly modified the generation algorithm along the way. The only impact this should have is that deposits may now be found closer together, and as a result, some bodies will have more deposits.
- Overhauled deposit saving. Deposit locations and initial quantities are now generated from a seed which is stored alongside the persistence file of the current save. Current deposit levels are stored along with the seed. This means that deposit arrangements and levels can easily be shared and modified. Additionally, the new format will maintain deposit information in future updates. (Note: This update will still erase data from prior versions.)
- Scan maps are now stored separately per seed. Note that if you have two save files with the same seed, those saves will share scan maps.
- Kethane deposit scans are now shaded by the deposit's initial capacity. More saturated green indicates a higher capacity.
- Added a status indicator to the extractor context menu.
- Halved converter speed for both converters. This corrects an oversight in the 0.4.4 update, which caused the effective conversion speed to double.
- The detector window will now close if all detectors on a vessel are destroyed or detached.
- Deposit data is now only saved when an extractor part saves, and maps are only saved when a detector part saves.
- Removed the unused deposit depth mechanic.
- Removed unused sound loading code from extractors.
- Adopted the new plugin folder structure.
- Increased Kethane density from 1 to 2 kg/L to make it competitive with other fuel types for storage.
- Rebalanced detector range and scanning period to make the KE–S110 Medium Survey Unit more attractive.
- The KE–S210 range has been reduced to 250 km and its detecting period increased to 1.5 seconds.
- The KE–S110 range has been increased to 1,200 km and its detecting period reduced to 0.9 seconds.
- Rebalanced converter efficiency to make Kethane economical to store and transport.
- KE–C090 Medium Converter Unit
- LiquidFuel efficiency increased to 97%
- Oxidizer efficiency increased to 101%
- MonoPropellant efficiency reduced to 30%
- XenonGas efficiency increased to 40%
- KE–C190 Heavy Converter Unit
- LiquidFuel efficiency increased to 103%
- MonoPropellant efficiency increased to 85%
- XenonGas efficiency reduced to 25%
- KE–C090 Medium Converter Unit
- Fixed an issue with the extractor part name.
- Removed an unused bitmap.
- Fixed an issue that broke resource definition loading.
- Added a marker on the scan map showing the active vessel's current location.
- Fixed an issue where converters would produce infinite fuel.
- Added missing config parameters for the KE-C190 heat sink which prevented the converter from running.
- Fixed a NaN issue where the converter heat sink temperature could enter an invalid state.
- Jet engine intakes now work off actual produced power, not the rate-adjusted throttle command. The KE-J65 standby intake power has been boosted to compensate.
- Fuel crossfeeding has been enabled for both converters. This should resolve a few fuel routing problems.
- Added a Kethane-powered jet engine, the KE-J65 Zero-Bypass Turbine. The KE-J65 burns Kethane directly as fuel and can operate in any atmosphere, even those without oxygen. It has an integrated air intake and does not draw air from other intakes.
- Added a new converter, the KE-C190 Heavy Converter Unit. The KE-C190 is a stackable 2.5-meter converter equipped with retractable heat sinks. It runs at high speed and produces rocket and jet fuels at high efficiency, but it produces waste heat that can slow the rate of conversion if not properly dissipated.
- Adjusted the KE-C090 (medium converter) properties so it converts slower and less efficiently.
- Added a new detector, the KE-S210 Compact Survey Unit. The KE-S210 can be stack- or radial-attached, and it pivots to face the body being scanned, similar to the existing detector. It's smaller and uses less power than the KE-S110, but it has a shorter range and slightly slower scanning rate.
- Reorganized the detector animation code. In most cases, the animation should be smoother and more correct. (Previously, the scanner would often face away from the body below.) There is a known issue where the scanner position occasionally resets. This is cosmetic and does not affect the detector's behavior.
- Added a status message for detectors when there is insufficient power to run.
- Fixed an issue that could prevent the detector activation status being saved to the persistence file.
- Added a new tank, the KE-TL20 Kethane Storage Apparatus. This completes the KE-TL series of 2.5-meter Kethane tanks.
- Fixed an alignment issue on the KE-TL10 (small 2.5-meter tank). This will break existing vessels which use this part.
- Updated existing parts to match the new naming scheme.
- Added a new Kethane fuel tank, the KE-TL10. This tank is analogous to the Rockomax X200-8.
- Detectors, extractors and converters now support action groups. Separate actions are available for each resource produced by a converter.
- Detectors, extractors and converters display properties in their mouse-over boxes in the VAP/SPH parts list.
- Detectors now report the quantity of Kethane last detected. The display for the quantity and depth of the deposit currently under the vessel has been removed (since it bypassed the rest of the scanner system).
- Extractors now read their extraction rate from the part module entry in the part config file.
- Shortened some text in the detector GUI to make it fit better.
- Colliders for the new 2-meter fuel tanks have been fixed. They should no longer fall through the ground.
- Picking up one of the new 2-meter fuel tanks from the VAB/SPH parts list will now hold the parts in the center instead of the bottom.
- Fixed an issue where the scanner head would rotate even when the scanner was disabled.
- Fixed an issue where the last longitude reported could be invalid (outside the [-180, 180] range).
- Added two new 2-meter fuel tanks. Additional sizes will be coming soon.
- Fixed an issue where deposits were mirrored vertically on the debugger map.
- Deposit generation has been tweaked. The minimum deposit quantity has been increased from 1,000 to 10,000, the maximum has been increased from 100,000 to 500,000, and the number of placement attempts has been increased from 25 to 30. Note that this will only affect new generation attempts, not existing deposit distributions. (You can use the debugger to regenerate deposits, or manually delete the deposit.dat file.)
- Removed duplicate and unused audio files from the download package.
- Detectors, extractors and converters no longer need to be activated by the staging system.
- Detectors will no longer report an absence of Kethane when the detector is out of range. Out-of-range detectors won't use power, ping, or draw on the map.
- Added a context menu status indicator for detectors. Reported values are Idle, Active and Out Of Range.
- Increased the detector maximum range from 200km to 1,000km.
- Kethane is now a resource, so it will appear in the user interface as other resources do.
- Most of the user interface has been removed in favor of context menu (right-click) options.
- Extractors, converters and detectors now require electrical power to run. The converter's power draw varies with the resources being produced. If power requirements are only partially met, these parts will run slower. If no power is available, the parts will not operate at all.
- Constraints on the number of parts that can be on one vessel have been lifted. Any number of Kethane parts can operate simultaneously.
- Converters no longer shut off when available Kethane has been exhausted or when there is no room for resource products. Converters will stay active and produce resources when able. Power consumption scales with actual resource production.
- Converters no longer produce more mass than they consume. In addition, some mass is lost to waste, and the conversion efficiency varies by resource.
- Converters can produce Xenon, albeit not very efficiently.
- The controller part has been removed. Detectors and extractors learned how to get along on their own.
- Saving and loading of maps and deposit data has been tweaked. These should no longer be lost or overwritten. (If in doubt, switch from the active flight to the space center. Anything that causes the persistence file to be saved will also save Kethane data.)
- The pump part has been removed because Kethane can be transferred while docked.
- Capacities of Kethane tanks have been rebalanced. It's no longer necessary to spam external tanks to have any meaningful storage capacity.
- The scanner head only rotates if power is available.
- Extractors, converters and detectors are now activated individually.
- Parts now use the more flexible PartModule system, so it will be easier to develop new Kethane-enabled parts in the future.
- A new debugger part has been made available using the old controller model. This is available as a separate download. The debugger shows a full scan of the map and can regenerate deposits.
- Symmetrically placed Kethane tanks now fill and drain together.
- Fixed an issue with longitude calculation that would cause detection or extraction to fail.
- The conversion sound effect now plays during liquid fuel conversion.
- Kethane tank mass parameters have been changed to the dry mass of the tank. This doesn't have any effect on flights; it just makes editing tools more accurate.
- The project repository has been reorganized to include part configurations. Models, textures and sounds are not yet included.
- Flipped the scan map so north is now at the top
- Fixed an issue where processes would happen at different rates under physical time warp
- Fixed an issue where scan maps would fail to load
- Fixed an issue where deposit quantities would reset when exiting time warp
- Fixed an issue where extraction could occur at time warp even if the drill did not reach ground
- Latitude/longitude display on map mouseover
- Fixed minor exception
- Time warp is supported for all operations (detecting, extracting, pumping and converting).
- Fuel tanks (including RCS tanks) can be refilled by the converter. (For best results, grab a copy of MajiirKerbalLib.)