diff --git a/EXE/FLHook.dll b/EXE/FLHook.dll
new file mode 100644
index 00000000..357089bb
Binary files /dev/null and b/EXE/FLHook.dll differ
diff --git a/EXE/FLHook.ini b/EXE/FLHook.ini
new file mode 100644
index 00000000..ca99bc17
--- /dev/null
+++ b/EXE/FLHook.ini
@@ -0,0 +1,396 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; general settings
+; AntiDockKill: anti-dockkilling time in ms, starts when player has completely undocked and is able to fly freely.
+; while being dockkill-protected, the player can't be damaged by other players and can't damage
+; other players himself
+; AntiF1: anti-f1 time in ms. f1 pushing will be delayed for this amount of time if player is in space.
+; the client won't see what happens while delaying. (set to 0 to disable)
+; DisconnectDelay: similar to anti-f1, applies when player disconnects while being in space. the player's ship will
+; remain in space for this amount of time when he disconnects. within this period he can't
+; reconnect to the server("your account is already in use" will be displayed)
+; EnableDieMsg: suppress the "Player das died: XXX" messages and replace with improved FLHook death messages
+; DisableCharfileEncryption: disables charfile-encryption(will be saved in plain ascii-text). this may lead to some
+; problems with programs like ioncross!
+; ChangeCruiseDisruptorBehaviour:
+; set it to yes and cruise disruptors will no longer affect the engine kill
+; DisableNPCSpawns: disables all npc-spawns while the serverload is bigger than this value. this does not affect
+; mission npcs! it allows you to dynamically adjust the number of npcs (set to 0 to disable)
+; ReservedSlots: sets the number of reserved slots
+; TorpMissileBaseDamageMultiplier: sets the damage multiplier when a player missile/torpedo hits a base
+; MaxGroupSize: change the maximum group size(default is 8)
+[General]
+AntiDockKill=4000
+AntiF1=0
+DisconnectDelay=10000
+EnableDieMsg=yes
+DisableCharfileEncryption=yes
+ChangeCruiseDisruptorBehaviour=yes
+DisableNPCSpawns=0
+ReservedSlots=0
+TorpMissileBaseDamageMultiplier=1.0
+MaxGroupSize=8
+PersistGroup=no
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; Plugins settings
+; LoadAllPlugins: Load all plugins on starup (ignoring the list below)
+; plugin: A list of plugins which should be loaded on startup if LoadAllPlugins is set to no. One line per plugin.
+
+[Plugins]
+LoadAllPlugins=yes
+
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; log settings
+; Debug: general debug logging, creates timestamped debug logs "flhook_logs/debug/"
+; DebugMaxSize: max size of debug log files (in MB)
+; LogAdminCommands: log all admin commands
+; LogAdminCommands: log all user commands
+; LogConnects: log all connects
+; LogPerformanceTimers: log all performance timers
+; TimerThreshold: sets the reporting threshold for the performance timers, time in ms
+[Log]
+Debug=yes
+DebugMaxSize=100
+LogAdminCommands=yes
+LogSocketCommands=yes
+LogLocalSocketCommands=yes
+LogUserCommands=yes
+LogConnects=yes
+LogPerformanceTimers=yes
+TimerThreshold=100
+
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; kick settings
+; AntiBaseIdle: time in seconds after which a player will be kicked for idling on a base/planet, no matter
+; if he's active or not (set to 0 to disable)
+; AntiCharMenuIdle: time in seconds after which a player will be kicked for idling in charmenu (set to 0 to disable)
+; PingKick: maximum average ping in ms, higher ping results in kick (set to 0 to disable)
+; PingKickFrame: time-frame in seconds in which the average ping is calculated (f.e. PingKickFrame=30 -> calculate
+; average ping by the pingdata of the last 30 seconds)
+; FluctKick: maximum average ping fluctuation, higher fluctuation results in kick (set to 0 to disable)
+; LossKick: maximum average loss, higher loss results in kick (set to 0 to disable)
+; LossKickFrame: time-frame in seconds in which the average loss is calculated.
+; LagKick: maximum average lag, higher lag results in kick (set to 0 to disable)
+; LagDetectionFrame: frame in position updates in which the average lag is calculated.
+; LagDetectionMinimum: minimum difference in % after which lag is detected, the higher this setting the less lag will be detected
+; KickThreshold: the server load must exceed this number before players are kicked for have high lag/loss/ping
+[Kick]
+AntiBaseIdle=0
+AntiCharMenuIdle=0
+PingKick=0
+PingKickFrame=120
+FluctKick=0
+LossKick=0
+LossKickFrame=120
+LagKick=0
+LagDetectionFrame=50
+LagDetectionMinimum=50
+KickThreshold=0
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; style settings, these settings affect appearance of text messages sent to a client
+; DeathMsgStyle: style of death msgs occuring in foreign systems, this is the "data" value of a TRA xml-node
+; (explanation in readme.txt)
+; DeathMsgStyleSys: style of death msgs occuring in the system the player is currently in
+; DeathMsgTextPlayerKill:
+; text to be displayed when a player killed another one. %victim will be replaced by the name
+; of the victim etc. set it to nothing to disable the message.
+; DeathMsgTextSelfKill:
+; text to be displayed when a player killed him-/herself
+; DeathMsgTextNPC: text to be displayed when a player was killed by an npc
+; DeathMsgTextSuicide:
+; text to be displayed when a player committed suicide
+; DeathMsgTextAdminKill:
+; text to be displayed when an admin kills a player with the "kill" command
+; KickMsg: this is the xml-string of the text to be displayed when a player is kicked for a certain reason.
+; %reason will be replaced by the reason.
+; KickMsgPeriod: this is the time period in ms during which the reason is shown before the player gets disconnected
+; UserCmdStyle: style of the user-command replies
+; AdminCmdStyle: style of the admin-command replies
+[Style]
+DeathMsgStyle=0x19198C01
+DeathMsgStyleSys=0x1919BD01
+DeathMsgTextPlayerKill=Death: %victim was killed by %killer (%type)
+DeathMsgTextSelfKill=Death: %victim killed himself (%type)
+DeathMsgTextNPC=Death: %victim was killed by an NPC
+DeathMsgTextSuicide=Death: %victim committed suicide
+DeathMsgTextAdminKill=Death: %victim was killed by an admin
+KickMsg=You will be kicked. Reason: %reason
+KickMsgPeriod=5000
+UserCmdStyle=0x00FF0001
+AdminCmdStyle=0x00FF0001
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; socket settings
+; Activated: must be set in order to enable socket listening
+; Port: port that FLHook should listen to (ascii)
+; WPort: port that FLHook should listen to (unicode), you will also need to send your commands in unicode
+; EPort: port that FLHook should listen to (ascii,encrypted), you will also need to send your commands encrypted
+; EWPort: port that FLHook should listen to (unicode,encrypted), you will also need to send your commands encrypted and in unicode
+; Key: key to use for the blowfish encryption
+; PassX: password
+; RightsX: rights for that password (see the rights section in readme.txt)
+; you can have multiple passwords with their distinctive right settings
+; they must be numbered serially with passX/rightX
+[Socket]
+Activated=yes
+Port=1919
+WPort=1920
+EPort=1921
+EWPort=1922
+Key=SomeRandomKey000
+Pass0=test
+Rights0=superadmin
+Pass1=low
+Rights1=cash,beam
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; user commands (yes = enabled)
+; SetDieMsg: enable/disable "/set diemsg"
+; SetDieMsgSize: enable/disable "/set diemsgsize"
+; SetChatFont: enable/disable "/set chatfont"
+; Ignore: enable/disble ignore commands
+; MaxIgnoreListEntries: maximum number of ignorelist-entries allowed for a player
+; Autobuy: enable/disable "/autobuy"
+; Ping: enable/disable "/ping" and "/pingtarget"
+; Help: enable/disable "/help"
+; DefaultLocalChat: if enabled forces messages sent in system chat to be local unless explicitly overridden.
+[UserCommands]
+SetDieMsg=yes
+SetDieMsgSize=yes
+SetChatFont=yes
+Ignore=yes
+MaxIgnoreListEntries=30
+AutoBuy=no
+Ping=yes
+Help=no
+DefaultLocalChat=no
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; chat settings
+; SuppressX: chat-text entered by players starting with this string will be suppressed but still shown in
+; in the eventmode. this simplifies coding a custom ingame-dialogsystem.
+[Chat]
+;Suppress0=/chat
+;Suppress1=/etc
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; nopvp settings
+; SystemX: disable pvp in this system(players can't damage other players)
+[NoPVP]
+; Causes "WARNING: get_system(FP7_system) failed" messages in server log
+System0=FP7_system
+System1=start
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; MultiKillMessages will be displayed whenever a player has made a certain amount of kills in a row
+; Activated: enable/disable MultiKillMessages
+; Style: style of MultiKillMessages
+; =: message will be displayed in the system and only to players which have diemsg set to
+; system/all.
+[MultiKillMessages]
+Activated=yes
+Style=0x1919BD01
+5=%player is on a rampage
+10=%player runs amok
+15=%player is godlike
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; you can enter ip/host bans here(a message will be printed to flhook_kicks.log when a ban matches)
+; BanAccountOnMatch: player's account will be banned if set to yes and one of the bans below matches(this setting must
+; be in the first line of [Bans]!)
+; simply append ip or hostname bans in this section(without the ';' at the beginning!). you may use wildcards(?,*).
+[Bans]
+BanAccountOnMatch=No
+;13.37.*.*
+;*.lamer-isp.net
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; names settings
+; this is used by the "beam" command and allows you to specify shortcuts
+[Names]
+London = br01_01_base
+Southampton = br01_02_base
+Suffolk = br01_03_base
+Waterloo = br01_04_base
+Canterbury = br01_05_base
+Thames = br01_06_base
+Kensington = br01_07_base
+Trafalgar = br01_08_base
+Newgate = br02_01_base
+Birmingham = br02_02_base
+Sheffield = br02_03_base
+Liverpool = br02_04_base
+Kingston = br02_05_base
+Cambridge = br03_01_base
+Cambridge Research = br03_02_base
+Norfolk = br03_03_base
+Cardiff = br03_04_base
+Leeds = br04_01_base
+Stokes = br04_02_base
+York = br04_03_base
+Glasgow = br04_04_base
+LD-14 = br04_05_base
+Durham = br04_06_base
+Maghera = br04_07_base
+Hood = br05_01_base
+Glorious = br05_02_base
+Graves = br05_03_base
+Essex = br05_04_base
+Arranmore = br05_05_base
+Shetland = br06_01_base
+Aberdeen = br06_02_base
+Islay = br06_03_base
+Perth = br06_04_base
+Castlehill = br06_05_base
+Scapa Flow = br06_06_base
+Sprague = bw01_01_base
+Freeport 1 = bw01_02_base
+Rugen = bw01_03_base
+Douglas = bw01_04_base
+Baxter = bw01_05_base
+Cadiz = bw02_01_base
+Ronneburg = bw02_02_base
+Freistadt = bw03_01_base
+Breisen = bw03_02_base
+Elbich = bw03_03_base
+Solarius = bw04_01_base
+Freital = bw04_02_base
+Naha = bw05_01_base
+Helgoland = bw05_02_base
+Yanagi = bw05_03_base
+Kurile = bw06_01_base
+Atka = bw06_02_base
+Hawaii = bw07_01_base
+Ogashawa = bw07_02_base
+Cali = bw08_01_base
+Tau-31 Gate = bw08_02_base
+Java = bw08_03_base
+Nago = bw09_01_base
+Shinkaku = bw09_02_base
+Freeport 6 = bw09_03_base
+Harris = bw10_01_base
+Holman = bw10_02_base
+Freeport 10 = ew01_01_base
+Falkland = ew01_02_base
+Ruiz = ew02_01_base
+Leon = ew03_01_base
+Freeport 5 = ew03_02_base
+Freeport 9 = ew04_01_base
+Primus = ew06_01_base
+Gammu = ew06_02_base
+Malta = hi01_01_base
+Crete = hi02_01_base
+Tripoli = hi02_02_base
+Pacifica = iw01_01_base
+Freeport 2 = iw01_02_base
+Barrow = iw02_01_base
+Dawson = iw02_02_base
+Freeport 4 = iw03_01_base
+Mactan = iw03_02_base
+Curacao = iw04_01_base
+Montezuma = iw04_02_base
+Ames = iw05_01_base
+Nome = iw05_02_base
+Leiden = iw06_01_base
+Padua = iw06_02_base
+Tokyo = ku01_01_base
+Narita = ku01_02_base
+Yokohama = ku01_03_base
+Roppongi = ku01_04_base
+Shinagawa = ku01_05_base
+Shinjuku = ku01_06_base
+Kabukicho = ku01_07_base
+Fuchu = ku02_01_base
+Myoko = ku02_02_base
+Deshima = ku02_03_base
+Junyo = ku02_04_base
+Ohashi = ku02_05_base
+Kyushu = ku03_01_base
+Tsushima = ku03_02_base
+Nagumo = ku03_03_base
+Nansei = ku03_04_base
+Kagoshima = ku03_05_base
+Honshu = ku04_01_base
+Osaka = ku04_02_base
+Yukawa = ku04_03_base
+Kansai = ku04_04_base
+Aomori = ku04_05_base
+Akita = ku04_06_base
+Matsumoto = ku05_01_base
+Ainu = ku05_02_base
+Chugoku Gate = ku05_03_base
+Sapporo = ku05_04_base
+Kyoto = ku06_01_base
+Ryuku = ku07_01_base
+Heavens = ku07_02_base
+Manhattan = li01_01_base
+Pittsburgh = li01_02_base
+Missouri = li01_03_base
+Benford = li01_04_base
+Ithaca = li01_05_base
+Trenton = li01_06_base
+Norfolk Shipyard = li01_07_base
+Newark = li01_08_base
+West Point = li01_09_base
+Detroit = li01_10_base
+Fort Bush = li01_11_base
+Buffalo = li01_12_base
+Rochester = li01_13_base
+Baltimore = li01_14_base
+Los Angeles = li02_01_base
+California Minor = li02_02_base
+Yukon = li02_03_base
+Willard = li02_04_base
+San Diego = li02_05_base
+Alcatraz = li02_06_base
+Denver = li03_01_base
+RioGrande = li03_02_base
+Ouray = li03_03_base
+Pueblo = li03_04_base
+Houston = li04_01_base
+Huntsville = li04_02_base
+Mississippi = li04_03_base
+Beaumont = li04_04_base
+Sugarland = li04_05_base
+Mitchell = li05_01_base
+Anchorage = li05_02_base
+Anchorage Research = li05_03_base
+Juneau = li05_04_base
+Berlin = rh01_01_base
+Oder = rh01_02_base
+Ring = rh01_03_base
+Bonn = rh01_04_base
+Dortmund = rh01_05_base
+Essen = rh01_06_base
+Brandenburg = rh01_07_base
+Kreuzberg = rh01_08_base
+Hamburg = rh02_01_base
+Westfalen = rh02_02_base
+Vierlande = rh02_03_base
+Alster = rh02_04_base
+Altona = rh02_05_base
+Lübeck = rh02_06_base
+Stuttgart = rh03_01_base
+Baden-Baden = rh03_02_base
+Freiburg = rh03_03_base
+Ulm = rh03_04_base
+Konstanz = rh03_05_base
+Darmstadt = rh03_06_base
+Holstein = rh04_01_base
+Mainz = rh04_02_base
+Mannheim = rh04_03_base
+Fulda = rh04_04_base
+Bruchsal = rh04_05_base
+Wilhelmshaven = rh04_06_base
+Wiesbaden = rh04_07_base
+Jena = rh04_08_base
+Leipzig = rh05_01_base
+Bautzen = rh05_02_base
+Pirna = rh05_03_base
+Vogtland = rh05_04_base
+Bremen = rh05_05_base
+Toledo = st01_01_base
+Osiris = st01_02_base
diff --git a/EXE/server.dll b/EXE/server.dll
index 94f01153..d272683b 100644
Binary files a/EXE/server.dll and b/EXE/server.dll differ