Comments (2)
I don't really understand what you mean. Things are already cached as long as you keep references to opened archives so things don't get parsed twice.
Could you provide usescases that you think are problematic with the current API and explain how they are problematic?
from heroprotocoljs.
The problem is with the extract. The mpyqjs
library is too slow.
I would like to extract the file with ANOTHER library, but use this library to parse it. My only option to interface with this library currently is sent it a replay, and a variable.
const heroprotocol = require('../');
const details = heroprotocol.get(heroprotocol.DETAILS, process.argv[2]);
I would LIKE to be able to send it data I've already extracted.
const heroprotocol = require('../');
const header = heroprotocol.parseHeader(buffer);
const details = heroprotocol.parseFile(buffer, header.build);
Why? Because I can extract files 60% faster using StormLib
rather than mpyqs
. There's little point to rewriting heroprotocoljs
when it does everything I need, it just does not expose it.
Extracting 28 replays with mpyqs
real 1m43.637s
user 1m35.931s
sys 0m6.731s
Extracting 28 replays with storm-replay
real 0m37.774s
user 0m32.481s
sys 0m1.858s
from heroprotocoljs.
Related Issues (20)
- Replays from newer patch uses older protocol HOT 1
- Code commenting HOT 1
- Prettying up and modernizing the code HOT 4
- Tests HOT 1
- Write initial replay.game.events reference HOT 1
- Grunt HOT 1
- extract.js - add options to only extract certain files HOT 2
- extract.js - add option to skip existing files HOT 2
- extract.js - keep directory structure when extracting directories recursively
- Write initial replay.attributes.events reference
- Query tool HOT 6
- Spread operator not supported in Node v4 HOT 2
- extract.js - pretty mode should sort properties alphabetically HOT 3
- TypeError: decoder.CorruptedError is not a function HOT 2
- _gameLoop in tracker and game events is null HOT 2
- Post-Install Download of Original Repo HOT 2
- Cannot Parse m_timeUTC and m_timeLocalOffset HOT 3
- Not working HOT 5
- Matching BNet account HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from heroprotocoljs.