diff --git a/api/db.js b/api/db.js
index 91ee713..8b9de04 100644
--- a/api/db.js
+++ b/api/db.js
@@ -399,7 +399,7 @@ export async function get_top_kills_byDate() {
' killer_id, DATE(timestamp) AS kill_date, ROW_NUMBER() OVER (PARTITION BY killer_id ORDER BY COUNT(*) DESC)::int AS row_num' +
' FROM killactivity GROUP BY killer_id, DATE(timestamp)) SELECT rk.kill_count, rk.killer_id,' +
" TO_CHAR(rk.kill_date, 'FMMon DD, YYYY') AS f_kill_date, rk.row_num, av.name, av.faction_id FROM RankedKills rk" +
- ' JOIN avatar av ON rk.killer_id = av.id WHERE rk.row_num = 1 ORDER BY rk.kill_count DESC LIMIT 30')
+ ' JOIN avatar av ON rk.killer_id = av.id WHERE rk.row_num = 1 ORDER BY rk.kill_count DESC LIMIT 50')
return kills.rows;
} catch (e) {
if (e.code)
diff --git a/app/statFunctions.js b/app/statFunctions.js
index 4eb119b..d81ae76 100644
--- a/app/statFunctions.js
+++ b/app/statFunctions.js
@@ -107,89 +107,20 @@
}
export const weaponNames = [
-{ id: 2, name: '12mm_chaingun type weapon' },
-{ id: 8, name: '15mm_chaingun type weapon' },
-{ id: 12, name: '20mm_cannon type weapon' },
-{ id: 13, name: '20mm_cannon_deliverer type weapon' },
-{ id: 14, name: '20mm_cannon_dropship type weapon' },
-{ id: 15, name: '20mm_cannon_dropship_l type weapon' },
-{ id: 23, name: '75mm_cannon type weapon' },
-{ id: 24, name: '75mm_lightning type weapon' },
-{ id: 32, name: 'ace type weapon' },
-{ id: 33, name: 'ace_deployable type weapon' },
-{ id: 39, name: 'advanced_ace type weapon' },
-{ id: 40, name: 'advanced_missile_launcher_t type weapon' },
{ id: 55, name: 'Spear' },
{ id: 56, name: 'Stinger' },
{ id: 57, name: 'Eraser' },
-{ id: 63, name: 'apc_ballgun_l type weapon' },
-{ id: 64, name: 'apc_ballgun_r type weapon' },
-{ id: 69, name: 'apc_weapon_systema type weapon' },
-{ id: 70, name: 'apc_weapon_systemb type weapon' },
-{ id: 71, name: 'apc_weapon_systemc type weapon' },
-{ id: 72, name: 'apc_weapon_systemc_nc type weapon' },
-{ id: 73, name: 'apc_weapon_systemc_tr type weapon' },
-{ id: 74, name: 'apc_weapon_systemc_vs type weapon' },
-{ id: 75, name: 'apc_weapon_systemd type weapon' },
-{ id: 76, name: 'apc_weapon_systemd_nc type weapon' },
-{ id: 77, name: 'apc_weapon_systemd_tr type weapon' },
-{ id: 78, name: 'apc_weapon_systemd_vs type weapon' },
-{ id: 85, name: 'aphelion_immolation_cannon type weapon' },
-{ id: 88, name: 'aphelion_laser type weapon' },
-{ id: 90, name: 'aphelion_laser_left type weapon' },
-{ id: 92, name: 'aphelion_laser_right type weapon' },
-{ id: 98, name: 'aphelion_plasma_rocket_pod type weapon' },
-{ id: 100, name: 'aphelion_ppa type weapon' },
-{ id: 102, name: 'aphelion_ppa_left type weapon' },
-{ id: 104, name: 'aphelion_ppa_right type weapon' },
-{ id: 105, name: 'aphelion_starfire type weapon' },
-{ id: 107, name: 'aphelion_starfire_left type weapon' },
-{ id: 109, name: 'aphelion_starfire_right type weapon' },
-{ id: 119, name: 'aurora_weapon_systema type weapon' },
-{ id: 120, name: 'aurora_weapon_systemb type weapon' },
-{ id: 136, name: 'battlewagon_weapon_systema type weapon' },
-{ id: 137, name: 'battlewagon_weapon_systemb type weapon' },
-{ id: 138, name: 'battlewagon_weapon_systemc type weapon' },
-{ id: 139, name: 'battlewagon_weapon_systemd type weapon' },
{ id: 140, name: 'Beamer' },
{ id: 146, name: 'Bolt Driver' },
+{ id: 148, name: 'Boomer' },
{ id: 175, name: 'Knife (TR)' },
{ id: 177, name: 'chaingun_p type weapon' },
-{ id: 185, name: 'colossus_burster type weapon' },
-{ id: 187, name: 'colossus_burster_left type weapon' },
-{ id: 189, name: 'colossus_burster_right type weapon' },
-{ id: 190, name: 'colossus_chaingun type weapon' },
-{ id: 192, name: 'colossus_chaingun_left type weapon' },
-{ id: 194, name: 'colossus_chaingun_right type weapon' },
-{ id: 196, name: 'colossus_cluster_bomb_pod type weapon' },
-{ id: 198, name: 'colossus_dual_100mm_cannons type weapon' },
-{ id: 204, name: 'colossus_tank_cannon type weapon' },
-{ id: 206, name: 'colossus_tank_cannon_left type weapon' },
-{ id: 208, name: 'colossus_tank_cannon_right type weapon' },
{ id: 233, name: 'Cycler' },
-{ id: 234, name: 'cycler_v2 type weapon' },
-{ id: 235, name: 'cycler_v3 type weapon' },
-{ id: 236, name: 'cycler_v4 type weapon' },
-{ id: 262, name: 'dropship_rear_turret type weapon' },
-{ id: 274, name: 'energy_gun type weapon' },
-{ id: 276, name: 'energy_gun_nc type weapon' },
-{ id: 278, name: 'energy_gun_tr type weapon' },
-{ id: 280, name: 'energy_gun_vs type weapon' },
-{ id: 298, name: 'flail_weapon type weapon' },
{ id: 299, name: 'Dragon' },
{ id: 304, name: 'Sweeper' },
-{ id: 306, name: 'flux_cannon_thresher type weapon' },
-{ id: 309, name: 'fluxpod type weapon' },
{ id: 324, name: 'Knife (VS)' },
{ id: 334, name: 'Frag Grenade' },
-{ id: 336, name: 'fury_weapon_systema type weapon' },
-{ id: 339, name: 'galaxy_gunship_cannon type weapon' },
-{ id: 340, name: 'galaxy_gunship_gun type weapon' },
-{ id: 342, name: 'galaxy_gunship_tailgun type weapon' },
{ id: 345, name: 'Gauss' },
-{ id: 346, name: 'gauss_cannon type weapon' },
-{ id: 371, name: 'grenade_launcher_marauder type weapon' },
-{ id: 394, name: 'heavy_rail_beam_magrider type weapon' },
{ id: 396, name: 'Heavy Scout Rifle' },
{ id: 398, name: 'hellfire type weapon' },
{ id: 406, name: 'Phoenix' },
@@ -198,73 +129,89 @@ export const weaponNames = [
{ id: 421, name: 'katana type weapon' },
{ id: 425, name: 'Lancer' },
{ id: 429, name: 'Lasher' },
-{ id: 433, name: 'liberator_25mm_cannon type weapon' },
-{ id: 435, name: 'liberator_bomb_bay type weapon' },
-{ id: 440, name: 'iberator_weapon_system type weapon' },
-{ id: 445, name: 'lightgunship_weapon_system type weapon' },
-{ id: 448, name: 'lightning_weapon_system type weapon' },
{ id: 462, name: 'Maelstrom' },
{ id: 468, name: 'Knife (NC)' },
-{ id: 534, name: 'mediumtransport_weapon_systemA type weapon' },
-{ id: 535, name: 'mediumtransport_weapon_systemB type weapon' },
{ id: 556, name: 'Mini-Chaingun' },
{ id: 587, name: 'Falcon MAX' },
{ id: 588, name: 'Scattercannon MAX' },
{ id: 589, name: 'Sparrow MAX' },
{ id: 599, name: 'Scorpion' },
-{ id: 628, name: 'particle_beam_magrider type weapon' },
-{ id: 629, name: 'pellet_gun type weapon' },
-{ id: 636, name: 'peregrine_dual_machine_gun type weapon' },
-{ id: 638, name: 'peregrine_dual_machine_gun_left type weapon' },
-{ id: 640, name: 'peregrine_dual_machine_gun_right type weapon' },
-{ id: 641, name: 'peregrine_dual_rocket_pods type weapon' },
-{ id: 644, name: 'peregrine_mechhammer type weapon' },
-{ id: 646, name: 'peregrine_mechhammer_left type weapon' },
-{ id: 648, name: 'peregrine_mechhammer_right type weapon' },
-{ id: 652, name: 'peregrine_particle_cannon type weapon' },
-{ id: 658, name: 'peregrine_sparrow type weapon' },
-{ id: 660, name: 'peregrine_sparrow_left type weapon' },
-{ id: 662, name: 'peregrine_sparrow_right type weapon' },
-{ id: 666, name: 'phalanx_avcombo type weapon' },
-{ id: 668, name: 'phalanx_flakcombo type weapon' },
-{ id: 670, name: 'phalanx_sgl_hevgatcan type weapon' },
-{ id: 672, name: 'phantasm_12mm_machinegun type weapon' },
{ id: 673, name: 'Decimator' },
{ id: 680, name: 'Plasma Grenade' },
-{ id: 699, name: 'prowler_weapon_systemA type weapon' },
-{ id: 700, name: 'prowler_weapon_systemB type weapon' },
{ id: 701, name: 'Pulsar' },
-{ id: 705, name: 'pulsed_particle_accelerator type weapon' },
{ id: 706, name: 'Punisher' },
-{ id: 709, name: 'quadassault_weapon_system type weapon' },
{ id: 714, name: 'Jackhammer' },
{ id: 716, name: 'Radiator' },
{ id: 730, name: 'Repeater' },
{ id: 737, name: 'Rocklet Rifle' },
-{ id: 740, name: 'rotarychaingun_mosquito type weapon' },
-{ id: 743, name: 'router_telepad type weapon' },
{ id: 747, name: 'scythe type weapon' },
{ id: 761, name: 'six_shooter type weapon' },
-{ id: 788, name: 'skyguard_weapon_system type weapon' },
{ id: 817, name: 'Spiker' },
-{ id: 822, name: 'spitfire_aa_weapon type weapon' },
-{ id: 827, name: 'spitfire_weapon type weapon' },
{ id: 838, name: 'Striker' },
{ id: 845, name: 'Suppressor' },
{ id: 864, name: 'Thumper' },
-{ id: 866, name: 'thunderer_weapon_systema type weapon' },
-{ id: 867, name: 'thunderer_weapon_systemb type weapon' },
{ id: 888, name: 'Burster MAX' },
{ id: 889, name: 'Dual Cycler MAX' },
{ id: 890, name: 'Pounder MAX' },
-{ id: 927, name: 'vanguard_weapon_system type weapon' },
-{ id: 945, name: 'vanu_sentry_turret_weapon type weapon' },
{ id: 968, name: 'Comet MAX' },
{ id: 969, name: 'Quasar MAX' },
{ id: 970, name: 'Starfire MAX' },
-{ id: 987, name: 'vulture_bomb_bay type weapon' },
-{ id: 990, name: 'vulture_nose_weapon_system type weapon' },
-{ id: 992, name: 'vulture_tail_cannon type weapon' },
-{ id: 1002, name: 'wasp_weapon_system type weapon' },
-{ id: 1003, name: 'winchester type weapon' }
+{ id: 1003, name: 'winchester type weapon' },
+{ id: 46, name: 'AMS' },
+{ id: 60, name: 'ANT' },
+{ id: 62, name: 'BIG BUS' },
+{ id: 66, name: 'Vindicator' },
+{ id: 67, name: 'Juggernaut' },
+{ id: 68, name: 'Leviathan' },
+{ id: 79, name: 'Aphelion' },
+{ id: 83, name: 'Eclipse' },
+{ id: 84, name: 'Aphelion' },
+{ id: 118, name: 'Aurora' },
+{ id: 135, name: 'Battlewagon?' },
+{ id: 179, name: 'Colossus' },
+{ id: 199, name: 'Invader' },
+{ id: 200, name: 'Colossus' },
+{ id: 239, name: 'Deliverer' },
+{ id: 259, name: 'Dropship?' },
+{ id: 294, name: 'Flail' },
+{ id: 335, name: 'Fury' },
+{ id: 338, name: 'Galaxy Gunship' },
+{ id: 353, name: 'BFR' },
+{ id: 432, name: 'Liberator' },
+{ id: 441, name: 'Light Gunship?' },
+{ id: 446, name: 'Lightning' },
+{ id: 459, name: 'Lodestar' },
+{ id: 470, name: 'Magrider' },
+{ id: 480, name: 'Manned Turret' },
+{ id: 532, name: 'Medium Transport?' },
+{ id: 572, name: 'Mosquito' },
+{ id: 632, name: 'Peregrine' },
+{ id: 642, name: 'Eagle' },
+{ id: 643, name: 'Peregrine' },
+{ id: 671, name: 'Phantasm' },
+{ id: 685, name: 'Manned Field Turret' },
+{ id: 686, name: 'Osprey' },
+{ id: 687, name: 'Avenger' },
+{ id: 688, name: 'Orion' },
+{ id: 697, name: 'Prowler' },
+{ id: 707, name: 'Basilisk' },
+{ id: 710, name: 'Wraith' },
+{ id: 741, name: 'Router' },
+{ id: 759, name: 'Shuttle' },
+{ id: 784, name: 'Skyguard' },
+{ id: 819, name: 'Cerebus Turret' },
+{ id: 825, name: 'Shadow Turret' },
+{ id: 826, name: 'Spitfire Turret' },
+{ id: 847, name: 'Switchblade' },
+{ id: 849, name: 'Trap' },
+{ id: 860, name: 'Testobject?' },
+{ id: 862, name: 'Three Man Heavy Buggy?' },
+{ id: 865, name: 'Thunderer' },
+{ id: 896, name: 'Two Man Buggy?' },
+{ id: 898, name: 'Two Man Heavy Buggy?' },
+{ id: 900, name: 'Two Man Hover Buggy?' },
+{ id: 923, name: 'Vanguard' },
+{ id: 943, name: 'Sentry Turret' },
+{ id: 986, name: 'Vulture' },
+{ id: 997, name: 'Wasp' }
]
\ No newline at end of file
diff --git a/app/views/Avatar.svelte b/app/views/Avatar.svelte
index 255898b..97ff65d 100644
--- a/app/views/Avatar.svelte
+++ b/app/views/Avatar.svelte
@@ -14,9 +14,11 @@
export let params;
let iWeapons = [];
+ let vehicles = [];
let alert;
let avatar = {};
let iWeaponsKillsSum
+ let vehicleKillsSum
let kdByDate = [];
let url = params.id || avatar.id
let face;
@@ -58,7 +60,7 @@
async function get_iWeaponStats() {
try {
- const ids = [55, 56, 57, 140, 146, 175, 233, 299, 304, 324, 334, 345, 396, 406,
+ const ids = [55, 56, 57, 140, 146, 148, 175, 233, 299, 304, 324, 334, 345, 396, 406,
407, 411, 425, 429, 462, 468, 556, 587, 588, 589, 599, 673, 680, 701, 706, 714,
716, 730, 737, 817, 838, 845, 864, 888, 889, 890, 968, 969, 970];
const resp = await axios.get(weaponstatsUrl);
@@ -92,6 +94,16 @@
iWeapons = filteredWeapons;
iWeaponsKillsSum = iWeapons.reduce((total, weapon) => total + weapon.kills, 0);
+
+ const vIds = [46, 60, 62, 66, 67, 68, 79, 83, 84, 118, 135, 179, 199, 200, 239, 259, 294, 335, 338,
+ 353, 432, 441, 446, 459, 470, 480, 532, 572, 632, 642, 643, 671, 685, 686, 687, 688, 697,
+ 707, 710, 741, 759, 784, 819, 825, 826, 847, 849, 860, 862, 865, 896, 898, 900, 923, 943, 986, 997];
+ const filteredVehicles = stats.weapons.filter(weapon => {
+ return vIds.includes(weapon.weapon_id);
+ });
+
+ vehicles = filteredVehicles;
+ vehicleKillsSum = vehicles.reduce((total, weapon) => total + weapon.kills, 0);
// Reset alert message if needed
alert.message("");
} catch (e) {
@@ -163,7 +175,21 @@
{/each}
-
+Kills by Vehicle - Total: {vehicleKillsSum}
+
+
+ | Vehicle |
+ Kills |
+
+
+ {#each vehicles as veh}
+
+ | {getWeaponName(veh.weapon_id)} |
+ {veh.kills} |
+
+ {/each}
+
+
Daily Stats
diff --git a/app/views/Leaderboard.svelte b/app/views/Leaderboard.svelte
index 2b4460e..0dff3e0 100644
--- a/app/views/Leaderboard.svelte
+++ b/app/views/Leaderboard.svelte
@@ -167,6 +167,7 @@
+
Top 50 Characters Most Daily Kills