Register for your free account! | Forgot your password?

You last visited: Today at 13:10

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Magic loading issue

Discussion on Magic loading issue within the CO2 Private Server forum part of the Conquer Online 2 category.

Reply
 
Old   #1
 
pintinho12's Avatar
 
elite*gold: 0
Join Date: Jul 2009
Posts: 908
Received Thanks: 390
Magic loading issue

How to prevent the skill icon from appearing always when I add this to the client?

I've been guessing offsets but all I managed to do until now was crash the client xD

Version: 5729
pintinho12 is offline  
Old 09/05/2019, 00:50   #2
 
Spirited's Avatar
 
elite*gold: 12
Join Date: Jul 2011
Posts: 8,211
Received Thanks: 4,114
Prevent it from showing up in the right corner of the main stage when you add the skill?
Spirited is offline  
Old 09/05/2019, 19:16   #3
 
pintinho12's Avatar
 
elite*gold: 0
Join Date: Jul 2009
Posts: 908
Received Thanks: 390
Quote:
Originally Posted by Spirited View Post
Prevent it from showing up in the right corner of the main stage when you add the skill?
Yep, it mess my F-keys and shows the icons in the bottom right corner of the screen always when I login.
pintinho12 is offline  
Old 09/08/2019, 22:50   #4
 
{ Angelius }'s Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 991
Received Thanks: 1,107
Code:
/// <summary>
    /// : ushort
    /// </summary>
    public enum SkillAddActionType : ushort
    {
        /// <summary>
        /// adds and existing skill, Requires Id, Exp, Level, Index and Flags 
        /// </summary>
        AddExsisting = 0,
        /// <summary>
        /// adds a new skill, Requires Id, Exp, Level only.
        /// </summary>
        AddNew = 1,
        /// <summary>
        /// Sent to Server only.
        /// </summary>
        Unknown2 = 2,
        /// <summary>
        /// Set selected name index
        /// </summary>
        SetSelectedName = 3,
        /// <summary>
        /// Set flags and index
        /// </summary>
        SetFlags = 4,
        /// <summary>
        /// Sent to Server only.
        /// </summary>
        RemoveName = 5,
        /// <summary>
        /// replaces the flags and index
        /// </summary>
        ReplaceFlags = 6,
    }
Code:
[Packet(PacketType.Skill)]
    public partial class SkillPacket
    {
        public uint TimeStamp { get; set; } = UnsafeNativeMethods.Time.GetTicks();
        public uint EXP { get; set; }
        public uint Id { get; set; }
        public ushort Level { get; set; }
        [PacketSubtype]
        public SkillAddActionType ActionType { get; set; }
        /// <summary>
        /// Sets the selected name in the window. 
        /// </summary>
        public ushort SelectedNameIndex { get; set; }
        //TODO: Find out what this is. Maybe has something to do with Jiang level.
        public ushort Unknown2 { get; set; }
        /// <summary>
        /// Determines if the Name is going to show in the window based on the flags. 
        /// <![CDATA[ (1 + (1 << 1 | 1 << 2 | 1 << 3 | 1 << 4)) this will enable 4 names. Adding more flags enables more if they exsist in the MagicEffect.ini(Name1, Name2, Etc)]]>
        /// </summary>
        public uint EnabledFlags { get; set; }
        /// <summary>
        /// Same as <see cref="EnabledFlags"/> only it will show a remove button if the flag is present. 
        /// <![CDATA[ (1 + (1 << 1 | 1 << 2 | 1 << 3 | 1 << 4))]]>
        /// </summary>
        public uint RemovableFlags { get; set; }
    }
It's been a long time since I touched this shit but I think this is for client version 6622.
I think what you need is to send the AddExsisting instead of AddNew.

Edit: Btw these (1 + (1 << 1 | 1 << 2 | 1 << 3 | 1 << 4)) are enum flags, I just never had the chance to convert them to proper enums.
so some shit like:
enum Bar
{
1 << 1,
1 << 2 ,
1 << 3,
1 << 4
}
{ Angelius } is offline  
Thanks
2 Users
Old 09/09/2019, 17:10   #5
 
pintinho12's Avatar
 
elite*gold: 0
Join Date: Jul 2009
Posts: 908
Received Thanks: 390
Quote:
Originally Posted by { Angelius } View Post
Code:
/// <summary>
    /// : ushort
    /// </summary>
    public enum SkillAddActionType : ushort
    {
        /// <summary>
        /// adds and existing skill, Requires Id, Exp, Level, Index and Flags 
        /// </summary>
        AddExsisting = 0,
        /// <summary>
        /// adds a new skill, Requires Id, Exp, Level only.
        /// </summary>
        AddNew = 1,
        /// <summary>
        /// Sent to Server only.
        /// </summary>
        Unknown2 = 2,
        /// <summary>
        /// Set selected name index
        /// </summary>
        SetSelectedName = 3,
        /// <summary>
        /// Set flags and index
        /// </summary>
        SetFlags = 4,
        /// <summary>
        /// Sent to Server only.
        /// </summary>
        RemoveName = 5,
        /// <summary>
        /// replaces the flags and index
        /// </summary>
        ReplaceFlags = 6,
    }
Code:
[Packet(PacketType.Skill)]
    public partial class SkillPacket
    {
        public uint TimeStamp { get; set; } = UnsafeNativeMethods.Time.GetTicks();
        public uint EXP { get; set; }
        public uint Id { get; set; }
        public ushort Level { get; set; }
        [PacketSubtype]
        public SkillAddActionType ActionType { get; set; }
        /// <summary>
        /// Sets the selected name in the window. 
        /// </summary>
        public ushort SelectedNameIndex { get; set; }
        //TODO: Find out what this is. Maybe has something to do with Jiang level.
        public ushort Unknown2 { get; set; }
        /// <summary>
        /// Determines if the Name is going to show in the window based on the flags. 
        /// <![CDATA[ (1 + (1 << 1 | 1 << 2 | 1 << 3 | 1 << 4)) this will enable 4 names. Adding more flags enables more if they exsist in the MagicEffect.ini(Name1, Name2, Etc)]]>
        /// </summary>
        public uint EnabledFlags { get; set; }
        /// <summary>
        /// Same as <see cref="EnabledFlags"/> only it will show a remove button if the flag is present. 
        /// <![CDATA[ (1 + (1 << 1 | 1 << 2 | 1 << 3 | 1 << 4))]]>
        /// </summary>
        public uint RemovableFlags { get; set; }
    }
It's been a long time since I touched this shit but I think this is for client version 6622.
I think what you need is to send the AddExsisting instead of AddNew.

Edit: Btw these (1 + (1 << 1 | 1 << 2 | 1 << 3 | 1 << 4)) are enum flags, I just never had the chance to convert them to proper enums.
so some shit like:
enum Bar
{
1 << 1,
1 << 2 ,
1 << 3,
1 << 4
}
Thank yooou very much.
Being a PM with all skills spawning in your screen is hard af xDD
pintinho12 is offline  
Old 09/09/2019, 21:50   #6
 
Spirited's Avatar
 
elite*gold: 12
Join Date: Jul 2011
Posts: 8,211
Received Thanks: 4,114
I'm at work right now, but we definitely need to add that to the wiki if anyone has a free chance. Else, I'll try and remember to add it once I get home.
Spirited is offline  
Thanks
1 User
Old 12/06/2019, 00:07   #7
 
pintinho12's Avatar
 
elite*gold: 0
Join Date: Jul 2009
Posts: 908
Received Thanks: 390
It still happening. I think that the structure he sent isn't used at 5808.
pintinho12 is offline  
Reply




All times are GMT +2. The time now is 13:10.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.