|
You last visited: Today at 13:09
Advertisement
Why would I lose my fkey?
Discussion on Why would I lose my fkey? within the CO2 Private Server forum part of the Conquer Online 2 category.
05/14/2019, 08:29
|
#1
|
elite*gold: 0
Join Date: Aug 2010
Posts: 939
Received Thanks: 76
|
Why would I lose my fkey?
If I put "Sit" in F5 then relog it disappears any idea why? Could it be something to do with csv3?
|
|
|
05/14/2019, 11:45
|
#2
|
elite*gold: 0
Join Date: Nov 2007
Posts: 134
Received Thanks: 53
|
Conquer stores this information in the client log file, so it can retrieve the settings again when you log in
Log\ServerName\CharacterName
|
|
|
05/14/2019, 12:12
|
#3
|
elite*gold: 0
Join Date: Aug 2010
Posts: 939
Received Thanks: 76
|
So I checked and I have two folders one is 0 and the other is with a server name, checked them both and both have a Setup.ini neither seems out of place tbh. Still nothing?
|
|
|
08/18/2019, 02:11
|
#4
|
elite*gold: 0
Join Date: Aug 2010
Posts: 939
Received Thanks: 76
|
Bump as I'm still having the same problem, could it be due to the wrong client version?
|
|
|
08/18/2019, 02:46
|
#5
|
elite*gold: 0
Join Date: Jul 2009
Posts: 908
Received Thanks: 390
|
Quote:
Originally Posted by denominator
Bump as I'm still having the same problem, could it be due to the wrong client version?
|
If your client crash or you force it to close, it wont save.
I use CSV3 on my client and it does not have any issue.
Have you deleted any client folder?
|
|
|
08/18/2019, 02:50
|
#6
|
elite*gold: 12
Join Date: Jul 2011
Posts: 8,211
Received Thanks: 4,114
|
Quote:
Originally Posted by denominator
Bump as I'm still having the same problem, could it be due to the wrong client version?
|
Not sure, but I know if you don't respond to all MsgAction packets on login, then the client doesn't load the interface all the way. Make sure that you respond to all MsgAction packets with a filled in version of itself. Not responding prevented me from loading hotkeys and the mini map, so maybe it'd also prevent you from saving FN actions?
|
|
|
08/18/2019, 04:11
|
#7
|
elite*gold: 0
Join Date: Aug 2010
Posts: 939
Received Thanks: 76
|
pintinho12 nope haven't deleted anything, I've noticed there aren't a lot of monsters in some maps which begs the question am I possibly using the wrong version.
Spirited I'm not sure but here is my MsgAction.cs
Code:
using System;
namespace LordsRoad.Network.GamePackets
{
public class Data : Writer, Interfaces.IPacket
{
public class CustomCommands
{
public const ushort
ExitQuestion = 1,
Minimize = 2,
ShowReviveButton = 1053,
FlowerPointer = 1067,
Enchant = 1091,
LoginScreen = 1153,
SelectRecipiet = 30,
JoinGuild = 34,
MakeFriend = 38,
ChatWhisper = 40,
CloseClient = 43,
HotKey = 53,
Furniture = 54,
TQForum = 79,
NewPokerGoldRoom = 167,
PathFind = 97,
LockItem = 102,
ShowRevive = 1053,
HideRevive = 1054,
StatueMaker = 1066,
GambleOpen = 1077,
GambleClose = 1078,
Compose = 1086,
Craft1 = 1088,
Craft2 = 1089,
Warehouse = 1090,
Inbox = 576,
ShoppingMallShow = 1100,
ShoppingMallHide = 1101,
NoOfflineTraining = 1117,
CenterClient = 1155,
ClaimCP = 1197,
ClaimAmount = 1198,
MerchantApply = 1201,
MerchantDone = 1202,
RedeemEquipment = 1233,
ClaimPrize = 1234,
RepairAll = 1239,
FlowerIcon = 1244,
SendFlower = 1246,
ReciveFlower = 1248,
WarehouseVIP = 1272,
UseExpBall = 1288,
HackProtection = 1298,
HideGUI = 1307,
Inscribe = 3059,
BuyPrayStone = 3069,
HonorStore = 3104,
Opponent = 3107,
CountDownQualifier = 3109,
QualifierStart = 3111,
ItemsReturnedShow = 3117,
ItemsReturnedWindow = 3118,
ItemsReturnedHide = 3119,
QuestFinished = 3147,
QuestPoint = 3148,
QuestPointSparkle = 3164,
StudyPointsUp = 3192,
PKTeamName = 3209,
Updates = 3218,
IncreaseLineage = 3227,
HorseRacingStore = 3245,
GuildPKTourny = 3249,
QuitPK = 3251,
Spectators = 3252,
CardPlayOpen = 3270,
CardPlayClost = 3271,
ArtifactPurification = 3344,
SafeguardConvoyShow = 3389,
SafeguardConvoyHide = 3390,
RefineryStabilization = 3392,
ArtifactStabilization = 3398,
SmallChat = 3406,
NormalChat = 3407,
Reincarnation = 3439,
CTFFlag = 3211,
CTFEnd = 3549,
CTFScores = 3359;
}
public uint Data28_Uint//For Poker
{
get { return BitConverter.ToUInt32(Buffer, 28); }
set { Write(value, 28, Buffer); }
}
public byte DailyQuestWordLenght//For Poker
{
get { return Buffer[42]; }
set { Buffer[42] = value; }
}
public string DailyQuestWord//For Poker
{
get { return System.Text.UnicodeEncoding.UTF8.GetString(Buffer, 43, DailyQuestWordLenght); }
set { Writer.Write(value, 43, Buffer); }
}
public uint wParam5
{
get
{
return BitConverter.ToUInt32(this.Buffer, 32 + 4);
}
set
{
Writer.Write(value, 32 + 4, this.Buffer);
}
}
public class WindowCommands
{
public const ushort
Compose = 1,
Craft = 2,
Warehouse = 4,
DetainRedeem = 336,
DetainClaim = 337,
VIPWarehouse = 341,
Breeding = 368,
PurificationWindow = 455,
StabilizationWindow = 459,
JiangHuSetName = 0x269,
TalismanUpgrade = 347,
GemComposing = 422,
OpenSockets = 425,
Blessing = 426,
TortoiseGemComposing = 438,
RefineryStabilization = 448,
HorseRacingStore = 464,
Reincarnation = 485,
SecondaryPasswordVerification = 568;
}
public const ushort
ObserveKnownPerson = 54,
SetLocation = 74,
Hotkeys = 75,
ConfirmFriends = 76,
ConfirmProficiencies = 77,
ConfirmSpells = 78,
ChangeDirection = 79,
ChangeAction = 81,
UsePortal = 85,
Teleport = 86,
Leveled = 92,
XPListEnd = 93,
Revive = 94,
DeleteCharacter = 95,
ChangePKMode = 96,
ConfirmGuild = 97,
SwingPickaxe = 99,
UnknownEntity = 102,
TeamSearchForMember = 106,
NewCoordonates = 108,
OwnBooth = 111,
GetSurroundings = 114,
OpenCustom = 116,
PokerTournament = 167,
ObserveEquipment = 117,
PathFinding = 162,
EndTransformation = 118,
EndFly = 120,
ViewEnemyInfo = 123,
OpenWindow = 126,
CompleteLogin = 251,
RemoveEntity = 135,
AddEntity = 134,
Jump = 137,
Die = 145,
EndTeleport = 146,
ViewFriendInfo = 148,
ChangeFace = 151,
ViewPartnerInfo = 152,
Confiscator = 153,
FlashStep = 156,
OpenShop = 160,
CountDown = 159,
Away = 161,
AppearanceType = 178,
LevelUpSpell = 252,
LevelUpProficiency = 253,
ObserveEquipment2 = 310,
BeginSteedRace = 401,
FirstCredit = 255,
DailyQuestSure = 220,
DailyQuestSure2 = 164,
FinishSteedRace = 402,
DetainWindowRequest = 153;
//JiangHu = 0x7e;
public static Data Custom(uint customType, uint uid, ushort wParam1 = 0, ushort wParam2 = 0)
{
Data data = new Data(true);
data.ID = Data.OpenCustom;
data.UID = uid;
data.TimeStamp = Time32.Now;
data.dwParam = customType;
data.wParam1 = wParam1;
data.wParam2 = wParam2;
return data;
}
public Data(bool Create)
{
if (Create)
{
Buffer = new byte[41 + 8];
Writer.Write(41, 0, Buffer);
Writer.Write(10010, 2, Buffer);
Write((uint)Time32.timeGetTime().GetHashCode(), 4, Buffer);
}
}
public Data(uint Identifier, uint Value1, ushort Value2, ushort Value3, ushort Type)
{
byte[] Buffer = new byte[8 + 32];
Writer.Write((ushort)(Buffer.Length - 8), 0, Buffer);
Writer.Write((ushort)10010, 2, Buffer);
Write((uint)Time32.timeGetTime().GetHashCode(), 4, Buffer);
Writer.Write((int)Identifier,8,Buffer);
Writer.Write((int)Value1,12,Buffer);
Writer.Write(Type, 14, Buffer);
Writer.Write(Value2, 16, Buffer);
Writer.Write(Value3, 18, Buffer);
}
byte[] Buffer;
public uint UID
{
get { return BitConverter.ToUInt32(Buffer, 8); }
set { Writer.Write(value, 8, Buffer); }
}
public uint ForShopId
{
get
{
return BitConverter.ToUInt16(Buffer, 20);
}
set
{
Write(value, 20, Buffer);
}
}
#region dwParam
/// <summary>
/// Offset [8/0x08]
/// </summary>
public ushort X
{
get { return (ushort)dwParam; }
set { dwParam = (uint)((Y << 16) | value); }
}
/// <summary>
/// Offset [10/0x0a]
/// </summary>
public ushort Y
{
get { return (ushort)(dwParam >> 16); }
set { dwParam = (uint)((value << 16) | X); }
}
#endregion
public uint dwParam
{
get
{
return BitConverter.ToUInt32(Buffer, 12);
}
set
{
Write(value, 12, Buffer);
}
}
public uint Data24_Uint
{
get
{
return BitConverter.ToUInt32(Buffer, 28);
}
set
{
Write(value, 28, Buffer);
}
}
public ushort wParam7
{
get
{
return BitConverter.ToUInt16(Buffer, 32);
}
set
{
Writer.Write(value, 32, Buffer);
}
}
public uint TimeStamp2
{
get
{
return BitConverter.ToUInt32(Buffer, 20);
}
set
{
Write(value, 20, Buffer);
}
}
public ushort wParam6
{
get
{
return BitConverter.ToUInt16(Buffer, 14);
}
set
{
Writer.Write(value, 14, Buffer);
}
}
public Time32 TimeStamp
{
get
{
return new Time32(BitConverter.ToUInt32(Buffer, 20));
}
set
{
Write((uint)value.GetHashCode(), 20, Buffer);
}
}
public Time32 TimeStamp22
{
get
{
return new Time32(BitConverter.ToUInt32(Buffer, 20));
}
set
{
Write((uint)value.GetHashCode(), 20, Buffer);
}
}
public ushort X2
{
get
{
return BitConverter.ToUInt16(Buffer, 28);
}
set
{
Writer.Write(value, 28, Buffer);
}
}
public ushort Y2
{
get
{
return BitConverter.ToUInt16(Buffer, 30);
}
set
{
Writer.Write(value, 30, Buffer);
}
}
public uint ID
{
get
{
return BitConverter.ToUInt16(Buffer, 24);
}
set
{
Write(value, 24, Buffer);
}
}
public Game.Enums.ConquerAngle Facing
{
get
{
return (Game.Enums.ConquerAngle)Buffer[26];
}
set
{
Buffer[26] = (byte)(Game.Enums.ConquerAngle)value;
}
}
public Game.Enums.ConquerAngle Facing2
{
get
{
return (Game.Enums.ConquerAngle)Buffer[26];
}
set
{
Buffer[26] = 2;
}
}
public ushort wParam1
{
get
{
return BitConverter.ToUInt16(Buffer, 28);
}
set
{
Writer.Write(value, 28, Buffer);
}
}
public byte Unknown
{
get
{
return Buffer[36];
}
set
{
Buffer[36] = value;
Buffer[41] = 1;
}
}
public byte Unknown2
{
get
{
return Buffer[41];
}
set
{
Buffer[41] = value;
}
}
public ushort wParam2
{
get
{
return BitConverter.ToUInt16(Buffer, 30);
}
set
{
Writer.Write(value, 30, Buffer);
}
}
public uint wParam3
{
get
{
return BitConverter.ToUInt32(Buffer, 28);
}
set
{
Write(value, 28, Buffer);
}
}
public uint wParam4
{
get
{
return BitConverter.ToUInt32(Buffer, 30);
}
set
{
Write(value, 30, Buffer);
}
}
public void Deserialize(byte[] buffer)
{
this.Buffer = buffer;
}
public byte[] ToArray()
{
return Buffer;
}
public void Send(Client.GameClient client)
{
client.Send(Buffer);
}
}
}
I'm using a Teamxor source, yes it has issues but this not saving the fkeys is just annoying as hell, how do I find out which client the source is directed towards?
|
|
|
08/18/2019, 04:30
|
#8
|
elite*gold: 12
Join Date: Jul 2011
Posts: 8,211
Received Thanks: 4,114
|
Quote:
Originally Posted by denominator
pintinho12 nope haven't deleted anything, I've noticed there aren't a lot of monsters in some maps which begs the question am I possibly using the wrong version.
Spirited I'm not sure but here is my MsgAction.cs
...
I'm using a Teamxor source, yes it has issues but this not saving the fkeys is just annoying as hell, how do I find out which client the source is directed towards?
|
I mean, the packet looks fine. It's however you're handling login requests using MsgAction.
|
|
|
08/18/2019, 04:55
|
#9
|
elite*gold: 0
Join Date: Aug 2010
Posts: 939
Received Thanks: 76
|
Quote:
Originally Posted by Spirited
I mean, the packet looks fine. It's however you're handling login requests using MsgAction.
|
Would that be in my packethandler.cs? If so here is what I found
Code:
#region Data (10010)
case 10010:
{
if (client.Action != 2)
return;
HandleData(client, packet);
break;
}
#endregion
There is also this
Code:
case Data.CompleteLogin:
{
client.Entity.Update(Network.GamePackets.Update.ExtraInventory, client.Entity.ExtraInventory, false);
client.Entity.Update(Network.GamePackets.Update.AvailableSlots, 300, false);
#region InnerPower
if (!InnerPower.InnerPowerPolle.TryGetValue(client.Entity.UID, out client.Entity.InnerPower))
{
client.Entity.InnerPower = new InnerPower(client.Entity.Name, client.Entity.UID);
Database.InnerPowerTable.New(client);
}
client.Entity.InnerPower.UpdateStatus();
client.Entity.InnerPower.AddPotency(null, client, 0);
#endregion
#region SendInnerPowerPotency
client.Entity.Update(Update.InnerPowerPotency, client.Entity.InnerPower.Potency, false);
#endregion
new MsgUserAbilityScore().SendScore(client, client);
new MsgItemRefineRecord().Send(client);
client.Send(packet);
#region Union
if (Kernel.Unions.Count > 0)
{
Union.MsgLeagueOpt Res = new Union.MsgLeagueOpt(true);
Res.Action = Union.Actions.KingdomIcon;
if (client.Union != null)
{
Res.dwParam2 = client.Union.ID;
}
Res.dwParam3 = Kernel.ServerKingdom;
client.Send(Res.ToArray());
}
if (client.Union != null)
{
client.Send(client.Union.SendOverheadLeagueInfo(client));
}
if (client.Union != null)
{
if (client.Union.IsKingdom())
{
if (client.Union.IsLeader(client.Entity.UID))
{
new TitleStorage().AddTitle(client, 4001, 1000, false);
new TitleStorage().AddTitle(client, 1, 1000, false);
Union.MsgLeagueOpt Res = new Union.MsgLeagueOpt(true);
Res.Action = Union.Actions.KingdomTitleGui;
Res.dwParam3 = Kernel.ServerKingdom;
client.Send(Res.ToArray());
}
}
var array = client.Union.Members.OrderByDescending(i => i.UnionExploits).ToArray();
for (int i = 0; i < Math.Min(array.Length, 4); i++)
{
if (array[i].ID == client.Entity.UID)
{
/* if (i == 0)
client.Entity.AddFlag3(Update.Flags3.GoldBrickSuper);
if (i == 1)
client.Entity.AddFlag3(Update.Flags3.GoldBrickElite);
if (i == 2)
client.Entity.AddFlag3(Update.Flags3.GoldBrickUnique);
if (i == 3)
client.Entity.AddFlag3(Update.Flags3.GoldBrickRefined);
if (i == 4)
client.Entity.AddFlag3(Update.Flags3.GoldBrickNormal);*/
}
}
}
#endregion
#region VIP ICON
if (client.Entity.VIPLevel > 0)
{
client.Entity.VIPLevel = (byte)((client.Entity.VIPLevel) + 0);
Network.GamePackets.VipStatus vip = new Network.GamePackets.VipStatus();
client.Send(vip.ToArray());
}
#endregion
if (client.Quests.GetQuest(QuestID.UnknownDangers) == null && client.Quests.CheckQuest(QuestID.UnknownDangers) != QuestPacket.QuestData.QuestStatus.Finished && client.Entity.Level >= 110)
{
client.Quests.Accept(QuestID.UnknownDangers);
}
client.LoadItemStats();
MsgSignIn.Show(client);
break;
}
There is also this
Code:
public static void LoadEntity(GameClient client)
{
try
{
client.ReadyToPlay();
if (Database.EntityTable.LoadEntity(client))
{
if (client.Entity.FullyLoaded)
{
if (ItemPosition(client.BackupArmorLook) == ConquerItem.Garment) client.BackupArmorLook = 0;
if (ItemPosition(client.ArmorLook) == ConquerItem.Garment) client.ArmorLook = 0;
if (client.BackupArmorLook != 0) client.SetNewArmorLook(client.BackupArmorLook);
client.SetNewHeadgearLook(client.HeadgearLook);
client.BackupArmorLook = 0;
client.LoadData();
Database.EntityTable.TryReset(client);
if (client.JustCreated)
{
client.ItemGive = true;
SetLocation(new Data(true) { UID = client.Entity.UID }, client);
}
Program.World.Register(client);
Kernel.GamePool[client.Account.EntityID] = client;
Database.EntityTable.UpdateOnlineStatus(client, true);
#region Character Information
client.Send(new GamePackets.CharacterInfo(client));
#endregion
#region Revive If The Player Dead
if (client.Entity.Hitpoints == 0)
client.Entity.Hitpoints = 1;
#endregion
#region ServerTime Packet
DateTime Now64 = DateTime.Now;
DateTime now = DateTime.Now;
ServerTime time = new ServerTime();
time.Year = (uint)DateTime.Now.Year;
time.Month = (uint)DateTime.Now.Month;
time.DayOfYear = (uint)DateTime.Now.DayOfYear;
time.DayOfMonth = (uint)DateTime.Now.Day;
time.Hour = (uint)DateTime.Now.Hour;
time.Minute = (uint)DateTime.Now.Minute;
time.Second = (uint)DateTime.Now.Second;
client.Send(time);
#endregion
#region Load Items And Equipment
foreach (ConquerItem item in client.Inventory.Objects)
item.Send(client);
foreach (ConquerItem item in client.Equipment.Objects)
{
if (item != null)
{
if (Database.ConquerItemInformation.BaseInformations.ContainsKey(item.ID))
{
item.Send(client);
}
else
{
client.Equipment.DestroyArrow(item.Position);
}
}
}
client.LoadItemStats();
if (!client.Equipment.Free(5))
{
if (IsArrow(client.Equipment.TryGetItem(5).ID))
{
if (client.Equipment.Free(4))
client.Equipment.DestroyArrow(5);
else
{
if (client.Equipment.TryGetItem(4).ID / 1000 != 500)
client.Equipment.DestroyArrow(5);
}
}
}
client.GemAlgorithm();
client.CalculateStatBonus();
client.CalculateHPBonus();
client.Equipment.UpdateEntityPacket();
#endregion
#region SecondaryPassword
if (client.WarehousePW != 0 && client.ForgetWHPass == false)
{
WareHousePassword whp = new WareHousePassword(true);
whp.type = WareHousePassword.PasswordCorrect;
whp.OldPassword = 0x1;
client.Send(whp);
}
else if (client.WarehousePW != 0 && client.ForgetWHPass == true)
{
WareHousePassword whp = new WareHousePassword(true);
whp.type = WareHousePassword.Termination;
whp.OldPassword = 0x1;
whp.NewPassword = client.ForgetWHPassDate;
client.Send(whp);
}
#endregion
#region Chi
client.Send(new ChiPowers(true).Query(client));
SendChiRankings(new GenericRanking(true) { Mode = GenericRanking.QueryCount }, client);
#endregion
#region Achivement
client.Entity.MyAchievement.Send();
#endregion
#region Nobility
NobilityInfo update = new NobilityInfo(true);
update.Type = NobilityInfo.Icon;
update.dwParam = client.NobilityInformation.EntityUID;
update.UpdateString(client.NobilityInformation);
client.Send(update);
#endregion
#region MentorInformation
if (client.Mentor != null)
{
if (client.Mentor.IsOnline)
{
MentorInformation Information = new MentorInformation(true);
Information.Mentor_Type = 1;
Information.Mentor_ID = client.Mentor.Client.Entity.UID;
Information.Apprentice_ID = client.Entity.UID;
Information.Enrole_Date = client.Mentor.EnroleDate;
Information.Mentor_Level = client.Mentor.Client.Entity.Level;
Information.Mentor_Class = client.Mentor.Client.Entity.Class;
Information.Mentor_PkPoints = client.Mentor.Client.Entity.PKPoints;
Information.Mentor_Mesh = client.Mentor.Client.Entity.Mesh;
Information.Mentor_Online = true;
Information.Shared_Battle_Power = client.Entity.BattlePowerFrom(client.Mentor.Client.Entity);
Information.String_Count = 3;
Information.Mentor_Name = client.Mentor.Client.Entity.Name;
Information.Apprentice_Name = client.Entity.Name;
Information.Mentor_Spouse_Name = client.Mentor.Client.Entity.Spouse;
client.ReviewMentor();
client.Send(Information);
ApprenticeInformation AppInfo = new ApprenticeInformation();
AppInfo.Apprentice_ID = client.Entity.UID;
AppInfo.Apprentice_Level = client.Entity.Level;
AppInfo.Apprentice_Class = client.Entity.Class;
AppInfo.Apprentice_PkPoints = client.Entity.PKPoints;
AppInfo.Apprentice_Experience = client.AsApprentice.Actual_Experience;
AppInfo.Apprentice_Composing = client.AsApprentice.Actual_Plus;
AppInfo.Apprentice_Blessing = client.AsApprentice.Actual_HeavenBlessing;
AppInfo.Apprentice_Name = client.Entity.Name;
AppInfo.Apprentice_Online = true;
AppInfo.Apprentice_Spouse_Name = client.Entity.Spouse;
AppInfo.Enrole_date = client.Mentor.EnroleDate;
AppInfo.Mentor_ID = client.Mentor.ID;
AppInfo.Mentor_Mesh = client.Mentor.Client.Entity.Mesh;
AppInfo.Mentor_Name = client.Mentor.Name;
AppInfo.Type = 2;
client.Mentor.Client.Send(AppInfo);
}
else
{
MentorInformation Information = new MentorInformation(true);
Information.Mentor_Type = 1;
Information.Mentor_ID = client.Mentor.ID;
Information.Apprentice_ID = client.Entity.UID;
Information.Enrole_Date = client.Mentor.EnroleDate;
Information.Mentor_Online = false;
Information.String_Count = 2;
Information.Mentor_Name = client.Mentor.Name;
Information.Apprentice_Name = client.Entity.Name;
client.Send(Information);
}
}
#endregion
#region Appearance
ChangeAppearance(client, (Enums.AppearanceType)client.Appearance);
#endregion
#region Mentor BP
if (client.Entity.MentorBattlePower != 0)
client.Entity.Update(Network.GamePackets.Update.MentorBattlePower, client.Entity.MentorBattlePower, false);
#endregion
#region New Titles
if (client.Entity.Titles.Count > 0)
{
TitlePacket tpacket = new TitlePacket(true);
tpacket.Identifier = client.Entity.UID;
tpacket.Title = client.Entity.MyTitle;
tpacket.Type = TitlePacket.Types.Switch;
tpacket.Count = 1;
tpacket.Add((byte)client.Entity.MyTitle);
client.Entity.MyTitle = tpacket.Title;
client.Send(tpacket);
}
#endregion
#region MapInformation
client.Send(new MapStatus() { BaseID = client.Map.BaseID, ID = client.Map.ID, Status = Database.MapsTable.MapInformations[client.Map.ID].Status, Weather = Database.MapsTable.MapInformations[client.Map.ID].Weather });
#endregion
#region Analayze Skills
RemoveBadSkills(client);
if (client.Entity.Class >= 40 && client.Entity.Class <= 45)
{
client.RemoveSpell(new Spell(true) { ID = 1025 });//SuperMan
}
if (client.Entity.Class >= 142 && client.Entity.Class <= 145)
{
client.RemoveSpell(new Spell(true) { ID = 6002 });//PiosnStar
}
if (client.Entity.Class >= 60 && client.Entity.Class <= 65)
{
client.RemoveSpell(new Spell(true) { ID = 1025 });//Superman
}
if (client.Entity.Class >= 132 && client.Entity.Class <= 135)
{
client.RemoveSpell(new Spell(true) { ID = 10425 });//tranq
}
if (client.Entity.Class >= 50 && client.Entity.Class <= 55)
{
client.RemoveSpell(new Spell(true) { ID = 1025 });//Superman
}
if (client.Entity.Class >= 10 && client.Entity.Class <= 15)
{
client.RemoveSpell(new Spell(true) { ID = 1025 });//Superman
}
if (client.Entity.Class >= 142 && client.Entity.Class <= 145)
{
client.RemoveSpell(new Spell(true) { ID = 11180 });//MortalDrag
}
if (client.Entity.Class >= 142 && client.Entity.Class <= 145)
{
client.RemoveSpell(new Spell(true) { ID = 11190 });//MortalDrag
}
if (client.Entity.Class >= 142 && client.Entity.Class <= 145)
{
client.RemoveSpell(new Spell(true) { ID = 11200 });//MortalDrag
}
if (client.Entity.Class >= 42 && client.Entity.Class <= 45)
{
client.RemoveSpell(new Spell(true) { ID = 10425 });//Tranquality
}
if (client.Entity.Class >= 10 && client.Entity.Class <= 15)
{
client.RemoveSpell(new Spell(true) { ID = 6002 });//Poisonstar
}
#endregion
#region AutoHunt Icon
AutoHunt AutoHunt = new AutoHunt();
AutoHunt.Icon = 341;
client.Send(AutoHunt.ToArray());
#endregion
#region Guilds
foreach (var Guild in Kernel.Guilds.Values)
{
Guild.SendName(client);
}
if (client.Guild != null && client.Guild.ID != 0)
{
client.Guild.SendAllyAndEnemy(client);
client.Entity.GuildBattlePower = client.Guild.GetSharedBattlepower(client.AsMember.Rank);
}
#endregion
#region Inbox
if (client.Prizes.Count > 0)
{
Mailbox.SendMailbox(client, true);
}
#endregion
#region Activeness
Activeness.Login(client, true);
#endregion
#region Enlight
if (client.Entity.EnlightenPoints != 0)
{
client.Entity.Update(Update.EnlightPoints, client.Entity.EnlightenPoints, true);
}
#endregion
#region TurnOn Filter Packet
client.Filtering = true;
#endregion
client.WentToComplete = true;
client.Entity.SendUpdates = true;
#region Elitepk
bool going = false;
Parallel.ForEach(ElitePKTournament.Tournaments, epk =>
{
if (epk.State != ElitePK.States.GUI_Top8Ranking)
going = true;
});
if (going)
{
ElitePKBrackets brackets = new ElitePKBrackets(true, 0);
brackets.Type = ElitePKBrackets.EPK_State;
brackets.OnGoing = true;
client.Send(brackets);
}
#endregion
#region QuizShow
if (Kernel.QuizShow.Open)
Kernel.QuizShow.AddPlayer(client);
client.Entity.Update((byte)Update.QuizPoints, client.Entity.QuizPoints, true);
#endregion
#region Updates
client.Entity.Update(Update.RaceShopPoints, client.RacePoints, false);
client.Entity.Update(Network.GamePackets.Update.LuckyTimeTimer, client.BlessTime, false);
if (client.Entity.HeavenBlessing != 0)
client.Entity.Update(Network.GamePackets.Update.OnlineTraining, client.OnlineTrainingPoints, false);
#endregion
#region Wardrobe
new CoatStorage().Login(client);
new TitleStorage().Login(client);
if (client.Account.State == Database.AccountTable.AccountState.Player)
{
if (client.Entity.WTitles == null)
{
new TitleStorage().AddTitle(client, 4001, 1000, false);//الى كسبان كينج دوم
new TitleStorage().AddTitle(client, 6001, 20, false);//الاول على الاليت بى كا
new TitleStorage().AddTitle(client, 6002, 21, false);//الى كسبان كروس او فلاج
new TitleStorage().AddTitle(client, 6003, 22, false);//جرمنت 5 نجوم
new TitleStorage().AddTitle(client, 6004, 23, false);// موينت 5 نجوم
new TitleStorage().AddTitle(client, 1, 1000, false);// كينج دوم
new TitleStorage().AddTitle(client, 2018, 1, false);// شى 400
new TitleStorage().AddTitle(client, 2001, 2, false);// 320 انجاز
new TitleStorage().AddTitle(client, 2002, 3, false);//الى كسبان فلاج
new TitleStorage().AddTitle(client, 2003, 4, false);//الى كسبان كروس سيرفر
new TitleStorage().AddTitle(client, 2004, 5, false);// جارد 15 فى جانغ
new TitleStorage().AddTitle(client, 2005, 6, false);//جرمنت 5 نجوم
new TitleStorage().AddTitle(client, 2006, 7, false);//موينت 5 نجوم
#region Ms/Mr.Conquer
new TitleStorage().AddTitle(client, 2020, 2020, false);//Ms.Conquer
new TitleStorage().AddTitle(client, 2021, 2021, false);//Ms.Conquer
new TitleStorage().AddTitle(client, 2022, 2022, false);
new TitleStorage().AddTitle(client, 2023, 2023, false);//Mr. Conquer
new TitleStorage().AddTitle(client, 2024, 2024, false);//Mr. Conquer
new TitleStorage().AddTitle(client, 2025, 2025, false);
new TitleStorage().AddTitle(client, 6005, 6005, false);// جرمنت 2016
#endregion
new TitleStorage().AddTitle(client, 2028, 2028, false);//فى اى بى 1
new TitleStorage().AddTitle(client, 2029, 2029, false);//فى اى بى 5 و 6
new TitleStorage().AddTitle(client, 2030, 2030, false);//فى اى بى 4
new TitleStorage().AddTitle(client, 2031, 2031, false);// فى اى بى 7
new TitleStorage().AddTitle(client, 2032, 2032, false);//Own~1~set~of~Euro~Jerseys~and~1~Euro~Mount~Armor.
new TitleStorage().AddTitle(client, 2033, 2033, false);//Own~6~Euro~Jerseys.
new TitleStorage().AddTitle(client, 6009, 6009, false);//Rare~Wings~for~Euro~2016
new TitleStorage().AddTitle(client, 6007, 6007, false);//PerfectionLevel = 324
new TitleStorage().AddTitle(client, 6008, 6008, false);//PerfectionLevel = 216
new TitleStorage().AddTitle(client, 2026, 2026, false);//Prestige~Score~reaches~600,000~points.
new TitleStorage().AddTitle(client, 2027, 2027, false);//Prestige~Score~reaches~400,000~points.
new TitleStorage().AddTitle(client, 6011, 6011, false);//Prestige~Score~reaches~600,000~points.
new TitleStorage().AddTitle(client, 2034, 2034, false);//Prestige~Score~reaches~400,000~points.
}
}
if (client.Entity.WTitles == null)
{
new TitleStorage().AddTitle(client, 2028, 2028, false);//فى اى بى 1
client.Entity.WTitles.Points += 50;
}
if (client.Entity.WTitles.Points < 1)
{
client.Entity.WTitles.Points += 500;
}
client.Entity.TitlePoints = client.Entity.WTitles.Points;
#endregion
#region Claimable And Deantaid Items
if (client.ClaimableItem.Count > 0)
foreach (var item in client.ClaimableItem.Values)
item.Send(client);
if (client.DeatinedItem.Count > 0)
foreach (var item in client.DeatinedItem.Values)
item.Send(client);
#endregion
#region BC
if (Game.ConquerStructures.Broadcast.CurrentBroadcast.EntityID > 2)
client.Send(new Network.GamePackets.Message(Game.ConquerStructures.Broadcast.CurrentBroadcast.Message, "ALLUSERS", Game.ConquerStructures.Broadcast.CurrentBroadcast.EntityName, System.Drawing.Color.Red, Network.GamePackets.Message.BroadcastMessage));
#endregion
#region Load Status
client.Entity.UpdateEffects(true);
client.LoadItemStats();
#endregion
#region Show Stuff
ClientEquip equips = new ClientEquip();
equips.DoEquips(client);
client.Send(equips);
#endregion
client.JustCreated = false;
#region AccountWhoJustCreatedItems
if (client.ItemGive)
{
client.Inventory.AddandWear(132013, 0, client);//Dress
if (client.Entity.Class >= 10 && client.Entity.Class <= 15)
client.Inventory.AddandWear(410301, 0, client);//Blade
if (client.Entity.Class >= 20 && client.Entity.Class <= 25)
client.Inventory.AddandWear(561301, 0, client);//Wand
if (client.Entity.Class >= 40 && client.Entity.Class <= 45)
client.Inventory.AddandWear(500301, 0, client);//Bow
if (client.Entity.Class >= 50 && client.Entity.Class <= 55)
client.Inventory.AddandWear(601301, 0, client);//Katana
if (client.Entity.Class >= 60 && client.Entity.Class <= 65)
client.Inventory.AddandWear(610301, 0, client);//Bead
if (client.Entity.Class >= 70 && client.Entity.Class <= 75)
client.Inventory.AddandWear(611301, 0, client);//Rapier
if (client.Entity.Class >= 80 && client.Entity.Class <= 85)
client.Inventory.AddandWear(617301, 0, client);//DragonWarriorWeapon
if (client.Entity.Class >= 100 && client.Entity.Class <= 145)
client.Inventory.AddandWear(421301, 0, client);//BackSword
client.ItemGive = false;
}
#endregion
client.Entity.HandleTiming = true;
client.UnionExploits = client.UnionExploits;
client.LoadItemStats();
client.Send(new Message("Enjoy LordsRoadConquer!", System.Drawing.Color.Yellow, Message.Talk));
}
else
{
client.Send(new Message("Error Loading Your Character!", "ALLUSERS", System.Drawing.Color.Orange, GamePackets.Message.Dialog));
client.Disconnect(false);
}
}
else
{
client.Send(new Message("Error Loading Your Character!", "ALLUSERS", System.Drawing.Color.Orange, GamePackets.Message.Dialog));
client.Disconnect(false);
}
client.Send(new Message("ANSWER_OK", "ALLUSERS", System.Drawing.Color.Orange, GamePackets.Message.Dialog));
client.Account.Save(client);
if (!client.LoggedIn)
{
Program.UpdateConsoleTitle();
client.LoggedIn = true;
client.Action = 2;
}
}
catch (Exception e)
{
Console.WriteLine(e);
}
}
How much would you charge to look at and fix the various issues Spirited?
|
|
|
08/18/2019, 18:30
|
#10
|
elite*gold: 12
Join Date: Jul 2011
Posts: 8,211
Received Thanks: 4,114
|
Quote:
Originally Posted by denominator
Would that be in my packethandler.cs? If so here is what I found
...
There is also this
..
How much would you charge to look at and fix the various issues Spirited?
|
I don't charge people for programming advice. It would be a tad ridiculous to charge for something like that in a hobbyist's community... the more we can get away from this idea of purchasing open source code and help for it, the better. Put your source up on as a private repository and invite me ( ) as a Contributor if you'd like me to take a look at it. Doesn't hurt to have source control for your server anyways.
If you're new to Git, here's a very quick tutorial:
1. Download and install 2. Create a account
3. Create an access token in Settings with the API box checked, save in notepad for later
4. Create a blank new project in GitLab (do not initialize with a readme)
5. Follow instructions on screen and push your existing project folder (use access token for your password when prompted)
|
|
|
08/18/2019, 19:40
|
#11
|
elite*gold: 130
Join Date: Oct 2007
Posts: 1,652
Received Thanks: 701
|
Quote:
Originally Posted by Spirited
I don't charge people for programming advice. It would be a tad ridiculous to charge for something like that in a hobbyist's community... the more we can get away from this idea of purchasing open source code and help for it, the better. Put your source up on as a private repository and invite me ( ) as a Contributor if you'd like me to take a look at it. Doesn't hurt to have source control for your server anyways.
If you're new to Git, here's a very quick tutorial:
1. Download and install 2. Create a account
3. Create an access token in Settings with the API box checked, save in notepad for later
4. Create a blank new project in GitLab (do not initialize with a readme)
5. Follow instructions on screen and push your existing project folder (use access token for your password when prompted)
|
|
|
|
08/18/2019, 20:47
|
#12
|
elite*gold: 0
Join Date: Feb 2009
Posts: 259
Received Thanks: 159
|
Quote:
Originally Posted by denominator
Would that be in my packethandler.cs? If so here is what I found
Code:
#region Data (10010)
case 10010:
{
if (client.Action != 2)
return;
HandleData(client, packet);
break;
}
#endregion
There is also this
Code:
case Data.CompleteLogin:
{
client.Entity.Update(Network.GamePackets.Update.ExtraInventory, client.Entity.ExtraInventory, false);
client.Entity.Update(Network.GamePackets.Update.AvailableSlots, 300, false);
#region InnerPower
if (!InnerPower.InnerPowerPolle.TryGetValue(client.Entity.UID, out client.Entity.InnerPower))
{
client.Entity.InnerPower = new InnerPower(client.Entity.Name, client.Entity.UID);
Database.InnerPowerTable.New(client);
}
client.Entity.InnerPower.UpdateStatus();
client.Entity.InnerPower.AddPotency(null, client, 0);
#endregion
#region SendInnerPowerPotency
client.Entity.Update(Update.InnerPowerPotency, client.Entity.InnerPower.Potency, false);
#endregion
new MsgUserAbilityScore().SendScore(client, client);
new MsgItemRefineRecord().Send(client);
client.Send(packet);
#region Union
if (Kernel.Unions.Count > 0)
{
Union.MsgLeagueOpt Res = new Union.MsgLeagueOpt(true);
Res.Action = Union.Actions.KingdomIcon;
if (client.Union != null)
{
Res.dwParam2 = client.Union.ID;
}
Res.dwParam3 = Kernel.ServerKingdom;
client.Send(Res.ToArray());
}
if (client.Union != null)
{
client.Send(client.Union.SendOverheadLeagueInfo(client));
}
if (client.Union != null)
{
if (client.Union.IsKingdom())
{
if (client.Union.IsLeader(client.Entity.UID))
{
new TitleStorage().AddTitle(client, 4001, 1000, false);
new TitleStorage().AddTitle(client, 1, 1000, false);
Union.MsgLeagueOpt Res = new Union.MsgLeagueOpt(true);
Res.Action = Union.Actions.KingdomTitleGui;
Res.dwParam3 = Kernel.ServerKingdom;
client.Send(Res.ToArray());
}
}
var array = client.Union.Members.OrderByDescending(i => i.UnionExploits).ToArray();
for (int i = 0; i < Math.Min(array.Length, 4); i++)
{
if (array[i].ID == client.Entity.UID)
{
/* if (i == 0)
client.Entity.AddFlag3(Update.Flags3.GoldBrickSuper);
if (i == 1)
client.Entity.AddFlag3(Update.Flags3.GoldBrickElite);
if (i == 2)
client.Entity.AddFlag3(Update.Flags3.GoldBrickUnique);
if (i == 3)
client.Entity.AddFlag3(Update.Flags3.GoldBrickRefined);
if (i == 4)
client.Entity.AddFlag3(Update.Flags3.GoldBrickNormal);*/
}
}
}
#endregion
#region VIP ICON
if (client.Entity.VIPLevel > 0)
{
client.Entity.VIPLevel = (byte)((client.Entity.VIPLevel) + 0);
Network.GamePackets.VipStatus vip = new Network.GamePackets.VipStatus();
client.Send(vip.ToArray());
}
#endregion
if (client.Quests.GetQuest(QuestID.UnknownDangers) == null && client.Quests.CheckQuest(QuestID.UnknownDangers) != QuestPacket.QuestData.QuestStatus.Finished && client.Entity.Level >= 110)
{
client.Quests.Accept(QuestID.UnknownDangers);
}
client.LoadItemStats();
MsgSignIn.Show(client);
break;
}
There is also this
Code:
public static void LoadEntity(GameClient client)
{
try
{
client.ReadyToPlay();
if (Database.EntityTable.LoadEntity(client))
{
if (client.Entity.FullyLoaded)
{
if (ItemPosition(client.BackupArmorLook) == ConquerItem.Garment) client.BackupArmorLook = 0;
if (ItemPosition(client.ArmorLook) == ConquerItem.Garment) client.ArmorLook = 0;
if (client.BackupArmorLook != 0) client.SetNewArmorLook(client.BackupArmorLook);
client.SetNewHeadgearLook(client.HeadgearLook);
client.BackupArmorLook = 0;
client.LoadData();
Database.EntityTable.TryReset(client);
if (client.JustCreated)
{
client.ItemGive = true;
SetLocation(new Data(true) { UID = client.Entity.UID }, client);
}
Program.World.Register(client);
Kernel.GamePool[client.Account.EntityID] = client;
Database.EntityTable.UpdateOnlineStatus(client, true);
#region Character Information
client.Send(new GamePackets.CharacterInfo(client));
#endregion
#region Revive If The Player Dead
if (client.Entity.Hitpoints == 0)
client.Entity.Hitpoints = 1;
#endregion
#region ServerTime Packet
DateTime Now64 = DateTime.Now;
DateTime now = DateTime.Now;
ServerTime time = new ServerTime();
time.Year = (uint)DateTime.Now.Year;
time.Month = (uint)DateTime.Now.Month;
time.DayOfYear = (uint)DateTime.Now.DayOfYear;
time.DayOfMonth = (uint)DateTime.Now.Day;
time.Hour = (uint)DateTime.Now.Hour;
time.Minute = (uint)DateTime.Now.Minute;
time.Second = (uint)DateTime.Now.Second;
client.Send(time);
#endregion
#region Load Items And Equipment
foreach (ConquerItem item in client.Inventory.Objects)
item.Send(client);
foreach (ConquerItem item in client.Equipment.Objects)
{
if (item != null)
{
if (Database.ConquerItemInformation.BaseInformations.ContainsKey(item.ID))
{
item.Send(client);
}
else
{
client.Equipment.DestroyArrow(item.Position);
}
}
}
client.LoadItemStats();
if (!client.Equipment.Free(5))
{
if (IsArrow(client.Equipment.TryGetItem(5).ID))
{
if (client.Equipment.Free(4))
client.Equipment.DestroyArrow(5);
else
{
if (client.Equipment.TryGetItem(4).ID / 1000 != 500)
client.Equipment.DestroyArrow(5);
}
}
}
client.GemAlgorithm();
client.CalculateStatBonus();
client.CalculateHPBonus();
client.Equipment.UpdateEntityPacket();
#endregion
#region SecondaryPassword
if (client.WarehousePW != 0 && client.ForgetWHPass == false)
{
WareHousePassword whp = new WareHousePassword(true);
whp.type = WareHousePassword.PasswordCorrect;
whp.OldPassword = 0x1;
client.Send(whp);
}
else if (client.WarehousePW != 0 && client.ForgetWHPass == true)
{
WareHousePassword whp = new WareHousePassword(true);
whp.type = WareHousePassword.Termination;
whp.OldPassword = 0x1;
whp.NewPassword = client.ForgetWHPassDate;
client.Send(whp);
}
#endregion
#region Chi
client.Send(new ChiPowers(true).Query(client));
SendChiRankings(new GenericRanking(true) { Mode = GenericRanking.QueryCount }, client);
#endregion
#region Achivement
client.Entity.MyAchievement.Send();
#endregion
#region Nobility
NobilityInfo update = new NobilityInfo(true);
update.Type = NobilityInfo.Icon;
update.dwParam = client.NobilityInformation.EntityUID;
update.UpdateString(client.NobilityInformation);
client.Send(update);
#endregion
#region MentorInformation
if (client.Mentor != null)
{
if (client.Mentor.IsOnline)
{
MentorInformation Information = new MentorInformation(true);
Information.Mentor_Type = 1;
Information.Mentor_ID = client.Mentor.Client.Entity.UID;
Information.Apprentice_ID = client.Entity.UID;
Information.Enrole_Date = client.Mentor.EnroleDate;
Information.Mentor_Level = client.Mentor.Client.Entity.Level;
Information.Mentor_Class = client.Mentor.Client.Entity.Class;
Information.Mentor_PkPoints = client.Mentor.Client.Entity.PKPoints;
Information.Mentor_Mesh = client.Mentor.Client.Entity.Mesh;
Information.Mentor_Online = true;
Information.Shared_Battle_Power = client.Entity.BattlePowerFrom(client.Mentor.Client.Entity);
Information.String_Count = 3;
Information.Mentor_Name = client.Mentor.Client.Entity.Name;
Information.Apprentice_Name = client.Entity.Name;
Information.Mentor_Spouse_Name = client.Mentor.Client.Entity.Spouse;
client.ReviewMentor();
client.Send(Information);
ApprenticeInformation AppInfo = new ApprenticeInformation();
AppInfo.Apprentice_ID = client.Entity.UID;
AppInfo.Apprentice_Level = client.Entity.Level;
AppInfo.Apprentice_Class = client.Entity.Class;
AppInfo.Apprentice_PkPoints = client.Entity.PKPoints;
AppInfo.Apprentice_Experience = client.AsApprentice.Actual_Experience;
AppInfo.Apprentice_Composing = client.AsApprentice.Actual_Plus;
AppInfo.Apprentice_Blessing = client.AsApprentice.Actual_HeavenBlessing;
AppInfo.Apprentice_Name = client.Entity.Name;
AppInfo.Apprentice_Online = true;
AppInfo.Apprentice_Spouse_Name = client.Entity.Spouse;
AppInfo.Enrole_date = client.Mentor.EnroleDate;
AppInfo.Mentor_ID = client.Mentor.ID;
AppInfo.Mentor_Mesh = client.Mentor.Client.Entity.Mesh;
AppInfo.Mentor_Name = client.Mentor.Name;
AppInfo.Type = 2;
client.Mentor.Client.Send(AppInfo);
}
else
{
MentorInformation Information = new MentorInformation(true);
Information.Mentor_Type = 1;
Information.Mentor_ID = client.Mentor.ID;
Information.Apprentice_ID = client.Entity.UID;
Information.Enrole_Date = client.Mentor.EnroleDate;
Information.Mentor_Online = false;
Information.String_Count = 2;
Information.Mentor_Name = client.Mentor.Name;
Information.Apprentice_Name = client.Entity.Name;
client.Send(Information);
}
}
#endregion
#region Appearance
ChangeAppearance(client, (Enums.AppearanceType)client.Appearance);
#endregion
#region Mentor BP
if (client.Entity.MentorBattlePower != 0)
client.Entity.Update(Network.GamePackets.Update.MentorBattlePower, client.Entity.MentorBattlePower, false);
#endregion
#region New Titles
if (client.Entity.Titles.Count > 0)
{
TitlePacket tpacket = new TitlePacket(true);
tpacket.Identifier = client.Entity.UID;
tpacket.Title = client.Entity.MyTitle;
tpacket.Type = TitlePacket.Types.Switch;
tpacket.Count = 1;
tpacket.Add((byte)client.Entity.MyTitle);
client.Entity.MyTitle = tpacket.Title;
client.Send(tpacket);
}
#endregion
#region MapInformation
client.Send(new MapStatus() { BaseID = client.Map.BaseID, ID = client.Map.ID, Status = Database.MapsTable.MapInformations[client.Map.ID].Status, Weather = Database.MapsTable.MapInformations[client.Map.ID].Weather });
#endregion
#region Analayze Skills
RemoveBadSkills(client);
if (client.Entity.Class >= 40 && client.Entity.Class <= 45)
{
client.RemoveSpell(new Spell(true) { ID = 1025 });//SuperMan
}
if (client.Entity.Class >= 142 && client.Entity.Class <= 145)
{
client.RemoveSpell(new Spell(true) { ID = 6002 });//PiosnStar
}
if (client.Entity.Class >= 60 && client.Entity.Class <= 65)
{
client.RemoveSpell(new Spell(true) { ID = 1025 });//Superman
}
if (client.Entity.Class >= 132 && client.Entity.Class <= 135)
{
client.RemoveSpell(new Spell(true) { ID = 10425 });//tranq
}
if (client.Entity.Class >= 50 && client.Entity.Class <= 55)
{
client.RemoveSpell(new Spell(true) { ID = 1025 });//Superman
}
if (client.Entity.Class >= 10 && client.Entity.Class <= 15)
{
client.RemoveSpell(new Spell(true) { ID = 1025 });//Superman
}
if (client.Entity.Class >= 142 && client.Entity.Class <= 145)
{
client.RemoveSpell(new Spell(true) { ID = 11180 });//MortalDrag
}
if (client.Entity.Class >= 142 && client.Entity.Class <= 145)
{
client.RemoveSpell(new Spell(true) { ID = 11190 });//MortalDrag
}
if (client.Entity.Class >= 142 && client.Entity.Class <= 145)
{
client.RemoveSpell(new Spell(true) { ID = 11200 });//MortalDrag
}
if (client.Entity.Class >= 42 && client.Entity.Class <= 45)
{
client.RemoveSpell(new Spell(true) { ID = 10425 });//Tranquality
}
if (client.Entity.Class >= 10 && client.Entity.Class <= 15)
{
client.RemoveSpell(new Spell(true) { ID = 6002 });//Poisonstar
}
#endregion
#region AutoHunt Icon
AutoHunt AutoHunt = new AutoHunt();
AutoHunt.Icon = 341;
client.Send(AutoHunt.ToArray());
#endregion
#region Guilds
foreach (var Guild in Kernel.Guilds.Values)
{
Guild.SendName(client);
}
if (client.Guild != null && client.Guild.ID != 0)
{
client.Guild.SendAllyAndEnemy(client);
client.Entity.GuildBattlePower = client.Guild.GetSharedBattlepower(client.AsMember.Rank);
}
#endregion
#region Inbox
if (client.Prizes.Count > 0)
{
Mailbox.SendMailbox(client, true);
}
#endregion
#region Activeness
Activeness.Login(client, true);
#endregion
#region Enlight
if (client.Entity.EnlightenPoints != 0)
{
client.Entity.Update(Update.EnlightPoints, client.Entity.EnlightenPoints, true);
}
#endregion
#region TurnOn Filter Packet
client.Filtering = true;
#endregion
client.WentToComplete = true;
client.Entity.SendUpdates = true;
#region Elitepk
bool going = false;
Parallel.ForEach(ElitePKTournament.Tournaments, epk =>
{
if (epk.State != ElitePK.States.GUI_Top8Ranking)
going = true;
});
if (going)
{
ElitePKBrackets brackets = new ElitePKBrackets(true, 0);
brackets.Type = ElitePKBrackets.EPK_State;
brackets.OnGoing = true;
client.Send(brackets);
}
#endregion
#region QuizShow
if (Kernel.QuizShow.Open)
Kernel.QuizShow.AddPlayer(client);
client.Entity.Update((byte)Update.QuizPoints, client.Entity.QuizPoints, true);
#endregion
#region Updates
client.Entity.Update(Update.RaceShopPoints, client.RacePoints, false);
client.Entity.Update(Network.GamePackets.Update.LuckyTimeTimer, client.BlessTime, false);
if (client.Entity.HeavenBlessing != 0)
client.Entity.Update(Network.GamePackets.Update.OnlineTraining, client.OnlineTrainingPoints, false);
#endregion
#region Wardrobe
new CoatStorage().Login(client);
new TitleStorage().Login(client);
if (client.Account.State == Database.AccountTable.AccountState.Player)
{
if (client.Entity.WTitles == null)
{
new TitleStorage().AddTitle(client, 4001, 1000, false);//الى كسبان كينج دوم
new TitleStorage().AddTitle(client, 6001, 20, false);//الاول على الاليت بى كا
new TitleStorage().AddTitle(client, 6002, 21, false);//الى كسبان كروس او فلاج
new TitleStorage().AddTitle(client, 6003, 22, false);//جرمنت 5 نجوم
new TitleStorage().AddTitle(client, 6004, 23, false);// موينت 5 نجوم
new TitleStorage().AddTitle(client, 1, 1000, false);// كينج دوم
new TitleStorage().AddTitle(client, 2018, 1, false);// شى 400
new TitleStorage().AddTitle(client, 2001, 2, false);// 320 انجاز
new TitleStorage().AddTitle(client, 2002, 3, false);//الى كسبان فلاج
new TitleStorage().AddTitle(client, 2003, 4, false);//الى كسبان كروس سيرفر
new TitleStorage().AddTitle(client, 2004, 5, false);// جارد 15 فى جانغ
new TitleStorage().AddTitle(client, 2005, 6, false);//جرمنت 5 نجوم
new TitleStorage().AddTitle(client, 2006, 7, false);//موينت 5 نجوم
#region Ms/Mr.Conquer
new TitleStorage().AddTitle(client, 2020, 2020, false);//Ms.Conquer
new TitleStorage().AddTitle(client, 2021, 2021, false);//Ms.Conquer
new TitleStorage().AddTitle(client, 2022, 2022, false);
new TitleStorage().AddTitle(client, 2023, 2023, false);//Mr. Conquer
new TitleStorage().AddTitle(client, 2024, 2024, false);//Mr. Conquer
new TitleStorage().AddTitle(client, 2025, 2025, false);
new TitleStorage().AddTitle(client, 6005, 6005, false);// جرمنت 2016
#endregion
new TitleStorage().AddTitle(client, 2028, 2028, false);//فى اى بى 1
new TitleStorage().AddTitle(client, 2029, 2029, false);//فى اى بى 5 و 6
new TitleStorage().AddTitle(client, 2030, 2030, false);//فى اى بى 4
new TitleStorage().AddTitle(client, 2031, 2031, false);// فى اى بى 7
new TitleStorage().AddTitle(client, 2032, 2032, false);//Own~1~set~of~Euro~Jerseys~and~1~Euro~Mount~Armor.
new TitleStorage().AddTitle(client, 2033, 2033, false);//Own~6~Euro~Jerseys.
new TitleStorage().AddTitle(client, 6009, 6009, false);//Rare~Wings~for~Euro~2016
new TitleStorage().AddTitle(client, 6007, 6007, false);//PerfectionLevel = 324
new TitleStorage().AddTitle(client, 6008, 6008, false);//PerfectionLevel = 216
new TitleStorage().AddTitle(client, 2026, 2026, false);//Prestige~Score~reaches~600,000~points.
new TitleStorage().AddTitle(client, 2027, 2027, false);//Prestige~Score~reaches~400,000~points.
new TitleStorage().AddTitle(client, 6011, 6011, false);//Prestige~Score~reaches~600,000~points.
new TitleStorage().AddTitle(client, 2034, 2034, false);//Prestige~Score~reaches~400,000~points.
}
}
if (client.Entity.WTitles == null)
{
new TitleStorage().AddTitle(client, 2028, 2028, false);//فى اى بى 1
client.Entity.WTitles.Points += 50;
}
if (client.Entity.WTitles.Points < 1)
{
client.Entity.WTitles.Points += 500;
}
client.Entity.TitlePoints = client.Entity.WTitles.Points;
#endregion
#region Claimable And Deantaid Items
if (client.ClaimableItem.Count > 0)
foreach (var item in client.ClaimableItem.Values)
item.Send(client);
if (client.DeatinedItem.Count > 0)
foreach (var item in client.DeatinedItem.Values)
item.Send(client);
#endregion
#region BC
if (Game.ConquerStructures.Broadcast.CurrentBroadcast.EntityID > 2)
client.Send(new Network.GamePackets.Message(Game.ConquerStructures.Broadcast.CurrentBroadcast.Message, "ALLUSERS", Game.ConquerStructures.Broadcast.CurrentBroadcast.EntityName, System.Drawing.Color.Red, Network.GamePackets.Message.BroadcastMessage));
#endregion
#region Load Status
client.Entity.UpdateEffects(true);
client.LoadItemStats();
#endregion
#region Show Stuff
ClientEquip equips = new ClientEquip();
equips.DoEquips(client);
client.Send(equips);
#endregion
client.JustCreated = false;
#region AccountWhoJustCreatedItems
if (client.ItemGive)
{
client.Inventory.AddandWear(132013, 0, client);//Dress
if (client.Entity.Class >= 10 && client.Entity.Class <= 15)
client.Inventory.AddandWear(410301, 0, client);//Blade
if (client.Entity.Class >= 20 && client.Entity.Class <= 25)
client.Inventory.AddandWear(561301, 0, client);//Wand
if (client.Entity.Class >= 40 && client.Entity.Class <= 45)
client.Inventory.AddandWear(500301, 0, client);//Bow
if (client.Entity.Class >= 50 && client.Entity.Class <= 55)
client.Inventory.AddandWear(601301, 0, client);//Katana
if (client.Entity.Class >= 60 && client.Entity.Class <= 65)
client.Inventory.AddandWear(610301, 0, client);//Bead
if (client.Entity.Class >= 70 && client.Entity.Class <= 75)
client.Inventory.AddandWear(611301, 0, client);//Rapier
if (client.Entity.Class >= 80 && client.Entity.Class <= 85)
client.Inventory.AddandWear(617301, 0, client);//DragonWarriorWeapon
if (client.Entity.Class >= 100 && client.Entity.Class <= 145)
client.Inventory.AddandWear(421301, 0, client);//BackSword
client.ItemGive = false;
}
#endregion
client.Entity.HandleTiming = true;
client.UnionExploits = client.UnionExploits;
client.LoadItemStats();
client.Send(new Message("Enjoy LordsRoadConquer!", System.Drawing.Color.Yellow, Message.Talk));
}
else
{
client.Send(new Message("Error Loading Your Character!", "ALLUSERS", System.Drawing.Color.Orange, GamePackets.Message.Dialog));
client.Disconnect(false);
}
}
else
{
client.Send(new Message("Error Loading Your Character!", "ALLUSERS", System.Drawing.Color.Orange, GamePackets.Message.Dialog));
client.Disconnect(false);
}
client.Send(new Message("ANSWER_OK", "ALLUSERS", System.Drawing.Color.Orange, GamePackets.Message.Dialog));
client.Account.Save(client);
if (!client.LoggedIn)
{
Program.UpdateConsoleTitle();
client.LoggedIn = true;
client.Action = 2;
}
}
catch (Exception e)
{
Console.WriteLine(e);
}
}
How much would you charge to look at and fix the various issues Spirited?
|
i see innerpower, union... if you use rune system, the problem is from packet Spell/Item, check your login send
|
|
|
08/18/2019, 20:49
|
#13
|
elite*gold: 0
Join Date: Aug 2010
Posts: 939
Received Thanks: 76
|
I've installed git already to download stuff from a WoW private server, that was relatively easy enough to do but uploading from my PC is not so easy :/ Finally uploaded it and added you Spirited And thank you.
login send? Where would that be?
|
|
|
08/19/2019, 00:13
|
#14
|
elite*gold: 12
Join Date: Jul 2011
Posts: 8,211
Received Thanks: 4,114
|
Quote:
Originally Posted by denominator
I've installed git already to download stuff from a WoW private server, that was relatively easy enough to do but uploading from my PC is not so easy :/ Finally uploaded it and added you Spirited
|
Awesome, so if you look at your GetSurroundings handler, you're doing it right. When you receive and finish processing GetSurroundings, you send the modified packet back to the client (client.Send(gData)). You need to be doing that for almost every MsgAction packet your receive for the interface to be updated properly. I can get you some packet dumps when I get back home, but you should be putting a 1 in offset 37ish depending on your patch. Here's an example structure:
|
|
|
08/19/2019, 00:33
|
#15
|
elite*gold: 0
Join Date: Aug 2010
Posts: 939
Received Thanks: 76
|
Patch is 6303 afaik
Code:
case Data.GetSurroundings:
{
if (client.Booth != null)
{
client.Entity.TransformationID = 0;
client.Booth.Remove();
client.Booth = null;
}
client.Screen.FullWipe();
client.Screen.Reload(null);
if (client.Entity.PreviousMapID == CaptureTheFlag.MapID)
Program.World.CTF.CloseList(client);
client.Send(new MapStatus()
{
BaseID = client.Map.BaseID,
ID = client.Map.ID,
Status = Database.MapsTable.MapInformations[client.Map.ID].Status,
Weather = Database.MapsTable.MapInformations[client.Map.ID].Weather
});
client.Send(gData);
break;
}
but you should be putting a 1 in offset 37ish depending on your patch, I checked for offset 37 but couldn't find it?
|
|
|
|
|
Similar Threads
|
Key Lose! -- 100e*gold pro Lose!
05/29/2011 - elite*gold Trading - 8 Replies
Ich verlose Keys.
Höchstgewinn -> MW2 Key!
andere Spiele:
-Nexus The Jupiter Incident
-Ghost Recon Advanced Warfighter
-Tom Clancys Rainbow Six Vegas
Die drei Keys ausser MW2 sind Nicht für Steam Aktivierbar!
|
Why do not you help me why why
01/21/2011 - Metin2 Private Server - 8 Replies
hi
Why don't you help me maybe this topic five me I didn't get even one response why why I hesitate on this forum more than one year for help but I don't get it
--
O I want create server server server for mt2 like standard now but all I get it explained to build local I local surfer o I don't want to run a server on your server ip but rather marginal ...
--
Have you bought hosting space or bought a server script to install FreeBSD what hey friends I hope help me one time
|
[Help]Fkey Glitch
08/31/2009 - CO2 Private Server - 5 Replies
Anyone know how to fix the F keys glitch. I use f1-3 for sit but im using a source that if u stay on for a while when u use the f key with your keyboard it doesnt work. Anyone know how to fix this?
|
[AutoIt] Fkey Binds
08/14/2009 - General Gaming Discussion - 0 Replies
This script is for running in the background so you can bind hotbar keys to they Fkeys. Throw desired skills/spells/potions on a hotbar, and by pressing the corresponding Fkey, the script will switch to the hotbar, select the skill/spell/potion, and switch back to the first hotbar. You need to rebind your hotbar switches to CTRL + Hotbar Number in order to not mess with sprint. You should also unbind anything you have set to your Fkeys.
There is no pause and exit in order to be able to run...
|
All times are GMT +2. The time now is 13:09.
|
|