{"_id":"@corsaircoalition/replay-ranger","_rev":"6-9e54d8fbb6cefee0d2e8818f4ef3c011","name":"@corsaircoalition/replay-ranger","dist-tags":{"latest":"2.3.0"},"versions":{"2.0.0":{"name":"@corsaircoalition/replay-ranger","version":"2.0.0","description":"record and replay generals.io game updates to Redis","main":"out/index.js","type":"module","dependencies":{"@corsaircoalition/common":"^1.1.0","commander":"^10.0.0","redis":"^4.6.5"},"devDependencies":{"@sindresorhus/tsconfig":"^3.0.1","@types/node":"^18.15.5","typescript":"^5.0.2"},"scripts":{"build":"tsc --build","clean":"tsc --build --clean","start":"node app.js"},"_id":"@corsaircoalition/replay-ranger@2.0.0","gitHead":"d5ce98885540e869457f0ca618cb1c40db5e1d24","_nodeVersion":"20.5.0","_npmVersion":"9.8.0","dist":{"integrity":"sha512-DI+F+vP6wMnl3fKn7CUxWN9dd8PEY4Q1dmDPv+kF4NhoGGwhRa/y9EthketoGjog6JSC3hcauhCMJ6Ybbgr1yQ==","shasum":"84c2cf5b3de441ac698fe4a3b57cfec316ea99c0","tarball":"https://registry.npmjs.org/@corsaircoalition/replay-ranger/-/replay-ranger-2.0.0.tgz","fileCount":7,"unpackedSize":20219,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCCLS+uJzKcHHbmkELsdJgKyC6ig2byq69FpJA8g6bgawIgde8fRqbpLQT2QKfEdekppwgVxt3hFfY51AY4P/QCk+g="}]},"_npmUser":{"name":"aaditya","email":"aadityabhatia@gmail.com"},"directories":{},"maintainers":[{"name":"aaditya","email":"aadityabhatia@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/replay-ranger_2.0.0_1690465489192_0.1261182717519731"},"_hasShrinkwrap":false},"2.0.1":{"name":"@corsaircoalition/replay-ranger","version":"2.0.1","description":"record and replay generals.io game updates to Redis","main":"out/index.js","type":"module","dependencies":{"@corsaircoalition/common":"^1.1.0","commander":"^10.0.0"},"devDependencies":{"@sindresorhus/tsconfig":"^3.0.1","@types/node":"^18.15.5","typescript":"^5.0.2"},"bin":{"replay-ranger":"out/index.js"},"scripts":{"build":"tsc --build","clean":"tsc --build --clean","prepare":"npm run build","start":"node ."},"repository":{"type":"git","url":"git+https://github.com/CorsairCoalition/CommanderCortex.git"},"publishConfig":{"access":"public"},"author":{"name":"Aaditya Bhatia"},"license":"Apache-2.0","homepage":"https://corsaircoalition.github.io/","_id":"@corsaircoalition/replay-ranger@2.0.1","gitHead":"64496c8b765fff6090fe19595c9af7b61dcce12e","types":"./out/index.d.ts","bugs":{"url":"https://github.com/CorsairCoalition/CommanderCortex/issues"},"_nodeVersion":"20.5.0","_npmVersion":"9.8.0","dist":{"integrity":"sha512-cyAASu57pfwF70E7I8x0GGIBEwgcmaSiL3Y+bxu4XjXb6ZOh3git5AtG8Ur433HPk04RmexBl1S3QhvFsCCgOA==","shasum":"86c64436f0b81e6b6e54d742219cafee1772ce4e","tarball":"https://registry.npmjs.org/@corsaircoalition/replay-ranger/-/replay-ranger-2.0.1.tgz","fileCount":9,"unpackedSize":26907,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDy2yd389zr5IM7J6/PpO+JZeU84aPpAXTDi9dyAvDClwIgT/4VCv7Y0IsyZpKUUzqt7fZYREefyiS0RMPc/18B7lA="}]},"_npmUser":{"name":"aaditya","email":"aadityabhatia@gmail.com"},"directories":{},"maintainers":[{"name":"aaditya","email":"aadityabhatia@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/replay-ranger_2.0.1_1690481611196_0.10283633734691233"},"_hasShrinkwrap":false},"2.1.0":{"name":"@corsaircoalition/replay-ranger","version":"2.1.0","description":"record and replay generals.io game updates to Redis","main":"out/index.js","type":"module","dependencies":{"@corsaircoalition/common":"^1.1.0","commander":"^10.0.0"},"devDependencies":{"@sindresorhus/tsconfig":"^3.0.1","@types/node":"^18.15.5","typescript":"^5.0.2"},"bin":{"replay-ranger":"out/index.js"},"scripts":{"build":"tsc --build","clean":"tsc --build --clean","prepare":"npm run build","start":"node ."},"repository":{"type":"git","url":"git+https://github.com/CorsairCoalition/CommanderCortex.git"},"publishConfig":{"access":"public"},"author":{"name":"Aaditya Bhatia"},"license":"Apache-2.0","homepage":"https://corsaircoalition.github.io/","_id":"@corsaircoalition/replay-ranger@2.1.0","gitHead":"12c9ef93ba443bf723d20abdcd33c4435af861e1","types":"./out/index.d.ts","bugs":{"url":"https://github.com/CorsairCoalition/CommanderCortex/issues"},"_nodeVersion":"20.5.0","_npmVersion":"9.8.0","dist":{"integrity":"sha512-9tp57nWuMwzMWGL+a++uMPwwmHy0BfXk5GcWJy9aL5gmYZSXPrJ15/h2+18DhI7fTEKaQ8pn8uiW5aa9ZskOWA==","shasum":"6e07a08da252ee75a2de2799ba7c5e8a8985140a","tarball":"https://registry.npmjs.org/@corsaircoalition/replay-ranger/-/replay-ranger-2.1.0.tgz","fileCount":9,"unpackedSize":28118,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHL039CqovPuwSdgll4v9T9Ot9418jgqeeLddOkMHYUPAiEAyo2AUd3Syt4e/0Dx2Sc96xB7voWjUo2n4J6nxdUpu0g="}]},"_npmUser":{"name":"aaditya","email":"aadityabhatia@gmail.com"},"directories":{},"maintainers":[{"name":"aaditya","email":"aadityabhatia@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/replay-ranger_2.1.0_1690489793916_0.785584708428317"},"_hasShrinkwrap":false},"2.1.1":{"name":"@corsaircoalition/replay-ranger","version":"2.1.1","description":"record and replay generals.io game updates to Redis","main":"out/index.js","type":"module","dependencies":{"@corsaircoalition/common":"^1.1.0","commander":"^10.0.0"},"devDependencies":{"@sindresorhus/tsconfig":"^3.0.1","@types/node":"^18.15.5","typescript":"^5.0.2"},"bin":{"replay-ranger":"out/index.js"},"scripts":{"build":"tsc --build","clean":"tsc --build --clean","prepare":"npm run build","start":"node ."},"repository":{"type":"git","url":"git+https://github.com/CorsairCoalition/CommanderCortex.git"},"publishConfig":{"access":"public"},"author":{"name":"Aaditya Bhatia"},"license":"Apache-2.0","homepage":"https://corsaircoalition.github.io/","_id":"@corsaircoalition/replay-ranger@2.1.1","gitHead":"d681625dd741662d1cdf2f6362cfe10719b8f5c2","types":"./out/index.d.ts","bugs":{"url":"https://github.com/CorsairCoalition/CommanderCortex/issues"},"_nodeVersion":"20.5.0","_npmVersion":"9.8.0","dist":{"integrity":"sha512-Uv8CAG6FW2DBqFlXBGtgBpiv+1ua81Xxg3t2PZED/nS9ahIiK477UBjQtgVvvN95atu8bKxupmn8MWzRyYEPdA==","shasum":"00f05f9f8b31b061de15eab109611219333b51f1","tarball":"https://registry.npmjs.org/@corsaircoalition/replay-ranger/-/replay-ranger-2.1.1.tgz","fileCount":9,"unpackedSize":28900,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAE12reHByrvK3hviNEX3Q3LpD59SY8zn3XoAw2CWJ/eAiBbOTZuVFYjHmHAnxpXbrRbQ55ymXT/mKneeWx2MqxAIA=="}]},"_npmUser":{"name":"aaditya","email":"aadityabhatia@gmail.com"},"directories":{},"maintainers":[{"name":"aaditya","email":"aadityabhatia@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/replay-ranger_2.1.1_1690491536514_0.24847580435604666"},"_hasShrinkwrap":false},"2.1.2":{"name":"@corsaircoalition/replay-ranger","version":"2.1.2","description":"record and replay generals.io game updates to Redis","main":"out/index.js","type":"module","dependencies":{"@corsaircoalition/common":"^1.1.0","commander":"^10.0.0"},"devDependencies":{"@sindresorhus/tsconfig":"^3.0.1","@types/node":"^18.15.5","typescript":"^5.0.2"},"bin":{"replay-ranger":"out/index.js"},"scripts":{"build":"tsc --build","clean":"tsc --build --clean","prepare":"npm run build","start":"node ."},"repository":{"type":"git","url":"git+https://github.com/CorsairCoalition/CommanderCortex.git"},"publishConfig":{"access":"public"},"author":{"name":"Aaditya Bhatia"},"license":"Apache-2.0","homepage":"https://corsaircoalition.github.io/","_id":"@corsaircoalition/replay-ranger@2.1.2","gitHead":"9cb388895856eaa3aef39cf8445e897a02a59a11","types":"./out/index.d.ts","bugs":{"url":"https://github.com/CorsairCoalition/CommanderCortex/issues"},"_nodeVersion":"20.5.0","_npmVersion":"9.8.0","dist":{"integrity":"sha512-kq3xmKcNjhmbhhP66VsOLITG5FtMhwEbsXDy4/ZJYGJius8709FsDURuT5B5rEGfAY3ogFGDKsnbD/QMv4NY+Q==","shasum":"1e2227fffed011e08c860f203610b79d68cc5d73","tarball":"https://registry.npmjs.org/@corsaircoalition/replay-ranger/-/replay-ranger-2.1.2.tgz","fileCount":9,"unpackedSize":29110,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBfH1cHX8sy/Gv8d1LM2SyCNn29MdsXdRKwKEIAU5j3gIgWKofNSKxIhiTqBj95wk7kuwmzUDl0igMJP/Ok4kL3/o="}]},"_npmUser":{"name":"aaditya","email":"aadityabhatia@gmail.com"},"directories":{},"maintainers":[{"name":"aaditya","email":"aadityabhatia@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/replay-ranger_2.1.2_1690492241217_0.8152308180956445"},"_hasShrinkwrap":false},"2.2.0":{"name":"@corsaircoalition/replay-ranger","version":"2.2.0","description":"record and replay generals.io game updates to Redis","main":"out/index.js","type":"module","dependencies":{"@corsaircoalition/common":"^1.1.0","commander":"^10.0.0"},"devDependencies":{"@sindresorhus/tsconfig":"^3.0.1","@types/node":"^18.15.5","typescript":"^5.0.2"},"bin":{"replay-ranger":"out/index.js"},"scripts":{"build":"tsc --build","clean":"tsc --build --clean","prepare":"npm run build","start":"node ."},"repository":{"type":"git","url":"git+https://github.com/CorsairCoalition/CommanderCortex.git"},"publishConfig":{"access":"public"},"author":{"name":"Aaditya Bhatia"},"license":"Apache-2.0","homepage":"https://corsaircoalition.github.io/","_id":"@corsaircoalition/replay-ranger@2.2.0","gitHead":"de5d76bb63828b9d7b1582dc9852f93f10f7a4fc","types":"./out/index.d.ts","bugs":{"url":"https://github.com/CorsairCoalition/CommanderCortex/issues"},"_nodeVersion":"20.5.0","_npmVersion":"9.8.0","dist":{"integrity":"sha512-sQzTJ7MQXrQN2nl3de7n/yoeF2xqdsKHRXcLBa4kKlxVdOfqwlAkitb4XeiB7b7u9qGX9KjW22tV/3AcyREwYg==","shasum":"c06a5420ef5e96d6a0e57b7914058fc605ded8ec","tarball":"https://registry.npmjs.org/@corsaircoalition/replay-ranger/-/replay-ranger-2.2.0.tgz","fileCount":9,"unpackedSize":29314,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFDuDQJ/HNxoKA1t8zToreHTfntPwSxDS6o7O+y65OsxAiA/cE6v1wwe5IoExQrcSqwX1fKWQ02khgDLy45GVNGR3Q=="}]},"_npmUser":{"name":"aaditya","email":"aadityabhatia@gmail.com"},"directories":{},"maintainers":[{"name":"aaditya","email":"aadityabhatia@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/replay-ranger_2.2.0_1690610129188_0.6315729379360191"},"_hasShrinkwrap":false},"2.3.0":{"name":"@corsaircoalition/replay-ranger","version":"2.3.0","description":"record and replay generals.io game updates to Redis","main":"out/index.js","type":"module","dependencies":{"@corsaircoalition/common":"^1.2.0","commander":"^10.0.1"},"devDependencies":{"@sindresorhus/tsconfig":"^3.0.1","@types/node":"^18.17.1","typescript":"^5.1.6"},"bin":{"replay-ranger":"out/index.js"},"scripts":{"build":"tsc --build","clean":"tsc --build --clean","prepare":"npm run build","start":"node ."},"repository":{"type":"git","url":"git+https://github.com/CorsairCoalition/CommanderCortex.git"},"publishConfig":{"access":"public"},"author":{"name":"Aaditya Bhatia"},"license":"Apache-2.0","homepage":"https://corsaircoalition.github.io/","_id":"@corsaircoalition/replay-ranger@2.3.0","gitHead":"82e9a0b88c8e8a24277a996b8c11019e2c3dd50a","types":"./out/index.d.ts","bugs":{"url":"https://github.com/CorsairCoalition/CommanderCortex/issues"},"_nodeVersion":"20.5.0","_npmVersion":"9.8.0","dist":{"integrity":"sha512-dshghyXcG6bmicSM4je5lRE+EzTfcdeEsFmonYromWP5aS3D+ClpzpjrdrtkBiNbAemDg+w47TN+k4KaZ2aESA==","shasum":"1335fc750610f48a1fde0fa8caf19dbe28c09a8b","tarball":"https://registry.npmjs.org/@corsaircoalition/replay-ranger/-/replay-ranger-2.3.0.tgz","fileCount":9,"unpackedSize":29314,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB0+DSJlipbz1HVwlq7nVe8rHzDPOyqXO51SA3NzN0YbAiEAuQTyZkUuotB57UDkIGyDNICRelsmKxUgj0EJhNWfzvg="}]},"_npmUser":{"name":"aaditya","email":"aadityabhatia@gmail.com"},"directories":{},"maintainers":[{"name":"aaditya","email":"aadityabhatia@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/replay-ranger_2.3.0_1691100933062_0.5057247710408765"},"_hasShrinkwrap":false}},"time":{"created":"2023-07-27T13:44:49.038Z","2.0.0":"2023-07-27T13:44:49.359Z","modified":"2023-08-03T22:15:33.399Z","2.0.1":"2023-07-27T18:13:31.361Z","2.1.0":"2023-07-27T20:29:54.104Z","2.1.1":"2023-07-27T20:58:56.696Z","2.1.2":"2023-07-27T21:10:41.569Z","2.2.0":"2023-07-29T05:55:29.363Z","2.3.0":"2023-08-03T22:15:33.244Z"},"maintainers":[{"name":"aaditya","email":"aadityabhatia@gmail.com"}],"description":"record and replay generals.io game updates to Redis","readme":"# Replay Ranger\n\nA utility to record and replay generals.io game updates to Redis. It listens to a Redis channel for game events, stores them in JSON files, and replays them back to the same Redis channels on demand.\n\n## Execution\n\n```\nnpx @corsaircoalition/replay-ranger --help\n```\n\n## Configuration\n\nSee [`config.json`](https://github.com/CorsairCoalition/docs/blob/main/config.json.example).\n\n## Usage\n\n### Recording Events\n\n```\n$ npx @corsaircoalition/replay-ranger save --help\n\nUsage: @corsaircoalition/replay-ranger save [options] <configFile>\n\nReceive events from Redis and save them to a file\n\nOptions:\n  -D, --data-directory <dir>  Directory to store event replay files (default: \"data\")\n```\n\n### Replaying Events\n\n```\n$ npx @corsaircoalition/replay-ranger replay --help\n\nUsage: @corsaircoalition/replay-ranger replay [options] <configFile> <filename>\n\nLoad events from a file and send them to Redis\n\nOptions:\n  -S, --send-game-state  Send initial game state event (default: false)\n  -s, --skip <number>    Number of events to skip (default: \"0\")\n  -c, --count <number>   Number of events to send (default: \"10\")\n  -D, --delay <number>       Delay between events in milliseconds (default: \"1000\")\n```\n\n## Examples\n\n```sh\nnpx @corsaircoalition/replay-ranger save config.json\n# data saved to cortex-G5mNGWK-sdmxg1nyf.json\n\nnpx @corsaircoalition/replay-ranger replay config.json --send-game-state --skip 10 --count 5 --delay 2000 cortex-G5mNGWK-sdmxg1nyf.json\n# replays events 11-15 to the same channels\n```\n","readmeFilename":"README.md","homepage":"https://corsaircoalition.github.io/","repository":{"type":"git","url":"git+https://github.com/CorsairCoalition/CommanderCortex.git"},"author":{"name":"Aaditya Bhatia"},"bugs":{"url":"https://github.com/CorsairCoalition/CommanderCortex/issues"},"license":"Apache-2.0"}