Giter Site home page Giter Site logo

yigitsezer / dotabase-builder Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mdiller/dotabase-builder

0.0 0.0 0.0 11.05 MB

A collection of scripts and programs to extract dota's game files and build an sqlite dotabase

Home Page: http://dotabase.dillerm.io

Python 100.00%

dotabase-builder's Introduction

Dotabase Builder

A collection of scripts and programs to extract dota's game files and build an sqlite database. See the output of this builder at my Dotabase repository.

VPK Extraction

The main library/tool that this builder leans on is ValveResourceFormat. This lovely project is what allows me to extract the data from dota's vpk files, and decompile some of the obscure file formats like vsnd_c into more friendly ones like mp3. I'm using the Decompiler from this project in a call that looks about like this:

dotnet Decompiler.dll -i "<vpk_location>" --recursive --vpk_cache True -d -e "txt,dat,vsndevts_c,vxml_c,vjs_c,vcss_c,png,cfg,res,vsnd_c,vtex_c" -o "<vpk_out_location>" --threads 16

Dota 2 Wiki Scraper

As a focus of dotabase is the extraction of the Hero Responses data, I wanted to extract the subtitles/captions for each response. Unfortunatly, these are stored in .dat files, and as of the time of this project creation, I have not found a reliable way to decompile these back into their original .txt format. Instead, I have decided to scrape this information from the Dota 2 Wiki. A bit of a hackish method, but it works.

The voice lines texts are now taken directly from the subtitles.dat files from the vpk. See vccd_reader.py for more info on how that works.

valve2json.py

Although the ValveResourceFormat decompiler does a good job of decompiling the game files into readable text files, they are still not in a format that is easily readable by programs. To that end, I convert all of the files containing information I need into .json files. I do this by doing a bunch of regex substitutions.

dotabase-builder's People

Contributors

mdiller 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.