Skip to content

Commit

Permalink
v1.5.0.2-Upgrades Exposed
Browse files Browse the repository at this point in the history
#### v1.5.0.2 for KSP 1.7.3 - 12 Aug 2019
- updated file structure
- moved Changelog out of Readme
- Updated .version
- .dll version 1.5.0.2
- released to Spacedock
- released to CKAN
  • Loading branch information
zer0Kerbal committed Aug 12, 2019
1 parent b3f75e5 commit c2da401
Show file tree
Hide file tree
Showing 14 changed files with 451 additions and 76 deletions.
43 changes: 43 additions & 0 deletions Changelog.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
#### v1.5.0.2 for KSP 1.7.3 - 12 Aug 2019
- updated file structure
- moved Changelog out of Readme
- Updated .version
- .dll version 1.5.0.2
- released to Spacedock
- released to CKAN

#### v1.5.01 for KSP 1.7.3 - 08 Aug 2019
- Recompiled for KSP 1.7.3 using dotNet v3.5
- Renamed to UpgradesGUI Extended
- change "pr.info.title" to "pr.part.partInfo.title" Thank you LGG.
- update ".\..\..\..\Kerbal.Space.Program.v1.2.2.1622.DEV" to "$(DevDir)"
- update postbuildevents

#### v1.5 for KSP 1.2.2 - 19/04/2017
- (Issue #5 fix) : NRE when PartStats{} node is absent from PartStatsUpgradeModule bug
- (Issue #4 fix) : ModuleDataTransmitter (and others) doesn't revert to base stats bug
- (Issue #3 fix) : Incorrect state of upgrades at init bug

#### v1.4 for KSP 1.2.2 - 18/04/2017

- New feature : upgrade selection system
- Refactored a lot of things
- Re-fixed nullref on creating the upgraded parts prefab (thanks @Oort for the perfect bug report)
- Removed mini-AVC dll, KSP-AVC is still supported
- Changed plugin name to "UpgradesGUI"

#### v1.3 for KSP 1.2.2 - 28/03/2017

- Fixed an issue causing an exception within the GameDatabase, this resolve the issue with toolbar icons disappearance (Thanks @Rodger)
- The module widget list in the part tooltip is now sorted alphabetically (this reproduce the stock behaviour)

#### v1.2 for KSP 1.2.2 - 24/03/2017

- The "custom prefabs" parts now try to call OnLoad() on their modules, with the HighLogic.LoadedScene set to LOADING, in an effort to better replicate what happens with the real part prefabs. This fix the issue with Kerbalism custom modules, and may prevent the same kind of error from surfacing in other plugins. Thanks @ShotgunNinja for guidance on what was happening.
- Added some error-checking so if things go wrong, the plugin should fail a bit more gracefully.

#### v1.1 for KSP 1.2.2 - 23/03/2017
- Added KSP-AVC support for version checking

#### v1.0 for KSP 1.2.2 - 22/03/2017
- Initial release
41 changes: 41 additions & 0 deletions GameData/UpgradesGUI/Changelog.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#### v1.5.0.2 for KSP 1.7.3 - 12 Aug 2019
- updated file structure
- moved Changelog out of Readme
- Updated .version
- .dll version 1.5.0.1

#### v1.5.01 for KSP 1.7.3 - 08 Aug 2019
- Recompiled for KSP 1.7.3 using dotNet v3.5
- Renamed to UpgradesGUI Extended
- change "pr.info.title" to "pr.part.partInfo.title" Thank you LGG.
- update ".\..\..\..\Kerbal.Space.Program.v1.2.2.1622.DEV" to "$(DevDir)"
- update postbuildevents

#### v1.5 for KSP 1.2.2 - 19/04/2017
- (Issue #5 fix) : NRE when PartStats{} node is absent from PartStatsUpgradeModule bug
- (Issue #4 fix) : ModuleDataTransmitter (and others) doesn't revert to base stats bug
- (Issue #3 fix) : Incorrect state of upgrades at init bug

#### v1.4 for KSP 1.2.2 - 18/04/2017

- New feature : upgrade selection system
- Refactored a lot of things
- Re-fixed nullref on creating the upgraded parts prefab (thanks @Oort for the perfect bug report)
- Removed mini-AVC dll, KSP-AVC is still supported
- Changed plugin name to "UpgradesGUI"

#### v1.3 for KSP 1.2.2 - 28/03/2017

- Fixed an issue causing an exception within the GameDatabase, this resolve the issue with toolbar icons disappearance (Thanks @Rodger)
- The module widget list in the part tooltip is now sorted alphabetically (this reproduce the stock behaviour)

#### v1.2 for KSP 1.2.2 - 24/03/2017

- The "custom prefabs" parts now try to call OnLoad() on their modules, with the HighLogic.LoadedScene set to LOADING, in an effort to better replicate what happens with the real part prefabs. This fix the issue with Kerbalism custom modules, and may prevent the same kind of error from surfacing in other plugins. Thanks @ShotgunNinja for guidance on what was happening.
- Added some error-checking so if things go wrong, the plugin should fail a bit more gracefully.

#### v1.1 for KSP 1.2.2 - 23/03/2017
- Added KSP-AVC support for version checking

#### v1.0 for KSP 1.2.2 - 22/03/2017
- Initial release
31 changes: 31 additions & 0 deletions GameData/UpgradesGUI/Features.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
How to make this work :

List<UpgradePrefab>
- Part part
- List<PartUpgrade> partUpgrades
// PartUpgrade : represent a PARTUPGRADE, like those contained in the stock manager/handler
// We can get all text info (gui name, description, tech required...) from the manager/handler
// so no need to replicate it here.
- string upgradeName : the upgrade name as defined in the confignode
- bool partEnabled : is this upgrade enabled for this part (will be checked when instantiating a new part in the editor)
- List<ModuleUpgrade> moduleUpgrades
// ModuleUpgrade : represent each modules in the part and the UPGRADE node in this module that correspond to this PARTUPGRADE
- string module : the name of the module
- string description : the upgrade description
- List<UpgradeOverride> overrides
// UpgradeOverride : represent a combination of a module and a PARTUPGRADE that is disabled by this PARTUPGRADE
// this is used to manage the "ExclusiveWith__" system : if this PartUpgrade has partEnabled = true AND
// UpgradeOverride is present for another PartUpgrade's ModuleUpgrade in this UpgradePrefab, this another
// PartUpgrade's ModuleUpgrade is greyed out. If ALL these PartUpgrade's ModuleUpgrade are greyed out, the whole
// PartUpgrade widget is greyed out and not toggleable. PartStatsUpgradeModule should have its own logic but can rely
// on the same structure (using the "IsAdditiveUpgrade__" field)
- string module : the module name
- string partUpgrade : the partupgrade name

Interface :
In the part tooltip, on top of the module list, we add the following :
- Toggle button labelled modules / upgrades, wich the widget list between modules view and upgrades view
- Stock green toggle : is locked green when the part have all its available
upgrades applied. If not, it is grey, and clicking on it apply all the availablle upgrades. Try to do a tooltip.
- Stock green toggle : same as the first one, but for ALL parts.

Binary file modified GameData/UpgradesGUI/Plugins/UpgradesGUI.dll
Binary file not shown.
Binary file modified GameData/UpgradesGUI/Plugins/UpgradesGUI.dll.mdb
Binary file not shown.
53 changes: 53 additions & 0 deletions GameData/UpgradesGUI/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
![UpgradesGUISExtended](https://img.shields.io/badge/KSP%20version-1.7.x-66ccff.svg?style=flat-square)
![UpgradesGUISExtended](https://img.shields.io/badge/MOD%20version-1.5.0.2-orange.svg?style=flat-square)

# Upgrades GUI - Extended
Continuation of ![UpgradesUIExtensions](https://forum.kerbalspaceprogram.com/index.php?/topic/158081-122-upgradesgui-v15-upgrades-info-and-selection-in-vabsph-part-tooltips/) by (first by @GOT), now continued by *zer0Kerbal* with community support.

This plugin is a collections of interface tweaks aimed at making the part/module upgrades feature introduced in 1.2 more user-friendly.
Note that **the plugin doesn't add any upgrades**. If you want to have them in your game you need to download other mods that implement the upgrade feature.

![screenshot](https://raw.githubusercontent.com/gotmachine/UpgradesUIExtensions/902603cd0c7de45af979129f7af6f8fb839f912c/Documents/tooltipTweaks.png)

#### VAB/SPH part tool tips show upgraded stats
- The part stats are now updated according to unlocked upgrades.
- The part cost is now updated according to unlocked upgrades.
- All module widgets now show the updated stats according to unlocked upgrades.
- The part upgrade module widget show the detail of part stats/cost modifiers.
- If "showUpgradesInModuleInfo" (stock field) is set to true the upgrade config, the module widget now show the details of every upgrade currently unlocked for this module
- Some QOL tweaks to the tool tip stats : dry mass, mention of multi-mode engines, better formatting of engines thrust/ISP
- (bonus feature) Non-stock modules using cost/mass modifiers should have their modifiers taken into account too.

#### Upgrades selection
- This allow to customize which upgrades are applied to placed parts in all modes (Career, Science and Sandbox)
- Parts with upgrades now have a clickable "upgrade widget" in the tool tip widget list
- Clicking on the widget show a list of upgrade widgets that can be toggled to enable/disable upgrades for this part
- Upgrades exclusivity/overrides rules and R&D unlock status can't be bypassed
- Vessels with customized upgrades will work perfectly if the plug-in is removed, all this is done within the stock upgrade implementation.

#### R&D tech tree feature
- In the nodes part list, upgrades have a pale green background to better differentiate them from parts.

## Download & source

Soon to be available on **CKAN** !

**[LATEST RELEASE](https://github.com/zer0Kerbal/UpgradesUIExtensions/releases/latest)** and [source](https://github.com/zer0Kerbal/UpgradesUIExtensions) from github.

#### Disclaimer
I'm far from a skilled programmer, so the code for this may be ugly. As far as I know, it does the job and doesn't break the game. However, keep in mind that *I don't really know what I'm doing*. If anybody has the time to review and comment my code, I'm open to suggestions and pull requests :) *This also goes for me, zer0Kerbal. :)*

#### KSP-AVC disclaimer
This mod doesn't include mini-AVC, but it has a version file that allow version checking trough the [KSP-AVC Plugin](http://forum.kerbalspaceprogram.com/threads/79745).

#### Licensing
This masterful work of art is released under the [unlicense](http://unlicense.org/).
So public domain, feel free to do anything, especially updating this plugin if I'm not around.

### See changelog for changes

### Known bugs and glitches
- None at the moment
- ***According to original author, GOT, even though you might be able to seemingly disable upgrades in the editor, these 'edits' may not and probably do not change anything in flight.***


68 changes: 34 additions & 34 deletions GameData/UpgradesGUI/UpgradesGUI.version
Original file line number Diff line number Diff line change
@@ -1,36 +1,36 @@
{
"NAME":"UpgradesGUI",
"URL":"http://forum.kerbalspaceprogram.com/index.php?/topic/158081-122-upgradesuiextensions-v10-qol-vabsph-tweaks-for-part-upgrades/",
"DOWNLOAD":"https://github.com/gotmachine/UpgradesUIExtensions/releases/latest",
"GITHUB":
{
"USERNAME":"gotmachine",
"REPOSITORY":"UpgradesUIExtensions",
"ALLOW_PRE_RELEASE":false,
},
"VERSION":
{
"MAJOR":1,
"MINOR":5,
"PATCH":0,
"BUILD":0
},
"KSP_VERSION":
{
"MAJOR":1,
"MINOR":7,
"PATCH":3
},
"KSP_VERSION_MIN":
{
"MAJOR":1,
"MINOR":2,
"PATCH":2
},
"KSP_VERSION_MAX":
{
"MAJOR":1,
"MINOR":7,
"PATCH":9
}
"NAME":"Upgrades GUI Extended",
"URL":"http://forum.kerbalspaceprogram.com/index.php?/topic/158081-122-upgradesuiextensions-v10-qol-vabsph-tweaks-for-part-upgrades/",
"DOWNLOAD":"https://github.com/zer0Kerbal/UpgradesGUIExtensions/latest",
"GITHUB":
{
"USERNAME":"zer0Kerbal",
"REPOSITORY":"UpgradesGUIExtended",
"ALLOW_PRE_RELEASE":false,
},
"VERSION":
{
"MAJOR":1,
"MINOR":5,
"PATCH":0,
"BUILD":2
},
"KSP_VERSION":
{
"MAJOR":1,
"MINOR":7,
"PATCH":3
},
"KSP_VERSION_MIN":
{
"MAJOR":1,
"MINOR":2,
"PATCH":2
},
"KSP_VERSION_MAX":
{
"MAJOR":1,
"MINOR":7,
"PATCH":9
}
}
Loading

0 comments on commit c2da401

Please sign in to comment.