diff --git a/media/attribution.js b/media/attribution.js
index 3300122d..5bbb75d4 100644
--- a/media/attribution.js
+++ b/media/attribution.js
@@ -1152,12 +1152,32 @@ const attributionData = {
         {
             prefix: "./media/buildings/sports-fields/",
             files: [
-                { name: "football-field.svg", source: "https://en.wikipedia.org/wiki/File:AmFBfield.svg" },
+                { name: "football-field.svg", source: "https://commons.wikimedia.org/wiki/File:AmFBfield.svg" },
             ],
             authors: [
                 "xyzzy-n"
             ]
         },
+        {
+            prefix: "./media/buildings/sports-fields/",
+            files: [
+                { name: "badminton-court.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+                { name: "basketball-court.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+                { name: "bocce-court.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+                { name: "bowling-lane.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+                { name: "ice-hockey.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+                { name: "netball-court.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+                { name: "olympic-swimming-pool.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+                { name: "snooker-table.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+                { name: "squash-court.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+                { name: "table-tennis.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+                { name: "tennis-court.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+                { name: "volleyball-court.svg", source: "https://commons.wikimedia.org/wiki/File:Comparison_sport_playing_areas.svg", nsfw: false },
+            ],
+            authors: [
+                "cmglee"
+            ],
+        },
         {
             prefix: "./media/cities/",
             files: [
@@ -15330,6 +15350,10 @@ const attributionData = {
             "name": "Xyzyy n",
             "url": "https://en.wikipedia.org/wiki/User:Xyzzy_n"
         },
+        "cmglee": {
+            "name": "Cmglee",
+            "url": "https://commons.wikimedia.org/wiki/User:Cmglee"
+        },
     }
 }
 
diff --git a/media/buildings/sports-fields/badminton-court.svg b/media/buildings/sports-fields/badminton-court.svg
new file mode 100644
index 00000000..9c1f903b
--- /dev/null
+++ b/media/buildings/sports-fields/badminton-court.svg
@@ -0,0 +1,12 @@
+
+
+
diff --git a/media/buildings/sports-fields/basketball-court.svg b/media/buildings/sports-fields/basketball-court.svg
new file mode 100644
index 00000000..c460e313
--- /dev/null
+++ b/media/buildings/sports-fields/basketball-court.svg
@@ -0,0 +1,32 @@
+
+
+
diff --git a/media/buildings/sports-fields/bocce-court.svg b/media/buildings/sports-fields/bocce-court.svg
new file mode 100644
index 00000000..2bfba23f
--- /dev/null
+++ b/media/buildings/sports-fields/bocce-court.svg
@@ -0,0 +1,9 @@
+
+
+
diff --git a/media/buildings/sports-fields/bowling-lane.svg b/media/buildings/sports-fields/bowling-lane.svg
new file mode 100644
index 00000000..9b9d4bde
--- /dev/null
+++ b/media/buildings/sports-fields/bowling-lane.svg
@@ -0,0 +1,28 @@
+
+
+
diff --git a/media/buildings/sports-fields/ice-hockey.svg b/media/buildings/sports-fields/ice-hockey.svg
new file mode 100644
index 00000000..690d4cb7
--- /dev/null
+++ b/media/buildings/sports-fields/ice-hockey.svg
@@ -0,0 +1,8 @@
+
+
+
diff --git a/media/buildings/sports-fields/netball-court.svg b/media/buildings/sports-fields/netball-court.svg
new file mode 100644
index 00000000..82f18f15
--- /dev/null
+++ b/media/buildings/sports-fields/netball-court.svg
@@ -0,0 +1,11 @@
+
+
+
diff --git a/media/buildings/sports-fields/olympic-swimming-pool.svg b/media/buildings/sports-fields/olympic-swimming-pool.svg
new file mode 100644
index 00000000..efaf43b4
--- /dev/null
+++ b/media/buildings/sports-fields/olympic-swimming-pool.svg
@@ -0,0 +1,7 @@
+
+
+
diff --git a/media/buildings/sports-fields/snooker-table.svg b/media/buildings/sports-fields/snooker-table.svg
new file mode 100644
index 00000000..ce4fa68b
--- /dev/null
+++ b/media/buildings/sports-fields/snooker-table.svg
@@ -0,0 +1,15 @@
+
+
+
diff --git a/media/buildings/sports-fields/squash-court.svg b/media/buildings/sports-fields/squash-court.svg
new file mode 100644
index 00000000..50de7bd7
--- /dev/null
+++ b/media/buildings/sports-fields/squash-court.svg
@@ -0,0 +1,9 @@
+
+
+
diff --git a/media/buildings/sports-fields/table-tennis.svg b/media/buildings/sports-fields/table-tennis.svg
new file mode 100644
index 00000000..01102325
--- /dev/null
+++ b/media/buildings/sports-fields/table-tennis.svg
@@ -0,0 +1,11 @@
+
+
+
diff --git a/media/buildings/sports-fields/tennis-court.svg b/media/buildings/sports-fields/tennis-court.svg
new file mode 100644
index 00000000..aace8737
--- /dev/null
+++ b/media/buildings/sports-fields/tennis-court.svg
@@ -0,0 +1,12 @@
+
+
+
diff --git a/media/buildings/sports-fields/volleyball-court.svg b/media/buildings/sports-fields/volleyball-court.svg
new file mode 100644
index 00000000..2f317ada
--- /dev/null
+++ b/media/buildings/sports-fields/volleyball-court.svg
@@ -0,0 +1,11 @@
+
+
+
diff --git a/presets/buildings.js b/presets/buildings.js
index 35999361..7c12f947 100644
--- a/presets/buildings.js
+++ b/presets/buildings.js
@@ -179,7 +179,19 @@ function makeBuildings() {
     results.push(
         makeHeight(
             [
+                ["badminton-court", 13.4, "meters"],
+                ["basketball-court", 28, "meters"],
+                ["bocce-court", 27.5, "meters"],
+                ["bowling-lane", 23.8, "meters"],
                 ["football-field", 160, "feet"],
+                ["ice-hockey", 30, "meters"],
+                ["netball-court", 30.5, "meters"],
+                ["olympic-swimming-pool", 25, "meters"],
+                ["snooker-table", 3.7, "meters"],
+                ["squash-court", 9.8, "meters"],
+                ["table-tennis", 2.79, "meters"],
+                ["tennis-court", 23.8, "meters"],
+                ["volleyball-court", 21.6, "meters"],
             ],
             "Sports Fields",
             "",