ScrapYard CKAN

A common part inventory add-on for Kerbal Space Program.

License: Expat-MIT

Game Version: 1.12.3

Source code: zer0Kerbal/ScrapYard

Downloads: 41,019

Mod Website: Forum Thread

Support this mod: Donate

Followers: 59

Information Changelog Stats

ScrapYard (SYD)

A common part inventory mod for Kerbal Space Program

Adopted by @zer0Kerbal from @severedsolo, originally by Magico13

Mod Version KSP version License Expat-MIT

Curseforge CKAN GitHub SpaceDock

Code KSP-AVC Validate AVC .version files

brought to you by KGEx

Description

Preamble by @severedsolo:

So you may have heard that @magico13 is giving up modding KSP. I've got the honour of taking over support for ScrapYard, because it makes sense as I have my own mod that depends on it (Oh Scrap!). I want to take this opportunity to thank magico13 for all his hard work and contributions to the community over the years, as I know that my own KSP experience would be much poorer without his mods. Anyway, enough from me.

The bit you are actually interested in

ScrapYard is a mod that provides a part inventory that can be shared between multiple mods. Parts are added to the inventory when you recover a vessel and are removed from the inventory when you build a new vessel. If you have ever played with Kerbal Construction Time, it's a significantly improved version of the part inventory that KCT had, that is also able to be used by other mods.

Features

As of writing, ScrapYard does the following:

  • Parts are added to the inventory automatically upon vessel recovery
  • Parts are applied in the editor (not automatically like with KCT)
  • Parts are then pulled from the inventory on build (mods can change when this happens)
  • Parts are stored individually in the inventory along with any modules that “define” the part (think TweakScale and Procedural Parts)
  • The number of times “like” parts are used is tracked and available for mods, both total uses and number of builds (KCT’s part tracker feature, expanded)
  • Parts are trackable from the moment they are placed in the editor until they are removed from the game via a unique ID that transcends recovery and new builds
  • The number of times an individual part is recovered is tracked, perfect for consumption by part failure mods
  • (WIP) Funds can be overridden so that using parts from the inventory do not contribute to the cost of the vessel. You do still need to have the full amount of funds (for now).
  • ContractConfigurator support for adding or removing parts from the inventory as part of contracts

Flag

Hero Image


As a player, why do I want this?

If you are using Kerbal Construction Time, all balance is assumed you have this mod. It will substantially reduce build times for both vessels that use parts from the inventory and new vessels that use frequently used parts due to the part tracker. As of writing, no other mods are using this framework, but when they do this mod may be required. And this mod can be used by itself with the override funds option to play with a very different play style.

As a mod developer, why do I want this?

There are numerous reasons you might want to integrate with ScrapYard (with a hard dependency or a soft dependency, both options are offered), here are just a few that I can think of off the top of my head:

  • ScrapYard provides a way to uniquely track a part during its entire life cycle, from the moment it is placed in the editor until the time it is removed from the game. That includes surviving through multiple recoveries and launches. I imagine part failure mods might get the most use out of this, but surprise me!
  • By using a developed, common system you don’t need to worry about implementing your own part inventory and automatically gain support with other mods. Spend more time writing new features instead of rewriting something that exists.
  • Fine control over the modules that are stored with a part. Once Module Manager support for module templates is added, you can create a new module and a module manager patch to automatically store your module and its data with a part through its entire lifecycle. Module templates use MagiCore’s MathParser to allow for logic processing within the config file (currently limited to just numbers, strings will likely be added soon). Until Module Manager is supported, you can just edit the ModuleTemplates.cfg file directly. 
  • Get information about how often parts are used on a total used and number of builds basis. This is referred to as either the Part Tracker or the "Like" Part Tracker since it just tracks parts that are like each other (same name).
  • Many more that I can’t think of off the top of my head

Mods using ScrapYard:

Cabin notes:

  • Feature Complete
  • Future Plans: lol.
  • Except compatibility patches, keep it working with future KSP updates.
  • Am open to adding more features, great project for someone!
  • Have a request? Glad to have them, kindly submit through GitHub.
  • I have not personally tested the patches

Localization work in progress

  • [x] English - in progress
  • [ ]

HELP WANTED - See the README in the Localization folder for instructions for adding or improving translations for languages other than English. GitHub push is the best way to contribute. Additions and corrections solicited and welcome!


How to support

Support Github Sponsor Patreon Buy zer0Kerbal a snack


See More

  • Discussions and news on this mod: See Discussions or KSP Forums
  • Changelog Summary for more details of changes : See ChangeLog
  • Known Issues for more details of feature requests and known issues : See Known Issues

Installation Directions:

  • Use
    CKAN

Dependencies

Recommends

Suggests

Mods that benefit ScrapYard (SYD)

Other fun mods by zed'K

Supports

Conflicts

  • none known

Replaces

  • none

Tags

  • plugin, config, career

*red box below is a link to forum post on how to get support*

How to get support

hero shot

Credits and Special Thanks

  • @SiriusSam for the original idea of creating a separate part inventory way back in 2014 and for the name
  • @enneract for discussion and design help.
  • @`Zelda' for ideas and support 🧧
  • eightiesboi for ideas, support and testing! 🧧

Legal Mumbo Jumbo ( provenance )

Current (2) - zer0Kerbal

Forum: Thread - Source: GitHub
License: License Expat-MIT
All bundled mods are distributed under their own licenses
All art assets (textures, models, animations) are distributed under their own licenses

Maintainer (1) severedsolo

Forum: Thread - Spacedock Download - Source: GitHub
License: License Expat-MIT

Original (0) - Author: Magico13

Thread - Spacedock Download - Source: GitHub License: License Expat-MIT


Be Kind: Lithobrake, not jakebrake! Keep your Module Manager up to date

IMG:hero:1

v2.2.1.0 original: 01 Oct 2019 zed'K | updated: 23 Sep 2021 zed'K

[^1]: may work on other versions (YMMV) [^2]: Be Kind: Lithobrake, not jakebrake! Keep your Module Manager up to date! [^3]: this isn't a mod. ;P

Version 2.2.1.0 for Kerbal Space Program 1.12.3

Released on 2022-03-27

Version 2.2.1.0 - *t-minus...the final countdown*

  • 2021-09-23
  • Released for 1.12.2
  • recompile for KSP 1.12.2 using KSP 1.12.2 assemblies (instead of 1.12.0)

Finally proper credit given to

  • original Author [@`Magico13'] - thank you for this wonderful mod!
  • [@`Zelda'] for ideas and support. The legend is real! 🧧
  • [@eightiesboi] for ideas, support and testing! 🧧

Updated

  • [Expat-MIT.txt]
  • rename from MIT.txt to Expat-MIT.txt to properly reference license type
  • update to include 2021
  • NETKan file updated
  • Spacedock with 2.2.0.0
  • NETKan file updated
  • [Changelog.cfg] to most recent standard
  • folder structure

Localization

  • Added
  • Folder: ScrapYard/Localization/

Code

  • Issue: LogSpam
  • thank you to @baldamundo and [@jefferyharrell]
  • "fix Of FlowGraph issue by not storing ID in tracker as we already looking for part based on part.Id"
    • should resolve #4
    • thank you @roxik0
  • Recompile for
  • KSP 1.12.2
    • .Net 4.7.2
    • C# 9.0
  • Update
  • update to ToolsVersion 16
  • lint .csproj's; remove comments
  • [Version.tt] v2.0.0.2
  • [AssemblyFileVersion] since has been included since adoption
  • initial code Localization
    • closes #9 - initial code Localization

Documentation

  • usual spring cleaning and automation
  • [ScrapYard_ContractConfigurator.version]
  • for [ScrapYard_ContractConfigurator.dll]
  • Update
  • [readme.md] v1.5.4.1

Automation

  • Update
  • [ReleaseLayout] v1.2.2.2
  • [_buildJSON] v1.3.3.6
  • [_buildRelease] v1.1.1.2
  • [_release] v1.0.2.0
  • [_deploy] v1.1.1.0

Status

  • Bug Tracker
  • closed #4 - logspam
  • updated #9 us-en.cfg should be complete
  • ScrapYard compatibility with RealChute - thank you genehwung (closes #11)
  • Possible future changes
  • Clean the ScrapYard #12
  • Flowgraph Logspam #4
  • Used chutes fitted to ship are already deployed #3
  • add a wiki (user driven)

Download (113.29 KiB)

Version 2.2.0.0 for Kerbal Space Program 1.12.1

Released on 2021-09-17

Mod Version KSP version KSP-AVC [License GPLv2]LINK:license []LINK:license
Code Validate AVC .version files


Version 2.2.0.0 - final countdown...

  • DO A CLEAN INSTALL: DELETE EXISTING THEN RE-INSTALL</color>

  • usual spring cleaning and automation

  • update folder structure
  • update to modern back-end automation
  • resolves issue #6

Update

  • recompile for KSP 1.12.x
  • to .NET 4.7.2
  • to C# 9.0
  • to Version.tt [v2.0.0.0]

correct

  • changelog thank you to 7ranceaddic7
  • resolves #2

Update

  • Patches to use :NEEDS:[ScrapYard]:FOR[ScrapYard]

See Full Changelog for full details of changes
See Known Issues for known issues


red box below is a link to forum post on how to get support
How to get support


Kerbal Space Program 1.12.1
Unity 2019.2.2f1
.NET Framework 4.7.2
C# 9.0

Be Kind: Lithobrake, not jakebrake! Keep your Module Manager up to date


Download (86.49 KiB)

Version 2.1.1.0 for Kerbal Space Program 1.9.1

Released on 2021-07-19

ScrapYard Version KSP 1.9.1 KSP-AVC License: MIT MIT-17x17.png


Version 2.1.1.0 - Kanford and Sons - Back in Business with less Magicore!

  • removed need for magicore dependency
  • thank you to @magico13 and @linuxgurugamer for the code
  • License MIT

Kerbal Space Program 1.9.1
.NET Framework 4.8

Download (56.19 KiB)

Version 2.1.0.0 for Kerbal Space Program 1.9.1

Released on 2020-03-16

ScrapYard Version KSP 1.9.1 KSP-AVC License: MIT MIT-17x17.png


Version 2.1.0.0 - Kanford and Sons - Back in Business!

  • >>-- Adoption by zer0Kerbal --<<
  • recompiled for KSP 1.9.1
  • recompiled against .NET 4.8
  • updated file structure
  • updated .csproj to zer0Kerbal's
  • updated to zer0Kerbal's automated build process
  • added CONTRIBUTION.md
  • added automated process to generate Readme.htm from Readme.md
  • updated Spacedock
  • created Curseforge
  • create new forum thread

Kerbal Space Program 1.9.1
.NET Framework 4.8

Download (57.93 KiB)

Version 2.0 for Kerbal Space Program 1.8.1

Released on 2019-12-07

  • Recompiled against KSP 1.8 / .Net 4.7.2
  • Added support for MADLAD's Install Validator

Download (52.68 KiB)

Version 1.1.3 for Kerbal Space Program 1.7.2

Released on 2019-06-16

No changelog provided

Download (48.36 KiB)

Version 1.1.2 for Kerbal Space Program 1.7.0

Released on 2019-04-14

  • Recompiled against KSP 1.7
  • Fixed bug where KRASH simulations would increment the build count
  • Added support for Kerbal Changelog

Download (48.19 KiB)

Version 1.1.1 for Kerbal Space Program 1.5.1

Released on 2018-10-20

  • Recompiled against KSP 1.5
  • Gracefully handle exceptions when trying to add a part to the inventory on recovery.

Download (49.09 KiB)

Version 1.1.0.1 for Kerbal Space Program 1.4.5

Released on 2018-09-30

  • Recompiled for 1`.4.5 and changed ownership

Download (49.07 KiB)

Version 1.1.0.107 for Kerbal Space Program 1.4.1

Released on 2018-03-19

Some additional bug fixes and changes noticed while updating Kerbal Construction Time to 1.4.1 and verifying that it works correctly with ScrapYard.

  • Added new event: "OnSYInventoryAppliedToPart". Fired when pressing "apply" from main UI on an existing part.
  • Bug fix where Ids were not being set correctly when copying InventoryParts, which affected any parts that were added to the inventory and then used in the same scene (editing vessels in KCT, for instance)
  • Changed Vessel tracking to fully remove a vessel from the list when setting the tracking state to false to avoid the list filling up unnecessarily.

Download (98.94 KiB)

Version 1.0.1.104 for Kerbal Space Program 1.4.1

Released on 2018-03-17

  • Fixed an issue where "persistentId" was listed as "persistentID" that was breaking the ProcessVessel API call.
  • Fixed an exception that would occur when loading a game because of the settings class.
  • Changed the message logged when logging a new build to avoid confusion.

Download (98.92 KiB)

Version 1.0.0.102 for Kerbal Space Program 1.4.1

Released on 2018-03-15

No changelog provided

Download (98.84 KiB)

Stats for ScrapYard

Downloads over time

Downloads per version

New followers per day

Top Referrers

  1. spacedock.info
  2. forum.kerbalspaceprogram.com
  3. www.google.com
  4. yandex.ru
  5. www.curseforge.com
  6. www.spacedock.info
  7. duckduckgo.com
  8. prod.uhrs.playmsn.com
  9. github.com
  10. www.bing.com

Export Raw Stats

Export Downloads

Export Followers

Export Referrals

Raw stats are from the beginning of time until now. Each follower and download entry represents one hour of data. Uneventful hours are omitted.