diff --git a/web/weaponplanner.html b/web/weaponplanner.html
index 2f36116..81565db 100644
--- a/web/weaponplanner.html
+++ b/web/weaponplanner.html
@@ -165,9 +165,19 @@
$.getJSON(DATA_PATH + "weapon/" + weapon_id + "_tree.json",
function(data) {
- all_components = Object.keys(
- data[data.length-1]["components"]);
+ // first pass: collect all components and sort them
+ var all_dict = {};
+ for (i=0; i