diff --git a/Console/Console_VS2010.vcxproj b/Console/Console_VS2010.vcxproj
index 98557bce..02e1cc8d 100644
--- a/Console/Console_VS2010.vcxproj
+++ b/Console/Console_VS2010.vcxproj
@@ -99,30 +99,13 @@
-
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
+
+
+
+
+
+
+
NotUsing
diff --git a/Editor/Editor_VS2010.vcxproj b/Editor/Editor_VS2010.vcxproj
index 19d9aa89..c7727cc9 100644
--- a/Editor/Editor_VS2010.vcxproj
+++ b/Editor/Editor_VS2010.vcxproj
@@ -142,26 +142,11 @@
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
+
+
+
+
+
NotUsing
diff --git a/Language Defines.h b/Language Defines.h
index f25d3170..c4b62d2e 100644
--- a/Language Defines.h
+++ b/Language Defines.h
@@ -19,6 +19,65 @@
*/
+/* The recommend approach for VS2010 multi-language builds is to use the command line or the ja2.props file.
+
+ By default the language is ENGLISH and the Language Prefix is EN.
+
+ There are 3 ways you can build the JA2 1.13 executable file:
+
+ // -------------------------------------------------------
+ // 1. Using the command line
+ // -------------------------------------------------------
+
+ For example, where msbuild is located in %SystemRoot%\Microsoft.NET\Framework\v4.0.30319\ if not on your path
+ msbuild.exe /p:Configuration=Release ja2_VS2010.sln
+ msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=PL /p:JA2Language=POLISH ja2_VS2010.sln
+ msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=DE /p:JA2Language=GERMAN ja2_VS2010.sln
+ msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=RU /p:JA2Language=RUSSIAN ja2_VS2010.sln
+ msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=NL /p:JA2Language=DUTCH ja2_VS2010.sln
+ msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=FR /p:JA2Language=FRENCH ja2_VS2010.sln
+ msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=IT /p:JA2Language=ITALIAN ja2_VS2010.sln
+ msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=CN /p:JA2Language=CHINESE ja2_VS2010.sln
+
+ Note: If you want to build "Unfinished Business" version, just append the /p:JA2Config=JA2UB in the command line
+ msbuild.exe /p:Configuration=Release /p:JA2Config=JA2UB ja2_VS2010.sln
+ msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=DE /p:JA2Language=GERMAN /p:JA2Config=JA2UB ja2_VS2010.sln
+
+ // --------------------------------------------------------
+ // 2. Editing the ja2.props file and then build in VS 2010
+ // -------------------------------------------------------
+
+ 1. Open the "ja2.props" file in a text editor and set the tags to your likeing.
+
+ For example: If you want to build Russian Version (normal JA2, not UB) then set the following:
+
+
+
+
+
+ RU
+
+
+ RUSSIAN
+
+
+ 2. Save the file
+ 3. Build the project in Visual Studio 2010
+
+ // --------------------------------------------------------
+ // 3. The "old" way for building the executable
+ // -------------------------------------------------------
+
+ 1. Enable the "#undef ENGLISH" define below, so English will not be used anymore
+ 2. Set the desired language below
+ 3. If you want to build "Unfinished Business" version, enable "#define JA2UB" and "#define JA2UBMAPS" in builddefines.h"
+ 4. Build the executable in VS 2010
+ 5. The output will be placed in the "Build\bin\VS2010" folder
+*/
+
+// Only enable this "undef", if you use the 3. way of building the executable!
+#undef ENGLISH
+
#if !defined(ENGLISH) && !defined(GERMAN) && !defined(RUSSIAN) && !defined(DUTCH) && !defined(POLISH) && !defined(FRENCH) && !defined(ITALIAN) && !defined(TAIWANESE) && !defined(CHINESE)
/* please set one manually here (by uncommenting) if not willingly to set Workspace wide */
diff --git a/Laptop/Laptop_VS2010.vcxproj b/Laptop/Laptop_VS2010.vcxproj
index c83fae4f..35e3e05b 100644
--- a/Laptop/Laptop_VS2010.vcxproj
+++ b/Laptop/Laptop_VS2010.vcxproj
@@ -239,26 +239,11 @@
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
+
+
+
+
+
NotUsing
diff --git a/Standard Gaming Platform/SGP_VS2010.vcxproj b/Standard Gaming Platform/SGP_VS2010.vcxproj
index 13489454..357f3ac2 100644
--- a/Standard Gaming Platform/SGP_VS2010.vcxproj
+++ b/Standard Gaming Platform/SGP_VS2010.vcxproj
@@ -202,26 +202,11 @@
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
+
+
+
+
+
NotUsing
diff --git a/Strategic/Strategic_VS2010.vcxproj b/Strategic/Strategic_VS2010.vcxproj
index 9a237a7d..62d4ffb8 100644
--- a/Strategic/Strategic_VS2010.vcxproj
+++ b/Strategic/Strategic_VS2010.vcxproj
@@ -197,26 +197,11 @@
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
+
+
+
+
+
NotUsing
diff --git a/Tactical/Tactical_VS2010.vcxproj b/Tactical/Tactical_VS2010.vcxproj
index 1e4ebfbd..2843941f 100644
--- a/Tactical/Tactical_VS2010.vcxproj
+++ b/Tactical/Tactical_VS2010.vcxproj
@@ -289,26 +289,11 @@
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
+
+
+
+
+
NotUsing
diff --git a/TacticalAI/TacticalAI_VS2010.vcxproj b/TacticalAI/TacticalAI_VS2010.vcxproj
index 157d03bd..3c145d7a 100644
--- a/TacticalAI/TacticalAI_VS2010.vcxproj
+++ b/TacticalAI/TacticalAI_VS2010.vcxproj
@@ -109,26 +109,11 @@
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
+
+
+
+
+
NotUsing
diff --git a/TileEngine/TileEngine_VS2010.vcxproj b/TileEngine/TileEngine_VS2010.vcxproj
index a83d0848..90df87c7 100644
--- a/TileEngine/TileEngine_VS2010.vcxproj
+++ b/TileEngine/TileEngine_VS2010.vcxproj
@@ -168,26 +168,11 @@
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
+
+
+
+
+
NotUsing
diff --git a/Utils/Utils_VS2010.vcxproj b/Utils/Utils_VS2010.vcxproj
index 5fc17627..93bbabeb 100644
--- a/Utils/Utils_VS2010.vcxproj
+++ b/Utils/Utils_VS2010.vcxproj
@@ -198,26 +198,11 @@
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
+
+
+
+
+
NotUsing
diff --git a/ext/export/ja2export_VS2010.vcxproj b/ext/export/ja2export_VS2010.vcxproj
index 4ccac5c8..53b2042b 100644
--- a/ext/export/ja2export_VS2010.vcxproj
+++ b/ext/export/ja2export_VS2010.vcxproj
@@ -9,6 +9,10 @@
Release
Win32
+
+ Relese_WithDebugInfo
+ Win32
+
{802552D2-B514-42E5-A169-F1E108527678}
@@ -28,6 +32,12 @@
true
NotSet
+
+ Application
+ false
+ true
+ NotSet
+
@@ -37,6 +47,9 @@
+
+
+
true
@@ -48,6 +61,11 @@
..\..\bin\VS2010\$(Configuration)\
..\..\build\VS2010\$(ProjectName)_$(Configuration)\
+
+ false
+ ..\..\bin\VS2010\$(Configuration)\
+ ..\..\build\VS2010\$(ProjectName)_$(Configuration)\
+
NotUsing
@@ -93,6 +111,30 @@
VFS.lib;libpng.lib;zlib.lib;7z.lib;%(AdditionalDependencies)
+
+
+ Level3
+ NotUsing
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;VFS_STATIC;VFS_WITH_SLF;VFS_WITH_7ZIP;%(PreprocessorDefinitions)
+ ../VFS/include;../libpng;../zlib; src; src/ja2
+ MultiThreaded
+
+
+
+
+
+
+ Console
+ true
+ true
+ true
+ ..\..\lib\VS2010\$(Configuration)
+ VFS.lib;libpng.lib;zlib.lib;7z.lib;%(AdditionalDependencies)
+
+
diff --git a/ja2.props b/ja2.props
index aad6ffbe..8e19258b 100644
--- a/ja2.props
+++ b/ja2.props
@@ -1,15 +1,51 @@
-
+
+ JA2
+ EN
+ ENGLISH
+
<_PropertySheetDisplayName>ja2
+ $(SolutionDir)\build\VS2010\$(JA2Config)_$(JA2LangPrefix)\$(ProjectName)_$(Configuration)\
+ $(SolutionDir)\lib\VS2010\$(JA2Config)_$(JA2LangPrefix)\$(Configuration)\
+
+
+ $(JA2Config)
+
+
+ $(JA2LangPrefix)
+
+
+ $(JA2Language)
+
+
..\.;.\.;.\ext\VFS\include;..\ext\VFS\include;..\Utils;.\Utils;..\TileEngine;.\TileEngine;..\TacticalAI;.\TacticalAI;..\Tactical;.\Tactical;..\Strategic;.\Strategic;..\Standard Gaming Platform;.\Standard Gaming Platform;..\Res;.\Res;..\lua;.\lua;..\Laptop;.\Laptop;..\Multiplayer;.\Multiplayer;..\Multiplayer\raknet;.\Multiplayer\raknet;..\Editor;.\Editor;..\Console;.\Console;.\ext\libpng;..\ext\libpng;.\ext\zlib;..\ext\zlib;;$(NOINHERIT)
- JA2;CINTERFACE;XML_STATIC;VFS_STATIC;VFS_WITH_SLF;VFS_WITH_7ZIP;USE_VFS;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)
+ JA2;CINTERFACE;XML_STATIC;VFS_STATIC;VFS_WITH_SLF;VFS_WITH_7ZIP;USE_VFS;_CRT_SECURE_NO_DEPRECATE;$(JA2Language);%(PreprocessorDefinitions)
+
+
+
+
+ JA2MAPS;%(PreprocessorDefinitions)
+
+
+
+
+ JA2UB;%(PreprocessorDefinitions)
+
+
+
+
+ JA2UBMAPS;%(PreprocessorDefinitions)
+
+
+
+
+ JA2EDITOR;JA2BETAVERSION;%(PreprocessorDefinitions)
-
\ No newline at end of file
diff --git a/ja2_LinkerVS2010.props b/ja2_LinkerVS2010.props
index 5b424718..e8d46e9b 100644
--- a/ja2_LinkerVS2010.props
+++ b/ja2_LinkerVS2010.props
@@ -7,7 +7,7 @@
- lib\VS2010\$(Configuration);%(AdditionalLibraryDirectories)
+ $(SolutionDir)\lib\VS2010\$(JA2Config)_$(JA2LangPrefix)\$(Configuration);$(SolutionDir)\lib\VS2010\$(Configuration);%(AdditionalLibraryDirectories)
Console.lib;Editor.lib;Laptop.lib;lua.lib;SGP.lib;Strategic.lib;Tactical.lib;TacticalAI.lib;TileEngine.lib;Utils.lib;VFS.lib;7z.lib;libpng.lib;zlib.lib;%(AdditionalDependencies)
diff --git a/ja2_VS2010.vcxproj b/ja2_VS2010.vcxproj
index 2223a6c6..5224d711 100644
--- a/ja2_VS2010.vcxproj
+++ b/ja2_VS2010.vcxproj
@@ -97,39 +97,33 @@
true
- bin\VS2010\$(Configuration)\
- build\VS2010\$(ProjectName)_$(Configuration)\
- JA2_EN_Debug.exe
-
+ $(SolutionDir)\bin\VS2010\
+ $(JA2Config)_$(JA2LangPrefix)_$(Configuration)
+ .exe
true
- bin\VS2010\$(Configuration)\
- build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- MapEditor_EN_Debug.exe
+ $(SolutionDir)\bin\VS2010\
+ .exe
+ MapEditor_$(JA2LangPrefix)_Debug
false
- bin\VS2010\$(Configuration)\
- build\VS2010\$(ProjectName)_$(Configuration)\
- JA2_PO_Release.exe
-
+ $(SolutionDir)\bin\VS2010\
+ $(JA2Config)_$(JA2LangPrefix)_$(Configuration)
+ .exe
false
- bin\VS2010\$(Configuration)\
- build\VS2010\$(ProjectName)_$(Configuration)\
- MapEditor_EN_Release.exe
-
+ $(SolutionDir)\bin\VS2010\
+ MapEditor_$(JA2LangPrefix)_Release
+ .exe
false
- bin\VS2010\$(Configuration)\
- build\VS2010\$(ProjectName)_$(Configuration)\
- JA2_EN_ReleaseDebugInfo.exe
-
+ $(SolutionDir)\bin\VS2010\
+ $(JA2Config)_$(JA2LangPrefix)_$(Configuration)
+ .exe
@@ -145,7 +139,6 @@
true
Multiplayer\raknet;%(AdditionalLibraryDirectories)
Winmm.lib;RakNetLibStatic.lib;ws2_32.lib;DbgHelp.lib;%(AdditionalDependencies)
- $(OutDir)\JA2_EN_Debug.exe
@@ -178,12 +171,11 @@
Windows
- false
true
true
Multiplayer\raknet;%(AdditionalLibraryDirectories)
Winmm.lib;RakNetLibStatic.lib;ws2_32.lib;DbgHelp.lib;%(AdditionalDependencies)
- $(OutDir)\JA2_EN_Release.exe
+ true
@@ -226,7 +218,6 @@
true
Multiplayer\raknet;%(AdditionalLibraryDirectories)
Winmm.lib;RakNetLibStatic.lib;ws2_32.lib;DbgHelp.lib;%(AdditionalDependencies)
- $(OutDir)\JA2_EN_ReleaseDebugInfo.exe
diff --git a/lua/lua_VS2010.vcxproj b/lua/lua_VS2010.vcxproj
index 47fd14e8..e75d1dc9 100644
--- a/lua/lua_VS2010.vcxproj
+++ b/lua/lua_VS2010.vcxproj
@@ -109,26 +109,11 @@
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\lib\VS2010\$(Configuration)\
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
-
- ..\build\VS2010\$(ProjectName)_$(Configuration)\
- ..\lib\VS2010\$(Configuration)\
-
+
+
+
+
+
NotUsing