Node library to parse data from the online MMORPG Kings of Chaos
This library is the 'core', or server-side / parser of a set of 3 libraries as shown in the diagram below
npm install koc
Check lib/koc.js for the available functions.
var KoC = require('koc');
var koc = new KoC();
koc.login( 'username', 'password' );
koc.getUserInfo();
Note: as what you see when clicking on a user from the battlefield
koc.getQuickStats( 3512693 );
Note: as what you see on the user's stats page
koc.getFullStats( 3512693 );
Note: this also returns the 'turing' needed for example when buying weapons
koc.getArmory();
Note: you need the turing provided by the getArmory() call
Note: the second argument is the list of weapons as retrieved in the koc.getArmory()
call prior to buy
koc.buyWeapons( 'turing', { "buy_weapon[62]": 1, "buy_weapon[25]": 14 } );
koc.getTraining();
Note: turing and soldiers to train as returned in the koc.getTraining()
call prior to train
koc.train( 'turing', { ... } );
koc.getMercenaries();
Note: turing and mercenaries to hire as returned in the koc.getMercenaries(
) call prior to hire
koc.hireMercenaries( 'turing', { ... } );
Example to retrieve the most recent 20 attacks by you and on you
koc.attackLog();
koc.attackLog(0,0); // equivalent as above
Example to retrieve the attack log, starting on the 21st most recent attack by you (20) and the 41st most recent attack on you (40)
koc.attackLog(20,40)
Example to retrieve the most recent 20 reports of users you have recon and spies you intercepted
koc.intelligence();
koc.intelligence(0,0); // equivalent as above
Example to retrieve the intelligence log starting from the 21st most recent recon by you (20) and the 41st most recent intercepted report (40)
koc.intelligence(20,40)
Retrieves the info in the page on the battlefield where you are listed (same as when you click 'Attack').
koc.attackField()
Retrieves the info on the battlefield for the given page
Note: Depending on your spy level, you can see the Gold of some users
koc.battlefield(1); // first page
koc.battlefield(50); // 50th page
Retrieve the given battle report
koc.battleReport( 1234 );
Retrieves the intelligence files you have for the given user
koc.intelFile( 3512693 );
Gives you the detail of a single spy from the list of reports given by koc.intelFile( userid )
koc.intelDetail( 1234 );
Spy your enemies!
koc.recon( 3512693 );
Note: If you have the turing given by koc.getFullStats()
or koc.getQuickStats()
prior to spy, you can specify it:
koc.recon( 3512693, turing );
Conquer your enemies!
koc.attackOrRaid( 'attack', 3512693 );
Note: If you have the turing given by koc.getFullStats()
or koc.getQuickStats()
prior to spy, you can specify it:
koc.attackOrRaid( 'raid', 3512693, turing );
Shortcuts exist (also with optional turing
):
koc.attack( 3512693 );
koc.raid( 3512693 );
TODO! Please contribute :)