diff --git a/AI/BattleAI/CMakeLists.txt b/AI/BattleAI/CMakeLists.txt
index c380e15d6..225218b4c 100644
--- a/AI/BattleAI/CMakeLists.txt
+++ b/AI/BattleAI/CMakeLists.txt
@@ -1,7 +1,7 @@
project(battleAI)
cmake_minimum_required(VERSION 2.6)
-include_directories(${Boost_INCLUDE_DIRS} ${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib)
+include_directories(${Boost_INCLUDE_DIRS} ${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib)
set(battleAI_SRCS
StdInc.cpp
diff --git a/AI/EmptyAI/CMakeLists.txt b/AI/EmptyAI/CMakeLists.txt
index e7f7df371..506e0d8e8 100644
--- a/AI/EmptyAI/CMakeLists.txt
+++ b/AI/EmptyAI/CMakeLists.txt
@@ -1,7 +1,7 @@
project(emptyAI)
cmake_minimum_required(VERSION 2.6)
-include_directories(${Boost_INCLUDE_DIRS} ${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib)
+include_directories(${Boost_INCLUDE_DIRS} ${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib)
set(emptyAI_SRCS
CEmptyAI.cpp
diff --git a/AI/StupidAI/CMakeLists.txt b/AI/StupidAI/CMakeLists.txt
index ac3891678..4f82e9752 100644
--- a/AI/StupidAI/CMakeLists.txt
+++ b/AI/StupidAI/CMakeLists.txt
@@ -1,7 +1,7 @@
project(stupidAI)
cmake_minimum_required(VERSION 2.6)
-include_directories(${Boost_INCLUDE_DIRS} ${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib)
+include_directories(${Boost_INCLUDE_DIRS} ${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib)
set(stupidAI_SRCS
StdInc.cpp
diff --git a/AI/VCAI/CMakeLists.txt b/AI/VCAI/CMakeLists.txt
index 9114ca57b..905df8132 100644
--- a/AI/VCAI/CMakeLists.txt
+++ b/AI/VCAI/CMakeLists.txt
@@ -2,9 +2,9 @@ project(VCAI)
cmake_minimum_required(VERSION 2.6)
if (FL_FOUND)
- include_directories(${Boost_INCLUDE_DIRS} ${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib ${FL_INCLUDE_DIRS})
+ include_directories(${Boost_INCLUDE_DIRS} ${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib ${FL_INCLUDE_DIRS})
else()
- include_directories(${Boost_INCLUDE_DIRS} ${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib ${CMAKE_HOME_DIRECTORY}/AI/FuzzyLite/fuzzylite)
+ include_directories(${Boost_INCLUDE_DIRS} ${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib ${CMAKE_HOME_DIRECTORY}/AI/FuzzyLite/fuzzylite)
endif()
set(VCAI_SRCS
diff --git a/VCMI_global.props b/VCMI_global.props
index 1cdc364cb..b55fdaa98 100644
--- a/VCMI_global.props
+++ b/VCMI_global.props
@@ -7,7 +7,7 @@
<_PropertySheetDisplayName>VCMI_global
$(SolutionDir)..\libs\$(PlatformShortName);$(VCMI_Out);$(LibraryPath)
- $(SolutionDir)..\include;$(IncludePath)
+ $(SolutionDir)..\include;$(SolutionDir)include;$(IncludePath)
$(VCMI_Out)\
diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt
index 9eb3bc802..a1c16b8fd 100644
--- a/client/CMakeLists.txt
+++ b/client/CMakeLists.txt
@@ -1,7 +1,7 @@
project(vcmiclient)
cmake_minimum_required(VERSION 2.6)
-include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib)
+include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib)
include_directories(${SDL_INCLUDE_DIR} ${SDLIMAGE_INCLUDE_DIR} ${SDLMIXER_INCLUDE_DIR} ${SDLTTF_INCLUDE_DIR})
include_directories(${Boost_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIR} ${FFMPEG_INCLUDE_DIRS})
diff --git a/editor/CMakeLists.txt b/editor/CMakeLists.txt
index 99ca27031..0b46494ca 100644
--- a/editor/CMakeLists.txt
+++ b/editor/CMakeLists.txt
@@ -1,7 +1,7 @@
project(vcmieditor)
cmake_minimum_required(VERSION 2.8.7)
-include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR})
+include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR})
include_directories(${Qt5Widgets_INCLUDE_DIRS})
diff --git a/include/vstd/LogFormat.h b/include/vstd/LogFormat.h
new file mode 100644
index 000000000..487fbd504
--- /dev/null
+++ b/include/vstd/LogFormat.h
@@ -0,0 +1,20 @@
+/*
+ * CLogFormat.h, part of VCMI engine
+ *
+ * Authors: listed in file AUTHORS in main folder
+ *
+ * License: GNU General Public License v2.0 or later
+ * Full text of license available in license.txt file, in main folder
+ *
+ */
+
+#pragma once
+
+namespace vstd
+{
+ template
+ void logDebugFormat(Logger * logger, const std::string & format, Args ... args)
+ {
+
+ }
+}
diff --git a/launcher/CMakeLists.txt b/launcher/CMakeLists.txt
index ad0e005b7..c58d62828 100644
--- a/launcher/CMakeLists.txt
+++ b/launcher/CMakeLists.txt
@@ -1,7 +1,7 @@
project(vcmilauncher)
cmake_minimum_required(VERSION 2.8.7)
-include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR})
+include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR})
include_directories(${ZLIB_INCLUDE_DIR} ${Boost_INCLUDE_DIRS} ${Qt5Widgets_INCLUDE_DIRS} ${Qt5Network_INCLUDE_DIRS})
set(launcher_modmanager_SRCS
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index be534cff8..9027da727 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -1,7 +1,7 @@
project(libvcmi)
cmake_minimum_required(VERSION 2.6)
-include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/lib)
+include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/lib)
include_directories(${Boost_INCLUDE_DIRS} ${SDL_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR})
set(lib_SRCS
diff --git a/lib/StdInc.h b/lib/StdInc.h
index 2f2dd2f58..5667c4fbb 100644
--- a/lib/StdInc.h
+++ b/lib/StdInc.h
@@ -2,6 +2,9 @@
#include "../Global.h"
+//todo: move to Global.h
+#include
+
// This header should be treated as a pre compiled header file(PCH) in the compiler building settings.
-// Here you can add specific libraries and macros which are specific to this project.
+// Here you can add specific libraries and macros which are specific to this project.
diff --git a/scripting/erm/CMakeLists.txt b/scripting/erm/CMakeLists.txt
index 2e96b5270..f121fe45e 100644
--- a/scripting/erm/CMakeLists.txt
+++ b/scripting/erm/CMakeLists.txt
@@ -1,7 +1,7 @@
project(vcmiERM)
cmake_minimum_required(VERSION 2.6)
-include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIRECTORY})
+include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIRECTORY})
set(lib_SRCS
StdInc.cpp
diff --git a/server/CMakeLists.txt b/server/CMakeLists.txt
index 1079a2ea5..563913bd2 100644
--- a/server/CMakeLists.txt
+++ b/server/CMakeLists.txt
@@ -1,7 +1,7 @@
project(vcmiserver)
cmake_minimum_required(VERSION 2.6)
-include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib)
+include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/lib)
include_directories(${Boost_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIR})
set(server_SRCS
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 43827ecad..bda39e9f0 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 2.6)
enable_testing()
-include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/test)
+include_directories(${CMAKE_HOME_DIRECTORY} ${CMAKE_HOME_DIRECTORY}/include ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_HOME_DIRECTORY}/test)
include_directories(${Boost_INCLUDE_DIRS})
set(test_SRCS