diff --git a/RedirectLogs.cs b/RedirectLogs.cs
new file mode 100644
index 0000000..52cac84
--- /dev/null
+++ b/RedirectLogs.cs
@@ -0,0 +1,53 @@
+using System;
+using Vintagestory.API.Client;
+using Vintagestory.API.Common;
+using Vintagestory.API.Server;
+
+namespace VSExampleMods
+{
+ ///
+ /// Redirects all log entries into the visual studio output window. Only for your convenience during development and testing.
+ ///
+ public class RedirectLogs : ModBase
+ {
+ public override ModInfo GetModInfo()
+ {
+ return new ModInfo()
+ {
+ Name = "RedirectLogs",
+ Version = "1.0",
+ GameVersions = new string[] { "1.5+" },
+ Description = "Redirecting logs to VS",
+ Author = "Tyron",
+ Website = "https://github.com/anegostudios/vsmodtemplate"
+ };
+ }
+
+ public override bool ShouldLoad(EnumAppSide side)
+ {
+ return true;
+ }
+
+ public override void StartServerSide(ICoreServerAPI api)
+ {
+ api.Server.Logger.AddListener(OnServerLogEntry);
+ }
+
+ public override void StartClientSide(ICoreClientAPI api)
+ {
+ api.World.Logger.AddListener(OnClientLogEntry);
+ }
+
+ private void OnClientLogEntry(EnumLogType logType, string message, object[] args)
+ {
+ if (logType == EnumLogType.VerboseDebug) return;
+ System.Diagnostics.Debug.WriteLine("[Client " + logType + "] " + message, args);
+ }
+
+ private void OnServerLogEntry(EnumLogType logType, string message, object[] args)
+ {
+ if (logType == EnumLogType.VerboseDebug) return;
+ System.Diagnostics.Debug.WriteLine("[Server " + logType + "] " + message, args);
+ }
+ }
+}
diff --git a/VSExampleMods.csproj b/VSExampleMods.csproj
new file mode 100644
index 0000000..08164fe
--- /dev/null
+++ b/VSExampleMods.csproj
@@ -0,0 +1,80 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {203DFBF1-3599-43FD-8487-E1C79C2B788F}
+ Library
+ Properties
+ VSExampleMods
+ VSExampleMods
+ v4.5.2
+ 512
+
+
+
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+ AnyCPU
+
+
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+ packages\Newtonsoft.Json.8.0.1\lib\net45\Newtonsoft.Json.dll
+ False
+
+
+ $(AppData)\Vintagestory\Lib\protobuf-net.dll
+ False
+
+
+
+
+
+
+
+
+
+
+ False
+ $(AppData)\Vintagestory\VintagestoryAPI.dll
+ False
+
+
+ $(AppData)\Vintagestory\Mods\VSSurvivalMod.dll
+
+
+
+
+
+
+
+
+
+
+
+ copy "$(TargetPath)" "%25appdata%25\Vintagestory\Mods\"
+copy "$(TargetDir)\$(TargetName).pdb" "%25appdata%25\Vintagestory\Mods\"
+
+
+
+
\ No newline at end of file
diff --git a/VSExampleMods.sln b/VSExampleMods.sln
new file mode 100644
index 0000000..fa5dc2c
--- /dev/null
+++ b/VSExampleMods.sln
@@ -0,0 +1,36 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VSExampleMods", "VSExampleMods.csproj", "{203DFBF1-3599-43FD-8487-E1C79C2B788F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyGoldBlockMod", "mods\ClassLibrary1\MyGoldBlockMod.csproj", "{1E84F46A-B6F4-4590-A93E-FF50FCEDCB8B}"
+ ProjectSection(ProjectDependencies) = postProject
+ {203DFBF1-3599-43FD-8487-E1C79C2B788F} = {203DFBF1-3599-43FD-8487-E1C79C2B788F}
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release x64|Any CPU = Release x64|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {203DFBF1-3599-43FD-8487-E1C79C2B788F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {203DFBF1-3599-43FD-8487-E1C79C2B788F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {203DFBF1-3599-43FD-8487-E1C79C2B788F}.Release x64|Any CPU.ActiveCfg = Release|Any CPU
+ {203DFBF1-3599-43FD-8487-E1C79C2B788F}.Release x64|Any CPU.Build.0 = Release|Any CPU
+ {203DFBF1-3599-43FD-8487-E1C79C2B788F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {203DFBF1-3599-43FD-8487-E1C79C2B788F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1E84F46A-B6F4-4590-A93E-FF50FCEDCB8B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1E84F46A-B6F4-4590-A93E-FF50FCEDCB8B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1E84F46A-B6F4-4590-A93E-FF50FCEDCB8B}.Release x64|Any CPU.ActiveCfg = Release|Any CPU
+ {1E84F46A-B6F4-4590-A93E-FF50FCEDCB8B}.Release x64|Any CPU.Build.0 = Release|Any CPU
+ {1E84F46A-B6F4-4590-A93E-FF50FCEDCB8B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1E84F46A-B6F4-4590-A93E-FF50FCEDCB8B}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/packages.config b/packages.config
new file mode 100644
index 0000000..96c51b7
--- /dev/null
+++ b/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file