demofile
A node.js library for parsing modern (protobuf) Source 1 demo files.
Supported Games
- Counter-Strike: Global Offensive
Supported Demo Features
- Entity updates, server classes, data tables
- User messages
- String tables
- Game events
- User commands
- Console commands
Installation
npm install --save demofile
Generate documentation to ./out/
:
jsdoc .
Example
Print all player information to console:
var demofile = require('demofile');
var fs = require('fs');
fs.readFile('test.dem', function (err, buffer) {
var demo = new demofile.DemoFile();
demo.stringTables.on('update', e => {
if (e.table.name === 'userinfo' && e.userData != null) {
console.log('Player info updated:');
console.log(e.entryIndex, e.userData);
}
});
demo.parse(buffer);
});
Release History
0.2.0 (30/01/16)
- โก Each tick is now parsed on a separate process tick.
- โก Game event callbacks are now fired at the end of the tick.
- ๐ Fixed Vector props decoding to
undefined
.
0.1.0 (18/01/16)
- ๐ Initial release.