diff --git a/code/nel/include/nel/georges/form_elm.h b/code/nel/include/nel/georges/form_elm.h
index 5453717a2..2d9e76630 100644
--- a/code/nel/include/nel/georges/form_elm.h
+++ b/code/nel/include/nel/georges/form_elm.h
@@ -440,21 +440,24 @@ public:
// From UFormElm
bool isAtom () const;
- bool getValue (std::string &resultname, TEval evaluate) const;
- bool getValue (sint8 &resultname, TEval evaluate) const;
- bool getValue (uint8 &resultname, TEval evaluate) const;
- bool getValue (sint16 &resultname, TEval evaluate) const;
- bool getValue (uint16 &resultname, TEval evaluate) const;
- bool getValue (sint32 &resultname, TEval evaluate) const;
- bool getValue (uint32 &resultname, TEval evaluate) const;
- bool getValue (float &resultname, TEval evaluate) const;
- bool getValue (double &resultname, TEval evaluate) const;
- bool getValue (bool &resultname, TEval evaluate) const;
- bool getValue (NLMISC::CRGBA &resultname, TEval evaluate) const;
+ bool getValue (std::string &result, TEval evaluate) const;
+ bool getValue (sint8 &result, TEval evaluate) const;
+ bool getValue (uint8 &result, TEval evaluate) const;
+ bool getValue (sint16 &result, TEval evaluate) const;
+ bool getValue (uint16 &result, TEval evaluate) const;
+ bool getValue (sint32 &result, TEval evaluate) const;
+ bool getValue (uint32 &result, TEval evaluate) const;
+ bool getValue (float &result, TEval evaluate) const;
+ bool getValue (double &result, TEval evaluate) const;
+ bool getValue (bool &result, TEval evaluate) const;
+ bool getValue (NLMISC::CRGBA &result, TEval evaluate) const;
// Set the value, the elt been used
void setValue (const char *value);
+ // Get the raw value. Does not care about any parent or default values
+ void getValue (std::string &result) const;
+
private:
// The value
std::string Value;
diff --git a/code/nel/src/georges/form_elm.cpp b/code/nel/src/georges/form_elm.cpp
index 518782342..658d1d9f6 100644
--- a/code/nel/src/georges/form_elm.cpp
+++ b/code/nel/src/georges/form_elm.cpp
@@ -3056,6 +3056,13 @@ void CFormElmAtom::setValue (const char *value)
// ***************************************************************************
+void CFormElmAtom::getValue (std::string &result) const
+{
+ result = Value;
+}
+
+// ***************************************************************************
+
void CFormElmAtom::getFormName (std::string &result, const CFormElm *child) const
{
// Must be NULL
diff --git a/code/nel/tools/build_gamedata/0_setup.py b/code/nel/tools/build_gamedata/0_setup.py
index 1e1824b2c..aeac30eaf 100755
--- a/code/nel/tools/build_gamedata/0_setup.py
+++ b/code/nel/tools/build_gamedata/0_setup.py
@@ -8,7 +8,7 @@
# Run all setup processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@@ -266,7 +266,7 @@ if not args.noconf:
sf.write("# Site configuration.\n")
sf.write("# \n")
sf.write("# NeL - MMORPG Framework \n")
- sf.write("# Copyright (C) 2010 Winch Gate Property Limited\n")
+ sf.write("# Copyright (C) 2009-2014 by authors\n")
sf.write("# \n")
sf.write("# This program is free software: you can redistribute it and/or modify\n")
sf.write("# it under the terms of the GNU Affero General Public License as\n")
diff --git a/code/nel/tools/build_gamedata/1_export.py b/code/nel/tools/build_gamedata/1_export.py
index 1b77d2c23..d9e4670f7 100755
--- a/code/nel/tools/build_gamedata/1_export.py
+++ b/code/nel/tools/build_gamedata/1_export.py
@@ -8,7 +8,7 @@
# Run all export processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/2_build.py b/code/nel/tools/build_gamedata/2_build.py
index 79af533fa..4777ad2d1 100755
--- a/code/nel/tools/build_gamedata/2_build.py
+++ b/code/nel/tools/build_gamedata/2_build.py
@@ -8,7 +8,7 @@
# Run all build processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/3_install.py b/code/nel/tools/build_gamedata/3_install.py
index edc542bb3..b2584274c 100755
--- a/code/nel/tools/build_gamedata/3_install.py
+++ b/code/nel/tools/build_gamedata/3_install.py
@@ -8,7 +8,7 @@
# Run all install processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/a1_worldedit_data.py b/code/nel/tools/build_gamedata/a1_worldedit_data.py
index e69de29bb..f7aae7a04 100755
--- a/code/nel/tools/build_gamedata/a1_worldedit_data.py
+++ b/code/nel/tools/build_gamedata/a1_worldedit_data.py
@@ -0,0 +1,74 @@
+#!/usr/bin/python
+#
+# \file a1_worldedit_data.py
+# \brief Install worldedit data
+# \date 2014-09-10 14:01GMT
+# \author Jan Boon (Kaetemi)
+# Python port of game data build pipeline.
+# Install worldedit data
+#
+# NeL - MMORPG Framework
+# Copyright (C) 2014 by authors
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+
+import time, sys, os, shutil, subprocess, distutils.dir_util
+sys.path.append("configuration")
+
+if os.path.isfile("log.log"):
+ os.remove("log.log")
+log = open("log.log", "w")
+from scripts import *
+from buildsite import *
+from tools import *
+
+sys.path.append(WorkspaceDirectory)
+from projects import *
+
+# Log error
+printLog(log, "")
+printLog(log, "-------")
+printLog(log, "--- Install worldedit data")
+printLog(log, "-------")
+printLog(log, time.strftime("%Y-%m-%d %H:%MGMT", time.gmtime(time.time())))
+printLog(log, "")
+
+for ecosystem in WorldEditEcosystems:
+ ecosystemName = ecosystem[0]
+ srcZoneLigos = ExportBuildDirectory + "/ecosystems/" + ecosystemName + "/ligo_es/zoneligos/"
+ dstZoneLigos = WorldEditInstallDirectory + "/" + ecosystemName + "/zoneligos/"
+ mkPath(log, srcZoneLigos)
+ mkPath(log, dstZoneLigos)
+ copyFilesNoTreeIfNeeded(log, srcZoneLigos, dstZoneLigos)
+ srcZoneBitmaps = DatabaseDirectory + "/landscape/ligo/" + ecosystemName + "/zonebitmaps/"
+ dstZoneBitmaps = WorldEditInstallDirectory + "/" + ecosystemName + "/zonebitmaps/"
+ mkPath(log, srcZoneBitmaps)
+ mkPath(log, dstZoneBitmaps)
+ copyFilesExtNoTreeIfNeeded(log, srcZoneBitmaps, dstZoneBitmaps, ".tga")
+ copyFilesExtNoTreeIfNeeded(log, srcZoneBitmaps, dstZoneBitmaps, ".png")
+ dstCollisionMap = WorldEditInstallDirectory + "/" + ecosystemName + "/collisionmap/"
+ mkPath(log, dstCollisionMap)
+ for continentName in ecosystem[1]:
+ srcCollisionMap = ExportBuildDirectory + "/continents/" + continentName + "/ai_wmap/"
+ mkPath(log, srcCollisionMap)
+ copyFilesExtNoTreeIfNeeded(log, srcCollisionMap, dstCollisionMap, ".tga")
+ copyFilesExtNoTreeIfNeeded(log, srcCollisionMap, dstCollisionMap, ".png")
+printLog(log, "")
+
+log.close()
+if os.path.isfile("a1_worldedit_data.log"):
+ os.remove("a1_worldedit_data.log")
+shutil.copy("log.log", time.strftime("%Y-%m-%d-%H-%M-GMT", time.gmtime(time.time())) + "_worldedit_data.log")
+shutil.move("log.log", "a1_worldedit_data.log")
diff --git a/code/nel/tools/build_gamedata/b1_client_dev.py b/code/nel/tools/build_gamedata/b1_client_dev.py
index 9553ed6df..d8c77c1fa 100755
--- a/code/nel/tools/build_gamedata/b1_client_dev.py
+++ b/code/nel/tools/build_gamedata/b1_client_dev.py
@@ -8,7 +8,7 @@
# Install to client dev
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/b2_shard_data.py b/code/nel/tools/build_gamedata/b2_shard_data.py
index 2843769e9..f0a50cfdf 100755
--- a/code/nel/tools/build_gamedata/b2_shard_data.py
+++ b/code/nel/tools/build_gamedata/b2_shard_data.py
@@ -8,7 +8,7 @@
# Install shard data
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/configuration/scripts.py b/code/nel/tools/build_gamedata/configuration/scripts.py
index 02f13139c..9a815a2b9 100755
--- a/code/nel/tools/build_gamedata/configuration/scripts.py
+++ b/code/nel/tools/build_gamedata/configuration/scripts.py
@@ -7,7 +7,7 @@
# Useful scripts
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/configuration/tools.py b/code/nel/tools/build_gamedata/configuration/tools.py
index f9cc54964..1a31d2986 100755
--- a/code/nel/tools/build_gamedata/configuration/tools.py
+++ b/code/nel/tools/build_gamedata/configuration/tools.py
@@ -8,7 +8,7 @@
# Tools configuration.
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/d1_client_patch.py b/code/nel/tools/build_gamedata/d1_client_patch.py
index 861ea8bd0..600347d0b 100755
--- a/code/nel/tools/build_gamedata/d1_client_patch.py
+++ b/code/nel/tools/build_gamedata/d1_client_patch.py
@@ -8,7 +8,7 @@
# Install to client patch
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/d2_client_install.py b/code/nel/tools/build_gamedata/d2_client_install.py
index 26fc4f5c5..febaef656 100755
--- a/code/nel/tools/build_gamedata/d2_client_install.py
+++ b/code/nel/tools/build_gamedata/d2_client_install.py
@@ -8,7 +8,7 @@
# Install to client install
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/export_build_install.py b/code/nel/tools/build_gamedata/export_build_install.py
index 5be6a2dfc..b5e46ba06 100755
--- a/code/nel/tools/build_gamedata/export_build_install.py
+++ b/code/nel/tools/build_gamedata/export_build_install.py
@@ -8,7 +8,7 @@
# Run all processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/ecosystem_project_template/directories.py b/code/nel/tools/build_gamedata/generators/ecosystem_project_template/directories.py
index 90c8b5a91..34886120e 100755
--- a/code/nel/tools/build_gamedata/generators/ecosystem_project_template/directories.py
+++ b/code/nel/tools/build_gamedata/generators/ecosystem_project_template/directories.py
@@ -14,7 +14,7 @@
# Directories configuration for '%PreGenEcosystemName%' ecosystem.
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/ecosystem_project_template/process.py b/code/nel/tools/build_gamedata/generators/ecosystem_project_template/process.py
index 2e3d9643a..367ff8feb 100755
--- a/code/nel/tools/build_gamedata/generators/ecosystem_project_template/process.py
+++ b/code/nel/tools/build_gamedata/generators/ecosystem_project_template/process.py
@@ -12,7 +12,7 @@
# Process configuration for '%PreGenEcosystemName%' ecosystem.
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/generate_all.py b/code/nel/tools/build_gamedata/generators/generate_all.py
index cb191e3d9..29060647d 100755
--- a/code/nel/tools/build_gamedata/generators/generate_all.py
+++ b/code/nel/tools/build_gamedata/generators/generate_all.py
@@ -8,7 +8,7 @@
# Run all setup processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/generate_ecosystem_projects.py b/code/nel/tools/build_gamedata/generators/generate_ecosystem_projects.py
index b1852565e..0f71f615b 100755
--- a/code/nel/tools/build_gamedata/generators/generate_ecosystem_projects.py
+++ b/code/nel/tools/build_gamedata/generators/generate_ecosystem_projects.py
@@ -8,7 +8,7 @@
# Generate ecosystem projects
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/generate_simple_max_exporters.py b/code/nel/tools/build_gamedata/generators/generate_simple_max_exporters.py
index cd8a9039f..be4867840 100755
--- a/code/nel/tools/build_gamedata/generators/generate_simple_max_exporters.py
+++ b/code/nel/tools/build_gamedata/generators/generate_simple_max_exporters.py
@@ -8,7 +8,7 @@
# Run all setup processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/generate_tagged_max_exporters.py b/code/nel/tools/build_gamedata/generators/generate_tagged_max_exporters.py
index 89a65d3fb..99f8cba83 100755
--- a/code/nel/tools/build_gamedata/generators/generate_tagged_max_exporters.py
+++ b/code/nel/tools/build_gamedata/generators/generate_tagged_max_exporters.py
@@ -8,7 +8,7 @@
# Run all setup processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/0_setup.py b/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/0_setup.py
index 1531f2c89..520eedb03 100755
--- a/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/0_setup.py
+++ b/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/0_setup.py
@@ -8,7 +8,7 @@
# Setup %PreGenProcessName%
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/1_export_header.py b/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/1_export_header.py
index 1844e0777..6e857af0d 100755
--- a/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/1_export_header.py
+++ b/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/1_export_header.py
@@ -12,7 +12,7 @@
# Export %PreGenProcessName%
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/2_build.py b/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/2_build.py
index 9b84cdf41..9583c04eb 100755
--- a/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/2_build.py
+++ b/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/2_build.py
@@ -8,7 +8,7 @@
# Build %PreGenProcessName%
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/3_install.py b/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/3_install.py
index 8406715d7..f2d296d55 100755
--- a/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/3_install.py
+++ b/code/nel/tools/build_gamedata/generators/simple_max_exporter_template/3_install.py
@@ -8,7 +8,7 @@
# Install %PreGenProcessName%
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/0_setup.py b/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/0_setup.py
index b2340583e..6bd49c40f 100755
--- a/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/0_setup.py
+++ b/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/0_setup.py
@@ -8,7 +8,7 @@
# Setup %PreGenProcessName%
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/1_export_header.py b/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/1_export_header.py
index d16797a40..523001d22 100755
--- a/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/1_export_header.py
+++ b/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/1_export_header.py
@@ -12,7 +12,7 @@
# Export %PreGenProcessName%
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/2_build.py b/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/2_build.py
index 9b84cdf41..9583c04eb 100755
--- a/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/2_build.py
+++ b/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/2_build.py
@@ -8,7 +8,7 @@
# Build %PreGenProcessName%
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/3_install.py b/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/3_install.py
index bc64951a2..65122f3f8 100755
--- a/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/3_install.py
+++ b/code/nel/tools/build_gamedata/generators/tagged_max_exporter_template/3_install.py
@@ -8,7 +8,7 @@
# Install %PreGenProcessName%
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/0_setup.py b/code/nel/tools/build_gamedata/processes/0_setup.py
index 011c65f7b..6fb354781 100755
--- a/code/nel/tools/build_gamedata/processes/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/0_setup.py
@@ -8,7 +8,7 @@
# Run all setup processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/1_export.py b/code/nel/tools/build_gamedata/processes/1_export.py
index 00339aeff..f3ea98ed7 100755
--- a/code/nel/tools/build_gamedata/processes/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/1_export.py
@@ -8,7 +8,7 @@
# Run all export processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/2_build.py b/code/nel/tools/build_gamedata/processes/2_build.py
index 80e089b1a..eea528708 100755
--- a/code/nel/tools/build_gamedata/processes/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/2_build.py
@@ -8,7 +8,7 @@
# Run all build processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/3_install.py b/code/nel/tools/build_gamedata/processes/3_install.py
index 1d97a4b8c..a34fdbce6 100755
--- a/code/nel/tools/build_gamedata/processes/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/3_install.py
@@ -8,7 +8,7 @@
# Run all install processes
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/_dummy/0_setup.py b/code/nel/tools/build_gamedata/processes/_dummy/0_setup.py
index deefb4f12..e3104979d 100755
--- a/code/nel/tools/build_gamedata/processes/_dummy/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/_dummy/0_setup.py
@@ -8,7 +8,7 @@
# Setup dummy
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/_dummy/1_export.py b/code/nel/tools/build_gamedata/processes/_dummy/1_export.py
index 851dd8077..373f984ae 100755
--- a/code/nel/tools/build_gamedata/processes/_dummy/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/_dummy/1_export.py
@@ -8,7 +8,7 @@
# Export dummy
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/_dummy/2_build.py b/code/nel/tools/build_gamedata/processes/_dummy/2_build.py
index 853858806..6dd48b9e2 100755
--- a/code/nel/tools/build_gamedata/processes/_dummy/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/_dummy/2_build.py
@@ -8,7 +8,7 @@
# Build dummy
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/_dummy/3_install.py b/code/nel/tools/build_gamedata/processes/_dummy/3_install.py
index 9630480cc..d809646b8 100755
--- a/code/nel/tools/build_gamedata/processes/_dummy/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/_dummy/3_install.py
@@ -8,7 +8,7 @@
# Install dummy
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ai_wmap/0_setup.py b/code/nel/tools/build_gamedata/processes/ai_wmap/0_setup.py
index 03a3acde9..418bb8de3 100755
--- a/code/nel/tools/build_gamedata/processes/ai_wmap/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/ai_wmap/0_setup.py
@@ -8,7 +8,7 @@
# Setup ai_wmap
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ai_wmap/1_export.py b/code/nel/tools/build_gamedata/processes/ai_wmap/1_export.py
index 5259b3515..de3d108c4 100755
--- a/code/nel/tools/build_gamedata/processes/ai_wmap/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/ai_wmap/1_export.py
@@ -8,7 +8,7 @@
# Export ai_wmap
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ai_wmap/2_build.py b/code/nel/tools/build_gamedata/processes/ai_wmap/2_build.py
index f32cc4d91..8aa63f62f 100755
--- a/code/nel/tools/build_gamedata/processes/ai_wmap/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/ai_wmap/2_build.py
@@ -8,7 +8,7 @@
# Build ai_wmap
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ai_wmap/3_install.py b/code/nel/tools/build_gamedata/processes/ai_wmap/3_install.py
index e9e68651e..fb81b991d 100755
--- a/code/nel/tools/build_gamedata/processes/ai_wmap/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/ai_wmap/3_install.py
@@ -8,7 +8,7 @@
# Install ai_wmap
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/anim/0_setup.py b/code/nel/tools/build_gamedata/processes/anim/0_setup.py
index 7261feeeb..1f9cf10d7 100755
--- a/code/nel/tools/build_gamedata/processes/anim/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/anim/0_setup.py
@@ -8,7 +8,7 @@
# Setup anim
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/anim/1_export.py b/code/nel/tools/build_gamedata/processes/anim/1_export.py
index c59056266..4c51fc261 100755
--- a/code/nel/tools/build_gamedata/processes/anim/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/anim/1_export.py
@@ -12,7 +12,7 @@
# Export anim
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/anim/2_build.py b/code/nel/tools/build_gamedata/processes/anim/2_build.py
index 8a2ab5bab..81d968b06 100755
--- a/code/nel/tools/build_gamedata/processes/anim/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/anim/2_build.py
@@ -8,7 +8,7 @@
# Build anim
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/anim/3_install.py b/code/nel/tools/build_gamedata/processes/anim/3_install.py
index 8887ba8fe..896f43db0 100755
--- a/code/nel/tools/build_gamedata/processes/anim/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/anim/3_install.py
@@ -8,7 +8,7 @@
# Install anim
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/cegui/0_setup.py b/code/nel/tools/build_gamedata/processes/cegui/0_setup.py
index 8ce9a3e78..b3f61468c 100755
--- a/code/nel/tools/build_gamedata/processes/cegui/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/cegui/0_setup.py
@@ -7,7 +7,7 @@
# Setup cegui
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/cegui/1_export.py b/code/nel/tools/build_gamedata/processes/cegui/1_export.py
index 71104fb4a..018562c46 100755
--- a/code/nel/tools/build_gamedata/processes/cegui/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/cegui/1_export.py
@@ -7,7 +7,7 @@
# Export cegui
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/cegui/2_build.py b/code/nel/tools/build_gamedata/processes/cegui/2_build.py
index 86afc1ec3..134830547 100755
--- a/code/nel/tools/build_gamedata/processes/cegui/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/cegui/2_build.py
@@ -7,7 +7,7 @@
# Build cegui
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/cegui/3_install.py b/code/nel/tools/build_gamedata/processes/cegui/3_install.py
index 89525b1e8..d1d6547ad 100755
--- a/code/nel/tools/build_gamedata/processes/cegui/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/cegui/3_install.py
@@ -7,7 +7,7 @@
# Install cegui
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/clodbank/0_setup.py b/code/nel/tools/build_gamedata/processes/clodbank/0_setup.py
index 223d5a163..532113523 100755
--- a/code/nel/tools/build_gamedata/processes/clodbank/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/clodbank/0_setup.py
@@ -8,7 +8,7 @@
# Setup clodbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/clodbank/1_export.py b/code/nel/tools/build_gamedata/processes/clodbank/1_export.py
index 0046c2a01..64cd875df 100755
--- a/code/nel/tools/build_gamedata/processes/clodbank/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/clodbank/1_export.py
@@ -12,7 +12,7 @@
# Export clodbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/clodbank/2_build.py b/code/nel/tools/build_gamedata/processes/clodbank/2_build.py
index 9bd6d2cd6..9146f8c8e 100755
--- a/code/nel/tools/build_gamedata/processes/clodbank/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/clodbank/2_build.py
@@ -8,7 +8,7 @@
# Build clodbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/clodbank/3_install.py b/code/nel/tools/build_gamedata/processes/clodbank/3_install.py
index efc3483eb..b8da3d280 100755
--- a/code/nel/tools/build_gamedata/processes/clodbank/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/clodbank/3_install.py
@@ -8,7 +8,7 @@
# Install clodbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/copy/0_setup.py b/code/nel/tools/build_gamedata/processes/copy/0_setup.py
index d1dd6a59b..f87f94bc9 100755
--- a/code/nel/tools/build_gamedata/processes/copy/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/copy/0_setup.py
@@ -8,7 +8,7 @@
# Setup copy
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/copy/1_export.py b/code/nel/tools/build_gamedata/processes/copy/1_export.py
index 50922dc75..39fa7fa4e 100755
--- a/code/nel/tools/build_gamedata/processes/copy/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/copy/1_export.py
@@ -8,7 +8,7 @@
# Export copy
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/copy/2_build.py b/code/nel/tools/build_gamedata/processes/copy/2_build.py
index 21b55c1de..796ce3451 100755
--- a/code/nel/tools/build_gamedata/processes/copy/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/copy/2_build.py
@@ -8,7 +8,7 @@
# Build copy
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/copy/3_install.py b/code/nel/tools/build_gamedata/processes/copy/3_install.py
index af988c8a7..7bcacc473 100755
--- a/code/nel/tools/build_gamedata/processes/copy/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/copy/3_install.py
@@ -8,7 +8,7 @@
# Install copy
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/displace/0_setup.py b/code/nel/tools/build_gamedata/processes/displace/0_setup.py
index 9aed98716..6a5e3170e 100755
--- a/code/nel/tools/build_gamedata/processes/displace/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/displace/0_setup.py
@@ -8,7 +8,7 @@
# Setup displace
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/displace/1_export.py b/code/nel/tools/build_gamedata/processes/displace/1_export.py
index edd93f2ea..52ce5e24d 100755
--- a/code/nel/tools/build_gamedata/processes/displace/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/displace/1_export.py
@@ -8,7 +8,7 @@
# Export displace
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/displace/2_build.py b/code/nel/tools/build_gamedata/processes/displace/2_build.py
index 8a443450c..bc7f91aac 100755
--- a/code/nel/tools/build_gamedata/processes/displace/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/displace/2_build.py
@@ -8,7 +8,7 @@
# Build displace
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/displace/3_install.py b/code/nel/tools/build_gamedata/processes/displace/3_install.py
index bdf8b3a30..76c0c03e4 100755
--- a/code/nel/tools/build_gamedata/processes/displace/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/displace/3_install.py
@@ -8,7 +8,7 @@
# Install displace
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/farbank/0_setup.py b/code/nel/tools/build_gamedata/processes/farbank/0_setup.py
index b02191d2a..9761fa8b1 100755
--- a/code/nel/tools/build_gamedata/processes/farbank/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/farbank/0_setup.py
@@ -8,7 +8,7 @@
# Setup farbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/farbank/1_export.py b/code/nel/tools/build_gamedata/processes/farbank/1_export.py
index 267b5410e..380a3444e 100755
--- a/code/nel/tools/build_gamedata/processes/farbank/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/farbank/1_export.py
@@ -8,7 +8,7 @@
# Export farbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/farbank/2_build.py b/code/nel/tools/build_gamedata/processes/farbank/2_build.py
index aed7e4418..85008bdde 100755
--- a/code/nel/tools/build_gamedata/processes/farbank/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/farbank/2_build.py
@@ -8,7 +8,7 @@
# Build farbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/farbank/3_install.py b/code/nel/tools/build_gamedata/processes/farbank/3_install.py
index f786a7850..d9164f84a 100755
--- a/code/nel/tools/build_gamedata/processes/farbank/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/farbank/3_install.py
@@ -8,7 +8,7 @@
# Install farbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/font/0_setup.py b/code/nel/tools/build_gamedata/processes/font/0_setup.py
index 9b29962b2..4b2a149da 100755
--- a/code/nel/tools/build_gamedata/processes/font/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/font/0_setup.py
@@ -8,7 +8,7 @@
# setup font
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/font/1_export.py b/code/nel/tools/build_gamedata/processes/font/1_export.py
index 1911aaa0e..f97d3375e 100755
--- a/code/nel/tools/build_gamedata/processes/font/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/font/1_export.py
@@ -8,7 +8,7 @@
# Export font
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/font/2_build.py b/code/nel/tools/build_gamedata/processes/font/2_build.py
index 2f2db281d..bc8794996 100755
--- a/code/nel/tools/build_gamedata/processes/font/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/font/2_build.py
@@ -8,7 +8,7 @@
# Build font
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/font/3_install.py b/code/nel/tools/build_gamedata/processes/font/3_install.py
index 8a7b79e93..c18ae12e3 100755
--- a/code/nel/tools/build_gamedata/processes/font/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/font/3_install.py
@@ -8,7 +8,7 @@
# Install font
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ig/0_setup.py b/code/nel/tools/build_gamedata/processes/ig/0_setup.py
index 854777f6f..830a32e26 100755
--- a/code/nel/tools/build_gamedata/processes/ig/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/ig/0_setup.py
@@ -8,7 +8,7 @@
# Setup ig
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ig/1_export.py b/code/nel/tools/build_gamedata/processes/ig/1_export.py
index 6a2958a12..e22e7ec82 100755
--- a/code/nel/tools/build_gamedata/processes/ig/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/ig/1_export.py
@@ -8,7 +8,7 @@
# Export ig
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ig/2_build.py b/code/nel/tools/build_gamedata/processes/ig/2_build.py
index 50eb1dbfa..afb84c312 100755
--- a/code/nel/tools/build_gamedata/processes/ig/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/ig/2_build.py
@@ -8,7 +8,7 @@
# Build ig
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ig/3_install.py b/code/nel/tools/build_gamedata/processes/ig/3_install.py
index de4ac592f..7ab5f182d 100755
--- a/code/nel/tools/build_gamedata/processes/ig/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/ig/3_install.py
@@ -8,7 +8,7 @@
# Install ig
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ig_light/0_setup.py b/code/nel/tools/build_gamedata/processes/ig_light/0_setup.py
index c03ddefad..82bda3129 100755
--- a/code/nel/tools/build_gamedata/processes/ig_light/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/ig_light/0_setup.py
@@ -8,7 +8,7 @@
# Setup ig_light
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ig_light/1_export.py b/code/nel/tools/build_gamedata/processes/ig_light/1_export.py
index 8423c5738..4880b9d57 100755
--- a/code/nel/tools/build_gamedata/processes/ig_light/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/ig_light/1_export.py
@@ -8,7 +8,7 @@
# Export ig_light
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ig_light/2_build.py b/code/nel/tools/build_gamedata/processes/ig_light/2_build.py
index cff5766ce..41ae92ff8 100755
--- a/code/nel/tools/build_gamedata/processes/ig_light/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/ig_light/2_build.py
@@ -8,7 +8,7 @@
# Build ig_light
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ig_light/3_install.py b/code/nel/tools/build_gamedata/processes/ig_light/3_install.py
index 3a94640bf..332d02184 100755
--- a/code/nel/tools/build_gamedata/processes/ig_light/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/ig_light/3_install.py
@@ -8,7 +8,7 @@
# Install ig_light
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/interface/0_setup.py b/code/nel/tools/build_gamedata/processes/interface/0_setup.py
index 9b58eebb1..4a227d364 100755
--- a/code/nel/tools/build_gamedata/processes/interface/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/interface/0_setup.py
@@ -8,7 +8,7 @@
# Setup interface
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/interface/1_export.py b/code/nel/tools/build_gamedata/processes/interface/1_export.py
index d4146db80..b6c0f394c 100755
--- a/code/nel/tools/build_gamedata/processes/interface/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/interface/1_export.py
@@ -8,7 +8,7 @@
# Export interface
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/interface/2_build.py b/code/nel/tools/build_gamedata/processes/interface/2_build.py
index 0e1a0061f..4dfead25b 100755
--- a/code/nel/tools/build_gamedata/processes/interface/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/interface/2_build.py
@@ -8,7 +8,7 @@
# Build interface
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/interface/3_install.py b/code/nel/tools/build_gamedata/processes/interface/3_install.py
index a0800c522..d7f052561 100755
--- a/code/nel/tools/build_gamedata/processes/interface/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/interface/3_install.py
@@ -8,7 +8,7 @@
# Install interface
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ligo/0_setup.py b/code/nel/tools/build_gamedata/processes/ligo/0_setup.py
index 3343e07ce..32a74bf63 100755
--- a/code/nel/tools/build_gamedata/processes/ligo/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/ligo/0_setup.py
@@ -8,7 +8,7 @@
# Setup ligo
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ligo/1_export.py b/code/nel/tools/build_gamedata/processes/ligo/1_export.py
index 029121478..09be53494 100755
--- a/code/nel/tools/build_gamedata/processes/ligo/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/ligo/1_export.py
@@ -8,7 +8,7 @@
# Export ligo
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ligo/2_build.py b/code/nel/tools/build_gamedata/processes/ligo/2_build.py
index 9d51788bb..54f5d75e8 100755
--- a/code/nel/tools/build_gamedata/processes/ligo/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/ligo/2_build.py
@@ -8,7 +8,7 @@
# Build ligo
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ligo/3_install.py b/code/nel/tools/build_gamedata/processes/ligo/3_install.py
index 5bf59b884..9d9e59b54 100755
--- a/code/nel/tools/build_gamedata/processes/ligo/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/ligo/3_install.py
@@ -8,7 +8,7 @@
# Install ligo
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/map/0_setup.py b/code/nel/tools/build_gamedata/processes/map/0_setup.py
index 10769e968..5cfc189d5 100755
--- a/code/nel/tools/build_gamedata/processes/map/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/map/0_setup.py
@@ -8,7 +8,7 @@
# Setup map
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/map/1_export.py b/code/nel/tools/build_gamedata/processes/map/1_export.py
index 3432eddd6..a77d32082 100755
--- a/code/nel/tools/build_gamedata/processes/map/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/map/1_export.py
@@ -8,7 +8,7 @@
# Export map
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/map/2_build.py b/code/nel/tools/build_gamedata/processes/map/2_build.py
index 91b7ffbb5..82a777410 100755
--- a/code/nel/tools/build_gamedata/processes/map/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/map/2_build.py
@@ -8,7 +8,7 @@
# Build map
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/map/3_install.py b/code/nel/tools/build_gamedata/processes/map/3_install.py
index 29a8cbd2f..a5a56bb94 100755
--- a/code/nel/tools/build_gamedata/processes/map/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/map/3_install.py
@@ -8,7 +8,7 @@
# Install map
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/pacs_prim/0_setup.py b/code/nel/tools/build_gamedata/processes/pacs_prim/0_setup.py
index 5692df9aa..e9bdb5918 100755
--- a/code/nel/tools/build_gamedata/processes/pacs_prim/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/pacs_prim/0_setup.py
@@ -8,7 +8,7 @@
# Setup pacs_prim
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/pacs_prim/1_export.py b/code/nel/tools/build_gamedata/processes/pacs_prim/1_export.py
index 511467d3c..4fb464704 100755
--- a/code/nel/tools/build_gamedata/processes/pacs_prim/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/pacs_prim/1_export.py
@@ -12,7 +12,7 @@
# Export pacs_prim
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/pacs_prim/2_build.py b/code/nel/tools/build_gamedata/processes/pacs_prim/2_build.py
index 455546657..d50aa6b8c 100755
--- a/code/nel/tools/build_gamedata/processes/pacs_prim/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/pacs_prim/2_build.py
@@ -8,7 +8,7 @@
# Build pacs_prim
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/pacs_prim/3_install.py b/code/nel/tools/build_gamedata/processes/pacs_prim/3_install.py
index a696f73ae..da932c469 100755
--- a/code/nel/tools/build_gamedata/processes/pacs_prim/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/pacs_prim/3_install.py
@@ -8,7 +8,7 @@
# Install pacs_prim
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/pacs_prim_list/0_setup.py b/code/nel/tools/build_gamedata/processes/pacs_prim_list/0_setup.py
index c761b033c..6be8fbea3 100755
--- a/code/nel/tools/build_gamedata/processes/pacs_prim_list/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/pacs_prim_list/0_setup.py
@@ -8,7 +8,7 @@
# Setup pacs_prim_list
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/pacs_prim_list/1_export.py b/code/nel/tools/build_gamedata/processes/pacs_prim_list/1_export.py
index 0876366c2..3f250406b 100755
--- a/code/nel/tools/build_gamedata/processes/pacs_prim_list/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/pacs_prim_list/1_export.py
@@ -8,7 +8,7 @@
# Export pacs_prim_list
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/pacs_prim_list/2_build.py b/code/nel/tools/build_gamedata/processes/pacs_prim_list/2_build.py
index 169b8ee76..3c1f3cdbb 100755
--- a/code/nel/tools/build_gamedata/processes/pacs_prim_list/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/pacs_prim_list/2_build.py
@@ -8,7 +8,7 @@
# Build pacs_prim_list
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/pacs_prim_list/3_install.py b/code/nel/tools/build_gamedata/processes/pacs_prim_list/3_install.py
index 50d920fe1..73656122c 100755
--- a/code/nel/tools/build_gamedata/processes/pacs_prim_list/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/pacs_prim_list/3_install.py
@@ -8,7 +8,7 @@
# Install pacs_prim_list
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/properties/0_setup.py b/code/nel/tools/build_gamedata/processes/properties/0_setup.py
index 4118cfeb3..1a0889caf 100755
--- a/code/nel/tools/build_gamedata/processes/properties/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/properties/0_setup.py
@@ -8,7 +8,7 @@
# Setup properties
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/properties/1_export.py b/code/nel/tools/build_gamedata/processes/properties/1_export.py
index 1c91b20db..809dc440c 100755
--- a/code/nel/tools/build_gamedata/processes/properties/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/properties/1_export.py
@@ -8,7 +8,7 @@
# Export properties
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/properties/2_build.py b/code/nel/tools/build_gamedata/processes/properties/2_build.py
index beb9ef8d5..721d58174 100755
--- a/code/nel/tools/build_gamedata/processes/properties/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/properties/2_build.py
@@ -8,7 +8,7 @@
# Build properties
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/properties/3_install.py b/code/nel/tools/build_gamedata/processes/properties/3_install.py
index 5a0321140..79da071c0 100755
--- a/code/nel/tools/build_gamedata/processes/properties/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/properties/3_install.py
@@ -8,7 +8,7 @@
# Install properties
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ps/0_setup.py b/code/nel/tools/build_gamedata/processes/ps/0_setup.py
index 673cfc976..c602cb8fe 100755
--- a/code/nel/tools/build_gamedata/processes/ps/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/ps/0_setup.py
@@ -8,7 +8,7 @@
# Setup ps
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ps/1_export.py b/code/nel/tools/build_gamedata/processes/ps/1_export.py
index f1059f7d3..e30385335 100755
--- a/code/nel/tools/build_gamedata/processes/ps/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/ps/1_export.py
@@ -8,7 +8,7 @@
# Export ps
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ps/2_build.py b/code/nel/tools/build_gamedata/processes/ps/2_build.py
index 205f7bc23..71c45e42b 100755
--- a/code/nel/tools/build_gamedata/processes/ps/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/ps/2_build.py
@@ -8,7 +8,7 @@
# Build ps
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/ps/3_install.py b/code/nel/tools/build_gamedata/processes/ps/3_install.py
index 28efa96b2..56713d999 100755
--- a/code/nel/tools/build_gamedata/processes/ps/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/ps/3_install.py
@@ -8,7 +8,7 @@
# Install ps
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/rbank/0_setup.py b/code/nel/tools/build_gamedata/processes/rbank/0_setup.py
index 4c11c57b1..94bdb1151 100755
--- a/code/nel/tools/build_gamedata/processes/rbank/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/rbank/0_setup.py
@@ -8,7 +8,7 @@
# Setup rbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/rbank/1_export.py b/code/nel/tools/build_gamedata/processes/rbank/1_export.py
index ea078d41d..4b5667961 100755
--- a/code/nel/tools/build_gamedata/processes/rbank/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/rbank/1_export.py
@@ -12,7 +12,7 @@
# Export rbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/rbank/2_build.py b/code/nel/tools/build_gamedata/processes/rbank/2_build.py
index 0da42fed5..b38aea94b 100755
--- a/code/nel/tools/build_gamedata/processes/rbank/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/rbank/2_build.py
@@ -8,7 +8,7 @@
# Build rbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/rbank/3_install.py b/code/nel/tools/build_gamedata/processes/rbank/3_install.py
index 8a548d7c3..c806c79f9 100755
--- a/code/nel/tools/build_gamedata/processes/rbank/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/rbank/3_install.py
@@ -8,7 +8,7 @@
# Install rbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/shape/0_setup.py b/code/nel/tools/build_gamedata/processes/shape/0_setup.py
index 941d07531..25eabed9e 100755
--- a/code/nel/tools/build_gamedata/processes/shape/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/shape/0_setup.py
@@ -8,7 +8,7 @@
# Setup shape
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/shape/1_export.py b/code/nel/tools/build_gamedata/processes/shape/1_export.py
index 92bb9c3e9..f30338264 100755
--- a/code/nel/tools/build_gamedata/processes/shape/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/shape/1_export.py
@@ -8,7 +8,7 @@
# Export shape
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/shape/2_build.py b/code/nel/tools/build_gamedata/processes/shape/2_build.py
index 1a9f668f8..f261473fe 100755
--- a/code/nel/tools/build_gamedata/processes/shape/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/shape/2_build.py
@@ -8,7 +8,7 @@
# Build shape
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/shape/3_install.py b/code/nel/tools/build_gamedata/processes/shape/3_install.py
index f6265a1a6..d96770c28 100755
--- a/code/nel/tools/build_gamedata/processes/shape/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/shape/3_install.py
@@ -8,7 +8,7 @@
# Install shape
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sheet_id/0_setup.py b/code/nel/tools/build_gamedata/processes/sheet_id/0_setup.py
index 521913fbf..94fd8210f 100755
--- a/code/nel/tools/build_gamedata/processes/sheet_id/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/sheet_id/0_setup.py
@@ -8,7 +8,7 @@
# Setup sheet_id
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sheet_id/1_export.py b/code/nel/tools/build_gamedata/processes/sheet_id/1_export.py
index 4894babf1..29387c55f 100755
--- a/code/nel/tools/build_gamedata/processes/sheet_id/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/sheet_id/1_export.py
@@ -8,7 +8,7 @@
# Export sheet_id
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sheet_id/2_build.py b/code/nel/tools/build_gamedata/processes/sheet_id/2_build.py
index b29914913..51fdefc0f 100755
--- a/code/nel/tools/build_gamedata/processes/sheet_id/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/sheet_id/2_build.py
@@ -8,7 +8,7 @@
# Build sheet_id
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sheet_id/3_install.py b/code/nel/tools/build_gamedata/processes/sheet_id/3_install.py
index 914b9863c..9f27b0dae 100755
--- a/code/nel/tools/build_gamedata/processes/sheet_id/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/sheet_id/3_install.py
@@ -8,7 +8,7 @@
# Install sheet_id
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sheets/0_setup.py b/code/nel/tools/build_gamedata/processes/sheets/0_setup.py
index 7dc36ab9d..0ad1a3655 100755
--- a/code/nel/tools/build_gamedata/processes/sheets/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/sheets/0_setup.py
@@ -8,7 +8,7 @@
# Setup sheets
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sheets/1_export.py b/code/nel/tools/build_gamedata/processes/sheets/1_export.py
index ca94394c9..1a8cc51af 100755
--- a/code/nel/tools/build_gamedata/processes/sheets/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/sheets/1_export.py
@@ -8,7 +8,7 @@
# Export sheets
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sheets/2_build.py b/code/nel/tools/build_gamedata/processes/sheets/2_build.py
index d9690f52a..ea8f899d2 100755
--- a/code/nel/tools/build_gamedata/processes/sheets/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/sheets/2_build.py
@@ -8,7 +8,7 @@
# Build sheets
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sheets/3_install.py b/code/nel/tools/build_gamedata/processes/sheets/3_install.py
index 23f17a6dc..ed6efaffd 100755
--- a/code/nel/tools/build_gamedata/processes/sheets/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/sheets/3_install.py
@@ -8,7 +8,7 @@
# Install sheets
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/skel/0_setup.py b/code/nel/tools/build_gamedata/processes/skel/0_setup.py
index ed4471d9b..7394babdd 100755
--- a/code/nel/tools/build_gamedata/processes/skel/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/skel/0_setup.py
@@ -8,7 +8,7 @@
# Setup skel
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/skel/1_export.py b/code/nel/tools/build_gamedata/processes/skel/1_export.py
index b0c54cb23..5f065fe5d 100755
--- a/code/nel/tools/build_gamedata/processes/skel/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/skel/1_export.py
@@ -12,7 +12,7 @@
# Export skel
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/skel/2_build.py b/code/nel/tools/build_gamedata/processes/skel/2_build.py
index 090b1a774..86bfce1c8 100755
--- a/code/nel/tools/build_gamedata/processes/skel/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/skel/2_build.py
@@ -8,7 +8,7 @@
# Build skel
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/skel/3_install.py b/code/nel/tools/build_gamedata/processes/skel/3_install.py
index fd5bb9aa0..f70a0258f 100755
--- a/code/nel/tools/build_gamedata/processes/skel/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/skel/3_install.py
@@ -8,7 +8,7 @@
# Install skel
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/smallbank/0_setup.py b/code/nel/tools/build_gamedata/processes/smallbank/0_setup.py
index 8f7955d42..751077ba3 100755
--- a/code/nel/tools/build_gamedata/processes/smallbank/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/smallbank/0_setup.py
@@ -8,7 +8,7 @@
# Setup smallbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/smallbank/1_export.py b/code/nel/tools/build_gamedata/processes/smallbank/1_export.py
index 82c998eb9..b7d3c6c24 100755
--- a/code/nel/tools/build_gamedata/processes/smallbank/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/smallbank/1_export.py
@@ -8,7 +8,7 @@
# Export smallbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/smallbank/2_build.py b/code/nel/tools/build_gamedata/processes/smallbank/2_build.py
index ccebd0f3c..a13d1e843 100755
--- a/code/nel/tools/build_gamedata/processes/smallbank/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/smallbank/2_build.py
@@ -8,7 +8,7 @@
# Build smallbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/smallbank/3_install.py b/code/nel/tools/build_gamedata/processes/smallbank/3_install.py
index dd71d226e..310cdaa52 100755
--- a/code/nel/tools/build_gamedata/processes/smallbank/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/smallbank/3_install.py
@@ -8,7 +8,7 @@
# Install smallbank
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sound/0_setup.py b/code/nel/tools/build_gamedata/processes/sound/0_setup.py
index d668b06b6..178a810ae 100755
--- a/code/nel/tools/build_gamedata/processes/sound/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/sound/0_setup.py
@@ -8,7 +8,7 @@
# Setup sound
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sound/1_export.py b/code/nel/tools/build_gamedata/processes/sound/1_export.py
index 3d7e17276..4fd98abb4 100755
--- a/code/nel/tools/build_gamedata/processes/sound/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/sound/1_export.py
@@ -8,7 +8,7 @@
# Export sound
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sound/2_build.py b/code/nel/tools/build_gamedata/processes/sound/2_build.py
index 02e28e42c..56abeedd7 100755
--- a/code/nel/tools/build_gamedata/processes/sound/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/sound/2_build.py
@@ -8,7 +8,7 @@
# Build sound
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/sound/3_install.py b/code/nel/tools/build_gamedata/processes/sound/3_install.py
index e27f02a62..dc32c30e1 100755
--- a/code/nel/tools/build_gamedata/processes/sound/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/sound/3_install.py
@@ -8,7 +8,7 @@
# Install sound
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/swt/0_setup.py b/code/nel/tools/build_gamedata/processes/swt/0_setup.py
index 90a96010c..4b947f496 100755
--- a/code/nel/tools/build_gamedata/processes/swt/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/swt/0_setup.py
@@ -8,7 +8,7 @@
# Setup swt
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/swt/1_export.py b/code/nel/tools/build_gamedata/processes/swt/1_export.py
index 9b1913f36..0803f1246 100755
--- a/code/nel/tools/build_gamedata/processes/swt/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/swt/1_export.py
@@ -12,7 +12,7 @@
# Export swt
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/swt/2_build.py b/code/nel/tools/build_gamedata/processes/swt/2_build.py
index 8359dea29..7ae606a0a 100755
--- a/code/nel/tools/build_gamedata/processes/swt/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/swt/2_build.py
@@ -8,7 +8,7 @@
# Build swt
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/swt/3_install.py b/code/nel/tools/build_gamedata/processes/swt/3_install.py
index b71ed0caa..b70e623f5 100755
--- a/code/nel/tools/build_gamedata/processes/swt/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/swt/3_install.py
@@ -8,7 +8,7 @@
# Install swt
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/tiles/0_setup.py b/code/nel/tools/build_gamedata/processes/tiles/0_setup.py
index 30ddf8d28..e7a093723 100755
--- a/code/nel/tools/build_gamedata/processes/tiles/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/tiles/0_setup.py
@@ -8,7 +8,7 @@
# Setup tiles
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/tiles/1_export.py b/code/nel/tools/build_gamedata/processes/tiles/1_export.py
index 823935c18..9459b81b2 100755
--- a/code/nel/tools/build_gamedata/processes/tiles/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/tiles/1_export.py
@@ -8,7 +8,7 @@
# Export tiles
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/tiles/2_build.py b/code/nel/tools/build_gamedata/processes/tiles/2_build.py
index 9af276464..af1349ccf 100755
--- a/code/nel/tools/build_gamedata/processes/tiles/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/tiles/2_build.py
@@ -8,7 +8,7 @@
# Build tiles
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/tiles/3_install.py b/code/nel/tools/build_gamedata/processes/tiles/3_install.py
index 402fbcdba..a9a31187e 100755
--- a/code/nel/tools/build_gamedata/processes/tiles/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/tiles/3_install.py
@@ -8,7 +8,7 @@
# Install tiles
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/veget/0_setup.py b/code/nel/tools/build_gamedata/processes/veget/0_setup.py
index 7a890560c..222bc39bb 100755
--- a/code/nel/tools/build_gamedata/processes/veget/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/veget/0_setup.py
@@ -8,7 +8,7 @@
# Setup veget
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/veget/1_export.py b/code/nel/tools/build_gamedata/processes/veget/1_export.py
index 04d3dc06b..b2f8a7c57 100755
--- a/code/nel/tools/build_gamedata/processes/veget/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/veget/1_export.py
@@ -12,7 +12,7 @@
# Export veget
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/veget/2_build.py b/code/nel/tools/build_gamedata/processes/veget/2_build.py
index 7fb69e665..e3358fd39 100755
--- a/code/nel/tools/build_gamedata/processes/veget/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/veget/2_build.py
@@ -8,7 +8,7 @@
# Build veget
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/veget/3_install.py b/code/nel/tools/build_gamedata/processes/veget/3_install.py
index 14b8b33bd..5801e6392 100755
--- a/code/nel/tools/build_gamedata/processes/veget/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/veget/3_install.py
@@ -8,7 +8,7 @@
# Install veget
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/vegetset/0_setup.py b/code/nel/tools/build_gamedata/processes/vegetset/0_setup.py
index 2a9364fd8..c46c11b66 100755
--- a/code/nel/tools/build_gamedata/processes/vegetset/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/vegetset/0_setup.py
@@ -8,7 +8,7 @@
# Setup vegetset
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/vegetset/1_export.py b/code/nel/tools/build_gamedata/processes/vegetset/1_export.py
index 5bd7c62fa..03d70f59d 100755
--- a/code/nel/tools/build_gamedata/processes/vegetset/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/vegetset/1_export.py
@@ -8,7 +8,7 @@
# Export vegetset
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/vegetset/2_build.py b/code/nel/tools/build_gamedata/processes/vegetset/2_build.py
index f46ba5f65..0aab2ecee 100755
--- a/code/nel/tools/build_gamedata/processes/vegetset/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/vegetset/2_build.py
@@ -8,7 +8,7 @@
# Build vegetset
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/vegetset/3_install.py b/code/nel/tools/build_gamedata/processes/vegetset/3_install.py
index 107d0e516..25ebd7677 100755
--- a/code/nel/tools/build_gamedata/processes/vegetset/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/vegetset/3_install.py
@@ -8,7 +8,7 @@
# Install vegetset
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/zone/0_setup.py b/code/nel/tools/build_gamedata/processes/zone/0_setup.py
index 7ecfe614c..ab85cb515 100755
--- a/code/nel/tools/build_gamedata/processes/zone/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/zone/0_setup.py
@@ -8,7 +8,7 @@
# Setup zone
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/zone/1_export.py b/code/nel/tools/build_gamedata/processes/zone/1_export.py
index 2897ccc0e..94a90900c 100755
--- a/code/nel/tools/build_gamedata/processes/zone/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/zone/1_export.py
@@ -12,7 +12,7 @@
# Export zone
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/zone/2_build.py b/code/nel/tools/build_gamedata/processes/zone/2_build.py
index 31ad7d6e0..ad2f052fd 100755
--- a/code/nel/tools/build_gamedata/processes/zone/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/zone/2_build.py
@@ -8,7 +8,7 @@
# Build zone
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/zone/3_install.py b/code/nel/tools/build_gamedata/processes/zone/3_install.py
index 6afba7955..0326abf75 100755
--- a/code/nel/tools/build_gamedata/processes/zone/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/zone/3_install.py
@@ -8,7 +8,7 @@
# Install zone
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/zone_light/0_setup.py b/code/nel/tools/build_gamedata/processes/zone_light/0_setup.py
index 58beff27d..44c67935d 100755
--- a/code/nel/tools/build_gamedata/processes/zone_light/0_setup.py
+++ b/code/nel/tools/build_gamedata/processes/zone_light/0_setup.py
@@ -8,7 +8,7 @@
# Setup zone_light
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/zone_light/1_export.py b/code/nel/tools/build_gamedata/processes/zone_light/1_export.py
index 615a4dffa..016fe826b 100755
--- a/code/nel/tools/build_gamedata/processes/zone_light/1_export.py
+++ b/code/nel/tools/build_gamedata/processes/zone_light/1_export.py
@@ -8,7 +8,7 @@
# Export zone_light
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/zone_light/2_build.py b/code/nel/tools/build_gamedata/processes/zone_light/2_build.py
index 8de63f4d8..84d2b26a4 100755
--- a/code/nel/tools/build_gamedata/processes/zone_light/2_build.py
+++ b/code/nel/tools/build_gamedata/processes/zone_light/2_build.py
@@ -8,7 +8,7 @@
# Build zone_light
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/nel/tools/build_gamedata/processes/zone_light/3_install.py b/code/nel/tools/build_gamedata/processes/zone_light/3_install.py
index 6b1b14c63..4e4d231a4 100755
--- a/code/nel/tools/build_gamedata/processes/zone_light/3_install.py
+++ b/code/nel/tools/build_gamedata/processes/zone_light/3_install.py
@@ -8,7 +8,7 @@
# Install zone_light
#
# NeL - MMORPG Framework
-# Copyright (C) 2010 Winch Gate Property Limited
+# Copyright (C) 2009-2014 by authors
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
diff --git a/code/ryzom/client/src/interface_v3/action_phrase_faber.cpp b/code/ryzom/client/src/interface_v3/action_phrase_faber.cpp
index 81ae893bc..a1506bd8b 100644
--- a/code/ryzom/client/src/interface_v3/action_phrase_faber.cpp
+++ b/code/ryzom/client/src/interface_v3/action_phrase_faber.cpp
@@ -1688,29 +1688,30 @@ void CActionPhraseFaber::updateItemResult()
craftSuccessModifier = nodeCSM->getValue32();
}
// With the faber plan skill
- sint success= pPM->getCraftPhraseSuccessRate(pPM->getPhrase(phraseSlot), _ExecuteFromItemPlanBrick->getSkill(), minLevel);
+ sint success= pPM->getCraftPhraseSuccessRate(pPM->getPhrase(phraseSlot), _ExecuteFromItemPlanBrick->getSkill(), minLevel, 0);
+ sint bonus = pPM->getCraftPhraseSuccessRate(pPM->getPhrase(phraseSlot), _ExecuteFromItemPlanBrick->getSkill(), minLevel, (sint) craftSuccessModifier) - success;
string successStr;
- if( craftSuccessModifier == 0 )
+ if( bonus == 0 )
{
successStr = toString("@{FFFF}") + toString(success);
}
else
- if( craftSuccessModifier > 0 ) // bonus
+ if( bonus > 0 ) // bonus
{
- successStr = "@{0F0F}" + toString(success+craftSuccessModifier)
+ successStr = "@{0F0F}" + toString(success + bonus)
+ "@{FFFF}("
+ toString( success )
+ "@{0F0F} + "
- + toString( craftSuccessModifier )
+ + toString( bonus )
+ "@{FFFF})";
}
else
{
- successStr = "@{E42F}" + toString(success+craftSuccessModifier)
+ successStr = "@{E42F}" + toString(success + bonus)
+ "@{FFFF}("
+ toString( success )
+ "@{E42F} - "
- + toString( craftSuccessModifier )
+ + toString( abs(bonus) )
+ "@{FFFF})";
}
strFindReplace(text, "%success", successStr );
diff --git a/code/ryzom/client/src/interface_v3/sphrase_manager.cpp b/code/ryzom/client/src/interface_v3/sphrase_manager.cpp
index 7ef59dc1c..790657e2e 100644
--- a/code/ryzom/client/src/interface_v3/sphrase_manager.cpp
+++ b/code/ryzom/client/src/interface_v3/sphrase_manager.cpp
@@ -1428,7 +1428,7 @@ sint CSPhraseManager::getPhraseSuccessRate(const CSPhraseCom &phrase)
}
// ***************************************************************************
-sint CSPhraseManager::getCraftPhraseSuccessRate(const CSPhraseCom &phrase, SKILLS::ESkills skill, uint minMpLevel)
+sint CSPhraseManager::getCraftPhraseSuccessRate(const CSPhraseCom &phrase, SKILLS::ESkills skill, uint minMpLevel, sint successModifier)
{
CSkillManager *pSM= CSkillManager::getInstance();
@@ -1438,6 +1438,9 @@ sint CSPhraseManager::getCraftPhraseSuccessRate(const CSPhraseCom &phrase, SK
// take skill value of the skill
sint skillValue= pSM->getBestSkillValue(skill);
+ // apply success rate modifier from server
+ skillValue += successModifier;
+
// return the sr according to this skill
return getPhraseSuccessRate(STCraft, phrase, skillValue, minMpLevel);
}
diff --git a/code/ryzom/client/src/interface_v3/sphrase_manager.h b/code/ryzom/client/src/interface_v3/sphrase_manager.h
index c14b584ab..d4c1b2092 100644
--- a/code/ryzom/client/src/interface_v3/sphrase_manager.h
+++ b/code/ryzom/client/src/interface_v3/sphrase_manager.h
@@ -338,7 +338,7 @@ public:
// Get the Phrase Success Rate %
sint getPhraseSuccessRate(const CSPhraseCom &phrase);
// Get the Phrase Success Rate %. Manually gives the Skill to do the comparison (for craft)
- sint getCraftPhraseSuccessRate(const CSPhraseCom &phrase, SKILLS::ESkills skill, uint minMpLevel);
+ sint getCraftPhraseSuccessRate(const CSPhraseCom &phrase, SKILLS::ESkills skill, uint minMpLevel, sint successModifier);
// Get the Phrase Success Rate %. Manually gives the Skill to do the comparison (for Forage Extraction)
sint getForageExtractionPhraseSuccessRate(const CSPhraseCom &phrase, SKILLS::ESkills skill);
// return the fmt according to forage terrain specializing
diff --git a/code/ryzom/common/data_common/database.xml b/code/ryzom/common/data_common/database.xml
index fc0d1d209..b87dd921b 100644
--- a/code/ryzom/common/data_common/database.xml
+++ b/code/ryzom/common/data_common/database.xml
@@ -1512,6 +1512,8 @@
type="I5" />
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/code/ryzom/common/data_common/r2/ring_map_entry_ponts.txt b/code/ryzom/common/data_common/r2/ring_map_entry_ponts.txt
deleted file mode 100644
index 643a416c7..000000000
--- a/code/ryzom/common/data_common/r2/ring_map_entry_ponts.txt
+++ /dev/null
@@ -1,1068 +0,0 @@
-a1 uiR2_Lakes01 uiR2EntryPoint01 31346 -1310 N
-a1 uiR2_Lakes01 uiR2EntryPoint02 31269 -1238 E
-a1 uiR2_Lakes01 uiR2EntryPoint03 31456 -1379 N
-
-a1 uiR2_Lakes07 uiR2EntryPoint01 36264 -1103 S
-a1 uiR2_Lakes07 uiR2EntryPoint02 36208 -1353 N
-a1 uiR2_Lakes07 uiR2EntryPoint03 36478 -1269 W
-a1 uiR2_Lakes07 uiR2EntryPoint04 36478 -1105 SW
-
-a1 uiR2_Lakes22 uiR2EntryPoint01 32250 -2800 W
-a1 uiR2_Lakes22 uiR2EntryPoint02 31920 -3160 N
-a1 uiR2_Lakes22 uiR2EntryPoint03 32080 -3090 N
-a1 uiR2_Lakes22 uiR2EntryPoint04 32250 -3065 NE
-
-l1 uiR2_Lakes15 uiR2EntryPoint01 34634 -1872 SW
-l1 uiR2_Lakes15 uiR2EntryPoint02 34258 -1991 W
-l1 uiR2_Lakes15 uiR2EntryPoint03 34321 -1860 S
-l1 uiR2_Lakes15 uiR2EntryPoint04 34510 -2060 W
-
-l1 uiR2_Lakes17 uiR2EntryPoint01 36150 -2310 NE
-l1 uiR2_Lakes17 uiR2EntryPoint02 35936 -2243 S
-l1 uiR2_Lakes17 uiR2EntryPoint03 35920 -1844 W
-l1 uiR2_Lakes17 uiR2EntryPoint04 36103 -1923 SW
-l1 uiR2_Lakes17 uiR2EntryPoint05 35895 -1935 S
-
-l1 uiR2_Lakes18 uiR2EntryPoint01 36725 -1993 E
-l1 uiR2_Lakes18 uiR2EntryPoint02 36688 -2159 N
-l1 uiR2_Lakes18 uiR2EntryPoint03 36879 -2217 N
-l1 uiR2_Lakes18 uiR2EntryPoint04 36941 -1970 SW
-
-l1 uiR2_Lakes26 uiR2EntryPoint01 34460 -3120 E
-l1 uiR2_Lakes26 uiR2EntryPoint02 34689 -2756 SW
-l1 uiR2_Lakes26 uiR2EntryPoint03 34681 -3111 N
-l1 uiR2_Lakes26 uiR2EntryPoint04 34671 -2931 N
-
-l1 uiR2_Lakes27 uiR2EntryPoint01 35605 -3080 NW
-l1 uiR2_Lakes27 uiR2EntryPoint02 35520 -2780 S
-l1 uiR2_Lakes27 uiR2EntryPoint03 35133 -2663 SE
-l1 uiR2_Lakes27 uiR2EntryPoint04 35283 -3051 N
-
-l1 uiR2_Lakes38 uiR2EntryPoint01 36720 -3740 S
-l1 uiR2_Lakes38 uiR2EntryPoint02 36751 -4024 NW
-l1 uiR2_Lakes38 uiR2EntryPoint03 36230 -3767 E
-l1 uiR2_Lakes38 uiR2EntryPoint04 36481 -3564 S
-
-l1 uiR2_Lakes39 uiR2EntryPoint01 37510 -3900 N
-l1 uiR2_Lakes39 uiR2EntryPoint02 37299 -3575 SE
-l1 uiR2_Lakes39 uiR2EntryPoint03 37861 -3719 W
-
-l2 uiR2_Lakes03 uiR2EntryPoint01 32961 -1388 N
-l2 uiR2_Lakes03 uiR2EntryPoint02 32784 -1507 NE
-l2 uiR2_Lakes03 uiR2EntryPoint03 33390 -1517 NW
-l2 uiR2_Lakes03 uiR2EntryPoint04 33365 -916 SW
-l2 uiR2_Lakes03 uiR2EntryPoint05 33033 -991 S
-
-l2 uiR2_Lakes08 uiR2EntryPoint01 36991 -1311 E
-l2 uiR2_Lakes08 uiR2EntryPoint02 37197 -1547 NW
-l2 uiR2_Lakes08 uiR2EntryPoint03 37230 -1035 S
-l2 uiR2_Lakes08 uiR2EntryPoint04 37111 -1264 SE
-l2 uiR2_Lakes08 uiR2EntryPoint05 37393 -1285 W
-
-l2 uiR2_Lakes16 uiR2EntryPoint01 35330 -2120 W
-l2 uiR2_Lakes16 uiR2EntryPoint02 35180 -2010 S
-l2 uiR2_Lakes16 uiR2EntryPoint03 35145 -2135 NE
-
-l2 uiR2_Lakes19 uiR2EntryPoint01 37681 -2167 N
-l2 uiR2_Lakes19 uiR2EntryPoint02 37367 -2341 NW
-l2 uiR2_Lakes19 uiR2EntryPoint03 37331 -2070 NE
-l2 uiR2_Lakes19 uiR2EntryPoint04 37521 -1929 S
-l2 uiR2_Lakes19 uiR2EntryPoint05 37773 -2008 W
-
-l2 uiR2_Lakes23 uiR2EntryPoint01 32727 -3120 W
-l2 uiR2_Lakes23 uiR2EntryPoint02 32694 -2802 W
-l2 uiR2_Lakes23 uiR2EntryPoint03 32523 -2995 E
-
-l2 uiR2_Lakes10 uiR2EntryPoint01 38531 -1379 NE
-l2 uiR2_Lakes10 uiR2EntryPoint02 38962 -1092 S
-l2 uiR2_Lakes10 uiR2EntryPoint03 38677 -1146 SE
-l2 uiR2_Lakes10 uiR2EntryPoint04 38953 -1444 NW
-
-l2 uiR2_Lakes11 uiR2EntryPoint01 31531 -2280 NW
-l2 uiR2_Lakes11 uiR2EntryPoint02 31517 -1946 SW
-l2 uiR2_Lakes11 uiR2EntryPoint03 31107 -2130 NE
-l2 uiR2_Lakes11 uiR2EntryPoint04 31203 -1938 SE
-l2 uiR2_Lakes11 uiR2EntryPoint05 31358 -2065 NW
-
-l3 uiR2_Lakes14 uiR2EntryPoint01 33438 -2169 E
-l3 uiR2_Lakes14 uiR2EntryPoint02 33562 -2128 SW
-l3 uiR2_Lakes14 uiR2EntryPoint03 33590 -2230 NW
-
-l3 uiR2_Lakes21 uiR2EntryPoint01 31247 -2790 E
-l3 uiR2_Lakes21 uiR2EntryPoint02 31128 -3031 N
-l3 uiR2_Lakes21 uiR2EntryPoint03 31536 -2778 W
-l3 uiR2_Lakes21 uiR2EntryPoint04 31413 -3101 NE
-l3 uiR2_Lakes21 uiR2EntryPoint05 31306 -3168 NW
-
-l3 uiR2_Lakes31 uiR2EntryPoint01 31295 -4080 N
-l3 uiR2_Lakes31 uiR2EntryPoint02 31425 -3724 SW
-l3 uiR2_Lakes31 uiR2EntryPoint03 31258 -3747 SE
-
-l3 uiR2_Lakes04 uiR2EntryPoint01 33740 -1068 E
-l3 uiR2_Lakes04 uiR2EntryPoint02 34268 -1202 W
-l3 uiR2_Lakes04 uiR2EntryPoint03 34145 -1045 SW
-l3 uiR2_Lakes04 uiR2EntryPoint04 33996 -1283 N
-l3 uiR2_Lakes04 uiR2EntryPoint05 33691 -1206 E
-
-l3 uiR2_Lakes06 uiR2EntryPoint01 35468 -1272 N
-l3 uiR2_Lakes06 uiR2EntryPoint02 35954 -1080 SW
-l3 uiR2_Lakes06 uiR2EntryPoint03 35764 -1026 E
-l3 uiR2_Lakes06 uiR2EntryPoint04 35438 -890 SE
-l3 uiR2_Lakes06 uiR2EntryPoint05 35634 -1288 N
-
-l3 uiR2_Lakes09 uiR2EntryPoint01 37916 -1124 S
-l3 uiR2_Lakes09 uiR2EntryPoint02 37709 -1451 NE
-l3 uiR2_Lakes09 uiR2EntryPoint03 38149 -1051 SW
-l3 uiR2_Lakes09 uiR2EntryPoint04 38073 -1412 NW
-
-l3 uiR2_Lakes20 uiR2EntryPoint01 38155 -2000 E
-l3 uiR2_Lakes20 uiR2EntryPoint02 38290 -1813 E
-l3 uiR2_Lakes20 uiR2EntryPoint03 38488 -1996 W
-l3 uiR2_Lakes20 uiR2EntryPoint04 38289 -2183 S
-
-l4 uiR2_Lakes33 uiR2EntryPoint01 32370 -3880 N
-l4 uiR2_Lakes33 uiR2EntryPoint02 32447 -3577 SE
-l4 uiR2_Lakes33 uiR2EntryPoint03 32561 -3774 SW
-l4 uiR2_Lakes33 uiR2EntryPoint04 32716 -3591 S
-l4 uiR2_Lakes33 uiR2EntryPoint05 32721 -3914 N
-
-l4 uiR2_Lakes02 uiR2EntryPoint01 32059 -1392 N
-l4 uiR2_Lakes02 uiR2EntryPoint02 32267 -1181 W
-l4 uiR2_Lakes02 uiR2EntryPoint03 32053 -1159 SE
-
-l4 uiR2_Lakes05 uiR2EntryPoint01 34650 -1133 NE
-l4 uiR2_Lakes05 uiR2EntryPoint02 35018 -1280 SW
-l4 uiR2_Lakes05 uiR2EntryPoint03 34984 -889 SW
-l4 uiR2_Lakes05 uiR2EntryPoint04 34769 -1166 NE
-
-l4 uiR2_Lakes12 uiR2EntryPoint01 32040 -2368 N
-l4 uiR2_Lakes12 uiR2EntryPoint02 32401 -2210 SW
-l4 uiR2_Lakes12 uiR2EntryPoint03 32019 -1939 S
-l4 uiR2_Lakes12 uiR2EntryPoint04 31891 -2241 E
-
-l4 uiR2_Lakes24 uiR2EntryPoint01 33350 -3120 N
-l4 uiR2_Lakes24 uiR2EntryPoint02 33200 -2865 N
-l4 uiR2_Lakes24 uiR2EntryPoint03 33450 -2950 W
-
-l4 uiR2_Lakes34 uiR2EntryPoint01 33520 -3910 N
-l4 uiR2_Lakes34 uiR2EntryPoint02 33206 -3990 W
-l4 uiR2_Lakes34 uiR2EntryPoint03 33276 -3784 N
-l4 uiR2_Lakes34 uiR2EntryPoint04 33619 -3638 NW
-l4 uiR2_Lakes34 uiR2EntryPoint05 33335 -3829 NE
-
-o1 uiR2_Lakes25 uiR2EntryPoint01 33980 -3110 N
-o1 uiR2_Lakes25 uiR2EntryPoint02 33900 -2990 NE
-o1 uiR2_Lakes25 uiR2EntryPoint03 34105 -2760 SW
-
-o1 uiR2_Lakes28 uiR2EntryPoint01 36480 -3100 N
-o1 uiR2_Lakes28 uiR2EntryPoint02 36146 -2679 SE
-o1 uiR2_Lakes28 uiR2EntryPoint03 36324 -2871 S
-
-o1 uiR2_Lakes29 uiR2EntryPoint01 37500 -3110 N
-o1 uiR2_Lakes29 uiR2EntryPoint02 37078 -2937 SW
-o1 uiR2_Lakes29 uiR2EntryPoint03 37389 -2802 S
-
-o1 uiR2_Lakes30 uiR2EntryPoint01 38100 -2850 E
-o1 uiR2_Lakes30 uiR2EntryPoint02 38414 -2715 S
-o1 uiR2_Lakes30 uiR2EntryPoint03 38489 -3116 NW
-
-o1 uiR2_Lakes32 uiR2EntryPoint01 31900 -3600 E
-o1 uiR2_Lakes32 uiR2EntryPoint02 32108 -3832 N
-o1 uiR2_Lakes32 uiR2EntryPoint03 32112 -3672 W
-
-o1 uiR2_Lakes35 uiR2EntryPoint01 34200 -4080 E
-o1 uiR2_Lakes35 uiR2EntryPoint02 34145 -3645 SE
-o1 uiR2_Lakes35 uiR2EntryPoint03 34387 -3988 S
-
-o1 uiR2_Lakes36 uiR2EntryPoint01 34960 -3770 N
-o1 uiR2_Lakes36 uiR2EntryPoint02 35149 -3703 SW
-o1 uiR2_Lakes36 uiR2EntryPoint03 34957 -3586 S
-
-o1 uiR2_Lakes37 uiR2EntryPoint01 35760 -3750 N
-o1 uiR2_Lakes37 uiR2EntryPoint02 35577 -3640 SE
-o1 uiR2_Lakes37 uiR2EntryPoint03 35912 -3874 N
-o1 uiR2_Lakes37 uiR2EntryPoint04 35902 -3589 SE
-
-o1 uiR2_Lakes40 uiR2EntryPoint01 38180 -3470 SE
-o1 uiR2_Lakes40 uiR2EntryPoint01 38416 -3819 NE
-o1 uiR2_Lakes40 uiR2EntryPoint01 38151 -3740 N
-
-
-//z1 uiR2_Lakes13 uiR2EntryPoint01 32479 -2298 E
-//z1 uiR2_Lakes13 uiR2EntryPoint02 32880 -2080 S
-//z1 uiR2_Lakes13 uiR2EntryPoint03 33050 -2265 NW
-
-// Desert
-
-
-a1 uiR2_Deserts03 uiR2EntryPoint01 22791 -1289 N
-a1 uiR2_Deserts03 uiR2EntryPoint02 23041 -1284 NW
-a1 uiR2_Deserts03 uiR2EntryPoint03 22873 -1110 SE
-
-a1 uiR2_Deserts21 uiR2EntryPoint01 25980 -2015 E
-a1 uiR2_Deserts21 uiR2EntryPoint02 26452 -1963 W
-a1 uiR2_Deserts21 uiR2EntryPoint03 26353 -1872 SW
-a1 uiR2_Deserts21 uiR2EntryPoint04 26214 -1961 S
-
-a1 uiR2_Deserts32 uiR2EntryPoint01 28070 -2340 E
-a1 uiR2_Deserts32 uiR2EntryPoint02 28240 -2719 N
-a1 uiR2_Deserts32 uiR2EntryPoint03 28318 -2643 W
-a1 uiR2_Deserts32 uiR2EntryPoint04 28293 -2445 W
-
-d1 uiR2_Deserts02 uiR2EntryPoint01 22383 -1512 N
-d1 uiR2_Deserts02 uiR2EntryPoint02 22454 -1186 SW
-d1 uiR2_Deserts02 uiR2EntryPoint03 22062 -1050 S
-d1 uiR2_Deserts02 uiR2EntryPoint04 22072 -1289 NE
-
-d1 uiR2_Deserts10 uiR2EntryPoint01 28923 -1434 N
-d1 uiR2_Deserts10 uiR2EntryPoint02 29217 -1371 E
-d1 uiR2_Deserts10 uiR2EntryPoint03 28901 -1115 SW
-
-d1 uiR2_Deserts22 uiR2EntryPoint01 26950 -2015 N
-d1 uiR2_Deserts22 uiR2EntryPoint02 26937 -1864 S
-d1 uiR2_Deserts22 uiR2EntryPoint03 27089 -2042 NW
-
-d1 uiR2_Deserts23 uiR2EntryPoint01 27600 -1924 S
-d1 uiR2_Deserts23 uiR2EntryPoint02 27575 -2351 NW
-d1 uiR2_Deserts23 uiR2EntryPoint03 27545 -2211 N
-d1 uiR2_Deserts23 uiR2EntryPoint04 27442 -1866 S
-
-d1 uiR2_Deserts28 uiR2EntryPoint01 25050 -2650 S
-d1 uiR2_Deserts28 uiR2EntryPoint02 24910 -2819 E
-d1 uiR2_Deserts28 uiR2EntryPoint03 24881 -2720 N
-d1 uiR2_Deserts28 uiR2EntryPoint04 24915 -2511 SW
-
-d1 uiR2_Deserts29 uiR2EntryPoint01 25880 -2630 E
-d1 uiR2_Deserts29 uiR2EntryPoint02 26022 -2374 SW
-d1 uiR2_Deserts29 uiR2EntryPoint03 26156 -2560 N
-d1 uiR2_Deserts29 uiR2EntryPoint04 26163 -2402 S
-
-d1 uiR2_Deserts31 uiR2EntryPoint01 27760 -2700 N
-d1 uiR2_Deserts31 uiR2EntryPoint02 27404 -2588 S
-d1 uiR2_Deserts31 uiR2EntryPoint03 27538 -2606 S
-d1 uiR2_Deserts31 uiR2EntryPoint04 27413 -2744 NE
-
-d1 uiR2_Deserts05 uiR2EntryPoint01 24257 -1520 NE
-d1 uiR2_Deserts05 uiR2EntryPoint02 24593 -1447 N
-d1 uiR2_Deserts05 uiR2EntryPoint03 24341 -1184 NE
-d1 uiR2_Deserts05 uiR2EntryPoint04 24535 -1054 S
-
-d1 uiR2_Deserts13 uiR2EntryPoint01 28942 -1919 S
-d1 uiR2_Deserts13 uiR2EntryPoint02 28538 -2241 E
-d1 uiR2_Deserts13 uiR2EntryPoint03 28814 -2251 NW
-d1 uiR2_Deserts13 uiR2EntryPoint04 28956 -2079 W
-d1 uiR2_Deserts13 uiR2EntryPoint05 28794 -1912 S
-
-d1 uiR2_Deserts17 uiR2EntryPoint01 23250 -1840 W
-d1 uiR2_Deserts17 uiR2EntryPoint02 23096 -1943 NE
-d1 uiR2_Deserts17 uiR2EntryPoint03 23034 -1839 E
-d1 uiR2_Deserts17 uiR2EntryPoint04 23096 -1713 S
-
-d1 uiR2_Deserts24 uiR2EntryPoint01 27915 -1875 S
-d1 uiR2_Deserts24 uiR2EntryPoint02 28136 -1960 S
-d1 uiR2_Deserts24 uiR2EntryPoint03 28233 -1746 S
-d1 uiR2_Deserts24 uiR2EntryPoint04 28324 -1841 W
-
-d3 uiR2_Deserts27 uiR2EntryPoint01 23305 -2454 E
-d3 uiR2_Deserts27 uiR2EntryPoint02 23313 -2682 N
-d3 uiR2_Deserts27 uiR2EntryPoint03 23464 -2611 N
-d3 uiR2_Deserts27 uiR2EntryPoint04 23496 -2442 SW
-
-d3 uiR2_Deserts04 uiR2EntryPoint01 23452 -1050 SE
-d3 uiR2_Deserts04 uiR2EntryPoint02 23846 -1435 W
-d3 uiR2_Deserts04 uiR2EntryPoint03 23599 -1418 N
-d3 uiR2_Deserts04 uiR2EntryPoint04 23927 -1163 W
-
-d3 uiR2_Deserts11 uiR2EntryPoint01 29554 -1468 N
-d3 uiR2_Deserts11 uiR2EntryPoint02 29922 -1222 W
-d3 uiR2_Deserts11 uiR2EntryPoint03 29622 -1048 S
-d3 uiR2_Deserts11 uiR2EntryPoint04 29615 -1306 SE
-d3 uiR2_Deserts11 uiR2EntryPoint05 29755 -1447 NW
-
-d3 uiR2_Deserts16 uiR2EntryPoint01 22304 -1856 E
-d3 uiR2_Deserts16 uiR2EntryPoint02 22513 -1995 E
-d3 uiR2_Deserts16 uiR2EntryPoint03 22687 -1891 N
-d3 uiR2_Deserts16 uiR2EntryPoint04 22537 -1877 N
-
-d4 uiR2_Deserts18 uiR2EntryPoint01 23730 -2280 N
-d4 uiR2_Deserts18 uiR2EntryPoint02 23666 -2154 NE
-d4 uiR2_Deserts18 uiR2EntryPoint03 23871 -1977 SE
-d4 uiR2_Deserts18 uiR2EntryPoint04 23570 -2056 NE
-d4 uiR2_Deserts18 uiR2EntryPoint05 23834 -1997 W
-
-d4 uiR2_Deserts19 uiR2EntryPoint01 24560 -2015 N
-d4 uiR2_Deserts19 uiR2EntryPoint02 24267 -1998 E
-d4 uiR2_Deserts19 uiR2EntryPoint03 24841 -2002 W
-d4 uiR2_Deserts19 uiR2EntryPoint04 24562 -1914 S
-
-d4 uiR2_Deserts09 uiR2EntryPoint01 27814 -1375 N
-d4 uiR2_Deserts09 uiR2EntryPoint02 27471 -1503 E
-d4 uiR2_Deserts09 uiR2EntryPoint03 27609 -1197 E
-d4 uiR2_Deserts09 uiR2EntryPoint04 27730 -1088 S
-d4 uiR2_Deserts09 uiR2EntryPoint05 27529 -1014 SE
-
-d4 uiR2_Deserts14 uiR2EntryPoint01 30629 -2300 N
-// d4 uiR2_Deserts14 uiR2EntryPoint04 30747 -2023 SW
-d4 uiR2_Deserts14 uiR2EntryPoint02 30577 -1836 S
-d4 uiR2_Deserts14 uiR2EntryPoint03 30347 -2140 SE
-// d4 uiR2_Deserts14 uiR2EntryPoint05 30407 -1835 SE
-
-d5 uiR2_Deserts15 uiR2EntryPoint01 21500 -1830 E
-d5 uiR2_Deserts15 uiR2EntryPoint02 21933 -1833 W
-d5 uiR2_Deserts15 uiR2EntryPoint03 21763 -1839 E
-d5 uiR2_Deserts15 uiR2EntryPoint04 21515 -1913 N
-
-d5 uiR2_Deserts30 uiR2EntryPoint01 26650 -2650 E
-d5 uiR2_Deserts30 uiR2EntryPoint02 27036 -2638 W
-d5 uiR2_Deserts30 uiR2EntryPoint03 26922 -2433 SE
-d5 uiR2_Deserts30 uiR2EntryPoint04 26779 -2504 S
-
-d5 uiR2_Deserts33 uiR2EntryPoint01 29510 -2040 S
-d5 uiR2_Deserts33 uiR2EntryPoint02 29517 -2239 N
-d5 uiR2_Deserts33 uiR2EntryPoint03 29712 -2523 NW
-d5 uiR2_Deserts33 uiR2EntryPoint04 29920 -2157 W
-d5 uiR2_Deserts33 uiR2EntryPoint05 29758 -2318 W
-
-d5 uiR2_Deserts08 uiR2EntryPoint01 26694 -1485 N
-d5 uiR2_Deserts08 uiR2EntryPoint02 26949 -1512 NW
-d5 uiR2_Deserts08 uiR2EntryPoint03 26482 -1366 E
-d5 uiR2_Deserts08 uiR2EntryPoint04 26875 -1010 S
-d5 uiR2_Deserts08 uiR2EntryPoint05 26460 -1205 NE
-
-d6 uiR2_Deserts06 uiR2EntryPoint01 25523 -1500 NW
-d6 uiR2_Deserts06 uiR2EntryPoint02 25419 -1142 SW
-d6 uiR2_Deserts06 uiR2EntryPoint03 25220 -1416 W
-d6 uiR2_Deserts06 uiR2EntryPoint04 25168 -1168 SW
-
-d6 uiR2_Deserts20 uiR2EntryPoint01 25206 -2118 N
-d6 uiR2_Deserts20 uiR2EntryPoint02 25435 -1997 W
-d6 uiR2_Deserts20 uiR2EntryPoint03 25410 -2177 N
-d6 uiR2_Deserts20 uiR2EntryPoint04 25532 -1942 N
-d6 uiR2_Deserts20 uiR2EntryPoint05 25724 -2192 W
-
-d6 uiR2_Deserts25 uiR2EntryPoint01 21845 -2475 S
-d6 uiR2_Deserts25 uiR2EntryPoint02 21891 -2836 W
-d6 uiR2_Deserts25 uiR2EntryPoint03 21442 -2799 NW
-d6 uiR2_Deserts25 uiR2EntryPoint04 21460 -2447 S
-d6 uiR2_Deserts25 uiR2EntryPoint05 21765 -2480 W
-
-d6 uiR2_Deserts26 uiR2EntryPoint01 22627 -2480 W
-d6 uiR2_Deserts26 uiR2EntryPoint02 22352 -2474 E
-d6 uiR2_Deserts26 uiR2EntryPoint03 22925 -2483 W
-d6 uiR2_Deserts26 uiR2EntryPoint04 22790 -2627 N
-
-
-
-o1 uiR2_Deserts07 uiR2EntryPoint01 26051 -1405 N
-o1 uiR2_Deserts07 uiR2EntryPoint02 26153 -1044 S
-o1 uiR2_Deserts07 uiR2EntryPoint03 25855 -1233 E
-o1 uiR2_Deserts07 uiR2EntryPoint04 25818 -1027 SE
-
-o1 uiR2_Deserts12 uiR2EntryPoint01 30818 -1487 NW
-o1 uiR2_Deserts12 uiR2EntryPoint02 30726 -1023 S
-o1 uiR2_Deserts12 uiR2EntryPoint03 30369 -1083 SE
-o1 uiR2_Deserts12 uiR2EntryPoint04 30389 -1307 E
-o1 uiR2_Deserts12 uiR2EntryPoint05 30539 -1440 NW
-
-
-
-//z1 uiR2_Deserts01 uiR2EntryPoint01 21570 -1363 N
-//z1 uiR2_Deserts01 uiR2EntryPoint02 21340 -1066 SE
-//z1 uiR2_Deserts01 uiR2EntryPoint03 21678 -1129 SW
-//z1 uiR2_Deserts01 uiR2EntryPoint04 21503 -1296 N
-
-
-
-
-// Forest
-
-
-a1 uiR2_Forest04 uiR2EntryPoint01 24213 -11157 W
-a1 uiR2_Forest04 uiR2EntryPoint02 23975 -11225 E
-a1 uiR2_Forest04 uiR2EntryPoint03 23827 -11373 NE
-a1 uiR2_Forest04 uiR2EntryPoint04 24180 -11383 NW
-a1 uiR2_Forest04 uiR2EntryPoint05 23871 -11059 SE
-a1 uiR2_Forest04 uiR2EntryPoint06 24189 -10982 SW
-
-a1 uiR2_Forest05 uiR2EntryPoint01 24752 -11360 N
-a1 uiR2_Forest05 uiR2EntryPoint02 24602 -11060 SE
-a1 uiR2_Forest05 uiR2EntryPoint03 24865 -11100 SW
-a1 uiR2_Forest05 uiR2EntryPoint04 25046 -11197 W
-a1 uiR2_Forest05 uiR2EntryPoint05 24640 -11453 N
-a1 uiR2_Forest05 uiR2EntryPoint06 24537 -11201 E
-
-a1 uiR2_Forest14 uiR2EntryPoint01 21282 -12196 N
-a1 uiR2_Forest14 uiR2EntryPoint02 21276 -11986 S
-a1 uiR2_Forest14 uiR2EntryPoint03 21276 -11766 S
-
-a1 uiR2_Forest27 uiR2EntryPoint01 21173 -12644 W
-a1 uiR2_Forest27 uiR2EntryPoint02 21068 -12561 S
-a1 uiR2_Forest27 uiR2EntryPoint03 21113 -12714 N
-a1 uiR2_Forest27 uiR2EntryPoint04 21119 -12639 S
-
-a1 uiR2_Forest32 uiR2EntryPoint01 24680 -12600 SE
-a1 uiR2_Forest32 uiR2EntryPoint02 24538 -13025 N
-a1 uiR2_Forest32 uiR2EntryPoint03 24822 -13039 N
-a1 uiR2_Forest32 uiR2EntryPoint04 24718 -12889 N
-a1 uiR2_Forest32 uiR2EntryPoint05 24830 -12554 SW
-a1 uiR2_Forest32 uiR2EntryPoint06 24659 -12750 E
-
-f1 uiR2_Forest03 uiR2EntryPoint01 23010 -11209 E
-f1 uiR2_Forest03 uiR2EntryPoint02 23080 -11152 E
-f1 uiR2_Forest03 uiR2EntryPoint03 23400 -11400 NW
-f1 uiR2_Forest03 uiR2EntryPoint04 23400 -11000 SW
-f1 uiR2_Forest03 uiR2EntryPoint05 23000 -11000 SE
-
-f1 uiR2_Forest19 uiR2EntryPoint01 24944 -12220 N
-f1 uiR2_Forest19 uiR2EntryPoint02 25357 -12233 N
-f1 uiR2_Forest19 uiR2EntryPoint03 25265 -12240 W
-f1 uiR2_Forest19 uiR2EntryPoint04 24971 -11947 S
-f1 uiR2_Forest19 uiR2EntryPoint05 25155 -12081 SE
-
-f1 uiR2_Forest23 uiR2EntryPoint01 28465 -12056 W
-f1 uiR2_Forest23 uiR2EntryPoint02 28011 -12082 E
-f1 uiR2_Forest23 uiR2EntryPoint03 28496 -12248 N
-f1 uiR2_Forest23 uiR2EntryPoint04 28375 -11911 SE
-f1 uiR2_Forest23 uiR2EntryPoint05 28194 -12118 E
-f1 uiR2_Forest23 uiR2EntryPoint06 27926 -11988 SE
-
-f1 uiR2_Forest39 uiR2EntryPoint01 30520 -12600 S
-f1 uiR2_Forest39 uiR2EntryPoint02 30143 -12958 E
-f1 uiR2_Forest39 uiR2EntryPoint03 30195 -12559 SE
-f1 uiR2_Forest39 uiR2EntryPoint04 30621 -12958 NW
-f1 uiR2_Forest39 uiR2EntryPoint05 30298 -12694 SE
-f1 uiR2_Forest39 uiR2EntryPoint06 30524 -12799 W
-f1 uiR2_Forest39 uiR2EntryPoint07 30291 -12910 NE
-
-f1 uiR2_Forest41 uiR2EntryPoint01 22140 -13150 SE
-f1 uiR2_Forest41 uiR2EntryPoint02 22401 -13440 NW
-f1 uiR2_Forest41 uiR2EntryPoint03 22263 -13269 S
-f1 uiR2_Forest41 uiR2EntryPoint04 22338 -13133 SW
-f1 uiR2_Forest41 uiR2EntryPoint05 22173 -13476 NE
-
-f1 uiR2_Forest20 uiR2EntryPoint01 26110 -11936 SW
-f1 uiR2_Forest20 uiR2EntryPoint02 25734 -11920 SE
-f1 uiR2_Forest20 uiR2EntryPoint03 25691 -12200 SW
-f1 uiR2_Forest20 uiR2EntryPoint04 26113 -12164 NW
-f1 uiR2_Forest20 uiR2EntryPoint05 25950 -12097 N
-
-f1 uiR2_Forest31 uiR2EntryPoint01 23470 -12600 SE
-f1 uiR2_Forest31 uiR2EntryPoint02 23681 -12712 S
-f1 uiR2_Forest31 uiR2EntryPoint03 23510 -13001 NE
-f1 uiR2_Forest31 uiR2EntryPoint04 23948 -13020 W
-f1 uiR2_Forest31 uiR2EntryPoint05 23598 -12850 SW
-f1 uiR2_Forest31 uiR2EntryPoint06 23995 -12787 W
-f1 uiR2_Forest31 uiR2EntryPoint07 23879 -12573 W
-
-f2 uiR2_Forest34 uiR2EntryPoint01 26220 -12600 SE
-f2 uiR2_Forest34 uiR2EntryPoint02 26613 -12753 NW
-f2 uiR2_Forest34 uiR2EntryPoint03 26413 -12556 S
-f2 uiR2_Forest34 uiR2EntryPoint04 26238 -12888 N
-f2 uiR2_Forest34 uiR2EntryPoint05 26661 -12640 W
-
-f2 uiR2_Forest35 uiR2EntryPoint01 27100 -12600 S
-f2 uiR2_Forest35 uiR2EntryPoint02 27043 -12938 N
-f2 uiR2_Forest35 uiR2EntryPoint03 27222 -12726 W
-
-f2 uiR2_Forest45 uiR2EntryPoint01 26000 -13600 SW
-f2 uiR2_Forest45 uiR2EntryPoint02 25983 -13976 NW
-f2 uiR2_Forest45 uiR2EntryPoint03 25684 -13611 SE
-f2 uiR2_Forest45 uiR2EntryPoint04 25835 -13674 SE
-f2 uiR2_Forest45 uiR2EntryPoint05 26004 -13834 NW
-f2 uiR2_Forest45 uiR2EntryPoint06 25786 -13883 N
-
-f2 uiR2_Forest08 uiR2EntryPoint01 26957 -11364 NE
-f2 uiR2_Forest08 uiR2EntryPoint02 27200 -11178 S
-f2 uiR2_Forest08 uiR2EntryPoint03 27360 -11040 SW
-f2 uiR2_Forest08 uiR2EntryPoint04 27002 -10967 SE
-f2 uiR2_Forest08 uiR2EntryPoint05 27406 -11414 NW
-
-f2 uiR2_Forest12 uiR2EntryPoint01 29919 -11062 N
-f2 uiR2_Forest12 uiR2EntryPoint02 29855 -11111 NE
-f2 uiR2_Forest12 uiR2EntryPoint03 29986 -10996 SW
-
-f2 uiR2_Forest33 uiR2EntryPoint01 25300 -12600 S
-f2 uiR2_Forest33 uiR2EntryPoint02 25598 -13023 N
-f2 uiR2_Forest33 uiR2EntryPoint03 25598 -12632 W
-f2 uiR2_Forest33 uiR2EntryPoint04 25299 -12957 N
-
-f3 uiR2_Forest38 uiR2EntryPoint01 29630 -12600 SW
-f3 uiR2_Forest38 uiR2EntryPoint02 29735 -12939 NW
-f3 uiR2_Forest38 uiR2EntryPoint03 29350 -12779 E
-f3 uiR2_Forest38 uiR2EntryPoint04 29525 -12714 SE
-f3 uiR2_Forest38 uiR2EntryPoint05 29391 -12585 SE
-f3 uiR2_Forest38 uiR2EntryPoint06 29465 -13029 NE
-
-f3 uiR2_Forest46 uiR2EntryPoint01 27000 -13600 S
-f3 uiR2_Forest46 uiR2EntryPoint02 28057 -14465 N
-f3 uiR2_Forest46 uiR2EntryPoint03 26890 -14013 NE
-f3 uiR2_Forest46 uiR2EntryPoint04 27254 -13872 S
-
-f3 uiR2_Forest02 uiR2EntryPoint01 22236 -11281 NE
-f3 uiR2_Forest02 uiR2EntryPoint02 22468 -11198 W
-f3 uiR2_Forest02 uiR2EntryPoint03 22222 -11426 NE
-f3 uiR2_Forest02 uiR2EntryPoint04 22353 -11000 S
-f3 uiR2_Forest02 uiR2EntryPoint05 22446 -11374 NW
-f3 uiR2_Forest02 uiR2EntryPoint06 22137 -11199 E
-f3 uiR2_Forest02 uiR2EntryPoint07 22158 -10990 E
-f3 uiR2_Forest02 uiR2EntryPoint08 22259 -11108 E
-
-f3 uiR2_Forest07 uiR2EntryPoint01 26322 -11348 N
-f3 uiR2_Forest07 uiR2EntryPoint02 26310 -11200 E
-f3 uiR2_Forest07 uiR2EntryPoint03 26545 -11157 W
-f3 uiR2_Forest07 uiR2EntryPoint04 26185 -10967 E
-f3 uiR2_Forest07 uiR2EntryPoint05 26171 -11200 E
-f3 uiR2_Forest07 uiR2EntryPoint06 26446 -11021 SW
-f3 uiR2_Forest07 uiR2EntryPoint07 26222 -11401 NE
-f3 uiR2_Forest07 uiR2EntryPoint08 26498 -11359 W
-
-f3 uiR2_Forest16 uiR2EntryPoint01 23114 -11953 W
-f3 uiR2_Forest16 uiR2EntryPoint02 22883 -11999 E
-f3 uiR2_Forest16 uiR2EntryPoint03 22743 -12136 N
-f3 uiR2_Forest16 uiR2EntryPoint04 22735 -11817 SE
-f3 uiR2_Forest16 uiR2EntryPoint05 23038 -12182 NW
-
-f3 uiR2_Forest18 uiR2EntryPoint01 24326 -11878 SE
-f3 uiR2_Forest18 uiR2EntryPoint02 24390 -12095 N
-f3 uiR2_Forest18 uiR2EntryPoint03 24525 -12090 E
-f3 uiR2_Forest18 uiR2EntryPoint04 24225 -11836 E
-
-f4 uiR2_Forest25 uiR2EntryPoint01 29903 -11886 SO
-f4 uiR2_Forest25 uiR2EntryPoint02 29714 -12046 NE
-f4 uiR2_Forest25 uiR2EntryPoint03 29730 -11826 SE
-f4 uiR2_Forest25 uiR2EntryPoint04 29959 -11791 SW
-
-f4 uiR2_Forest01 uiR2EntryPoint01 21581 -11056 S
-f4 uiR2_Forest01 uiR2EntryPoint02 21733 -11412 NW
-f4 uiR2_Forest01 uiR2EntryPoint03 21648 -11248 S
-f4 uiR2_Forest01 uiR2EntryPoint04 21510 -11443 NE
-f4 uiR2_Forest01 uiR2EntryPoint05 21400 -11247 E
-f4 uiR2_Forest01 uiR2EntryPoint06 21762 -10995 S
-f4 uiR2_Forest01 uiR2EntryPoint07 21855 -11231 W
-f4 uiR2_Forest01 uiR2EntryPoint08 21355 -11040 E
-f4 uiR2_Forest01 uiR2EntryPoint09 21596 -10946 S
-
-f4 uiR2_Forest10 uiR2EntryPoint01 28673 -11191 N
-f4 uiR2_Forest10 uiR2EntryPoint02 28645 -11007 S
-f4 uiR2_Forest10 uiR2EntryPoint03 28566 -11110 E
-
-f4 uiR2_Forest24 uiR2EntryPoint01 29365 -11968 W
-f4 uiR2_Forest24 uiR2EntryPoint02 28963 -11969 E
-f4 uiR2_Forest24 uiR2EntryPoint03 29146 -11817 S
-f4 uiR2_Forest24 uiR2EntryPoint04 29117 -12186 N
-f4 uiR2_Forest24 uiR2EntryPoint05 29139 -12001 N
-
-f4 uiR2_Forest30 uiR2EntryPoint01 22865 -12920 N
-f4 uiR2_Forest30 uiR2EntryPoint02 23068 -12632 W
-f4 uiR2_Forest30 uiR2EntryPoint03 22773 -12782 E
-f4 uiR2_Forest30 uiR2EntryPoint04 22901 -12688 S
-
-f4 uiR2_Forest40 uiR2EntryPoint01 21150 -13350 N
-f4 uiR2_Forest40 uiR2EntryPoint02 21536 -13506 N
-f4 uiR2_Forest40 uiR2EntryPoint03 21359 -13195 S
-f4 uiR2_Forest40 uiR2EntryPoint04 21162 -13553 NE
-f4 uiR2_Forest40 uiR2EntryPoint05 21267 -13280 W
-f4 uiR2_Forest40 uiR2EntryPoint06 21118 -13278 SE
-
-
-
-o1 uiR2_Forest09 uiR2EntryPoint01 28210 -10964 SW
-o1 uiR2_Forest09 uiR2EntryPoint02 28058 -11137 S
-o1 uiR2_Forest09 uiR2EntryPoint03 27855 -11099 E
-
-o1 uiR2_Forest13 uiR2EntryPoint01 30783 -11199 W
-o1 uiR2_Forest13 uiR2EntryPoint02 30569 -10957 S
-o1 uiR2_Forest13 uiR2EntryPoint03 30355 -11071 E
-
-o1 uiR2_Forest21 uiR2EntryPoint01 26547 -12021 E
-o1 uiR2_Forest21 uiR2EntryPoint02 26748 -11980 SW
-o1 uiR2_Forest21 uiR2EntryPoint03 26636 -12215 N
-o1 uiR2_Forest21 uiR2EntryPoint04 26560 -11775 S
-
-o1 uiR2_Forest26 uiR2EntryPoint01 30827 -11803 W
-o1 uiR2_Forest26 uiR2EntryPoint02 30559 -11816 E
-o1 uiR2_Forest26 uiR2EntryPoint03 30347 -11839 E
-
-o1 uiR2_Forest28 uiR2EntryPoint01 21720 -12717 N
-o1 uiR2_Forest28 uiR2EntryPoint02 21559 -12569 S
-o1 uiR2_Forest28 uiR2EntryPoint03 21581 -12739 NE
-o1 uiR2_Forest28 uiR2EntryPoint04 21831 -12579 SW
-o1 uiR2_Forest28 uiR2EntryPoint05 21676 -12643 E
-
-
-
-//z1 uiR2_Forest06 uiR2EntryPoint01 25424 -11251 E
-//z1 uiR2_Forest06 uiR2EntryPoint02 25768 -11068 SW
-//z1 uiR2_Forest06 uiR2EntryPoint03 25616 -11254 NW
-
-//z1 uiR2_Forest11 uiR2EntryPoint01 29400 -11408 NW
-//z1 uiR2_Forest11 uiR2EntryPoint02 29273 -11198 S
-//z1 uiR2_Forest11 uiR2EntryPoint03 29112 -11028 SE
-
-//z1 uiR2_Forest15 uiR2EntryPoint01 22136 -11787 S
-//z1 uiR2_Forest15 uiR2EntryPoint02 21908 -12109 NE
-//z1 uiR2_Forest15 uiR2EntryPoint03 21903 -11855 SE
-//z1 uiR2_Forest15 uiR2EntryPoint04 22206 -12161 NW
-//z1 uiR2_Forest15 uiR2EntryPoint05 22066 -11993 N
-
-//z1 uiR2_Forest17 uiR2EntryPoint01 23533 -11761 SE
-//z1 uiR2_Forest17 uiR2EntryPoint02 23689 -12007 N
-//z1 uiR2_Forest17 uiR2EntryPoint03 23688 -12223 N
-//z1 uiR2_Forest17 uiR2EntryPoint04 23850 -11791 SW
-//z1 uiR2_Forest17 uiR2EntryPoint05 23464 -12000 E
-//z1 uiR2_Forest17 uiR2EntryPoint06 23862 -12143 NW
-
-//z1 uiR2_Forest22 uiR2EntryPoint01 27153 -12009 E
-//z1 uiR2_Forest22 uiR2EntryPoint02 27581 -11992 SW
-//z1 uiR2_Forest22 uiR2EntryPoint03 27374 -12176 N
-//z1 uiR2_Forest22 uiR2EntryPoint04 27381 -11938 S
-//z1 uiR2_Forest22 uiR2EntryPoint05 27260 -12085 E
-//z1 uiR2_Forest22 uiR2EntryPoint06 27444 -12071 W
-
-//z1 uiR2_Forest29 uiR2EntryPoint01 22306 -12674 W
-//z1 uiR2_Forest29 uiR2EntryPoint02 22404 -12746 N
-//z1 uiR2_Forest29 uiR2EntryPoint03 22152 -12719 NE
-
-//z1 uiR2_Forest36 uiR2EntryPoint01 27800 -12770 E
-//z1 uiR2_Forest36 uiR2EntryPoint02 28127 -12573 SW
-//z1 uiR2_Forest36 uiR2EntryPoint03 28218 -13020 NW
-//z1 uiR2_Forest36 uiR2EntryPoint04 27909 -12736 SW
-//z1 uiR2_Forest36 uiR2EntryPoint05 27805 -12614 S
-//z1 uiR2_Forest36 uiR2EntryPoint06 27896 -12855 E
-//z1 uiR2_Forest36 uiR2EntryPoint07 27794 -13005 NW
-//z1 uiR2_Forest36 uiR2EntryPoint08 28058 -12493 SE
-
-//z1 uiR2_Forest37 uiR2EntryPoint01 28980 -12920 W
-//z1 uiR2_Forest37 uiR2EntryPoint02 28880 -12886 SE
-//z1 uiR2_Forest37 uiR2EntryPoint03 28879 -13020 NE
-//z1 uiR2_Forest37 uiR2EntryPoint04 28522 -12562 E
-//z1 uiR2_Forest37 uiR2EntryPoint05 28712 -12686 s
-//z1 uiR2_Forest37 uiR2EntryPoint06 28747 -12911 N
-
-//z1 uiR2_Forest42 uiR2EntryPoint01 22830 -13600 NE
-//z1 uiR2_Forest42 uiR2EntryPoint02 23342 -13475 W
-//z1 uiR2_Forest42 uiR2EntryPoint03 22853 -13394 SE
-//z1 uiR2_Forest42 uiR2EntryPoint04 23099 -13430 S
-
-//z1 uiR2_Forest43 uiR2EntryPoint01 24000 -13600 N
-//z1 uiR2_Forest43 uiR2EntryPoint02 24076 -13838 W
-//z1 uiR2_Forest43 uiR2EntryPoint03 23825 -13411 SE
-//z1 uiR2_Forest43 uiR2EntryPoint04 24208 -13583 W
-//z1 uiR2_Forest43 uiR2EntryPoint05 24000 -13364 S
-//z1 uiR2_Forest43 uiR2EntryPoint06 24039 -13492 W
-
-//z1 uiR2_Forest44 uiR2EntryPoint01 24670 -13600 S
-//z1 uiR2_Forest44 uiR2EntryPoint02 24877 -14823 N
-//z1 uiR2_Forest44 uiR2EntryPoint03 24959 -14224 W
-//z1 uiR2_Forest44 uiR2EntryPoint04 24653 -14092 N
-//z1 uiR2_Forest44 uiR2EntryPoint05 24565 -13357 S
-//z1 uiR2_Forest44 uiR2EntryPoint06 24642 -14325 E
-
-
-
-
-// Jungle
-
-a1 uiR2_Jungle14 uiR2EntryPoint01 40700 -11200 E
-a1 uiR2_Jungle14 uiR2EntryPoint02 40876 -11370 W
-a1 uiR2_Jungle14 uiR2EntryPoint03 40681 -11376 W
-a1 uiR2_Jungle14 uiR2EntryPoint04 40841 -10966 W
-
-a1 uiR2_Jungle23 uiR2EntryPoint01 38200 -12000 N
-a1 uiR2_Jungle23 uiR2EntryPoint02 38163 -11917 W
-a1 uiR2_Jungle23 uiR2EntryPoint03 37956 -12037 E
-a1 uiR2_Jungle23 uiR2EntryPoint04 38356 -11999 NW
-a1 uiR2_Jungle23 uiR2EntryPoint05 38489 -11936 NW
-a1 uiR2_Jungle23 uiR2EntryPoint06 38196 -11782 S
-
-a1 uiR2_Jungle27 uiR2EntryPoint01 31200 -12700 N
-a1 uiR2_Jungle27 uiR2EntryPoint02 31207 -12533 S
-a1 uiR2_Jungle27 uiR2EntryPoint03 31299 -12813 NW
-
-j1 uiR2_Jungle06 uiR2EntryPoint01 34426 -11339 NE
-j1 uiR2_Jungle06 uiR2EntryPoint02 34698 -11060 W
-j1 uiR2_Jungle06 uiR2EntryPoint03 34836 -11243 W
-j1 uiR2_Jungle06 uiR2EntryPoint04 34651 -11405 S
-j1 uiR2_Jungle06 uiR2EntryPoint05 34372 -11029 E
-
-j1 uiR2_Jungle07 uiR2EntryPoint01 35300 -11200 SE
-j1 uiR2_Jungle07 uiR2EntryPoint02 35534 -11057 SW
-j1 uiR2_Jungle07 uiR2EntryPoint03 35424 -11378 N
-j1 uiR2_Jungle07 uiR2EntryPoint04 35100 -11026 SE
-
-j1 uiR2_Jungle15 uiR2EntryPoint01 31300 -12000 N
-j1 uiR2_Jungle15 uiR2EntryPoint02 31181 -11823 SE
-j1 uiR2_Jungle15 uiR2EntryPoint03 31185 -12211 NE
-j1 uiR2_Jungle15 uiR2EntryPoint04 31549 -12148 NW
-j1 uiR2_Jungle15 uiR2EntryPoint05 31549 -11920 W
-
-j1 uiR2_Jungle18 uiR2EntryPoint01 34000 -12000 S
-j1 uiR2_Jungle18 uiR2EntryPoint02 34234 -12243 N
-j1 uiR2_Jungle18 uiR2EntryPoint03 34161 -11953 E
-j1 uiR2_Jungle18 uiR2EntryPoint04 34191 -11792 S
-j1 uiR2_Jungle18 uiR2EntryPoint05 33799 -11882 SE
-j1 uiR2_Jungle18 uiR2EntryPoint06 33832 -12256 N
-
-j1 uiR2_Jungle36 uiR2EntryPoint01 37074 -12782 N
-j1 uiR2_Jungle36 uiR2EntryPoint02 37071 -12878 SW
-j1 uiR2_Jungle36 uiR2EntryPoint03 36896 -12875 E
-j1 uiR2_Jungle36 uiR2EntryPoint04 36934 -12737 S
-j1 uiR2_Jungle36 uiR2EntryPoint05 36978 -13070 N
-j1 uiR2_Jungle36 uiR2EntryPoint06 36800 -13062 NE
-
-j1 uiR2_Jungle41 uiR2EntryPoint01 40648 -12573 N
-j1 uiR2_Jungle41 uiR2EntryPoint02 40696 -12807 E
-j1 uiR2_Jungle41 uiR2EntryPoint03 40771 -13042 N
-
-j1 uiR2_Jungle53 uiR2EntryPoint01 39683 -13678 W
-j1 uiR2_Jungle53 uiR2EntryPoint02 39413 -13784 NE
-j1 uiR2_Jungle53 uiR2EntryPoint03 39514 -13435 SE
-j1 uiR2_Jungle53 uiR2EntryPoint04 39718 -13338 S
-
-j2 uiR2_Jungle01 uiR2EntryPoint01 31300 -11100 S
-j2 uiR2_Jungle01 uiR2EntryPoint02 31257 -10932 E
-j2 uiR2_Jungle01 uiR2EntryPoint03 31594 -11118 N
-j2 uiR2_Jungle01 uiR2EntryPoint04 31080 -11296 NE
-
-j2 uiR2_Jungle28 uiR2EntryPoint01 31600 -12550 N
-j2 uiR2_Jungle28 uiR2EntryPoint02 31788 -12534 S
-
-j2 uiR2_Jungle32 uiR2EntryPoint01 33720 -12700 SW
-j2 uiR2_Jungle32 uiR2EntryPoint02 33855 -12620 W
-j2 uiR2_Jungle32 uiR2EntryPoint03 33646 -12853 SE
-j2 uiR2_Jungle32 uiR2EntryPoint04 33757 -12969 NW
-
-j2 uiR2_Jungle34 uiR2EntryPoint01 35220 -12610 N
-j2 uiR2_Jungle34 uiR2EntryPoint02 35030 -12535 SW
-j2 uiR2_Jungle34 uiR2EntryPoint03 35028 -12728 SE
-j2 uiR2_Jungle34 uiR2EntryPoint04 35304 -12781 W
-j2 uiR2_Jungle34 uiR2EntryPoint05 35419 -12726 S
-
-j2 uiR2_Jungle51 uiR2EntryPoint01 38204 -13916 N
-j2 uiR2_Jungle51 uiR2EntryPoint02 38135 -13696 NW
-j2 uiR2_Jungle51 uiR2EntryPoint03 38032 -13508 E
-
-j2 uiR2_Jungle02 uiR2EntryPoint01 32203 -11283 NW
-j2 uiR2_Jungle02 uiR2EntryPoint02 32062 -10944 E
-j2 uiR2_Jungle02 uiR2EntryPoint03 32396 -11409 N
-j2 uiR2_Jungle02 uiR2EntryPoint04 32557 -11107 S
-j2 uiR2_Jungle02 uiR2EntryPoint05 32533 -10964 W
-
-j2 uiR2_Jungle05 uiR2EntryPoint01 33768 -11278 N
-j2 uiR2_Jungle05 uiR2EntryPoint02 33981 -11292 W
-
-j3 uiR2_Jungle38 uiR2EntryPoint01 38290 -12740 E
-j3 uiR2_Jungle38 uiR2EntryPoint02 38288 -12905 E
-j3 uiR2_Jungle38 uiR2EntryPoint03 38446 -13070 E
-j3 uiR2_Jungle38 uiR2EntryPoint04 38665 -12895 NW
-j3 uiR2_Jungle38 uiR2EntryPoint05 38475 -12755 S
-
-j3 uiR2_Jungle49 uiR2EntryPoint01 36953 -13596 N
-j3 uiR2_Jungle49 uiR2EntryPoint02 36931 -13379 SW
-j3 uiR2_Jungle49 uiR2EntryPoint03 36564 -13630 NE
-j3 uiR2_Jungle49 uiR2EntryPoint04 36901 -13803 N
-
-j3 uiR2_Jungle52 uiR2EntryPoint01 39145 -13665 W
-j3 uiR2_Jungle52 uiR2EntryPoint02 39053 -13517 E
-j3 uiR2_Jungle52 uiR2EntryPoint03 38963 -13387 N
-j3 uiR2_Jungle52 uiR2EntryPoint04 38710 -13477 S
-j3 uiR2_Jungle52 uiR2EntryPoint05 38931 -13723 W
-j3 uiR2_Jungle52 uiR2EntryPoint06 38915 -13580 N
-
-j3 uiR2_Jungle03 uiR2EntryPoint01 33100 -11200 NE
-j3 uiR2_Jungle03 uiR2EntryPoint02 32837 -11458 E
-j3 uiR2_Jungle03 uiR2EntryPoint03 33230 -11343 N
-j3 uiR2_Jungle03 uiR2EntryPoint04 33304 -11015 SW
-
-j3 uiR2_Jungle24 uiR2EntryPoint01 39000 -12000 W
-j3 uiR2_Jungle24 uiR2EntryPoint02 39297 -11888 S
-j3 uiR2_Jungle24 uiR2EntryPoint03 38832 -11886 SE
-j3 uiR2_Jungle24 uiR2EntryPoint04 38847 -12265 NE
-j3 uiR2_Jungle24 uiR2EntryPoint05 39289 -12258 NE
-
-j3 uiR2_Jungle25 uiR2EntryPoint01 39621 -12083 NW
-j3 uiR2_Jungle25 uiR2EntryPoint02 39938 -12037 S
-j3 uiR2_Jungle25 uiR2EntryPoint03 39916 -12213 SE
-j3 uiR2_Jungle25 uiR2EntryPoint04 40114 -11884 W
-j3 uiR2_Jungle25 uiR2EntryPoint05 39955 -11803 W
-j3 uiR2_Jungle25 uiR2EntryPoint06 39786 -11886 W
-
-j3 uiR2_Jungle29 uiR2EntryPoint01 31753 -12934 N
-j3 uiR2_Jungle29 uiR2EntryPoint02 31766 -13034 W
-j3 uiR2_Jungle29 uiR2EntryPoint03 31948 -12894 NW
-j3 uiR2_Jungle29 uiR2EntryPoint04 31574 -12918 N
-
-j4 uiR2_Jungle50 uiR2EntryPoint01 37426 -13620 N
-j4 uiR2_Jungle50 uiR2EntryPoint02 37482 -13875 E
-j4 uiR2_Jungle50 uiR2EntryPoint03 37596 -13682 E
-j4 uiR2_Jungle50 uiR2EntryPoint04 37700 -13544 NE
-j4 uiR2_Jungle50 uiR2EntryPoint05 37685 -13388 NW
-
-j4 uiR2_Jungle08 uiR2EntryPoint01 36200 -11200 SE
-j4 uiR2_Jungle08 uiR2EntryPoint02 36390 -11360 W
-j4 uiR2_Jungle08 uiR2EntryPoint03 36076 -11069 W
-
-j4 uiR2_Jungle12 uiR2EntryPoint01 39235 -11288 N
-j4 uiR2_Jungle12 uiR2EntryPoint02 39448 -10932 W
-j4 uiR2_Jungle12 uiR2EntryPoint03 38946 -11120 E
-j4 uiR2_Jungle12 uiR2EntryPoint04 39153 -11467 N
-j4 uiR2_Jungle12 uiR2EntryPoint05 39130 -11005 NE
-j4 uiR2_Jungle12 uiR2EntryPoint06 39426 -11406 S
-
-j4 uiR2_Jungle16 uiR2EntryPoint01 32200 -12000 E
-j4 uiR2_Jungle16 uiR2EntryPoint02 32017 -11813 S
-j4 uiR2_Jungle16 uiR2EntryPoint03 32332 -12242 N
-j4 uiR2_Jungle16 uiR2EntryPoint04 32459 -11865 W
-j4 uiR2_Jungle16 uiR2EntryPoint05 32047 -12201 N
-
-j4 uiR2_Jungle22 uiR2EntryPoint01 37400 -12000 N
-j4 uiR2_Jungle22 uiR2EntryPoint02 37515 -11789 N
-j4 uiR2_Jungle22 uiR2EntryPoint03 37631 -12105 N
-j4 uiR2_Jungle22 uiR2EntryPoint04 37530 -12275 NE
-j4 uiR2_Jungle22 uiR2EntryPoint05 37339 -12275 NW
-j4 uiR2_Jungle22 uiR2EntryPoint06 37167 -11731 S
-
-j4 uiR2_Jungle42 uiR2EntryPoint01 31103 -13282 E
-j4 uiR2_Jungle42 uiR2EntryPoint02 31352 -13419 W
-j4 uiR2_Jungle42 uiR2EntryPoint03 31285 -13573 S
-j4 uiR2_Jungle42 uiR2EntryPoint04 31307 -13712 N
-j4 uiR2_Jungle42 uiR2EntryPoint05 31420 -13639 SW
-j4 uiR2_Jungle42 uiR2EntryPoint06 31083 -13691 NE
-
-
-o1 uiR2_Jungle11 uiR2EntryPoint01 38400 -11200 N
-o1 uiR2_Jungle11 uiR2EntryPoint02 38565 -11080 W
-o1 uiR2_Jungle11 uiR2EntryPoint03 38389 -11029 E
-
-o1 uiR2_Jungle19 uiR2EntryPoint01 35000 -12000 N
-o1 uiR2_Jungle19 uiR2EntryPoint02 34752 -12146 NE
-o1 uiR2_Jungle19 uiR2EntryPoint03 34749 -11909 SE
-o1 uiR2_Jungle19 uiR2EntryPoint04 35292 -12042 S
-o1 uiR2_Jungle19 uiR2EntryPoint05 35320 -12203 S
-
-o1 uiR2_Jungle21 uiR2EntryPoint01 36600 -12000 N
-o1 uiR2_Jungle21 uiR2EntryPoint02 36833 -11757 SW
-o1 uiR2_Jungle21 uiR2EntryPoint03 36443 -12055 E
-o1 uiR2_Jungle21 uiR2EntryPoint04 36504 -12275 NW
-o1 uiR2_Jungle21 uiR2EntryPoint05 36657 -12265 NW
-
-o1 uiR2_Jungle26 uiR2EntryPoint01 40600 -12000 W
-o1 uiR2_Jungle26 uiR2EntryPoint02 40903 -11996 W
-o1 uiR2_Jungle26 uiR2EntryPoint03 40429 -12233 NE
-
-o1 uiR2_Jungle30 uiR2EntryPoint01 32318 -12599 N
-o1 uiR2_Jungle30 uiR2EntryPoint02 32444 -12765 N
-o1 uiR2_Jungle30 uiR2EntryPoint03 32497 -12629 W
-
-o1 uiR2_Jungle33 uiR2EntryPoint01 34230 -12745 N
-o1 uiR2_Jungle33 uiR2EntryPoint02 34311 -12806 SE
-o1 uiR2_Jungle33 uiR2EntryPoint03 34399 -12967 W
-o1 uiR2_Jungle33 uiR2EntryPoint04 34221 -12959 E
-
-o1 uiR2_Jungle35 uiR2EntryPoint01 35800 -13010 N
-o1 uiR2_Jungle35 uiR2EntryPoint02 36057 -12912 W
-o1 uiR2_Jungle35 uiR2EntryPoint03 35755 -12619 E
-o1 uiR2_Jungle35 uiR2EntryPoint04 36228 -12618 W
-o1 uiR2_Jungle35 uiR2EntryPoint05 35934 -12714 E
-
-o1 uiR2_Jungle44 uiR2EntryPoint01 32799 -13439 N
-o1 uiR2_Jungle44 uiR2EntryPoint02 32628 -13363 SE
-o1 uiR2_Jungle44 uiR2EntryPoint03 32928 -13375 SW
-o1 uiR2_Jungle44 uiR2EntryPoint04 32828 -13484 SE
-o1 uiR2_Jungle44 uiR2EntryPoint05 32954 -13703 N
-
-o1 uiR2_Jungle45 uiR2EntryPoint01 33599 -13741 N
-o1 uiR2_Jungle45 uiR2EntryPoint02 33422 -13656 NE
-o1 uiR2_Jungle45 uiR2EntryPoint03 33762 -13543 NW
-o1 uiR2_Jungle45 uiR2EntryPoint04 33521 -13372 SE
-
-o1 uiR2_Jungle46 uiR2EntryPoint01 34218 -13905 N
-o1 uiR2_Jungle46 uiR2EntryPoint02 34374 -13798 NE
-o1 uiR2_Jungle46 uiR2EntryPoint03 34517 -13771 S
-o1 uiR2_Jungle46 uiR2EntryPoint04 34582 -13541 SE
-o1 uiR2_Jungle46 uiR2EntryPoint05 34311 -13491 N
-o1 uiR2_Jungle46 uiR2EntryPoint06 34194 -13371 NW
-
-o1 uiR2_Jungle47 uiR2EntryPoint01 35624 -13369 N
-o1 uiR2_Jungle47 uiR2EntryPoint02 35613 -13526 W
-o1 uiR2_Jungle47 uiR2EntryPoint03 35446 -13684 E
-o1 uiR2_Jungle47 uiR2EntryPoint04 35162 -13683 W
-o1 uiR2_Jungle47 uiR2EntryPoint05 35118 -13442 E
-o1 uiR2_Jungle47 uiR2EntryPoint06 35379 -13426 SE
-
-o1 uiR2_Jungle48 uiR2EntryPoint01 35989 -13425 N
-o1 uiR2_Jungle48 uiR2EntryPoint02 36122 -13469 SW
-o1 uiR2_Jungle48 uiR2EntryPoint03 36107 -13750 N
-
-
-
-//z1 uiR2_Jungle04 uiR2EntryPoint01 33840 -11000 N
-
-//z1 uiR2_Jungle09 uiR2EntryPoint01 36694 -11144 E
-//z1 uiR2_Jungle09 uiR2EntryPoint02 36947 -11190 N
-//z1 uiR2_Jungle09 uiR2EntryPoint03 36698 -10954 S
-//z1 uiR2_Jungle09 uiR2EntryPoint04 36679 -11467 N
-//z1 uiR2_Jungle09 uiR2EntryPoint05 36880 -11041 S
-//z1 uiR2_Jungle09 uiR2EntryPoint06 36870 -11253 E
-//z1 uiR2_Jungle09 uiR2EntryPoint07 37203 -11179 N
-
-//z1 uiR2_Jungle10 uiR2EntryPoint01 37790 -11080 E
-//z1 uiR2_Jungle10 uiR2EntryPoint02 37909 -11413 N
-//z1 uiR2_Jungle10 uiR2EntryPoint03 37530 -11208 NE
-//z1 uiR2_Jungle10 uiR2EntryPoint04 37588 -11375 N
-
-//z1 uiR2_Jungle13 uiR2EntryPoint01 40000 -11200 W
-//z1 uiR2_Jungle13 uiR2EntryPoint02 40187 -11030 S
-//z1 uiR2_Jungle13 uiR2EntryPoint03 39771 -10957 E
-//z1 uiR2_Jungle13 uiR2EntryPoint04 39793 -11177 E
-//z1 uiR2_Jungle13 uiR2EntryPoint05 40057 -11356 E
-
-//z1 uiR2_Jungle17 uiR2EntryPoint01 33000 -12000 N
-//z1 uiR2_Jungle17 uiR2EntryPoint02 33158 -12149 N
-//z1 uiR2_Jungle17 uiR2EntryPoint03 33211 -11895 N
-//z1 uiR2_Jungle17 uiR2EntryPoint04 33199 -12007 W
-//z1 uiR2_Jungle17 uiR2EntryPoint05 32971 -11754 S
-//z1 uiR2_Jungle17 uiR2EntryPoint06 33038 -11926 E
-
-//z1 uiR2_Jungle20 uiR2EntryPoint01 35650 -12140 N
-
-//z1 uiR2_Jungle31 uiR2EntryPoint01 33149 -12874 N
-//z1 uiR2_Jungle31 uiR2EntryPoint02 33066 -13037 S
-//z1 uiR2_Jungle31 uiR2EntryPoint03 33043 -12726 NW
-
-//z1 uiR2_Jungle37 uiR2EntryPoint01 37929 -12925 N
-
-//z1 uiR2_Jungle39 uiR2EntryPoint01 38971 -12788 N
-//z1 uiR2_Jungle39 uiR2EntryPoint02 39024 -13072 NE
-//z1 uiR2_Jungle39 uiR2EntryPoint03 39159 -12877 E
-//z1 uiR2_Jungle39 uiR2EntryPoint04 39432 -13045 N
-//z1 uiR2_Jungle39 uiR2EntryPoint05 39280 -12841 N
-//z1 uiR2_Jungle39 uiR2EntryPoint06 39255 -12682 N
-//z1 uiR2_Jungle39 uiR2EntryPoint07 39433 -12707 E
-
-//z1 uiR2_Jungle40 uiR2EntryPoint01 40132 -12610 N
-
-//z1 uiR2_Jungle43 uiR2EntryPoint01 31767 -13391 N
-
-
-// Prime Roots
-
-p1 uiR2_Primes04 uiR2EntryPoint01 33300 -21200 S
-p1 uiR2_Primes04 uiR2EntryPoint02 33454 -21456 NW
-p1 uiR2_Primes04 uiR2EntryPoint03 33029 -21522 E
-
-p1 uiR2_Primes06 uiR2EntryPoint01 34700 -21070 SE
-p1 uiR2_Primes06 uiR2EntryPoint02 34905 -21093 SW
-p1 uiR2_Primes06 uiR2EntryPoint03 34733 -21359 N
-
-p1 uiR2_Primes22 uiR2EntryPoint01 37500 -21960 S
-p1 uiR2_Primes22 uiR2EntryPoint02 37524 -22163 N
-p1 uiR2_Primes22 uiR2EntryPoint03 37394 -22286 NE
-
-p1 uiR2_Primes09 uiR2EntryPoint01 36950 -21200 E
-p1 uiR2_Primes09 uiR2EntryPoint02 37532 -21366 W
-p1 uiR2_Primes09 uiR2EntryPoint03 37208 -21170 S
-
-p3 uiR2_Primes29 uiR2EntryPoint01 33140 -22910 W
-p3 uiR2_Primes29 uiR2EntryPoint02 33016 -22602 S
-p3 uiR2_Primes29 uiR2EntryPoint03 32776 -23057 NE
-
-p3 uiR2_Primes01 uiR2EntryPoint01 31110 -21520 E
-p3 uiR2_Primes01 uiR2EntryPoint02 31198 -21061 S
-p3 uiR2_Primes01 uiR2EntryPoint03 31132 -21312 E
-
-p3 uiR2_Primes05 uiR2EntryPoint01 34250 -21300 W
-p3 uiR2_Primes05 uiR2EntryPoint02 33891 -21271 E
-p3 uiR2_Primes05 uiR2EntryPoint03 34151 -21558 N
-
-p5 uiR2_Primes16 uiR2EntryPoint01 32970 -22100 NW
-p5 uiR2_Primes16 uiR2EntryPoint02 32763 -21871 SE
-p5 uiR2_Primes16 uiR2EntryPoint03 32890 -21990 S
-
-p5 uiR2_Primes18 uiR2EntryPoint01 34600 -22075 W
-p5 uiR2_Primes18 uiR2EntryPoint02 34205 -22078 E
-p5 uiR2_Primes18 uiR2EntryPoint03 34651 -21825 S
-
-p5 uiR2_Primes25 uiR2EntryPoint01 39910 -22320 E
-p5 uiR2_Primes25 uiR2EntryPoint02 39757 -22077 E
-p5 uiR2_Primes25 uiR2EntryPoint03 39979 -22132 NW
-
-p6 uiR2_Primes03 uiR2EntryPoint01 32300 -21100 SE
-p6 uiR2_Primes03 uiR2EntryPoint02 32288 -21484 N
-p6 uiR2_Primes03 uiR2EntryPoint03 32691 -21085 SW
-
-p6 uiR2_Primes07 uiR2EntryPoint01 35350 -21300 NE
-p6 uiR2_Primes07 uiR2EntryPoint02 35519 -21067 S
-p6 uiR2_Primes07 uiR2EntryPoint03 35601 -21405 N
-
-p6 uiR2_Primes13 uiR2EntryPoint01 40330 -21600 N
-p6 uiR2_Primes13 uiR2EntryPoint02 40127 -21438 E
-p6 uiR2_Primes13 uiR2EntryPoint03 40537 -21438 W
-
-p7 uiR2_Primes19 uiR2EntryPoint01 35000 -22300 N
-p7 uiR2_Primes19 uiR2EntryPoint02 35456 -22007 W
-p7 uiR2_Primes19 uiR2EntryPoint03 35022 -21891 SE
-
-p7 uiR2_Primes26 uiR2EntryPoint01 40500 -22100 N
-p7 uiR2_Primes26 uiR2EntryPoint02 40694 -22284 NW
-p7 uiR2_Primes26 uiR2EntryPoint03 40426 -22298 NE
-
-p7 uiR2_Primes08 uiR2EntryPoint01 36200 -21100 E
-p7 uiR2_Primes08 uiR2EntryPoint02 36393 -21558 N
-p7 uiR2_Primes08 uiR2EntryPoint03 36077 -21345 S
-
-p8 uiR2_Primes10 uiR2EntryPoint01 38002 -21293 N
-p8 uiR2_Primes10 uiR2EntryPoint02 38006 -21532 N
-p8 uiR2_Primes10 uiR2EntryPoint03 38094 -21040 S
-
-p8 uiR2_Primes11 uiR2EntryPoint01 38970 -21520 W
-p8 uiR2_Primes11 uiR2EntryPoint02 38721 -21047 S
-p8 uiR2_Primes11 uiR2EntryPoint03 38577 -21350 NW
-
-p8 uiR2_Primes15 uiR2EntryPoint01 31980 -21880 SE
-p8 uiR2_Primes15 uiR2EntryPoint02 32365 -22121 NW
-p8 uiR2_Primes15 uiR2EntryPoint03 32159 -22032 N
-
-p11 uiR2_Primes30 uiR2EntryPoint01 33730 -22860 N
-p11 uiR2_Primes30 uiR2EntryPoint02 33656 -22604 E
-p11 uiR2_Primes30 uiR2EntryPoint03 33843 -22997 E
-
-p11 uiR2_Primes12 uiR2EntryPoint01 39500 -21280 NE
-p11 uiR2_Primes12 uiR2EntryPoint02 39240 -21197 E
-p11 uiR2_Primes12 uiR2EntryPoint03 39800 -21352 W
-
-p11 uiR2_Primes14 uiR2EntryPoint01 31350 -21960 S
-p11 uiR2_Primes14 uiR2EntryPoint02 31373 -22074 S
-p11 uiR2_Primes14 uiR2EntryPoint03 31166 -22272 NE
-
-p12 uiR2_Primes17 uiR2EntryPoint01 33660 -22000 SW
-p12 uiR2_Primes17 uiR2EntryPoint02 33397 -21879 SE
-p12 uiR2_Primes17 uiR2EntryPoint03 33347 -22331 N
-
-p12 uiR2_Primes21 uiR2EntryPoint01 37000 -22150 W
-p12 uiR2_Primes21 uiR2EntryPoint02 36645 -21864 SE
-p12 uiR2_Primes21 uiR2EntryPoint03 36964 -21813 SE
-
-p12 uiR2_Primes27 uiR2EntryPoint01 31530 -22700 SW
-p12 uiR2_Primes27 uiR2EntryPoint02 31533 -23080 NW
-p12 uiR2_Primes27 uiR2EntryPoint03 31078 -22800 N
-
-
-
-o1 uiR2_Primes02 uiR2EntryPoint01 31640 -21140 SE
-o1 uiR2_Primes02 uiR2EntryPoint02 31593 -21374 N
-o1 uiR2_Primes02 uiR2EntryPoint03 31818 -21204 W
-
-o1 uiR2_Primes28 uiR2EntryPoint01 32270 -23000 N
-o1 uiR2_Primes28 uiR2EntryPoint02 32316 -22662 S
-o1 uiR2_Primes28 uiR2EntryPoint03 31933 -22734 SE
-
-
-
-//z1 uiR2_Primes20 uiR2EntryPoint01 35790 -22100 N
-
-//z1 uiR2_Primes23 uiR2EntryPoint01 38360 -21970 N
-
-//z1 uiR2_Primes24 uiR2EntryPoint02 38906 -21891 SE
-
-//z1 uiR2_Primes24 uiR2EntryPoint03 39086 -22287 NW
diff --git a/code/ryzom/common/src/game_share/scenario_entry_points.cpp b/code/ryzom/common/src/game_share/scenario_entry_points.cpp
index f68b1d6f8..7c01af145 100644
--- a/code/ryzom/common/src/game_share/scenario_entry_points.cpp
+++ b/code/ryzom/common/src/game_share/scenario_entry_points.cpp
@@ -56,23 +56,8 @@ CScenarioEntryPoints::CScenarioEntryPoints()
void CScenarioEntryPoints::init()
{
- CConfigFile cf;
-
- cf.load("IslandScreenshots.cfg", true);
-
- // get the scenario entry points file
- CConfigFile::CVar * ciFile = cf.getVarPtr("CompleteIslandsFile");
- if(ciFile)
- {
- _CompleteIslandsFilename = ciFile->asString();
- }
-
- // get the scenario entry points file
- CConfigFile::CVar * epFile = cf.getVarPtr("EntryPointsFile");
- if(epFile)
- {
- _EntryPointsFilename = epFile->asString();
- }
+ _CompleteIslandsFilename = "r2_islands.xml";
+ _EntryPointsFilename = "r2_entry_points.txt";
}
//-----------------------------------------------------------------------------
diff --git a/code/ryzom/server/data_shard/mirror_sheets/pet.dataset b/code/ryzom/server/data_shard/mirror_sheets/pet.dataset
deleted file mode 100644
index 238a38dbd..000000000
--- a/code/ryzom/server/data_shard/mirror_sheets/pet.dataset
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
diff --git a/code/ryzom/server/src/entities_game_service/character_structure/character_persistant_data.h b/code/ryzom/server/src/entities_game_service/character_structure/character_persistant_data.h
index 2cfa59660..4eff887e4 100644
--- a/code/ryzom/server/src/entities_game_service/character_structure/character_persistant_data.h
+++ b/code/ryzom/server/src/entities_game_service/character_structure/character_persistant_data.h
@@ -73,7 +73,7 @@ public:
//std::vector< CCharacterSentence * > _MemorizedSentencesSpecial;
/// inventory of known bricks (map Id to Latency end date)
- std::map< NLMISC::CSheetId, CKnownBrickInfo > _KnownBricks;
+ //std::map< NLMISC::CSheetId, CKnownBrickInfo > _KnownBricks;
/// the known faber plans for that player (directly the reflect of the database)
// std::vector _KnownFaberPlans;
diff --git a/code/ryzom/server/src/entities_game_service/character_structure/known_brick_info.h b/code/ryzom/server/src/entities_game_service/character_structure/known_brick_info.h
index 6cff4b92c..f8ec17409 100644
--- a/code/ryzom/server/src/entities_game_service/character_structure/known_brick_info.h
+++ b/code/ryzom/server/src/entities_game_service/character_structure/known_brick_info.h
@@ -18,7 +18,7 @@
#ifndef RY_KNOWN_BRICK_INFO_H
#define RY_KNOWN_BRICK_INFO_H
-
+/*
// ---------------------------------------------------------------------------
class CStaticGameBrick;
@@ -44,6 +44,6 @@ struct CKnownBrickInfo
// and the Form is set while setting the databse in the setDatabase() method
}
};
-
+*/
#endif // RY_KNOWN_BRICK_INFO_H
/* known_brick_info.h */
diff --git a/code/ryzom/server/src/entities_game_service/database_plr.cpp b/code/ryzom/server/src/entities_game_service/database_plr.cpp
index 58631a86a..7cf0d2108 100644
--- a/code/ryzom/server/src/entities_game_service/database_plr.cpp
+++ b/code/ryzom/server/src/entities_game_service/database_plr.cpp
@@ -1,18 +1,3 @@
-// Ryzom - MMORPG Framework
-// Copyright (C) 2010 Winch Gate Property Limited
-//
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Affero General Public License as
-// published by the Free Software Foundation, either version 3 of the
-// License, or (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Affero General Public License for more details.
-//
-// You should have received a copy of the GNU Affero General Public License
-// along with this program. If not, see .
/////////////////////////////////////////////////////////////////
// WARNING : this is a generated file, don't change it !
@@ -362,7 +347,7 @@ void CBankAccessor_PLR::TUSER::init(ICDBStructNode *parent)
node = parent->getNode( ICDBStructNode::CTextId("IS_INVISIBLE"), false );
nlassert(node != NULL);
_IS_INVISIBLE = node;
-
+
node = parent->getNode( ICDBStructNode::CTextId("COUNTER"), false );
nlassert(node != NULL);
_COUNTER = node;
@@ -3139,10 +3124,11 @@ void CBankAccessor_PLR::TPACK_ANIMAL::TBEAST::init(ICDBStructNode *parent, uint
node = parent->getNode( ICDBStructNode::CTextId("DESPAWN"), false );
nlassert(node != NULL);
_DESPAWN = node;
-
- node = parent->getNode( ICDBStructNode::CTextId("NAME"), true );
+
+ node = parent->getNode( ICDBStructNode::CTextId("NAME"), false );
nlassert(node != NULL);
_NAME = node;
+
// branch init
diff --git a/code/ryzom/server/src/entities_game_service/database_plr.h b/code/ryzom/server/src/entities_game_service/database_plr.h
index bd431a108..38a394c88 100644
--- a/code/ryzom/server/src/entities_game_service/database_plr.h
+++ b/code/ryzom/server/src/entities_game_service/database_plr.h
@@ -1,22 +1,7 @@
-// Ryzom - MMORPG Framework
-// Copyright (C) 2010 Winch Gate Property Limited
-//
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Affero General Public License as
-// published by the Free Software Foundation, either version 3 of the
-// License, or (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Affero General Public License for more details.
-//
-// You should have received a copy of the GNU Affero General Public License
-// along with this program. If not, see .
-#ifndef INCLUDED_database_PLR_H
-#define INCLUDED_database_PLR_H
+#ifndef INCLUDED_DATABASE_PLR_H
+#define INCLUDED_DATABASE_PLR_H
/////////////////////////////////////////////////////////////////
// WARNING : this is a generated file, don't change it !
/////////////////////////////////////////////////////////////////
@@ -140,7 +125,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
class TGameTime
- {
+ {
public:
@@ -183,7 +168,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TINTERFACES
- {
+ {
public:
@@ -247,11 +232,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TUSER
- {
+ {
public:
class TSKILL_POINTS_
- {
+ {
public:
@@ -294,7 +279,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TFACTION_POINTS_
- {
+ {
public:
@@ -337,7 +322,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TRRPS_LEVELS
- {
+ {
public:
@@ -380,7 +365,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TNPC_CONTROL
- {
+ {
public:
@@ -490,7 +475,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
ICDBStructNode *_IS_NEWBIE;
ICDBStructNode *_IS_TRIAL;
ICDBStructNode *_DEFAULT_WEIGHT_HANDS;
- ICDBStructNode *_IS_INVISIBLE;
+ ICDBStructNode *_IS_INVISIBLE;
ICDBStructNode *_COUNTER;
TSKILL_POINTS_ _SKILL_POINTS_[4];
TFACTION_POINTS_ _FACTION_POINTS_[6];
@@ -954,6 +939,26 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
return _DEFAULT_WEIGHT_HANDS;
}
+ void setIS_INVISIBLE(CCDBSynchronised &dbGroup, bool value, bool forceSending = false)
+ {
+
+
+ _setProp(dbGroup, _IS_INVISIBLE, value, forceSending);
+ }
+
+ bool getIS_INVISIBLE(const CCDBSynchronised &dbGroup)
+ {
+ bool value;
+ _getProp(dbGroup, _IS_INVISIBLE, value);
+
+ return value;
+ }
+
+ ICDBStructNode *getIS_INVISIBLECDBNode()
+ {
+ return _IS_INVISIBLE;
+ }
+
void setCOUNTER(CCDBSynchronised &dbGroup, uint8 value, bool forceSending = false)
{
@@ -976,20 +981,6 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
{
return _COUNTER;
}
-
- void setIS_INVISIBLE(CCDBSynchronised &dbGroup, bool value, bool forceSending = false)
- {
- _setProp(dbGroup, _IS_INVISIBLE, value, forceSending);
- }
-
- bool getIS_INVISIBLE(const CCDBSynchronised &dbGroup)
- {
- bool value;
- _getProp(dbGroup, _IS_INVISIBLE, value);
-
- return value;
- }
-
TSKILL_POINTS_ &getSKILL_POINTS_(uint32 index)
{
nlassert(index < 4);
@@ -1013,15 +1004,15 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TDEFENSE
- {
+ {
public:
class TSLOTS
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -1156,15 +1147,15 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TFLAGS
- {
+ {
public:
class TBRICK_TICK_RANGE
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -1309,20 +1300,19 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
{
return _DODGE;
}
-
- TBRICK_TICK_RANGE &getBRICK_TICK_RANGE()
+ TBRICK_TICK_RANGE &getBRICK_TICK_RANGE()
{
return _BRICK_TICK_RANGE;
}
-
+
};
-
+
class TTARGET
- {
+ {
public:
class TBARS
- {
+ {
public:
@@ -1482,15 +1472,15 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TCONTEXT_MENU
- {
+ {
public:
class TMISSIONS_OPTIONS
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -1602,11 +1592,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TMISSION_RING
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -1927,11 +1917,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TGROUP
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -2109,19 +2099,19 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TMISSIONS
- {
+ {
public:
class TArray
- {
+ {
public:
class TGOALS
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -2209,7 +2199,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TTARGET
- {
+ {
public:
@@ -2294,11 +2284,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class THISTO
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -2716,7 +2706,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TDM_GIFT
- {
+ {
public:
@@ -2759,15 +2749,15 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TEXCHANGE
- {
+ {
public:
class TGIVE
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -3062,11 +3052,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TRECEIVE
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -3467,6 +3457,8 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
void setMONEY(CCDBSynchronised &dbGroup, uint64 value, bool forceSending = false)
{
+
+
_setProp(dbGroup, _MONEY, value, forceSending);
}
@@ -3540,15 +3532,15 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TINVENTORY
- {
+ {
public:
class THAND
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -3618,11 +3610,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TEQUIP
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -3692,11 +3684,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TTEMP
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -4033,11 +4025,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TSHARE
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -4377,7 +4369,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TTM_
- {
+ {
public:
@@ -4504,7 +4496,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TROOM
- {
+ {
public:
@@ -4568,6 +4560,8 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
void setMONEY(CCDBSynchronised &dbGroup, uint64 value, bool forceSending = false)
{
+
+
_setProp(dbGroup, _MONEY, value, forceSending);
}
@@ -4575,14 +4569,17 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
{
uint64 value;
_getProp(dbGroup, _MONEY, value);
+
return value;
}
-
+
ICDBStructNode *getMONEYCDBNode()
{
return _MONEY;
}
+
};
+
private:
ICDBStructNode *_BranchNode;
@@ -4605,8 +4602,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
return _BranchNode;
}
+
void setMONEY(CCDBSynchronised &dbGroup, uint64 value, bool forceSending = false)
{
+
+
_setProp(dbGroup, _MONEY, value, forceSending);
}
@@ -4669,15 +4669,15 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TMODIFIERS
- {
+ {
public:
class TBONUS
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -4786,11 +4786,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TMALUS
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -4948,11 +4948,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TDISABLE_CONSUMABLE
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -5040,15 +5040,15 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TBOTCHAT
- {
+ {
public:
class TDM_CHOICE
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -5310,11 +5310,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TASCENSOR
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -5468,11 +5468,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TCHOOSE_MISSIONS
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -5668,11 +5668,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TTRADING
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -6000,6 +6000,8 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
void setMONEY_SHEET(CCDBSynchronised &dbGroup, NLMISC::CSheetId value, bool forceSending = false)
{
+
+
_setProp(dbGroup, _MONEY_SHEET, value, forceSending);
}
@@ -6466,11 +6468,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TBRICK_FAMILY
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -6537,11 +6539,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TFABER_PLANS
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -6608,19 +6610,19 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TMISSIONS
- {
+ {
public:
class TArray
- {
+ {
public:
class TGOALS
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -6708,7 +6710,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TTARGET
- {
+ {
public:
@@ -6793,11 +6795,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class THISTO
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -7138,15 +7140,15 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TEXECUTE_PHRASE
- {
+ {
public:
class TLINK
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -7512,11 +7514,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TCHARACTER_INFO
- {
+ {
public:
class TCHARACTERISTICS
- {
+ {
public:
@@ -7562,7 +7564,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TSCORES
- {
+ {
public:
@@ -7680,11 +7682,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TMAGIC_RESISTANCE
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -7778,11 +7780,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TMAGIC_PROTECTION
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -7900,7 +7902,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TDODGE
- {
+ {
public:
@@ -7970,7 +7972,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TPARRY
- {
+ {
public:
@@ -8040,11 +8042,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TSKILLS
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -8159,7 +8161,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TXP_CATALYSER
- {
+ {
public:
@@ -8229,7 +8231,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TRING_XP_CATALYSER
- {
+ {
public:
@@ -8299,7 +8301,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TPVP_FACTION_TAG
- {
+ {
public:
@@ -8405,7 +8407,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TPVP_OUTPOST
- {
+ {
public:
@@ -8532,15 +8534,15 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TSUCCESS_MODIFIER
- {
+ {
public:
class TECO
- {
+ {
public:
class TArray
- {
+ {
public:
@@ -8836,11 +8838,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TPACK_ANIMAL
- {
+ {
public:
class TBEAST
- {
+ {
public:
@@ -8855,7 +8857,8 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
ICDBStructNode *_POS;
ICDBStructNode *_HUNGER;
ICDBStructNode *_DESPAWN;
- ICDBStructNode *_NAME;
+ ICDBStructNode *_NAME;
+
public:
void init(ICDBStructNode *parent, uint index);
@@ -9044,9 +9047,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
{
return _DESPAWN;
}
-
+
void setNAME(CCDBSynchronised &dbGroup, uint32 value, bool forceSending = false)
{
+
+
_setProp(dbGroup, _NAME, value, forceSending);
}
@@ -9057,11 +9062,12 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
return value;
}
-
+
ICDBStructNode *getNAMECDBNode()
{
return _NAME;
}
+
};
@@ -9089,7 +9095,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TDEBUG_INFO
- {
+ {
public:
@@ -9132,11 +9138,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TMP_EVAL
- {
+ {
public:
class TRESULT
- {
+ {
public:
@@ -9284,7 +9290,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TRESULT_CRITICAL
- {
+ {
public:
@@ -9481,7 +9487,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TCOMPASS
- {
+ {
public:
@@ -9566,11 +9572,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TFAME
- {
+ {
public:
class TPLAYER
- {
+ {
public:
@@ -9655,7 +9661,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TTRIBE
- {
+ {
public:
@@ -9860,7 +9866,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TSTATIC_DATA
- {
+ {
public:
@@ -9903,11 +9909,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TDYN_CHAT
- {
+ {
public:
class TCHANNEL
- {
+ {
public:
@@ -10016,11 +10022,11 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TPVP_EFFECTS
- {
+ {
public:
class TPVP_FACTION_POINTS
- {
+ {
public:
@@ -10126,7 +10132,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TArray
- {
+ {
public:
@@ -10240,7 +10246,7 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
class TWEATHER
- {
+ {
public:
@@ -10483,4 +10489,4 @@ inline void _getProp(const CCDBSynchronised &db, ICDBStructNode *node, NLMISC::C
};
-#endif // INCLUDED_database_PLR_H
+#endif // INCLUDED_DATABASE_PLR_H
diff --git a/code/ryzom/server/src/input_output_service/chat_manager.cpp b/code/ryzom/server/src/input_output_service/chat_manager.cpp
index 50c58fce6..fbc38ead5 100644
--- a/code/ryzom/server/src/input_output_service/chat_manager.cpp
+++ b/code/ryzom/server/src/input_output_service/chat_manager.cpp
@@ -477,9 +477,9 @@ void CChatManager::chat( const TDataSetRow& sender, const ucstring& ucstr )
{
// if( itCl->second->isMuted() )
CEntityId eid = TheDataset.getEntityId(sender);
- if(_MutedUsers.find( eid ) != _MutedUsers.end())
+ if(_MutedUniverseUsers.find( eid ) != _MutedUniverseUsers.end())
{
- nldebug("IOSCM: chat The player %s:%x is muted",
+ nldebug("IOSCM: chat The player %s:%x is universe muted",
TheDataset.getEntityId(sender).toString().c_str(),
sender.getIndex());
return;
diff --git a/code/studio/src/plugins/georges_editor/CMakeLists.txt b/code/studio/src/plugins/georges_editor/CMakeLists.txt
index 0f0cbc1e0..bf7e6e0c9 100644
--- a/code/studio/src/plugins/georges_editor/CMakeLists.txt
+++ b/code/studio/src/plugins/georges_editor/CMakeLists.txt
@@ -23,6 +23,7 @@ SET(OVQT_PLUG_GEORGES_EDITOR_HDR georges_editor_plugin.h
filepath_property_manager.h
typ_browser_ctrl.h
georges_typ_dialog.h
+ georges_dock_widget.h
)
SET(OVQT_PLUG_GEORGES_EDITOR_UIS georges_editor_form.ui
diff --git a/code/studio/src/plugins/georges_editor/browser_ctrl.cpp b/code/studio/src/plugins/georges_editor/browser_ctrl.cpp
index 2788bd00a..ad947edcf 100644
--- a/code/studio/src/plugins/georges_editor/browser_ctrl.cpp
+++ b/code/studio/src/plugins/georges_editor/browser_ctrl.cpp
@@ -20,6 +20,7 @@
#include "browser_ctrl.h"
#include "3rdparty/qtpropertybrowser/qttreepropertybrowser.h"
#include "3rdparty/qtpropertybrowser/qtvariantproperty.h"
+#include "filepath_property_manager.h"
#include
#include "nel/georges/form.h"
@@ -37,6 +38,7 @@ QObject( browser )
connect( m_pvt, SIGNAL( arrayResized( const QString&, int ) ), this, SLOT( onArrayResized( const QString&, int ) ) );
connect( m_pvt, SIGNAL( modified() ), this, SLOT( onModified() ) );
connect( m_pvt, SIGNAL( valueChanged( const QString&, const QString& ) ), this, SLOT( onValueChanged( const QString&, const QString& ) ) );
+ connect( m_pvt, SIGNAL( vstructChanged( const QString& ) ), this, SLOT( onVStructChanged( const QString& ) ) );
}
BrowserCtrl::~BrowserCtrl()
@@ -68,6 +70,11 @@ void BrowserCtrl::onValueChanged( const QString &key, const QString &value )
Q_EMIT valueChanged( key, value );
}
+void BrowserCtrl::onFileValueChanged( QtProperty *p, const QString &value )
+{
+ m_pvt->onFileValueChanged( p, value );
+}
+
void BrowserCtrl::onArrayResized( const QString &name, int size )
{
Q_EMIT arrayResized( name, size );
@@ -78,19 +85,30 @@ void BrowserCtrl::onModified()
Q_EMIT modified();
}
+void BrowserCtrl::onVStructChanged( const QString &name )
+{
+ Q_EMIT vstructChanged( name );
+}
+
void BrowserCtrl::enableMgrConnections()
{
QtVariantPropertyManager *mgr = m_pvt->manager();
+ FileManager *fileMgr = m_pvt->fileManager();
connect( mgr, SIGNAL( valueChanged( QtProperty*, const QVariant & ) ),
this, SLOT( onValueChanged( QtProperty*, const QVariant & ) ) );
+ connect( fileMgr, SIGNAL( valueChanged( QtProperty*, const QString & ) ),
+ this, SLOT( onFileValueChanged( QtProperty*, const QString & ) ) );
}
void BrowserCtrl::disableMgrConnections()
{
QtVariantPropertyManager *mgr = m_pvt->manager();
+ FileManager *fileMgr = m_pvt->fileManager();
disconnect( mgr, SIGNAL( valueChanged( QtProperty*, const QVariant & ) ),
this, SLOT( onValueChanged( QtProperty*, const QVariant & ) ) );
+ disconnect( fileMgr, SIGNAL( valueChanged( QtProperty*, const QString & ) ),
+ this, SLOT( onFileValueChanged( QtProperty*, const QString & ) ) );
}
diff --git a/code/studio/src/plugins/georges_editor/browser_ctrl.h b/code/studio/src/plugins/georges_editor/browser_ctrl.h
index 25aeaf49f..a70b57356 100644
--- a/code/studio/src/plugins/georges_editor/browser_ctrl.h
+++ b/code/studio/src/plugins/georges_editor/browser_ctrl.h
@@ -48,12 +48,15 @@ Q_SIGNALS:
void arrayResized( const QString &name, int size );
void modified();
void valueChanged( const QString &key, const QString &value );
+ void vstructChanged( const QString &name );
private Q_SLOTS:
void onValueChanged( QtProperty *p, const QVariant &value );
void onValueChanged( const QString &key, const QString &value );
+ void onFileValueChanged( QtProperty *p, const QString &value );
void onArrayResized( const QString &name, int size );
void onModified();
+ void onVStructChanged( const QString &name );
private:
void enableMgrConnections();
diff --git a/code/studio/src/plugins/georges_editor/browser_ctrl_pvt.cpp b/code/studio/src/plugins/georges_editor/browser_ctrl_pvt.cpp
index 492258c71..dbeb8fecf 100644
--- a/code/studio/src/plugins/georges_editor/browser_ctrl_pvt.cpp
+++ b/code/studio/src/plugins/georges_editor/browser_ctrl_pvt.cpp
@@ -24,16 +24,31 @@
#include "nel/georges/form.h"
+#include "filepath_property_manager.h"
namespace
{
+ const unsigned int FILEBROWSER = 9000000;
QVariant::Type getValueType( const NLGEORGES::UType *typ )
{
QVariant::Type t = QVariant::String;
+ bool file = false;
+
NLGEORGES::UType::TType ttyp = NLGEORGES::UType::String;
if( typ != NULL )
+ {
ttyp = typ->getType();
+
+ const NLGEORGES::CType *ctyp = static_cast< const NLGEORGES::CType* >( typ );
+ if(ctyp->UIType == NLGEORGES::CType::FileBrowser )
+ {
+ file = true;
+ }
+ }
+
+ if( file )
+ return QVariant::Type( FILEBROWSER );
switch( ttyp )
{
@@ -47,12 +62,111 @@ namespace
return t;
}
+ QVariant::Type getValueTypeFromDfn( NLGEORGES::CFormElmStruct *st, int idx )
+ {
+ NLGEORGES::CFormDfn *cdfn = st->FormDfn;
+ NLGEORGES::CFormDfn::CEntry entry = cdfn->getEntry( idx );
+ return getValueType( entry.getTypePtr() );
+ }
+
+
+ QVariant::Type getValueTypeFromDfn( NLGEORGES::CFormElmAtom *atom )
+ {
+ QVariant::Type t = QVariant::String;
+
+ NLGEORGES::CFormElm *cparent = static_cast< NLGEORGES::CFormElm* >( atom->getParent() );
+
+ if( cparent->isArray() )
+ {
+ NLGEORGES::CFormElmStruct *aparent = static_cast< NLGEORGES::CFormElmStruct* >( cparent->getParent() );
+ NLGEORGES::CFormDfn *cdfn = static_cast< NLGEORGES::CFormDfn* >( aparent->getStructDfn() );
+
+ int idx = -1;
+ for( idx = 0; idx < aparent->Elements.size(); idx++ )
+ {
+ if( aparent->Elements[ idx ].Element == cparent )
+ break;
+ }
+
+ NLGEORGES::CFormDfn::CEntry entry = cdfn->getEntry( idx );
+ return getValueType( entry.getTypePtr() );
+ }
+ else
+ if( cparent->isStruct() )
+ {
+ NLGEORGES::CFormElmStruct *sparent = static_cast< NLGEORGES::CFormElmStruct* >( cparent );
+ NLGEORGES::CFormDfn *cdfn = static_cast< NLGEORGES::CFormDfn* >( cparent->getStructDfn() );
+
+ int idx = -1;
+ for( idx = 0; idx < sparent->Elements.size(); idx++ )
+ {
+ if( sparent->Elements[ idx ].Element == atom )
+ break;
+ }
+
+ NLGEORGES::CFormDfn::CEntry entry = cdfn->getEntry( idx );
+ return getValueType( entry.getTypePtr() );
+ }
+
+ return t;
+ }
+
NLGEORGES::UFormElm* getGeorgesNode( GeorgesQt::CFormItem *item )
{
NLGEORGES::UFormElm *n = NULL;
item->form()->getRootNode().getNodeByName( &n, item->formName().c_str() );
return n;
}
+
+ // Get the data from a string, and pack it into a QVariant properly
+ // Needed for some special values, like color
+ // which are represented differently in Nel and Qt
+ QVariant stringToVariant( const QString &value, QVariant::Type type )
+ {
+ QVariant v;
+
+ if( type == QVariant::Color )
+ {
+ QStringList l = value.split( ',' );
+ if( l.size() != 3 )
+ v = "";
+ else
+ {
+ QColor c;
+ c.setRed( l[ 0 ].toInt() );
+ c.setGreen( l[ 1 ].toInt() );
+ c.setBlue( l[ 2 ].toInt() );
+ v = c;
+ }
+
+ }
+ else
+ v = value;
+
+ return v;
+ }
+
+ // The inverse function of stringToVariant
+ // Unpacks the data from a QVariant properly
+ QString variantToString( const QVariant &value )
+ {
+ QString v;
+
+ if( value.type() == QVariant::Color )
+ {
+ QColor c = value.value< QColor >();
+ v += QString::number( c.red() );
+ v += ',';
+ v += QString::number( c.green() );
+ v += ',';
+ v += QString::number( c.blue() );
+ }
+ else
+ v = value.toString();
+
+ return v;
+ }
+
}
@@ -61,6 +175,8 @@ QObject( parent )
{
mgr = new QtVariantPropertyManager();
factory = new QtVariantEditorFactory();
+ m_fileMgr = new FileManager( this );
+ m_fileFactory = new FileEditFactory( this );
m_rootNode = NULL;
}
@@ -70,30 +186,71 @@ BrowserCtrlPvt::~BrowserCtrlPvt()
mgr = NULL;
delete factory;
factory = NULL;
+ m_fileMgr = NULL;
+ m_fileFactory = NULL;
m_browser = NULL;
}
-void BrowserCtrlPvt::setupAtom( NLGEORGES::CFormElmStruct::CFormElmStructElm &elm )
+NLGEORGES::UFormElm* BrowserCtrlPvt::getNode( const QString &name )
{
+ NLGEORGES::UFormElm *node = NULL;
+ m_rootNode->getNodeByName( &node, name.toUtf8().constData(), NULL, true );
+
+ return node;
+}
+
+NLGEORGES::UFormElm* BrowserCtrlPvt::getCurrentNode()
+{
+ return getNode( m_currentNode.name );
+}
+
+void BrowserCtrlPvt::setupAtom( NLGEORGES::CFormElmStruct *st, int idx )
+{
+ NLGEORGES::CFormElmStruct::CFormElmStructElm &elm = st->Elements[ idx ];
+ if( ( elm.Element != NULL ) && !elm.Element->isAtom() )
+ return;
+
+ if( elm.Element == NULL )
+ {
+ NLGEORGES::CFormDfn::CEntry &entry = st->FormDfn->getEntry( idx );
+ if( entry.getArrayFlag() )
+ return;
+
+ if( entry.getType() == NLGEORGES::UFormDfn::EntryVirtualDfn )
+ return;
+ }
+
QString key = elm.Name.c_str();
QString value = "";
QVariant::Type t = QVariant::String;
+ // If the atom exists, get the value from it
+ // Otherwise just get the type so we can set up the proper editor
if( elm.Element != NULL )
{
- t = getValueType( elm.Element->getType() );
+ // Check if there's a type, if not get it from the Dfn
+ const NLGEORGES::CType *type = elm.Element->getType();
+ if( type != NULL )
+ t = getValueType( elm.Element->getType() );
+ else
+ t = getValueTypeFromDfn( st, idx );
std::string formName;
elm.Element->getFormName( formName, NULL );
std::string v;
m_rootNode->getValueByName( v, formName.c_str(), NLGEORGES::UFormElm::NoEval, NULL, 0 );
- value = v.c_str();
+ value = stringToVariant( v.c_str(), t ).toString();
+ }
+ else
+ {
+ t = getValueTypeFromDfn( st, idx );
}
- QtVariantProperty *p = mgr->addProperty( t, key );
- p->setValue( value );
- m_browser->addProperty( p );
+ if( t == QVariant::Type( FILEBROWSER ) )
+ addFileProperty( key, value );
+ else
+ addVariantProperty( t, key, value );
}
void BrowserCtrlPvt::setupStruct( NLGEORGES::UFormElm *node )
@@ -102,18 +259,7 @@ void BrowserCtrlPvt::setupStruct( NLGEORGES::UFormElm *node )
for( int i = 0; i < st->Elements.size(); i++ )
{
- NLGEORGES::CFormElmStruct::CFormElmStructElm &elm = st->Elements[ i ];
- if( ( elm.Element != NULL ) && !elm.Element->isAtom() )
- continue;
-
- if( elm.Element == NULL )
- {
- NLGEORGES::CFormDfn::CEntry &entry = st->FormDfn->getEntry( i );
- if( entry.getArrayFlag() )
- continue;
- }
-
- setupAtom( elm );
+ setupAtom( st, i );
}
}
@@ -123,11 +269,24 @@ void BrowserCtrlPvt::setupStruct( GeorgesQt::CFormItem *node )
if( n == NULL )
return;
- m_currentNode.p = n;
-
setupStruct( n );
}
+void BrowserCtrlPvt::setupVStruct( GeorgesQt::CFormItem *node )
+{
+ NLGEORGES::UFormElm *n = getGeorgesNode( node );
+
+ QtProperty *p = NULL;
+ p = addFileProperty( "Dfn filename", "" );
+
+ if( n != NULL )
+ {
+ NLGEORGES::CFormElmVirtualStruct *vs = static_cast< NLGEORGES::CFormElmVirtualStruct* >( n );
+ m_fileMgr->setValue( p, vs->DfnFilename.c_str() );
+ setupStruct( n );
+ }
+}
+
void BrowserCtrlPvt::setupArray( GeorgesQt::CFormItem *node )
{
NLGEORGES::UFormElm *n = getGeorgesNode( node );
@@ -137,28 +296,62 @@ void BrowserCtrlPvt::setupArray( GeorgesQt::CFormItem *node )
{
NLGEORGES::CFormElmArray *arr = static_cast< NLGEORGES::CFormElmArray* >( n );
arr->getArraySize( size );
- m_currentNode.p = n;
}
QString key = QObject::tr( "Array size" );
- QtVariantProperty *p = mgr->addProperty( QVariant::Int, key );
- p->setValue( size );
- m_browser->addProperty( p );
+ QtVariantProperty *p = addVariantProperty( QVariant::Int, key, size );
+}
+
+void BrowserCtrlPvt::setupAtom( GeorgesQt::CFormItem *node )
+{
+ NLGEORGES::UFormElm *n = getGeorgesNode( node );
+
+ if( n == NULL )
+ return;
+
+ NLGEORGES::CFormElmAtom *atom = static_cast< NLGEORGES::CFormElmAtom* >( n );
+ std::string v;
+ atom->getValue( v );
+
+ const NLGEORGES::CType *t = atom->getType();
+ QVariant::Type tt = QVariant::String;
+ if( t != NULL )
+ {
+ tt = getValueType( t );
+ }
+ else
+ {
+ tt = getValueTypeFromDfn( atom );
+ }
+
+ if( tt == QVariant::Type( FILEBROWSER ) )
+ addFileProperty( "value", v.c_str() );
+ else
+ addVariantProperty( tt, "value", v.c_str() );
}
void BrowserCtrlPvt::setupNode( GeorgesQt::CFormItem *node )
{
m_currentNode.clear();
m_currentNode.name = node->formName().c_str();
-
+ m_currentNode.type = node->type();
+
m_rootNode = dynamic_cast< NLGEORGES::CFormElm* >( &(node->form()->getRootNode()) );
if( node->isArray() )
setupArray( node );
else
+ if( node->isStruct() )
setupStruct( node );
+ else
+ if( node->isVStruct() )
+ setupVStruct( node );
+ else
+ if( node->isAtom() )
+ setupAtom( node );
m_browser->setFactoryForManager( mgr, factory );
+ m_browser->setFactoryForManager( m_fileMgr, m_fileFactory );
}
void BrowserCtrlPvt::clear()
@@ -171,10 +364,13 @@ void BrowserCtrlPvt::clear()
void BrowserCtrlPvt::onStructValueChanged( QtProperty *p, const QVariant &value )
{
std::string k = p->propertyName().toUtf8().constData();
- std::string v = value.toString().toUtf8().constData();
+ std::string v;
+ v = variantToString( value ).toUtf8().constData();
+
+ NLGEORGES::UFormElm *node = getCurrentNode();
bool created = false;
- m_currentNode.p->setValueByName( v.c_str(), k.c_str(), &created );
+ node->setValueByName( v.c_str(), k.c_str(), &created );
QString key = m_currentNode.name + "." + p->propertyName();
@@ -182,6 +378,43 @@ void BrowserCtrlPvt::onStructValueChanged( QtProperty *p, const QVariant &value
Q_EMIT valueChanged( key, value.toString() );
}
+void BrowserCtrlPvt::onVStructValueChanged( QtProperty *p, const QVariant &value )
+{
+ if( p->propertyName() != "Dfn filename" )
+ {
+ onStructValueChanged( p, value );
+ return;
+ }
+
+ NLGEORGES::CFormElmVirtualStruct *vs = static_cast< NLGEORGES::CFormElmVirtualStruct* >( getCurrentNode() );
+ if( vs == NULL )
+ {
+ const NLGEORGES::CFormDfn *parentDfn;
+ const NLGEORGES::CFormDfn *nodeDfn;
+ uint indexDfn;
+ const NLGEORGES::CType *type;
+ NLGEORGES::UFormDfn::TEntryType entryType;
+ NLGEORGES::CFormElm *node;
+ bool created;
+ bool isArray;
+
+ m_rootNode->createNodeByName( m_currentNode.name.toUtf8().constData(), &parentDfn, indexDfn, &nodeDfn, &type, &node, entryType, isArray, created );
+
+ if( !created )
+ return;
+
+ vs = static_cast< NLGEORGES::CFormElmVirtualStruct* >( node );
+ }
+
+ vs->DfnFilename = value.toString().toUtf8().constData();
+
+ QString key = m_currentNode.name + "." + p->propertyName();
+
+ Q_EMIT modified();
+ Q_EMIT valueChanged( key, value.toString() );
+ Q_EMIT vstructChanged( m_currentNode.name );
+}
+
void BrowserCtrlPvt::createArray()
{
const NLGEORGES::CFormDfn *parentDfn;
@@ -198,8 +431,6 @@ void BrowserCtrlPvt::createArray()
if( !created )
return;
- m_currentNode.p = node;
-
NLGEORGES::CFormElmArray *arr = dynamic_cast< NLGEORGES::CFormElmArray* >( node );
QString idx = "[0]";
arr->createNodeByName( idx.toUtf8().constData(), &parentDfn, indexDfn, &nodeDfn, &type, &node, entryType, isArray, created );
@@ -219,7 +450,10 @@ void BrowserCtrlPvt::onArrayValueChanged( QtProperty *p, const QVariant &value )
if( newSize < 0 )
return;
- if( m_currentNode.p == NULL )
+
+ NLGEORGES::UFormElm *node = getCurrentNode();
+
+ if( node == NULL )
{
if( newSize != 1 )
return;
@@ -227,7 +461,7 @@ void BrowserCtrlPvt::onArrayValueChanged( QtProperty *p, const QVariant &value )
return;
}
- NLGEORGES::CFormElmArray *arr = static_cast< NLGEORGES::CFormElmArray* >( m_currentNode.p );
+ NLGEORGES::CFormElmArray *arr = static_cast< NLGEORGES::CFormElmArray* >( node );
std::string formName;
arr->getFormName( formName, NULL );
@@ -276,27 +510,87 @@ void BrowserCtrlPvt::onArrayValueChanged( QtProperty *p, const QVariant &value )
QString name = formName.c_str();
Q_EMIT arrayResized( name, newSize );
Q_EMIT modified();
+}
- if( newSize == 0 )
- m_currentNode.p = NULL;
+void BrowserCtrlPvt::onAtomValueChanged( QtProperty *p, const QVariant &value )
+{
+ NLGEORGES::CFormElmAtom *atom = static_cast< NLGEORGES::CFormElmAtom* >( getCurrentNode() );
+ atom->setValue( value.toString().toUtf8() );
+
+ Q_EMIT modified();
+ Q_EMIT valueChanged( m_currentNode.name, value.toString() );
}
void BrowserCtrlPvt::onValueChanged( QtProperty *p, const QVariant &value )
{
- if( m_currentNode.p == NULL )
- {
- if( m_currentNode.name.isEmpty() )
- return;
-
- onArrayValueChanged( p, value );
- return;
- }
-
- if( m_currentNode.p->isStruct() )
+ if( m_currentNode.type == GeorgesQt::CFormItem::TYPE_VSTRUCT )
+ onVStructValueChanged( p, value );
+ else
+ if( m_currentNode.type == GeorgesQt::CFormItem::TYPE_STRUCT )
onStructValueChanged( p, value );
else
- if( m_currentNode.p->isArray() )
+ if( m_currentNode.type == GeorgesQt::CFormItem::TYPE_ARRAY )
onArrayValueChanged( p, value );
+ else
+ if( m_currentNode.type == GeorgesQt::CFormItem::TYPE_ATOM )
+ onAtomValueChanged( p, value );
+}
+
+void BrowserCtrlPvt::onFileValueChanged( QtProperty *p, const QString &value )
+{
+ QString v = value;
+ QFileInfo info( value );
+ if( !info.exists() )
+ return;
+
+ v = info.fileName();
+ blockSignals( true );
+ m_fileMgr->setValue( p, v );
+ blockSignals( false );
+
+ if( m_currentNode.type == GeorgesQt::CFormItem::TYPE_VSTRUCT )
+ onVStructValueChanged( p, v );
+ else
+ if( m_currentNode.type == GeorgesQt::CFormItem::TYPE_STRUCT )
+ onStructValueChanged( p, v );
+ else
+ if( m_currentNode.type == GeorgesQt::CFormItem::TYPE_ATOM )
+ onAtomValueChanged( p, v );
+}
+
+QtVariantProperty* BrowserCtrlPvt::addVariantProperty( QVariant::Type type, const QString &key, const QVariant &value )
+{
+ QtVariantProperty *p = mgr->addProperty( type, key );
+
+ // Remove the color sub-properties, so they don't get triggered on value change
+ if( type == QVariant::Color )
+ {
+ QList< QtProperty* > sp = p->subProperties();
+ QListIterator< QtProperty* > itr( sp );
+ while( itr.hasNext() )
+ {
+ QtProperty *prop = itr.next();
+ p->removeSubProperty( prop );
+ delete prop;
+ }
+ sp.clear();
+ }
+
+ p->setValue( value );
+ m_browser->addProperty( p );
+
+ return p;
+}
+
+QtProperty* BrowserCtrlPvt::addFileProperty( const QString &key, const QString &value )
+{
+ QtProperty *p = m_fileMgr->addProperty( key );
+
+ m_fileMgr->setValue( p, value );
+ m_browser->addProperty( p );
+
+ return p;
}
+
diff --git a/code/studio/src/plugins/georges_editor/browser_ctrl_pvt.h b/code/studio/src/plugins/georges_editor/browser_ctrl_pvt.h
index bebb65c3e..2f9785411 100644
--- a/code/studio/src/plugins/georges_editor/browser_ctrl_pvt.h
+++ b/code/studio/src/plugins/georges_editor/browser_ctrl_pvt.h
@@ -38,6 +38,10 @@ class QtVariantEditorFactory;
class QtTreePropertyBrowser;
class QVariant;
class QtProperty;
+class QtVariantProperty;
+
+class FileManager;
+class FileEditFactory;
class BrowserCtrlPvt : public QObject
{
@@ -49,8 +53,10 @@ public:
void clear();
void setupNode( GeorgesQt::CFormItem *node );
void onValueChanged( QtProperty *p, const QVariant &value );
+ void onFileValueChanged( QtProperty *p, const QString &value );
QtVariantPropertyManager* manager() const{ return mgr; }
+ FileManager* fileManager() const{ return m_fileMgr; }
void setRootNode( NLGEORGES::CFormElm *root ){ m_rootNode = root; }
void setBrowser( QtTreePropertyBrowser *browser ){ m_browser = browser; }
@@ -58,22 +64,36 @@ Q_SIGNALS:
void arrayResized( const QString &name, int size );
void modified();
void valueChanged( const QString &key, const QString &value );
+ void vstructChanged( const QString &name );
private:
+ NLGEORGES::UFormElm* getNode( const QString &name );
+ NLGEORGES::UFormElm* getCurrentNode();
+
void setupStruct( NLGEORGES::UFormElm *node );
- void setupAtom( NLGEORGES::CFormElmStruct::CFormElmStructElm &elm );
+ void setupAtom( NLGEORGES::CFormElmStruct *st, int idx );
void setupStruct( GeorgesQt::CFormItem *node );
+ void setupVStruct( GeorgesQt::CFormItem *node );
void setupArray( GeorgesQt::CFormItem *node );
+ void setupAtom( GeorgesQt::CFormItem *node );
void onStructValueChanged( QtProperty *p, const QVariant &value );
+ void onVStructValueChanged( QtProperty *p, const QVariant &value );
void onArrayValueChanged( QtProperty *p, const QVariant &value );
+ void onAtomValueChanged( QtProperty *p, const QVariant &value );
void createArray();
+
+ QtVariantProperty* addVariantProperty( QVariant::Type type, const QString &key, const QVariant &value );
+ QtProperty *addFileProperty( const QString &key, const QString &value );
QtVariantPropertyManager *mgr;
QtVariantEditorFactory *factory;
QtTreePropertyBrowser *m_browser;
+ FileManager *m_fileMgr;
+ FileEditFactory *m_fileFactory;
+
QString m_currentNodeName;
NLGEORGES::CFormElm *m_rootNode;
@@ -86,12 +106,12 @@ private:
void clear()
{
- p = NULL;
+ type = -1;
name = "";
}
QString name;
- NLGEORGES::UFormElm *p;
+ int type;
};
CurrentNode m_currentNode;
diff --git a/code/studio/src/plugins/georges_editor/dfn_browser_ctrl.cpp b/code/studio/src/plugins/georges_editor/dfn_browser_ctrl.cpp
index 9e2c86a56..c406b549a 100644
--- a/code/studio/src/plugins/georges_editor/dfn_browser_ctrl.cpp
+++ b/code/studio/src/plugins/georges_editor/dfn_browser_ctrl.cpp
@@ -26,6 +26,8 @@
#include "nel/georges/form_dfn.h"
+#include
+
namespace
{
enum EntryEnum
@@ -248,7 +250,15 @@ void DFNBrowserCtrl::onEnumValueChanged( QtProperty *p, int v )
void DFNBrowserCtrl::onFileValueChanged( QtProperty *p, const QString &v )
{
NLGEORGES::CFormDfn::CEntry &entry = m_dfn->getEntry( m_idx );
- entry.setFilename( v.toUtf8().constData() );
+ QFileInfo info( v );
+ if( !info.exists() )
+ return;
+
+ entry.setFilename( info.fileName().toUtf8().constData() );
+
+ blockSignals( true );
+ m_fileMgr->setValue( p, info.fileName() );
+ blockSignals( false );
Q_EMIT valueChanged( p->propertyName(), v );
}
diff --git a/code/studio/src/plugins/georges_editor/formitem.cpp b/code/studio/src/plugins/georges_editor/formitem.cpp
index 8cd479961..939ec4cf4 100644
--- a/code/studio/src/plugins/georges_editor/formitem.cpp
+++ b/code/studio/src/plugins/georges_editor/formitem.cpp
@@ -40,7 +40,7 @@ namespace GeorgesQt
_StructId = 0;
_Slot = 0;
_Type = Null;
- _Array = false;
+ _TType = TYPE_ATOM;
}
CFormItem::~CFormItem()
@@ -113,7 +113,10 @@ namespace GeorgesQt
bool CFormItem::isArray()
{
- return _Array;
+ if( _TType == TYPE_ARRAY )
+ return true;
+ else
+ return false;
}
bool CFormItem::isArrayMember()
@@ -124,6 +127,30 @@ namespace GeorgesQt
return parentItem->isArray();
}
+ bool CFormItem::isStruct()
+ {
+ if( _TType == TYPE_STRUCT )
+ return true;
+ else
+ return false;
+ }
+
+ bool CFormItem::isVStruct()
+ {
+ if( _TType == TYPE_VSTRUCT )
+ return true;
+ else
+ return false;
+ }
+
+ bool CFormItem::isAtom()
+ {
+ if( _TType == TYPE_ATOM )
+ return true;
+ else
+ return false;
+ }
+
QIcon CFormItem::getItemImage(CFormItem *rootItem)
{
if(_Type == CFormItem::Null)
@@ -211,7 +238,14 @@ namespace GeorgesQt
childItems.clear();
}
- CFormItem *CFormItem::add (TSub type, const char *name, uint structId, const char *formName, uint slot, NLGEORGES::UForm *formPtr, bool isArray)
+ void CFormItem::removeChild( int idx )
+ {
+ CFormItem *item = childItems[ idx ];
+ childItems.removeAt( idx );
+ delete item;
+ }
+
+ CFormItem *CFormItem::add (TSub type, const char *name, uint structId, const char *formName, uint slot, NLGEORGES::UForm *formPtr, TType itemType )
{
CFormItem *newNode = new CFormItem();
newNode->_Type = type;
@@ -221,7 +255,7 @@ namespace GeorgesQt
newNode->_FormName = formName;
newNode->_Slot = slot;
newNode->m_form = formPtr;
- newNode->_Array = isArray;
+ newNode->_TType = itemType;
appendChild(newNode);
return newNode;
diff --git a/code/studio/src/plugins/georges_editor/formitem.h b/code/studio/src/plugins/georges_editor/formitem.h
index cd67d1b21..a0aabfc10 100644
--- a/code/studio/src/plugins/georges_editor/formitem.h
+++ b/code/studio/src/plugins/georges_editor/formitem.h
@@ -41,12 +41,20 @@ namespace GeorgesQt
Form, // This node is a form
};
+ enum TType
+ {
+ TYPE_ARRAY,
+ TYPE_STRUCT,
+ TYPE_VSTRUCT,
+ TYPE_ATOM
+ };
+
CFormItem();
~CFormItem();
void appendChild(CFormItem *child);
- CFormItem *add (TSub type, const char *name, uint structId, const char *formName, uint slot, NLGEORGES::UForm *formPtr, bool isArray );
+ CFormItem *add (TSub type, const char *name, uint structId, const char *formName, uint slot, NLGEORGES::UForm *formPtr, TType itemType );
CFormItem *child(int row);
int childCount() const;
@@ -69,6 +77,11 @@ namespace GeorgesQt
bool isEditable(int column);
bool isArray();
bool isArrayMember();
+ bool isStruct();
+ bool isVStruct();
+ bool isAtom();
+
+ TType type() const{ return _TType; }
QIcon getItemImage(CFormItem *rootItem);
@@ -76,6 +89,8 @@ namespace GeorgesQt
void clearChildren();
+ void removeChild( int idx );
+
bool rootItem() const{
if( parentItem == NULL )
return true;
@@ -95,7 +110,7 @@ namespace GeorgesQt
std::string _FormName;
TSub _Type;
uint _Slot;
- bool _Array;
+ TType _TType;
}; // CFormItem
diff --git a/code/studio/src/plugins/georges_editor/georges_dfn_dialog.cpp b/code/studio/src/plugins/georges_editor/georges_dfn_dialog.cpp
index d7d329dac..c7244273e 100644
--- a/code/studio/src/plugins/georges_editor/georges_dfn_dialog.cpp
+++ b/code/studio/src/plugins/georges_editor/georges_dfn_dialog.cpp
@@ -82,6 +82,8 @@ bool GeorgesDFNDialog::load( const QString &fileName )
m_fileName = fileName;
+ connect(m_ui.commentsEdit, SIGNAL(textChanged()), this, SLOT(onCommentsEdited()));
+
return true;
}
@@ -91,6 +93,7 @@ void GeorgesDFNDialog::write()
setWindowTitle( windowTitle().remove( "*" ) );
m_pvt->dfn->Header.Log = m_ui.logEdit->toPlainText().toUtf8().constData();
+ m_pvt->dfn->Header.Comments = m_ui.commentsEdit->toPlainText().toUtf8().constData();
NLMISC::COFile file;
if( !file.open( m_fileName.toUtf8().constData(), false, true, false ) )
@@ -115,6 +118,8 @@ void GeorgesDFNDialog::newDocument( const QString &fileName )
m_pvt->dfn = new NLGEORGES::CFormDfn();
loadDfn();
+
+ log( "Created" );
}
void GeorgesDFNDialog::onAddClicked()
@@ -176,6 +181,11 @@ void GeorgesDFNDialog::onValueChanged( const QString &key, const QString &value
}
}
+void GeorgesDFNDialog::onCommentsEdited()
+{
+ onModified();
+}
+
void GeorgesDFNDialog::loadDfn()
{
m_pvt->ctrl->setDFN( m_pvt->dfn );
diff --git a/code/studio/src/plugins/georges_editor/georges_dfn_dialog.h b/code/studio/src/plugins/georges_editor/georges_dfn_dialog.h
index 2d6dc4113..edb67144c 100644
--- a/code/studio/src/plugins/georges_editor/georges_dfn_dialog.h
+++ b/code/studio/src/plugins/georges_editor/georges_dfn_dialog.h
@@ -44,6 +44,7 @@ private Q_SLOTS:
void onCurrentRowChanged( int row );
void onValueChanged( const QString& key, const QString &value );
+ void onCommentsEdited();
private:
void loadDfn();
@@ -53,7 +54,6 @@ private:
Ui::GeorgesDFNDialog m_ui;
GeorgesDFNDialogPvt *m_pvt;
- QString m_fileName;
};
#endif
diff --git a/code/studio/src/plugins/georges_editor/georges_dfn_dialog.ui b/code/studio/src/plugins/georges_editor/georges_dfn_dialog.ui
index 3cbdb7419..70b5bd265 100644
--- a/code/studio/src/plugins/georges_editor/georges_dfn_dialog.ui
+++ b/code/studio/src/plugins/georges_editor/georges_dfn_dialog.ui
@@ -98,7 +98,7 @@
-
- Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse
+ Qt::TextEditorInteraction
diff --git a/code/studio/src/plugins/georges_editor/georges_dock_widget.cpp b/code/studio/src/plugins/georges_editor/georges_dock_widget.cpp
index 921f59e0b..e031fbc8f 100644
--- a/code/studio/src/plugins/georges_editor/georges_dock_widget.cpp
+++ b/code/studio/src/plugins/georges_editor/georges_dock_widget.cpp
@@ -17,6 +17,7 @@
// along with this program. If not, see .
#include "georges_dock_widget.h"
+#include
GeorgesDockWidget::GeorgesDockWidget( QWidget *parent ) :
QDockWidget( parent )
@@ -29,6 +30,31 @@ GeorgesDockWidget::~GeorgesDockWidget()
{
}
+void GeorgesDockWidget::closeEvent( QCloseEvent *e )
+{
+ if( isModified() )
+ {
+ QString title = windowTitle();
+ title.remove( '*' );
+
+ int reply = QMessageBox::question( this,
+ tr( "Closing dialog" ),
+ title + tr( " has been modified.\nWould you like to save the changes?" ),
+ QMessageBox::Yes | QMessageBox::No | QMessageBox::Cancel );
+
+ if( reply == QMessageBox::Cancel )
+ {
+ e->ignore();
+ return;
+ }
+
+ if( reply == QMessageBox::Yes )
+ write();
+ }
+
+ Q_EMIT closing( this );
+}
+
QString GeorgesDockWidget::buildLogMsg( const QString &msg )
{
QString user = getenv( "USER" );
diff --git a/code/studio/src/plugins/georges_editor/georges_dock_widget.h b/code/studio/src/plugins/georges_editor/georges_dock_widget.h
index 53e4f6841..d7f80dff1 100644
--- a/code/studio/src/plugins/georges_editor/georges_dock_widget.h
+++ b/code/studio/src/plugins/georges_editor/georges_dock_widget.h
@@ -25,6 +25,7 @@ class QUndoStack;
class GeorgesDockWidget : public QDockWidget
{
+ Q_OBJECT
public:
GeorgesDockWidget( QWidget *parent = NULL );
~GeorgesDockWidget();
@@ -39,6 +40,12 @@ public:
virtual bool load( const QString &fileName ) = 0;
virtual void write() = 0;
+protected:
+ void closeEvent( QCloseEvent *e );
+
+Q_SIGNALS:
+ void closing( GeorgesDockWidget *d );
+
protected:
QString buildLogMsg( const QString &msg );
virtual void log( const QString &msg ) = 0;
diff --git a/code/studio/src/plugins/georges_editor/georges_editor_form.cpp b/code/studio/src/plugins/georges_editor/georges_editor_form.cpp
index 54028b5a4..4f4b814ec 100644
--- a/code/studio/src/plugins/georges_editor/georges_editor_form.cpp
+++ b/code/studio/src/plugins/georges_editor/georges_editor_form.cpp
@@ -252,7 +252,7 @@ namespace GeorgesQt
m_lastActiveDock = w;
m_dockedWidgets.append(w);
- connect(m_dockedWidgets.last(), SIGNAL(closing()), this, SLOT(closingTreeView()));
+ connect( w, SIGNAL( closing( GeorgesDockWidget* ) ), this, SLOT( dialogClosing( GeorgesDockWidget* ) ) );
connect(m_dockedWidgets.last(), SIGNAL(visibilityChanged(bool)), m_dockedWidgets.last(), SLOT(checkVisibility(bool)));
// If there is more than one form open - tabify the new form. If this is the first form open add it to the dock.
@@ -265,6 +265,7 @@ namespace GeorgesQt
m_mainDock->addDockWidget(Qt::RightDockWidgetArea, m_dockedWidgets.last());
}
+ QCoreApplication::processEvents();
w->raise();
}
@@ -336,12 +337,16 @@ namespace GeorgesQt
addGeorgesWidget( w );
}
- void GeorgesEditorForm::closingTreeView()
+ void GeorgesEditorForm::dialogClosing( GeorgesDockWidget *d )
{
- //qDebug() << "closingTreeView";
- m_dockedWidgets.removeAll(qobject_cast(sender()));
- if (qobject_cast(sender()) == m_lastActiveDock)
- m_lastActiveDock = 0;
+ m_dockedWidgets.removeAll( d );
+
+ if( m_dockedWidgets.size() == 0 )
+ m_lastActiveDock = NULL;
+ else
+ m_lastActiveDock = m_dockedWidgets.last();
+
+ delete d;
}
void GeorgesEditorForm::setModified ()
diff --git a/code/studio/src/plugins/georges_editor/georges_editor_form.h b/code/studio/src/plugins/georges_editor/georges_editor_form.h
index adfaf2e59..031d6e0fc 100644
--- a/code/studio/src/plugins/georges_editor/georges_editor_form.h
+++ b/code/studio/src/plugins/georges_editor/georges_editor_form.h
@@ -52,7 +52,7 @@ public Q_SLOTS:
void save();
void settingsChanged();
- void closingTreeView();
+ void dialogClosing( GeorgesDockWidget *d );
void setModified();
void focusChanged(QWidget *old, QWidget *now);
diff --git a/code/studio/src/plugins/georges_editor/georges_treeview_dialog.cpp b/code/studio/src/plugins/georges_editor/georges_treeview_dialog.cpp
index c2aa78005..ab5f03924 100644
--- a/code/studio/src/plugins/georges_editor/georges_treeview_dialog.cpp
+++ b/code/studio/src/plugins/georges_editor/georges_treeview_dialog.cpp
@@ -90,6 +90,7 @@ namespace GeorgesQt
connect(m_browserCtrl, SIGNAL(modified()), this, SLOT(modifiedFile()));
connect(m_browserCtrl, SIGNAL(valueChanged(const QString&,const QString&)), this, SLOT(onValueChanged(const QString&,const QString&)));
+ connect(m_browserCtrl, SIGNAL(vstructChanged(const QString&)), this, SLOT( onVStructChanged(const QString&)));
}
CGeorgesTreeViewDialog::~CGeorgesTreeViewDialog()
@@ -322,6 +323,8 @@ namespace GeorgesQt
QFileInfo info( fileName );
setWindowTitle( info.fileName() );
+ connect(m_ui.commentEdit, SIGNAL(textChanged()), this, SLOT(onCommentsEdited()));
+
return true;
}
@@ -329,6 +332,7 @@ namespace GeorgesQt
{
NLGEORGES::CForm *form = static_cast< NLGEORGES::CForm* >( m_form );
form->Header.Log = m_ui.logEdit->toPlainText().toUtf8().constData();
+ form->Header.Comments = m_ui.commentEdit->toPlainText().toUtf8().constData();
NLMISC::COFile file;
std::string s = m_fileName.toUtf8().constData();
@@ -423,6 +427,8 @@ namespace GeorgesQt
setWindowTitle( info.fileName() + "*" );
setModified( true );
+ log( "Created" );
+
return true;
}
@@ -573,10 +579,24 @@ namespace GeorgesQt
modifiedFile();
}
- void CGeorgesTreeViewDialog::closeEvent(QCloseEvent *event)
+ void CGeorgesTreeViewDialog::onVStructChanged( const QString &name )
{
- Q_EMIT closing();
- deleteLater();
+ QModelIndex idx = m_ui.treeView->currentIndex();
+ QModelIndex parent = idx.parent();
+ int row = idx.row();
+
+ m_model->changeVStructDfn( idx );
+
+ idx = m_model->index( row, 0, parent );
+
+ m_ui.treeView->expandAll();
+ m_ui.treeView->setCurrentIndex( idx );
+ m_browserCtrl->clicked( idx );
+ }
+
+ void CGeorgesTreeViewDialog::onCommentsEdited()
+ {
+ modifiedFile();
}
void CGeorgesTreeViewDialog::checkVisibility(bool visible) {
diff --git a/code/studio/src/plugins/georges_editor/georges_treeview_dialog.h b/code/studio/src/plugins/georges_editor/georges_treeview_dialog.h
index 459258c3f..37ae55c20 100644
--- a/code/studio/src/plugins/georges_editor/georges_treeview_dialog.h
+++ b/code/studio/src/plugins/georges_editor/georges_treeview_dialog.h
@@ -77,13 +77,9 @@ namespace GeorgesQt
QString loadedForm;
- protected:
- void closeEvent(QCloseEvent *event);
-
Q_SIGNALS:
void changeFile(QString);
void modified();
- void closing();
public Q_SLOTS:
void setForm(const CForm*);
@@ -101,7 +97,9 @@ namespace GeorgesQt
void onAppendArray();
void onDeleteArrayEntry();
void onValueChanged( const QString &key, const QString &value );
+ void onVStructChanged( const QString &name );
void onRenameArrayEntry();
+ void onCommentsEdited();
private:
void log( const QString &msg );
diff --git a/code/studio/src/plugins/georges_editor/georges_treeview_form.ui b/code/studio/src/plugins/georges_editor/georges_treeview_form.ui
index 42d9afcf9..43d50e103 100644
--- a/code/studio/src/plugins/georges_editor/georges_treeview_form.ui
+++ b/code/studio/src/plugins/georges_editor/georges_treeview_form.ui
@@ -112,7 +112,11 @@
-
-
+
+
+ Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse
+
+
diff --git a/code/studio/src/plugins/georges_editor/georges_typ_dialog.cpp b/code/studio/src/plugins/georges_editor/georges_typ_dialog.cpp
index 7e832ba26..ab4cc0472 100644
--- a/code/studio/src/plugins/georges_editor/georges_typ_dialog.cpp
+++ b/code/studio/src/plugins/georges_editor/georges_typ_dialog.cpp
@@ -82,6 +82,8 @@ bool GeorgesTypDialog::load( const QString &fileName )
QFileInfo info( fileName );
setWindowTitle( info.fileName() );
+ connect( m_ui.commentEdit, SIGNAL( textChanged() ), this, SLOT( onCommentsEdited() ) );
+
return true;
}
@@ -96,6 +98,7 @@ void GeorgesTypDialog::write()
xml.init( &file );
m_pvt->typ->Header.Log = m_ui.logEdit->toPlainText().toUtf8().constData();
+ m_pvt->typ->Header.Comments = m_ui.commentEdit->toPlainText().toUtf8().constData();
m_pvt->typ->write( xml.getDocument() );
xml.flush();
@@ -115,6 +118,8 @@ void GeorgesTypDialog::newDocument( const QString &fileName )
setModified( true );
loadTyp();
+
+ log( "Created" );
}
void GeorgesTypDialog::onAddClicked()
@@ -225,6 +230,11 @@ void GeorgesTypDialog::onModified( const QString &k, const QString &v )
onModified();
}
+void GeorgesTypDialog::onCommentsEdited()
+{
+ onModified();
+}
+
void GeorgesTypDialog::setupConnections()
{
connect( m_ui.addButton, SIGNAL( clicked( bool ) ), this, SLOT( onAddClicked() ) );
diff --git a/code/studio/src/plugins/georges_editor/georges_typ_dialog.h b/code/studio/src/plugins/georges_editor/georges_typ_dialog.h
index b241c4c8d..5a6c09e61 100644
--- a/code/studio/src/plugins/georges_editor/georges_typ_dialog.h
+++ b/code/studio/src/plugins/georges_editor/georges_typ_dialog.h
@@ -45,6 +45,7 @@ private Q_SLOTS:
void onItemChanged( QTreeWidgetItem *item, int column );
void onModified();
void onModified( const QString &k, const QString &v );
+ void onCommentsEdited();
private:
void setupConnections();
@@ -53,8 +54,6 @@ private:
Ui::GeorgesTypDialog m_ui;
GeorgesTypDialogPvt *m_pvt;
-
- QString m_fileName;
};
diff --git a/code/studio/src/plugins/georges_editor/georges_typ_dialog.ui b/code/studio/src/plugins/georges_editor/georges_typ_dialog.ui
index 6cd080579..8978fa13b 100644
--- a/code/studio/src/plugins/georges_editor/georges_typ_dialog.ui
+++ b/code/studio/src/plugins/georges_editor/georges_typ_dialog.ui
@@ -118,7 +118,11 @@
-
-
+
+
+ Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse
+
+
diff --git a/code/studio/src/plugins/georges_editor/georgesform_model.cpp b/code/studio/src/plugins/georges_editor/georgesform_model.cpp
index 6fc3c7b9c..2579a09f5 100644
--- a/code/studio/src/plugins/georges_editor/georgesform_model.cpp
+++ b/code/studio/src/plugins/georges_editor/georgesform_model.cpp
@@ -45,6 +45,8 @@
#include "georges_editor_form.h"
#include "actions.h"
+#include "georges.h"
+
using namespace NLGEORGES;
namespace GeorgesQt
@@ -277,13 +279,20 @@ namespace GeorgesQt
const char *name,
uint structId,
const char *formName,
- uint slot)
+ uint slot,
+ bool isVirtual)
{
// The form pointer
NLGEORGES::CForm *formPtr = static_cast(m_form);
// Add the new node
- CFormItem *newNode = parent->add(CFormItem::Form, name, structId, formName, slot, m_form, false);
+ CFormItem::TType ttype;
+ if( isVirtual )
+ ttype = CFormItem::TYPE_VSTRUCT;
+ else
+ ttype = CFormItem::TYPE_STRUCT;
+
+ CFormItem *newNode = parent->add(CFormItem::Form, name, structId, formName, slot, m_form, ttype );
// Can be NULL in virtual DFN
if (parentDfn)
@@ -367,7 +376,10 @@ namespace GeorgesQt
NLGEORGES::CFormDfn *tmpDfn = vStruct ?
((NLGEORGES::CFormDfn*)vStruct->FormDfn) : entry.getDfnPtr();
// Add the new struct
- addStruct (newNode, nextForm, tmpDfn, entry.getName().c_str(), elm, entryName.c_str(), slot);
+ if( entry.getType() == NLGEORGES::UFormDfn::EntryVirtualDfn )
+ addStruct (newNode, nextForm, tmpDfn, entry.getName().c_str(), elm, entryName.c_str(), slot, true);
+ else
+ addStruct (newNode, nextForm, tmpDfn, entry.getName().c_str(), elm, entryName.c_str(), slot);
}
}
// Array of type ?
@@ -418,7 +430,7 @@ CFormItem *CGeorgesFormModel::addArray(CFormItem *parent,
uint slot)
{
// Add the new node
- CFormItem *newNode = parent->add (CFormItem::Form, name, structId, formName, slot, m_form, true);
+ CFormItem *newNode = parent->add (CFormItem::Form, name, structId, formName, slot, m_form, CFormItem::TYPE_ARRAY );
// The array exist
if (array)
@@ -451,7 +463,7 @@ CFormItem *CGeorgesFormModel::addArray(CFormItem *parent,
else
{
NLGEORGES::CFormElmArray *elmPtr = array->Elements[elm].Element ? static_cast(array->Elements[elm].Element) : NULL;
- newNode->add (CFormItem::Form, formArrayName, elm, formArrayElmName, slot, m_form, false);
+ addAtom( newNode, elmPtr, rootDfn, formArrayName, elm, formArrayElmName );
}
}
}
@@ -460,6 +472,39 @@ CFormItem *CGeorgesFormModel::addArray(CFormItem *parent,
}
+CFormItem *CGeorgesFormModel::addAtom(CFormItem *parent, NLGEORGES::CFormElm *elm, NLGEORGES::CFormDfn *dfn, const char *name, uint id, const char *formName)
+{
+ CFormItem *item = parent->add( CFormItem::Form, name, id, formName, 0, m_form, CFormItem::TYPE_ATOM );
+
+ return item;
+}
+
+
+CFormItem *CGeorgesFormModel::addItem(CFormItem *parent, NLGEORGES::CFormElm *elm, NLGEORGES::CFormDfn *dfn, const char *name, uint id, const char *formName)
+{
+ CFormItem *item = NULL;
+
+ if( elm->isAtom() )
+ item = addAtom(parent, elm, dfn, name, id, formName );
+ else
+ if( elm->isStruct() || elm->isVirtualStruct() )
+ {
+ NLGEORGES::CFormElmStruct *st = static_cast< NLGEORGES::CFormElmStruct* >( elm );
+ if( st->isVirtualStruct() )
+ item = addStruct(parent, st, st->FormDfn, name, id, formName, 0, true);
+ else
+ item = addStruct(parent, st, st->FormDfn, name, id, formName, 0, false);
+ }
+ else
+ if( elm->isArray() )
+ {
+ NLGEORGES::CFormElmArray *arr = static_cast< NLGEORGES::CFormElmArray* >( elm );
+ item = addArray(parent, arr, arr->FormDfn, name, id, formName, 0 );
+ }
+
+ return item;
+}
+
void CGeorgesFormModel::arrayResized( const QString &name, int size )
{
CFormItem *item = m_rootItem->findItem( name );
@@ -494,7 +539,9 @@ void CGeorgesFormModel::arrayResized( const QString &name, int size )
else
n = e.Name.c_str();
- item->add( CFormItem::Form, n.toUtf8().constData(), i, formName.toUtf8().constData(), 0, item->form(), false );
+ NLGEORGES::UFormDfn *udfn = e.Element->getStructDfn();
+ NLGEORGES::CFormDfn *cdfn = static_cast< NLGEORGES::CFormDfn* >( udfn );
+ addItem( item, e.Element, cdfn, n.toUtf8().constData(), i, formName.toUtf8().constData() );
}
if( celm->Elements.size() == 0 )
@@ -566,7 +613,9 @@ void CGeorgesFormModel::appendArray( QModelIndex idx )
std::string formName;
node->getFormName( formName );
- item->add( CFormItem::Form, name.c_str(), s, formName.c_str(), 0, item->form(), false );
+ NLGEORGES::CFormDfn *cdfn = const_cast< NLGEORGES::CFormDfn* >( nodeDfn );
+ addItem( item, node, cdfn, name.c_str(), s, formName.c_str() );
+
}
void CGeorgesFormModel::deleteArrayEntry( QModelIndex idx )
@@ -608,7 +657,9 @@ void CGeorgesFormModel::deleteArrayEntry( QModelIndex idx )
else
n = e.Name.c_str();
- item->add( CFormItem::Form, n.toUtf8().constData(), i, formName.toUtf8().constData(), 0, item->form(), false );
+ NLGEORGES::UFormDfn *udfn = e.Element->getStructDfn();
+ NLGEORGES::CFormDfn *cdfn = static_cast< NLGEORGES::CFormDfn* >( udfn );
+ addItem( item, e.Element, cdfn, n.toUtf8().constData(), i, formName.toUtf8().constData() );
}
Q_EMIT endResetModel();
@@ -642,6 +693,42 @@ void CGeorgesFormModel::renameArrayEntry( QModelIndex idx, const QString &name )
item->setName( name.toUtf8().constData() );
}
+void CGeorgesFormModel::changeVStructDfn( QModelIndex idx )
+{
+ CFormItem *item = static_cast< CFormItem* >( idx.internalPointer() );
+
+ QString vstruct = item->formName().c_str();
+
+ NLGEORGES::UFormElm *uelm = NULL;
+ m_form->getRootNode().getNodeByName( &uelm, vstruct.toUtf8().constData() );
+
+ if( uelm == NULL )
+ return;
+
+ NLGEORGES::CFormElmVirtualStruct *vs = static_cast< NLGEORGES::CFormElmVirtualStruct* >( uelm );
+
+ CGeorges g;
+ NLGEORGES::UFormDfn *udfn = g.loadFormDfn( vs->DfnFilename );
+ if( udfn == NULL )
+ return;
+
+ NLGEORGES::CFormDfn *cdfn = static_cast< NLGEORGES::CFormDfn* >( udfn );
+ vs->build( cdfn );
+
+
+ beginResetModel();
+
+ CFormItem *parent = item->parent();
+ int row = idx.row();
+ QString name = item->name().c_str();
+ QString formName = item->formName().c_str();
+ parent->removeChild( row );
+
+ addItem( parent, vs, cdfn, name.toUtf8().constData(), row, formName.toUtf8().constData() );
+
+ endResetModel();
+}
+
/******************************************************************************/
void CGeorgesFormModel::loadFormHeader()
diff --git a/code/studio/src/plugins/georges_editor/georgesform_model.h b/code/studio/src/plugins/georges_editor/georgesform_model.h
index 70d602232..7d6bac3f3 100644
--- a/code/studio/src/plugins/georges_editor/georgesform_model.h
+++ b/code/studio/src/plugins/georges_editor/georgesform_model.h
@@ -65,11 +65,15 @@ namespace GeorgesQt
NLGEORGES::UFormElm *getRootForm() { return m_rootElm; }
CFormItem *addStruct (CFormItem *parent, NLGEORGES::CFormElmStruct *_struct, NLGEORGES::CFormDfn *parentDfn,
- const char *name, uint structId, const char *formName, uint slot);
+ const char *name, uint structId, const char *formName, uint slot, bool isVirtual = false );
CFormItem *addArray(CFormItem *parent, NLGEORGES::CFormElmArray *array, NLGEORGES::CFormDfn *rootDfn,
const char *name, uint structId, const char *formName, uint slot);
+ CFormItem *addAtom(CFormItem *parent, NLGEORGES::CFormElm *elm, NLGEORGES::CFormDfn *dfn, const char *name, uint id, const char *formName);
+
+ CFormItem *addItem(CFormItem *parent, NLGEORGES::CFormElm *elm, NLGEORGES::CFormDfn *dfn, const char *name, uint id, const char *formName);
+
void emitDataChanged(const QModelIndex &index)
{
Q_EMIT dataChanged(index, index);
@@ -79,6 +83,7 @@ namespace GeorgesQt
void appendArray( QModelIndex idx );
void deleteArrayEntry( QModelIndex idx );
void renameArrayEntry( QModelIndex idx, const QString &name );
+ void changeVStructDfn( QModelIndex idx );
private:
void setupModelData();
diff --git a/code/studio/src/plugins/object_viewer/object_viewer.cpp b/code/studio/src/plugins/object_viewer/object_viewer.cpp
index 2cf803d3d..566869e84 100644
--- a/code/studio/src/plugins/object_viewer/object_viewer.cpp
+++ b/code/studio/src/plugins/object_viewer/object_viewer.cpp
@@ -115,7 +115,7 @@ void CObjectViewer::init( NL3D::UDriver *driver )
// create the text context
nlassert(!_TextContext);
- _TextContext = _Driver->createTextContext(_FontName);
+ _TextContext = _Driver->createTextContext(NLMISC::CPath::lookup(_FontName));
nlassert(_TextContext);
NL3D::CBloomEffect::instance().setDriver(_Driver);
diff --git a/code/web/private_php/setup/sql/nel_ams_lib_00003.sql b/code/web/private_php/setup/sql/nel_ams_lib_00003.sql
index 55ce7fc79..2dbd7838c 100644
--- a/code/web/private_php/setup/sql/nel_ams_lib_00003.sql
+++ b/code/web/private_php/setup/sql/nel_ams_lib_00003.sql
@@ -1,3 +1,2 @@
INSERT INTO `plugins` (`FileName`, `Name`, `Type`, `Owner`, `Permission`, `Status`, `Weight`, `Info`) VALUES
('Domain_Management', 'Domain_Management', 'Manual', '', 'admin', 1, 0, '{"PluginName":"Domain Management","Description":"Plug-in for Domain Management.","Version":"1.0.0","TemplatePath":"..\\/..\\/..\\/private_php\\/ams\\/plugins\\/Domain_Management\\/templates\\/index.tpl","Type":"Manual","":null}');
-
diff --git a/code/web/private_php/setup/sql/nel_ams_lib_00004.sql b/code/web/private_php/setup/sql/nel_ams_lib_00004.sql
index 33dac0523..0166c62aa 100644
--- a/code/web/private_php/setup/sql/nel_ams_lib_00004.sql
+++ b/code/web/private_php/setup/sql/nel_ams_lib_00004.sql
@@ -1,3 +1,2 @@
ALTER TABLE `plugins` ADD UNIQUE(`Name`);
UPDATE `plugins` SET `Info` = '{"PluginName":"Achievements","Description":"Returns the achievements of a user with respect to the character","Version":"1.0.0","TemplatePath":"..\\/..\\/..\\/private_php\\/ams\\/plugins\\/Achievements\\/templates\\/index.tpl","Type":"Manual","":null}' WHERE `Name` = 'Achievements';
-
diff --git a/code/web/private_php/setup/sql/nel_ams_lib_00005.sql b/code/web/private_php/setup/sql/nel_ams_lib_00005.sql
new file mode 100644
index 000000000..2a2f8bcca
--- /dev/null
+++ b/code/web/private_php/setup/sql/nel_ams_lib_00005.sql
@@ -0,0 +1 @@
+ALTER TABLE `ticket_attachments` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
diff --git a/code/web/private_php/setup/sql/nel_tool_00002.sql b/code/web/private_php/setup/sql/nel_tool_00002.sql
new file mode 100644
index 000000000..aab24820a
--- /dev/null
+++ b/code/web/private_php/setup/sql/nel_tool_00002.sql
@@ -0,0 +1 @@
+UPDATE `neltool_notes` SET `note_user_id` = '1' WHERE `note_user_id` =27;
diff --git a/code/web/public_php/admin/config.php b/code/web/public_php/admin/config.php
index 0a43d798a..5fdfd1c58 100644
--- a/code/web/public_php/admin/config.php
+++ b/code/web/public_php/admin/config.php
@@ -11,8 +11,8 @@
define('NELTOOL_DBNAME', $cfg['db']['tool']['name']);
// site paths definitions
- define('NELTOOL_SITEBASE', $_SERVER['PHP_SELF']);
- define('NELTOOL_SYSTEMBASE', dirname( dirname(__FILE__) ) . '/admin/');
+ define('NELTOOL_SITEBASE', dirname($_SERVER['PHP_SELF']) .'/');
+ define('NELTOOL_SYSTEMBASE', dirname(__FILE__) .'/');
define('NELTOOL_LOGBASE', NELTOOL_SYSTEMBASE .'/logs/');
define('NELTOOL_IMGBASE', NELTOOL_SYSTEMBASE .'/imgs/');
diff --git a/code/web/public_php/admin/templates/default/index.tpl b/code/web/public_php/admin/templates/default/index.tpl
index 7d3bc5c79..04fe742df 100644
--- a/code/web/public_php/admin/templates/default/index.tpl
+++ b/code/web/public_php/admin/templates/default/index.tpl
@@ -1,4 +1,3 @@
-
{include file="page_header.tpl"}
{literal}
diff --git a/code/web/public_php/login/config.php b/code/web/public_php/login/config.php
index 805252b62..d69bdfea1 100644
--- a/code/web/public_php/login/config.php
+++ b/code/web/public_php/login/config.php
@@ -21,7 +21,6 @@ $DBName = $cfg['db']['shard']['name'];
$RingDBUserName = $cfg['db']['ring']['user'];
$RingDBPassword = $cfg['db']['ring']['pass'];
-$RingDBName = $cfg['db']['ring']['name'];
// If true, the server will add automatically unknown user in the database
// (in nel.user, nel.permission, ring.ring_user and ring.characters
diff --git a/code/web/public_php/ring/edit_session.php b/code/web/public_php/ring/edit_session.php
index e567f2296..4fef39520 100644
--- a/code/web/public_php/ring/edit_session.php
+++ b/code/web/public_php/ring/edit_session.php
@@ -16,10 +16,10 @@
$domainInfo = getDomainInfo($domainId);
- global $DBHost, $RingDBUserName, $RingDBPassword, $RingDBName;
+ global $DBHost, $RingDBUserName, $RingDBPassword;
$link = mysqli_connect($DBHost, $RingDBUserName, $RingDBPassword) or die ("Can't connect to database host:$DBHost user:$RingDBUserName");
- mysqli_select_db($link, $RingDBName) or die ("Can't access to the db dbname:$RingDBName");
+ mysqli_select_db($link, $domainInfo['ring_db_name']) or die ("Can't access to the db dbname:" . $domainInfo['ring_db_name']);
// Find out if the character has an open editing session
$query = "SELECT session_id, state ";
diff --git a/code/web/public_php/ring/invite_pioneer.php b/code/web/public_php/ring/invite_pioneer.php
index 44cd83349..bb1f5ca7e 100644
--- a/code/web/public_php/ring/invite_pioneer.php
+++ b/code/web/public_php/ring/invite_pioneer.php
@@ -42,10 +42,10 @@
if (isset($_POST["execute"]))
{
// lookup in the database to convert character name into
- global $DBHost, $RingDBUserName, $RingDBPassword, $RingDBName;
+ global $DBHost, $RingDBUserName, $RingDBPassword;
$link = mysqli_connect($DBHost, $RingDBUserName, $RingDBPassword) or die ("Can't connect to database host:$DBHost user:$RingDBUserName");
- mysqli_select_db($link, $RingDBName) or die ("Can't access to the table dbname:$RingDBName");
+ mysqli_select_db($link, $domainInfo['ring_db_name']) or die ("Can't access to the table dbname:" . $domainInfo['ring_db_name']);
// extract the character that have the specified name
$charName = mysqli_real_escape_string($link, $_POST['charName']);
diff --git a/code/web/public_php/ring/session_tools.php b/code/web/public_php/ring/session_tools.php
index de6900727..e5f12763f 100644
--- a/code/web/public_php/ring/session_tools.php
+++ b/code/web/public_php/ring/session_tools.php
@@ -107,14 +107,14 @@ function inviteOwnerInSession($charId, $domainId, $sessionId)
$RSMHost = $addr[0];
$RSMPort = $addr[1];
- global $rsmProxy, $rsmSkel, $userId, $charId, $callbackClient, $RingDBName, /*$SessionId,*/ $SessionToolsResult;
+ global $rsmProxy, $rsmSkel, $userId, $charId, $callbackClient, /*$SessionId,*/ $SessionToolsResult;
global $DBHost, $RingDBUserName, $RingDBPassword;
$SessionId = $sessionId;
$DomainId = $domainId;
$link = mysqli_connect($DBHost, $RingDBUserName, $RingDBPassword) or die("Can't connect to ring database");
- mysqli_select_db($link, $RingDBName) or die ("Can't access to the db dbname:$RingDBName");
+ mysqli_select_db($link, $domainInfo['ring_db_name']) or die ("Can't access to the db dbname:" . $domainInfo['ring_db_name']);
$sessionId = (int) $sessionId;
$query = "select session_type from sessions where session_id=".$sessionId;
@@ -146,7 +146,7 @@ class StartSessionCb extends CRingSessionManagerWeb
{
function invokeResult($userId, $resultCode, $resultString)
{
- global $rsmProxy, $rsmSkel, $userId, $charId, $callbackClient, $RingDBName, $SessionId, $DomainId, $SessionToolsResult;
+ global $rsmProxy, $rsmSkel, $userId, $charId, $callbackClient, $SessionId, $DomainId, $SessionToolsResult;
if ($resultCode != 0)
{
@@ -170,7 +170,7 @@ class InviteOwnerCb extends CRingSessionManagerWeb
{
function invokeResult($userId, $resultCode, $resultString)
{
- global $rsmProxy, $rsmSkel, $userId, $charId, $callbackClient, $RingDBName, $SessionId, $DomainId, $SessionToolsResult;
+ global $rsmProxy, $rsmSkel, $userId, $charId, $callbackClient, $SessionId, $DomainId, $SessionToolsResult;
// jump back to main page
echo "The session ".$SessionId." have been started
";
diff --git a/code/web/public_php/setup/database.php b/code/web/public_php/setup/database.php
index 1510a50ae..303df57d5 100644
--- a/code/web/public_php/setup/database.php
+++ b/code/web/public_php/setup/database.php
@@ -2,11 +2,11 @@
// Service
$db_nel = 3;
-$db_nel_tool = 1;
+$db_nel_tool = 2;
// Support
$db_nel_ams = 1;
-$db_nel_ams_lib = 4;
+$db_nel_ams_lib = 5;
// Domain
$db_ring_domain = 1;
diff --git a/code/web/public_php/setup/version.php b/code/web/public_php/setup/version.php
index 36b2fb2d9..3204d1e7b 100644
--- a/code/web/public_php/setup/version.php
+++ b/code/web/public_php/setup/version.php
@@ -1,6 +1,6 @@