Giter Club home page Giter Club logo

vas-file-architect's Introduction

VAS-File-Architect

Table of Contents

  1. Overview
  2. Benefits
  3. Installation
  4. Setup
  5. Usage
  6. Modules
  7. FAQ or Troubleshooting
  8. Contributing
  9. License

Overview

VAS File Architect is a comprehensive tool designed to streamline the creation of Video Auto Split (.vas) archives for use with ROMaster2's VideoAutoSplit component.
This program automates the process of generating a game profile (structure.xml), a template Auto Split Language (ASL) script (script.asl), and the final .vas archive containing all necessary files.

The primary focus of VAS File Architect is to ensure that I never have to create another structure.xml file by hand again - and maybe help others avoid it too.

Scan regions in LiveSplit


Benefits

Easy Game Profile Creation:

The most significant advantage of using VAS File Architect is its ability to automate the creation of complex game profiles, which are essential for use with the Video Auto Split component.

Automated Processing:

Once the target directory is selected, the program automatically:

  • Groups images based on bounding box coordinates and their containing directory.
  • Generates a structure.xml file, creating unique WatchZones for each group of images.
  • Creates a script.asl template populated with a list of recognised image masks.
  • Compiles the processed images, script.asl, and structure.xml into a .vas archive.

User-friendly

Once the user selects their target directory, VASFA will handle the rest!*
success

*except getting the screenshots or making the unnecessary parts of the screenshots transparent or writing the code for the actions in the script file or installing the LiveSplit component or getting the component to recognise your capture card or


Installation

Cloning the Repository

To clone the repository use the following command:

git clone https://github.com/phrayse/VAS-File-Architect.git

Download Executable

Alternatively, you can download the executable directly from the Releases page.


Setup

  1. Create a directory with the same name as your game.
  2. Get a screenshot of each frame you wish to use in your splitter.
  3. Use an image editing program such as GIMP to transform each image as follows:
    • Maintain the original dimensions of the image (don't crop).
    • Excluding the area you wish to track, make everything transparent.
    • Export this mostly-transparent image as a .png file into your game directory.
  4. (optional) Organise your mask images into subdirectories within the game directory.

Example directory structure


Usage

  1. Run program, choose target directory.
  2. Open the resulting .vas archive, found inside your target directory.
  3. Open the script.asl template and insert your code.

Choose directory

Notes


Modules

  • main.py: Coordinates the overall workflow.
  • image_processing.py: Handles image cropping and grouping.
  • xml_generation.py: Generates game profile.
  • asl_generation.py: Creates an Auto Splitting Language script template.
  • vas_archive_generation.py: Compiles assets into a .vas archive.

FAQ or Troubleshooting

Check vasfa.log for detailed info and error messages.
Additionally, you can test VASFA out on the demo folder included in the main repository.

Q: How do I modify the ASL script?
A: Open the script.asl file from the .vas archive and customize the action blocks as per your specific requirements.

Q: How do I change the Error Metrics used for image comparisons?
A: Open the structure.xml file from the .vas archive and uncomment the ErrorMetric tag in the relevant WatchZone. Options are listed atop the document in a comment node.

Q: Why are some of my images being renamed?
A: Image masks must have unique names throughout the directory so the script.asl file can differentiate between them. The original files will remain untouched, only the archived version is amended.


Contributing

Contributions to the project are welcome. Feel free to submit a pull request or message me directly with feedback.


License

VAS File Architect is released under the MIT License. For more details, see the LICENSE file in the repository.

vas-file-architect's People

Contributors

phrayse avatar

Watchers

 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.