step by step:
1 - I select the character
after select the account.
passo 2-
and finally the part that bug ... I'm trying to fix, however had no success. my client is not charging and not of error and not move on.
I was hoping that someone posted a solution
it is possible to give error when creating the account and go to the login area again. I hope someone helps!
I'll post here some parts of my source who is allegedly the problem. there following here in the beginning of the post PacketHandler.cs
Code:
#region LoginPacket (1052)
case 1052:
{
if (client.Action == 1)
{
Connect connect = new Connect();
connect.Deserialize(packet);
AppendConnect(connect, client);
}
else client.Disconnect();
break;
}
#endregion
Code:
#region AuthPacket (1001)
case 1001:
{
if (client.Action == 1)
{
EnitityCreate EC = new EnitityCreate();
EC.Deserialize(packet);
string Message = "";
bool created = (Database.EntityTable.CreateEntity(EC, client, ref Message));
client.Send(new Message(Message, "ALLUSERS", System.Drawing.Color.Orange, GamePackets.Message.PopUP));
}
else client.Disconnect();
break;
}
#endregion
Code:
public void Disconnect()
{
if (_socket.Connected)
{
SocketDisposed = true;
_socket.Disconnect(false);
_socket.Shutdown(SocketShutdown.Both);
_socket.Close();
}
ShutDown();
}
Code:
private void ShutDown()
{
if (Disconnected)
return;
if (Logger != null)
Logger.Close();
if (this != null && this.Entity != null)
{
if (this.JustCreated)
return;
Database.EntityTable.UpdateOnlineStatus(this, false);
Database.EntityTable.SaveEntity(this);
if (ServerBase.Kernel.GamePool.ContainsKey(this.Entity.UID))
ServerBase.Kernel.GamePool.Remove(this.Entity.UID);
if (Booth != null)
{
Booth.Remove();
}
Database.SkillTable.SaveProficiencies(this);
Database.SkillTable.SaveSpells(this);
Database.ArenaTable.SaveArenaStatistics(this.ArenaStatistic);
if (Companion != null)
{
Map.RemoveEntity(Companion);
Data data = new Data(true);
data.UID = Companion.UID;
data.ID = Data.RemoveEntity;
Companion.MonsterInfo.SendScreen(data);
}
if (QualifierGroup != null)
QualifierGroup.End(this);
if (ArenaStatistic.Status != Network.GamePackets.ArenaStatistic.NotSignedUp)
Game.ConquerStructures.Arena.QualifyEngine.DoQuit(this);
RemoveScreenSpawn(this.Entity, false);
if (!Disconnected)
Console.WriteLine(this.Entity.Name + " has logged off. {" + this.Account.IP + "}");
Disconnected = true;
#region Friend/TradePartner/Apprentice
Message msg = new Message("Your friend, " + Entity.Name + ", has logged off.", System.Drawing.Color.Red, Message.TopLeft);
if (Friends == null)
Friends = new SafeDictionary<uint, Conquer_Online_Server.Game.ConquerStructures.Society.Friend>(100);
foreach (Game.ConquerStructures.Society.Friend friend in Friends.Values)
{
if (friend.IsOnline)
{
var packet = new KnownPersons(true)
{
UID = Entity.UID,
Type = KnownPersons.RemovePerson,
Name = Entity.Name,
Online = false
};
friend.Client.Send(packet);
packet.Type = KnownPersons.AddFriend;
if (friend != null)
{
if (friend.Client != null)
{
friend.Client.Send(packet);
friend.Client.Send(msg);
}
}
}
}
Message msg2 = new Message("Your partner, " + Entity.Name + ", has logged off.", System.Drawing.Color.Red, Message.TopLeft);
foreach (Game.ConquerStructures.Society.TradePartner partner in Partners.Values)
{
if (partner.IsOnline)
{
var packet = new TradePartner(true)
{
UID = Entity.UID,
Type = TradePartner.BreakPartnership,
Name = Entity.Name,
HoursLeft = (int)(new TimeSpan(partner.ProbationStartedOn.AddDays(3).Ticks).TotalHours - new TimeSpan(DateTime.Now.Ticks).TotalHours),
Online = false
};
partner.Client.Send(packet);
packet.Type = TradePartner.AddPartner;
if (partner != null)
{
if (partner.Client != null)
{
partner.Client.Send(packet);
partner.Client.Send(msg2);
}
}
}
}
MentorInformation Information = new MentorInformation(true);
Information.Mentor_Type = 1;
Information.Mentor_ID = Entity.UID;
Information.Mentor_Level = Entity.Level;
Information.Mentor_Class = Entity.Class;
Information.Mentor_PkPoints = Entity.PKPoints;
Information.Mentor_Mesh = Entity.Mesh;
Information.Mentor_Online = false;
Information.String_Count = 3;
Information.Mentor_Name = Entity.Name;
Information.Mentor_Spouse_Name = Entity.Spouse;
foreach (var appr in Apprentices.Values)
{
if (appr.IsOnline)
{
Information.Apprentice_ID = appr.ID;
Information.Enrole_Date = appr.EnroleDate;
Information.Apprentice_Name = appr.Name;
appr.Client.Send(Information);
appr.Client.ReviewMentor();
}
}
if (Mentor != null)
{
if (Mentor.IsOnline)
{
ApprenticeInformation AppInfo = new ApprenticeInformation();
AppInfo.Apprentice_ID = Entity.UID;
AppInfo.Apprentice_Level = Entity.Level;
AppInfo.Apprentice_Name = Entity.Name;
AppInfo.Apprentice_Online = false;
AppInfo.Apprentice_Spouse_Name = Entity.Spouse;
AppInfo.Enrole_date = Mentor.EnroleDate;
AppInfo.Mentor_ID = Mentor.Client.Entity.UID;
AppInfo.Mentor_Mesh = Mentor.Client.Entity.Mesh;
AppInfo.Mentor_Name = Mentor.Client.Entity.Name;
AppInfo.Type = 2;
Mentor.Client.Send(AppInfo);
}
}
#endregion
if (Team != null)
{
if (Team.TeamLeader)
{
Network.GamePackets.Team team = new Team();
team.UID = Account.EntityID;
team.Type = Network.GamePackets.Team.Dismiss;
foreach (Client.GameState Teammate in Team.Teammates)
{
if (Teammate != null)
{
if (Teammate.Entity.UID != Account.EntityID)
{
Teammate.Send(team);
Teammate.Team = null;
}
}
}
}
else
{
Network.GamePackets.Team team = new Team();
team.UID = Account.EntityID;
team.Type = Network.GamePackets.Team.ExitTeam;
foreach (Client.GameState Teammate in Team.Teammates)
{
if (Teammate != null)
{
if (Teammate.Entity.UID != Account.EntityID)
{
Teammate.Send(team);
Teammate.Team.Remove(Account.EntityID);
}
}
}
}
}
}
}
am very thankful if someone help me thanks!?






