Giter VIP home page Giter VIP logo

scw_parse's Introduction

scw_parse

This is a node.js library for parsing .scw (SC3D) files from Brawl Stars and also export them into .dae (COLLADA) models. The code is licensed under GPL v3.0. Read LICENSE.txt for the terms and conditions of this license.

Usage

Setting up

Clone the repo using git clone then make sure you have node.js installed.

const SC3D = require("./SC3D");
SC3D.importPath = "/path/to/sc3d/folder";

Using convert.js

Use node convert --help for help with using the convert.js script.

Example: node convert --source /path/to/sc3d/folder --output /path/to/output/folder --all

Importing a library

const lib1 = SC3D.importLib("file1.scw");

Exporting a model

const lib2 = SC3D.importLib("file2.scw");
const model = SC3D.importLib("another_file.scw");
// Libraries are optional, the contents will be merged into the same model
const modelXML = model.exportModel([lib1, lib2]);
// modelXML is a string and can be saved into a .dae using the fs API

Currently unimplemented

  • Animations
  • Full material support (lightmaps, etc)
  • .sc textures
  • Encoding and generating .scw from a model
  • Modifying .scw (adding chunks, editing values)
  • Support older SC3D versions (version 0 and 1)

scw_parse's People

Contributors

blacoiso avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

scw_parse's Issues

Too epic

Blacoiso is epic and that’s a really big issue.

Implement exporting scw from dae

Currently it's only possible to partially export the scw as a dae; allowing the reverse would also be useful.
Things required before this is possible:

  • Regenerate scw from internal structure
    • Implement code for reencoding each chunk, computing length and CRC
  • Add constructors for a blank SC3D
    • Add empty argument constructors for each chunk type
    • Add methods to modify/insert data into each chunk
  • Implement code for loading and parsing XML from text in XML.js
  • Implement some kind of COLLADA parser to read the required values to be reencoded

Contact for work :D

I am a server owner and was wondering if you can get back to me abdu.d.soul#4693 discord for some paid work related to ur scw project

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.