Giter VIP home page Giter VIP logo

zedit-blacksmith's Introduction

zedit-blacksmith

Modify weapons, armour, and crafting recipes and save the changes as patches called "transforms" - plain JSON files.

Transforms

A transform consists of a reference to a record (the "base") and a set of changes to make to it (the "delta").

Applying a transform will save the outputted records into a new plugin, including all dependent records, so that the new plugin can be used on its own, without requiring the origin plugins as masters.

Plan

The goal is to allow users to make a transform file that makes changes - likely balance changes - to many different mods, then distribute this transform so others can use it. Users of the transform can have any subset of the mods affected by the transform.

Version 0.1.0 supports creating and applying transforms. Eventually there will be a GUI for creating transforms more easily, and doing batch processes, like creating templates and applying them to weapons and armor to quickly produce large transforms that others could then use.

For example, there could be Iron / Steel / Dwemer / etc. tier sword templates consisting of weapon stats and a crafting recipe. A GUI would let you create those templates and apply them to weapon mods, outputting a transform that could be shared and applied to instantly make those changes.

Version 0.1.0 usage

Currently all interaction is done through two context menu entries in the tree view - this will change in the future to be less intrusive.

Blacksmith -> Create transforms from modified elements

This will create a transform file based on your currently modified elements, i.e. unsaved changes.

For example, if you edited the Damage value of the record CoolSword in MyMod.esp from 12 to 13, the saved transform will reference MyMod.esp/CoolSword as the base record, and 13 damage as the delta.

Blacksmith -> Load transforms

This will apply the selected transform file and record the output in a new plugin file. It will also copy any references into the new plugin, so that the new plugin can be used without the source plugin.

For example, if you load the transform from before, the new plugin will contain CoolSword with 13 damage. Let's say MyMod.esp/CoolSword references a 1st Person Model Object in MyMod.esp/CoolSword1st; in that case, CoolSword1st will also be copied into the new plugin.

Sample data

A simple example transform is here: https://pastebin.com/3ABZ81mA

The mods it is based on are:

zedit-blacksmith's People

Contributors

matortheeternal avatar meem0 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.