diff --git a/core/out/production/classes/META-INF/galaxytrucker.core.main.kotlin_module b/core/out/production/classes/META-INF/galaxytrucker.core.main.kotlin_module
new file mode 100644
index 0000000000000000000000000000000000000000..8fb60192d378759239a3ecbf60eac8c8de446e9c
Binary files /dev/null and b/core/out/production/classes/META-INF/galaxytrucker.core.main.kotlin_module differ
diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/OverworldDAO.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/OverworldDAO.java
index e17195dc40979397e32da33452db36d5a5f5fc38..fe6702a08e0923bd37a78987114d6fc25a48ce35 100644
--- a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/OverworldDAO.java
+++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/OverworldDAO.java
@@ -32,4 +32,12 @@ public class OverworldDAO extends ObjectDAO<Overworld> {
     public void remove(Overworld o) throws OverworldNotFoundException {
 
     }
+
+    /** Get the overworld of a designated user
+     * @param username - the user whose world map to get
+     * @return the user's world map
+     * @throws OverworldNotFoundException if the overworld couldn't be found */
+    public Overworld getOverworldByUser(String username) throws OverworldNotFoundException{
+        return null;
+    }
 }
diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/RoomDAO.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/RoomDAO.java
index 08986371083b76707cabcd815f2016b2db4b1a89..9fbbb566c1e7e5cbd9bb5934b02fd19f7ef73249 100644
--- a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/RoomDAO.java
+++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/RoomDAO.java
@@ -3,10 +3,14 @@ package com.galaxytrucker.galaxytruckerreloaded.Server.Persistence;
 import com.galaxytrucker.galaxytruckerreloaded.Model.ShipLayout.Room;
 import com.galaxytrucker.galaxytruckerreloaded.Server.Exception.DuplicateRoomException;
 import com.galaxytrucker.galaxytruckerreloaded.Server.Exception.RoomNotFoundException;
+import com.j256.ormlite.dao.Dao;
 
 /** This class manages room objects in the database */
 public class RoomDAO extends ObjectDAO<Room> {
 
+    /** RoomDAO */
+    private Dao<Room,String> roomDAO;
+
     /**
      * Add a new room to the database
      *
@@ -24,7 +28,7 @@ public class RoomDAO extends ObjectDAO<Room> {
      * @param r - the room to edit
      * @throws RoomNotFoundException if the room cannot be found in the database
      */
-    public void edit(Room r) throws RoomNotFoundException {
+    public void update(Room r) throws RoomNotFoundException {
 
     }
 
diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/TraderDAO.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/TraderDAO.java
index 473bcedef29fd5534964266792584f991b9c07b0..0388a8396f3595af814f0fb4c64064370a4e843e 100644
--- a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/TraderDAO.java
+++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/TraderDAO.java
@@ -3,12 +3,16 @@ package com.galaxytrucker.galaxytruckerreloaded.Server.Persistence;
 import com.galaxytrucker.galaxytruckerreloaded.Model.Map.Trader;
 import com.galaxytrucker.galaxytruckerreloaded.Server.Exception.DuplicateTraderException;
 import com.galaxytrucker.galaxytruckerreloaded.Server.Exception.TraderNotFoundException;
+import com.j256.ormlite.dao.Dao;
 
 /**
  * This class handles trader objects in the database
  */
 public class TraderDAO extends ObjectDAO<Trader> {
 
+    /** TraderDAO */
+    private Dao<Trader,String> traderDAO;
+
     /**
      * Add a new trader to the database
      *
@@ -26,7 +30,7 @@ public class TraderDAO extends ObjectDAO<Trader> {
      * @param t - the trader to edit
      * @throws TraderNotFoundException if the trader cannot be found in the database
      */
-    public void edit(Trader t) throws TraderNotFoundException {
+    public void update(Trader t) throws TraderNotFoundException {
 
     }
 
diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/UserDAO.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/UserDAO.java
index 5f8be49d8033a6bd80789c37db6706b2ce00840d..45c79cb5ee04d0d9d1c60c4c4f2c7ff8bf838ae9 100644
--- a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/UserDAO.java
+++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/UserDAO.java
@@ -11,7 +11,7 @@ public class UserDAO extends ObjectDAO<User> {
     /**
      * UserDAO
      */
-    private Dao<User, String> userDao;
+    private Dao<User, String> userDAO;
 
     /**
      * Constructor
diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/WeaponDAO.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/WeaponDAO.java
index b9081f7bd7a08cb9b338ac780033156c951c431f..01872911dafc60294a4f189ffad06c05ceea6d29 100644
--- a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/WeaponDAO.java
+++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Persistence/WeaponDAO.java
@@ -3,12 +3,16 @@ package com.galaxytrucker.galaxytruckerreloaded.Server.Persistence;
 import com.galaxytrucker.galaxytruckerreloaded.Model.Weapons.Weapon;
 import com.galaxytrucker.galaxytruckerreloaded.Server.Exception.DuplicateWeaponException;
 import com.galaxytrucker.galaxytruckerreloaded.Server.Exception.WeaponNotFoundException;
+import com.j256.ormlite.dao.Dao;
 
 /**
  * This class manages weapons in the database
  */
 public class WeaponDAO extends ObjectDAO<Weapon> {
 
+    /** WeaponDAO */
+    private Dao<Weapon,String> weaponDAO;
+
     /**
      * Add a new weapon to the database
      *
@@ -26,7 +30,7 @@ public class WeaponDAO extends ObjectDAO<Weapon> {
      * @param w - the weapon to edit
      * @throws WeaponNotFoundException if the weapon doesn't exist in the database
      */
-    public void edit(Weapon w) throws WeaponNotFoundException {
+    public void update(Weapon w) throws WeaponNotFoundException {
 
     }
 
diff --git a/desktop/out/production/resources/badlogic.jpg b/desktop/out/production/resources/badlogic.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..4390da6e0f6d041590c6313d2b4c978abc00a342
Binary files /dev/null and b/desktop/out/production/resources/badlogic.jpg differ
diff --git a/doc/Architekturbeschreibung.tex b/doc/Architekturbeschreibung.tex
index 9bf7a248f869cd54641a946992b0006e4fe92deb..44cdcd2f3dc81bd600c9317e6ca2b973c5ebd1a1 100644
--- a/doc/Architekturbeschreibung.tex
+++ b/doc/Architekturbeschreibung.tex
@@ -16,12 +16,7 @@
 \begin{document}
 \newcommand\documentTitle{Architekturbeschreibung}
 
-\begin{minipage}[H]{\textwidth}
-  \vfill
-  \centering
-  \includegraphics[scale=0.2]{Logo/Logo.PNG}
-  \end{minipage}
-  \vfill
+
 
 \swpdocument{Karsten Hölscher}{31. Mai 2020}{1.0}%
             {Fabian Kehlenbeck & fkehlenb@tzi.de}%
@@ -1217,6 +1212,23 @@ Es werden alle Daten und Befehle vom Frontend (Interface/View) ins Backend weite
 \end{figure}
 
 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\section{Pakete} \label{sec:pakete}
+
+\subsection{Persistenz}
+
+Das folgende Diagramm beschreibt unsere Persistenz. Persistenz Klassen werden dazu genutzt daten in der Datenbank zu speichern, verändern und löschen. Zu jedem im Spiel vorkommenden Objekt, bzw zu der Klasse aus dem das Objekt stammt, muss es ein so gennantes Data Access Object geben (kurz DAO), um diese in der Datenbank verwalten zu können.
+Da viele von den DAOs die gleichen Funktionen haben, werden sie alle von einer Oberklasse ObjectDAO erben. ObjectDAO hat in sich drin auch eine Variable, welche die Verbundung zur Datenbank herstellt. Hiermit können so auch alle anderen DAOs auf die Datenbank zugreifen. Da wir ORMLite benutzen, wird auch jede unterklasse eine Variable des Typs Dao haben, welche zur abspeicherung der Daten verwendet wird. Um Daten abzuspeichern, wird die Methode persist(T) benutzt. Um daten zu löschen remove(T). Da manche Objekte in der Datenbank nicht verändert werden müssen (z.B. die Weltkarte), wird es keine Methode in der Oberklasse zum Updaten der Daten geben, sondern in jeder Unterklasse welche diese benötigt.
+
+\begin{figure}[h!]
+\begin{center}
+  \includegraphics[width=\linewidth]{UML/PersistencePackage.pdf}
+    \caption{Persistenz}
+\end{center}
+\end{figure}
+
+
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \section{Modulsicht} \label{sec:modulsicht}
 {\itshape Diese Sicht beschreibt den statischen Aufbau des Systems mit Hilfe von
@@ -1313,15 +1325,6 @@ anhand der Strategien erläutert werden.}
 \end{center}
 \end{figure}
 
-\subsection{Persistenz}
-
-\begin{figure}[H]
-\begin{center}
-  \includegraphics[width=\linewidth]{../GT_Modulsicht/src/Persistenz.pdf}
-    \caption{Das Datenmodell}
-\end{center}
-\end{figure}
-
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \section{Datensicht} \label{sec:datensicht}
diff --git a/doc/UML/PersistencePackage.drawio b/doc/UML/PersistencePackage.drawio
new file mode 100644
index 0000000000000000000000000000000000000000..7a5d0f12519d3ac49c0a4feb20b5c7ef7be05aff
--- /dev/null
+++ b/doc/UML/PersistencePackage.drawio
@@ -0,0 +1 @@
+<mxfile host="app.diagrams.net" modified="2020-05-31T14:30:53.603Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36" etag="3Gld44FJTPROcGOVfXdR" version="13.1.11" type="device"><diagram id="VoNF1Vp0fhK8RiTlHOmJ" name="Page-1">7V1tc9soEP41nul9iEcIyS8fY6ftzV07TevctP1ILGKrkYVHJnXSX38gIVkCbOEU2ZmGTmZq1isk2IflYVnhHpyuHt9naL38SCKc9HwveuzBq57vg8EQsv+45KmQjANQCBZZHAmlnWAW/8JC6AnpQxzhTUOREpLQeN0Uzkma4jltyFCWkW1T7Y4kzbuu0QIrgtkcJar0axzRZSEdhd5O/jeOF8vyzsAT36xQqSwEmyWKyLYmgm97cJoRQotPq8cpTnjnlf1SXPduz7fVg2U4pSYX/PP587fbd/f3dz/+HfwEl/H7mxBdiFp+ouRBNFg8LH0qe4A995p/5F2Hsx6c3JGUzsT3gJU3azSP08UNWXOBxyQU3ZadBUIhqHoJCsE12cQ0JikTJfiOfTNZ0lUi6hSPhTOKH/e2F1S9yOCHyQrT7ImpiAv80hICeaA0xHZnRwBKnC1rRgyhECIBnkVV+a5/2QfRxUd0t69096fbHwy2V5efev4g4Z1wwz4saNUFdUNs41WCUqwxAUriBe/IOeub3Ea852KG4kvxBeXGmcyXcRJ9QE/kgbd0Q9H8vixNliSLf7FqUWkC9nVGxYD0Bw2NGb+SibklM7xhOtelWYAk+ogeG4of0IYKwZwkCVpv4tuqGSuULeJ0QiglK6FkAQjhSALCUAUC9DQ4qMayDgfidl+Y9VC6YE2o7hcMmvergFgHnq+5H+vlxu1QwoyZIoon5CGNNgr6qqY+H5BQAeQFBx15yOasfNmb+r1L5ltX/R9+OOiTbJXEFPc3D+s1yWh/WjhdNohnxRUyZJnRaA6ljNzjKUkIw+ZVSgoMx0kiiUoYC3+gB7FwNx9ynatgJ/kiepKLCLv2Lsnd7TKOIpxyABKKmN/Jn41Da03ilOZdHU7YHzPI1OuHvZA9+JSVwa7M/rh6RlmDWVtQnAMPMyhv8YaaonS/R1Ch+9RERBtSZeRYc1hB+/yQxLntChtXbv9ZBl4xUyVYnlIugGJ1qFodaiycoFuc1OaZrNCVLH8u44a+mXFHHdk21Nh2wpuFs028oW9u/uIegCkQVg1HGASFR+ZKGV6xMSbpuNFvFSADw3kq6IquwFH78MdpdMl5NivdJoTTggkTCd4ABkXxXcxvnPd7jeThx5h+42LWz0Xpu1Din68e64WnspCyhn2rF77vauDF3WV5qbyueG4cKWxfYhG7yW9vrwhfy+jRAh8yLtQbt84CSgtnOEE0/tl8tgOs45qDd8c44FBiHEBCRNEmcVV9jSBVVDHffRUVjVYqskZHxqcCHKwh7sLrex48DDtWuMZZzBrI+bVtSJXd3Iqp8GSYCrywAQUoexljTI1lTI1PiqnyubvGVN2FVQ6txYmBuhNjMPTb3Fhe6hKIoSEQg9MBEUhADJ8JxJG0Dqzm11MB0SDYYsW5jcbDBhg9AMzgKM2pYwja4Khxi51DdPTyfKUvQVRGlilEB0CCKDytrxwoCJ0t43UenXLBKDtRSb89GOWPdcGoQ0HJPyMYNVTQlwejBAL3RqMiRPpXiJQBVI5Ytnib0YytCvcGU93atG1tOtDjeH9kSgvbziJTBktTF5l6pnE1kSmtcbuKTOlWgfXIFB/ih4JTD+uIOapWNTaTcpXJ038bnL0pHIbQL5yIPualVOtci1X0acJeWvQND0yIvwU/oPqWa851qCNC3REhCFWzQ93ubMVW/lwiBFQHyJnQugKhKRcqYOvY0O+7rMInHLVRpwNvZ3SoRK7jQ12YV7dVpzNvV4TI14WO6oyoGOgGnKhdUbAcjaJzGnZRpdvf06FKjibZ299TnQanwo7mdEdzAl3ykZbmyGHuP4/mQNWrcZrzICBoSnI4ZB3F+X1vBT09kl8KxYG+ozjdmffcFAeqqYhNisOHuQHBaVNbYMpViqBPila4GfgpnImeErVVXagdqt3xqC6ga8qjxl3xqMDAM1nY2S0/H5Ml1fdglVPArwN9bzjqnTfJoKSdL2kHF0o7uHJw0XgHV+J7fnDibBedG7UIRW3myknT73zT/LsToieQ0DN6Lnrk/LvwtOgBar73J+awtyRLIrcq7FlbFY7Dpp3BSDOFhbpV4SsIfqt56XxVSOo4NF0aVuB160ML0aw9OX8H1oc6CHe2PgRq9pJiZbc+fK55detDnXm7Wh8CNTuouT6sxrpBcNtIl020lZ4uR6DmXJwvsQs23YpOB7bOIuO+6ku+ELJyHMgiB5LeC4Ca97NfawKAr0+FZGMwOi42fpNf4diPhVf1js6HPHECgEuI7NC8546O+20pkcVAN4iPtyuWr/aqis5p2EXV+RMA1HjPV4zWJHVEpzuiE+jMriMer4DoQH2wZ1uB0JToFLB1RMfCZtvxYR4TMNnzWS7M06F5dURHZ97O0gDawjzFQDcgOu2KguhoFJ3TsIsq0xmvM6IT6A67kaxs+xCA3qEd+uLudrbTT/cu/jgc98e1f81tT9+XdiuN38yXGYu8+97xtmcJBhft64wEDyQTB6NQdQmvNdqnP4UvExA0pcAcso4AW1i0+0cT4NNG+tyhfB2a9+yRvrZj+fgwN6C/bWqC/Cpqzl3YxdPZY3yBwXrZzrFDYVCjv/mhaqbnDvVHw6DXyFIF3rD3jCzVjs9pK7vuBeUejgcHKbl8gJApJR973H67f1K18mFwXeclqi+qTTO8dQTdHkEPpTMkq3wLdzDRBdC/qDYXEDQl6ByyjqBbSB46+kW10x5NBNRwgiPo1sx77sOJQNuLanyYGxD0NjVB0BU15y7s4unsxw0F6pbHdQElnO7/TYUaBT/W9nv5T+VJtks2fc2Yzfk9txla57Zl0yuO7DGO6nDpQz/QAnWO+3hLsOLul3YKWrD7vSL49n8=</diagram></mxfile>
\ No newline at end of file
diff --git a/doc/UML/PersistencePackage.pdf b/doc/UML/PersistencePackage.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..e1aea965a76a3a7d488b3b6505f09bc637ec231b
Binary files /dev/null and b/doc/UML/PersistencePackage.pdf differ
diff --git a/doc/swp-preamble.tex b/doc/swp-preamble.tex
index 1e03c7d9cb5986834e82663daede1b46afde1b26..f18596e67c6407783c23fd321463a39cc12b7f11 100644
--- a/doc/swp-preamble.tex
+++ b/doc/swp-preamble.tex
@@ -116,6 +116,12 @@
     \end{center}
   \end{minipage}
   \vfill
+\begin{minipage}[H]{\textwidth}
+  \vfill
+  \centering
+  \includegraphics[scale=0.2]{Logo/Logo.PNG}
+  \end{minipage}
+  \vfill
   \begin{minipage}[H]{\textwidth}
     \begin{center}
       \sffamily