diff --git a/FFXIVClassic Map Server/FFXIVClassic Map Server.csproj b/FFXIVClassic Map Server/FFXIVClassic Map Server.csproj
index e283d0da..e911d452 100644
--- a/FFXIVClassic Map Server/FFXIVClassic Map Server.csproj
+++ b/FFXIVClassic Map Server/FFXIVClassic Map Server.csproj
@@ -100,6 +100,7 @@
+
diff --git a/FFXIVClassic Map Server/Server.cs b/FFXIVClassic Map Server/Server.cs
index 895de39f..a2570d60 100644
--- a/FFXIVClassic Map Server/Server.cs
+++ b/FFXIVClassic Map Server/Server.cs
@@ -34,11 +34,11 @@ namespace FFXIVClassic_Lobby_Server
private Dictionary mConnectedPlayerList = new Dictionary();
private List mConnectionList = new List();
private LuaEngine mLuaEngine = new LuaEngine();
- private WorldManager mWorldManager;
+
+ private WorldManager mWorldManager;
private static StaticActors mStaticActors;
+
private PacketProcessor mProcessor;
- private Thread mProcessorThread;
- private Thread mGameThread;
public Server()
{
diff --git a/FFXIVClassic Map Server/dataobjects/Item.cs b/FFXIVClassic Map Server/dataobjects/Item.cs
index 642c2f8d..405503cb 100644
--- a/FFXIVClassic Map Server/dataobjects/Item.cs
+++ b/FFXIVClassic Map Server/dataobjects/Item.cs
@@ -21,14 +21,14 @@ namespace FFXIVClassic_Map_Server.dataobjects
//itemData sheet
public readonly int durability;
+ public readonly int sellPrice;
public readonly int icon;
public readonly int kind;
- public readonly int color;
- public readonly int material;
- public readonly int decoration;
- public readonly int use;
+ public readonly int rarity;
+ public readonly int isUseable;
public readonly int mainSkill;
- public readonly int unknown1;
+ public readonly int subSkill;
+ public readonly int levelType;
public readonly int level;
public readonly int compatibility;
public readonly float effectMagnitude;
@@ -36,7 +36,6 @@ namespace FFXIVClassic_Map_Server.dataobjects
public readonly float shieldBlocking;
public readonly float effectDuration;
public readonly float recastTime;
- public readonly float unknown2;
public readonly byte recastGroup;
public readonly int repairSkill;
public readonly int repairItem;
@@ -57,12 +56,11 @@ namespace FFXIVClassic_Map_Server.dataobjects
durability = reader.GetInt32("durability");
icon = reader.GetInt32("icon");
kind = reader.GetInt32("kind");
- color = reader.GetInt32("color");
- material = reader.GetInt32("material");
- decoration = reader.GetInt32("decoration");
- use = reader.GetInt32("use");
+ rarity = reader.GetInt32("rarity");
+ isUseable = reader.GetInt32("isUseable");
mainSkill = reader.GetInt32("mainSkill");
- //unknown1 = reader.GetInt32("unknown1");
+ subSkill = reader.GetInt32("subSkill");
+ levelType = reader.GetInt32("levelType");
level = reader.GetInt32("level");
compatibility = reader.GetInt32("compatibility");
effectMagnitude = reader.GetFloat("effectMagnitude");
@@ -70,7 +68,6 @@ namespace FFXIVClassic_Map_Server.dataobjects
shieldBlocking = reader.GetFloat("shieldBlocking");
effectDuration = reader.GetFloat("effectDuration");
recastTime = reader.GetFloat("recastTime");
- //unknown2 = reader.GetFloat("unknown2");
recastGroup = reader.GetByte("recastGroup");
repairSkill = reader.GetInt32("repairSkill");
repairItem = reader.GetInt32("repairItem");
@@ -404,14 +401,7 @@ namespace FFXIVClassic_Map_Server.dataobjects
//equipment sheet
public readonly int equipPoint;
- public readonly short equipTribe1;
- public readonly ushort unknown1;
- public readonly short equipTribe2;
- public readonly ushort unknown2;
- public readonly short equipTribe3;
- public readonly ushort unknown3;
- public readonly short equipTribe4;
- public readonly ushort unknown4;
+ public readonly short equipTribe;
public readonly int paramBonusType1;
public readonly short paramBonusValue1;
@@ -421,12 +411,22 @@ namespace FFXIVClassic_Map_Server.dataobjects
public readonly short paramBonusValue3;
public readonly int paramBonusType4;
public readonly short paramBonusValue4;
+ public readonly int paramBonusType5;
+ public readonly short paramBonusValue5;
+ public readonly int paramBonusType6;
+ public readonly short paramBonusValue6;
+ public readonly int paramBonusType7;
+ public readonly short paramBonusValue7;
+ public readonly int paramBonusType8;
+ public readonly short paramBonusValue8;
+ public readonly int paramBonusType9;
+ public readonly short paramBonusValue9;
+ public readonly int paramBonusType10;
+ public readonly short paramBonusValue10;
- public readonly int paramBonusAtSlotType;
- public readonly short paramBonusAtSlotValue;
-
- public readonly int elementalBonusType;
- public readonly short elementalBonusValue;
+ public readonly short additionalEffect;
+ public readonly bool materialBindPermission;
+ public readonly short materiaTable;
public EquipmentItem(MySqlDataReader reader)
: base (reader)
@@ -437,14 +437,7 @@ namespace FFXIVClassic_Map_Server.dataobjects
graphicsColorId = reader.GetUInt32("colorId");
equipPoint = reader.GetInt32("equipPoint");
- equipTribe1 = reader.GetInt16("equipTribe1");
- unknown1 = reader.GetUInt16("unknown1");
- equipTribe2 = reader.GetInt16("equipTribe2");
- unknown2 = reader.GetUInt16("unknown2");
- equipTribe3 = reader.GetInt16("equipTribe3");
- unknown3 = reader.GetUInt16("unknown3");
- equipTribe4 = reader.GetInt16("equipTribe4");
- unknown4 = reader.GetUInt16("unknown4");
+ equipTribe = reader.GetInt16("equipTribe");
paramBonusType1 = reader.GetInt32("paramBonusType1");
paramBonusValue1 = reader.GetInt16("paramBonusValue1");
@@ -454,12 +447,22 @@ namespace FFXIVClassic_Map_Server.dataobjects
paramBonusValue3 = reader.GetInt16("paramBonusValue3");
paramBonusType4 = reader.GetInt32("paramBonusType4");
paramBonusValue4 = reader.GetInt16("paramBonusValue4");
+ paramBonusType5 = reader.GetInt32("paramBonusType5");
+ paramBonusValue5 = reader.GetInt16("paramBonusValue5");
+ paramBonusType6 = reader.GetInt32("paramBonusType6");
+ paramBonusValue6 = reader.GetInt16("paramBonusValue6");
+ paramBonusType7 = reader.GetInt32("paramBonusType7");
+ paramBonusValue7 = reader.GetInt16("paramBonusValue7");
+ paramBonusType8 = reader.GetInt32("paramBonusType8");
+ paramBonusValue8 = reader.GetInt16("paramBonusValue8");
+ paramBonusType9 = reader.GetInt32("paramBonusType9");
+ paramBonusValue9 = reader.GetInt16("paramBonusValue9");
+ paramBonusType10 = reader.GetInt32("paramBonusType10");
+ paramBonusValue10 = reader.GetInt16("paramBonusValue10");
- paramBonusAtSlotType = reader.GetInt32("paramBonusAtSlotType");
- paramBonusAtSlotValue = reader.GetInt16("paramBonusAtSlotValue");
-
- elementalBonusType = reader.GetInt32("elementalBonusType");
- elementalBonusValue = reader.GetInt16("elementalBonusValue");
+ additionalEffect = reader.GetInt16("additionalEffect");
+ materialBindPermission = reader.GetBoolean("materialBindPermission");
+ materiaTable = reader.GetInt16("materiaTable");
}
}
@@ -488,6 +491,10 @@ namespace FFXIVClassic_Map_Server.dataobjects
public readonly int damageAttributeType3;
public readonly float damageAttributeValue3;
+ public readonly short damagePower;
+ public readonly float damageInterval;
+ public readonly short ammoVirtualDamagePower;
+
public WeaponItem(MySqlDataReader reader)
: base(reader)
{
@@ -512,6 +519,10 @@ namespace FFXIVClassic_Map_Server.dataobjects
damageAttributeValue2 = reader.GetFloat("damageAttributeValue2");
damageAttributeType3 = reader.GetInt32("damageAttributeType3");
damageAttributeValue3 = reader.GetFloat("damageAttributeValue3");
+
+ damagePower = reader.GetInt16("damagePower");
+ damageInterval = reader.GetFloat("damageInterval");
+ ammoVirtualDamagePower = reader.GetInt16("ammoVirtualDamagePower");
}
}
diff --git a/FFXIVClassic Map Server/utils/SQLGeneration.cs b/FFXIVClassic Map Server/utils/SQLGeneration.cs
index 840ddaa7..33375438 100644
--- a/FFXIVClassic Map Server/utils/SQLGeneration.cs
+++ b/FFXIVClassic Map Server/utils/SQLGeneration.cs
@@ -14,62 +14,7 @@ namespace FFXIVClassic_Map_Server.utils
{
class SQLGeneration
{
- public static void generateItems()
- {
-
- using (MySqlConnection conn = new MySqlConnection(String.Format("Server={0}; Port={1}; Database={2}; UID={3}; Password={4}", ConfigConstants.DATABASE_HOST, ConfigConstants.DATABASE_PORT, ConfigConstants.DATABASE_NAME, ConfigConstants.DATABASE_USERNAME, ConfigConstants.DATABASE_PASSWORD)))
- {
- try
- {
- conn.Open();
-
- //Load Last 5 Completed
- string query = @"
- INSERT INTO gamedata_items VALUES (@id, @displayNameId, NULL)";
-
-
- MySqlCommand cmd = new MySqlCommand(query, conn);
- cmd.Parameters.AddWithValue("@id", 100);
- cmd.Parameters.AddWithValue("@displayNameId", 100);
-
- cmd.Prepare();
-
- string line, line2;
- Regex csvSplit = new Regex("(?:^|,)(\"(?:[^\"]+|\"\")*\"|[^,]*)", RegexOptions.Compiled);
- System.IO.StreamReader file = new System.IO.StreamReader("D:\\Coding\\FFXIV Related\\FFXIV Tool\\2012.09.19.0001.decode.csv\\actorclass.csv");
- while ((line = file.ReadLine()) != null)
- {
- MatchCollection matches = csvSplit.Matches(line);
-
- uint id;
- uint nameId;
-
- try
- {
- id = UInt32.Parse(matches[0].Value.Trim(','));
- nameId = UInt32.Parse(matches[6].Value.Trim(','));
-
- }
- catch (FormatException e)
- { continue; }
-
- cmd.Parameters["@id"].Value = id;
- cmd.Parameters["@displayNameId"].Value = nameId;
-
- Console.WriteLine("Wrote: {0} : {1}", id, nameId);
- cmd.ExecuteNonQuery();
-
- }
- }
- catch (MySqlException e)
- { Console.WriteLine(e); }
- finally
- {
- conn.Dispose();
- }
- }
- }
-
+
public static void generateZones()
{