diff --git a/include/Engine/Core/EPickupSpawned.h b/include/Engine/Core/EPickupSpawned.h
new file mode 100644
index 00000000..acb6776e
--- /dev/null
+++ b/include/Engine/Core/EPickupSpawned.h
@@ -0,0 +1,18 @@
+#ifndef EPickupSpawned_h__
+#define EPickupSpawned_h__
+
+#include "Core/Event.h"
+#include "Core/EntityWrapper.h"
+
+namespace Events
+{
+
+struct PickupSpawned : Event
+{
+ EntityID PickupID;
+ EntityWrapper Spawner;
+};
+
+}
+
+#endif
\ No newline at end of file
diff --git a/include/Engine/Core/EPickupTaken.h b/include/Engine/Core/EPickupTaken.h
new file mode 100644
index 00000000..e06fd974
--- /dev/null
+++ b/include/Engine/Core/EPickupTaken.h
@@ -0,0 +1,19 @@
+#ifndef EPickupTaken_h__
+#define EPickupTaken_h__
+
+#include "Core/Event.h"
+#include "Core/EntityWrapper.h"
+
+namespace Events
+{
+
+struct PickupTaken : Event
+{
+ EntityID PickupID;
+ EntityWrapper Spawner;
+ EntityWrapper Player;
+};
+
+}
+
+#endif
\ No newline at end of file
diff --git a/include/Game/Systems/PickupSpawnSystem.h b/include/Game/Systems/PickupSpawnSystem.h
new file mode 100644
index 00000000..99dad0aa
--- /dev/null
+++ b/include/Game/Systems/PickupSpawnSystem.h
@@ -0,0 +1,17 @@
+#ifndef PickupSpawnSystem_h__
+#define PickupSpawnSystem_h__
+
+#include "Core/System.h"
+#include "Input/EInputCommand.h"
+#include "Systems/SpawnerSystem.h"
+#include "Events/ESpawnerSpawn.h"
+#include "Core/EPlayerSpawned.h"
+#include "Rendering/ESetCamera.h"
+#include "Core/ConfigFile.h"
+#include "Core/EPickupSpawned.h"
+
+class PickupSpawnSystem : public ImpureSystem
+{
+
+};
+#endif
diff --git a/resources/Schema/Components.xsd b/resources/Schema/Components.xsd
index ab46b0ea..445d96e7 100644
--- a/resources/Schema/Components.xsd
+++ b/resources/Schema/Components.xsd
@@ -29,4 +29,5 @@
+
\ No newline at end of file
diff --git a/resources/Schema/Components/PickupSpawn.xml b/resources/Schema/Components/PickupSpawn.xml
new file mode 100644
index 00000000..f8ce1225
--- /dev/null
+++ b/resources/Schema/Components/PickupSpawn.xml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/resources/Schema/Components/PickupSpawn.xsd b/resources/Schema/Components/PickupSpawn.xsd
new file mode 100644
index 00000000..7ab90407
--- /dev/null
+++ b/resources/Schema/Components/PickupSpawn.xsd
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+ Combined with a Spawner, defines a spawn point for a pickup
+
+
+
diff --git a/src/Game/Systems/PickupSpawnSystem.cpp b/src/Game/Systems/PickupSpawnSystem.cpp
new file mode 100644
index 00000000..3b758764
--- /dev/null
+++ b/src/Game/Systems/PickupSpawnSystem.cpp
@@ -0,0 +1 @@
+#include "Systems/PickupSpawnSystem.h"