Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Conquer Online 2 > CO2 Private Server
You last visited: Today at 09:31

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

Advertisement



Been at this stupid thing for adges. (Impulse's source)

Discussion on Been at this stupid thing for adges. (Impulse's source) within the CO2 Private Server forum part of the Conquer Online 2 category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: May 2010
Posts: 298
Received Thanks: 57
Been at this stupid thing for adges. (Impulse's source)

I have this item
Code:
#region Firwork EndlessLove
                case 720031:
                    {
[COLOR="Red"][B]client.Send(GamePackets.StringPacket.Effect(client.Entity.UID, "firework-1love"));[/B][/COLOR]
                        client.Inventory.Remove(item, Game.Enums.ItemUse.Remove);
                        //MyClient.AddSend(Packets.String(MyClient.MyChar.EntityID, 10, "firework-1love"));
                    }
                    break;
                #endregion
and tryed changing whats in red to
Code:
client.Send(GamePackets.StringPacket(client.Entity.UID, GamePackets.StringPacket.Effect, "firework-1love"));
But it doesnt seem to work
Error on red "not a member so it cant be used as a method" <- I know but worth a try
Error not in red: Packet is a type witch isnt vaild.
Packet
Code:
using System;
using System.Collections.Generic;
using System.Text;

namespace Conquer_Online_Server.Network.GamePackets
{
    public class StringPacket : Writer, Interfaces.IPacket
    {
        public const byte GuildName = 3,
        Spouse = 6,
        Effect = 10,
        GuildList = 11,
        Unknown = 13,
        ViewEquipSpouse = 16,
        StartGamble = 17,
        EndGamble = 18,
        Sound = 20,
        GuildEnemies = 21,
        GuildAllies = 22,
        WhisperDetails = 26;

        byte[] Buffer;

        public StringPacket(bool Create)
        {
            if (Create)
            {
                Buffer = new byte[19];
                WriteUInt16(11, 0, Buffer);
                WriteUInt16(1015, 2, Buffer);
                Texts = new List<string>();
            }
        }
        public uint UID
        {
            get { return BitConverter.ToUInt32(Buffer, 4); }
            set { WriteUInt32(value, 4, Buffer); }
        }
        public byte Type
        {
            get { return Buffer[8]; }
            set { Buffer[8] = value; }
        }
        public byte TextsCount
        {
            get { return Buffer[9]; }
            set { Buffer[9] = value; }
        }
        public List<string> Texts;

        public void Send(Client.GameState client)
        {
            client.Send(Buffer);
        }
        public byte[] ToArray()
        {
            ushort entirelength = 19;
            foreach (string list in Texts)
                entirelength += (ushort)list.Length;
            byte[] buffer = new byte[entirelength];
            WriteUInt16((ushort)(entirelength - 8), 0, buffer);
            WriteUInt16(1015, 2, buffer);
            WriteUInt32(UID, 4, buffer);
            buffer[8] = Type;
            Buffer = buffer;
            WriteStringList(Texts, 9, Buffer);
            return Buffer;
        }
        public void Deserialize(byte[] buffer)
        {
            Buffer = buffer;
            Texts = new List<string>(buffer[9]);
            ushort offset = 10;
            byte count = 0;
            while (count != TextsCount)
            {
                ushort textlength = buffer[offset]; offset++;
                string text = Encoding.ASCII.GetString(buffer, offset, textlength); offset += textlength;
                Texts.Add(text);
                count++;
            }            
        }
    }
}
:/ Been at this for sometime
MonstersAbroad is offline  
Old 07/18/2010, 11:33   #2
 
elite*gold: 20
Join Date: Aug 2005
Posts: 1,734
Received Thanks: 1,001
Try this

PHP Code:
GamePackets.StringPacket Packet = new GamePackets.StringPacket(true);
Packet.UID client.Entity.UID;
Packet.Type GamePackets.StringPacket.Effect;
Packet.TextsCount 1;
Packet.Texts.Add("firework-1love");
Packet.Send(client); 
tanelipe is offline  
Old 07/18/2010, 12:26   #3
 
elite*gold: 0
Join Date: May 2010
Posts: 298
Received Thanks: 57
No effect shows. No errors tho.
MonstersAbroad is offline  
Old 07/18/2010, 13:29   #4
 
elite*gold: 20
Join Date: Aug 2005
Posts: 1,734
Received Thanks: 1,001
How about

PHP Code:
GamePackets.StringPacket Packet = new GamePackets.StringPacket(true);
Packet.UID client.Entity.UID;
Packet.Type GamePackets.StringPacket.Effect;
Packet.TextsCount 1;
Packet.Texts.Add("firework-1love");
client.Send(Packet.ToArray()); 
tanelipe is offline  
Old 07/18/2010, 13:46   #5
 
elite*gold: 0
Join Date: May 2010
Posts: 298
Received Thanks: 57
Thanks!!! btw client.Send(Packet.ToArray()); can just be client.Send(Packet);, Both work THANKS!
MonstersAbroad is offline  
Old 07/18/2010, 14:28   #6
 
elite*gold: 0
Join Date: May 2010
Posts: 298
Received Thanks: 57
#Bump + Another problem
It's changing the screen color I have this
Code:
#region Night
                                    case "night":
                                        {
                                            Client.GameState.ScreenColor = 5855577;
                                            GamePackets.GeneralData Packet = new GamePackets.GeneralData(true);
                                            Packet.UID = client.Entity.UID;
                                            Packet.GetType();
                                            Packet.ID = (ushort)Client.GameState.ScreenColor;
                                            foreach (Client.GameState pclient in ServerBase.Kernel.GamePool.Values)
                                            {
                                                pclient.Send(Packet);
                                            }
                                            //pclient.Send(GeneralData(pclient.Entity.UID, Client.GameState.ScreenColor, 0, 0, 104));
                                            //pclient.Send(GamePackets.GeneralData(pclient.Entity.UID, Client.GameState.ScreenColor, 0, 0, 104));
                                        }
                                        break;
                                    #endregion
But it fails hardcore. No errors but it fails.
MonstersAbroad is offline  
Reply


Similar Threads Similar Threads
[Release] Breeder NPC (Impulse's source)
07/25/2010 - CO2 PServer Guides & Releases - 4 Replies
Hello, I am very very pleased and proud of myself that I managed to do this FIRST time trying to send a packet via npc so I'm happy :) SPECIAL THANKS TO: .Arco's thread Breeder packet with NPC. That gave me the packet id's. all it is, is this npc in dialog.cs #region Breeder case 13118:
[Release] No whisper's command (Impulse's source)
07/23/2010 - CO2 PServer Guides & Releases - 2 Replies
Here. First define in entity.cs public bool nowhsp = false; then goto packethandler.cs and where whisper is handled make it this foreach (Client.GameState pClient in ServerBase.Kernel.GamePool.Values) {
What's wrong with my Nighttime command(impulse's source)
07/21/2010 - CO2 Private Server - 4 Replies
Heres my command #region Night case "night": { Client.GameState.ScreenColor = 5855577; GamePackets.GeneralData Packet = new GamePackets.GeneralData(true); Packet.UID = client.Entity.UID; Packet.GetType(); ...



All times are GMT +1. The time now is 09:32.


Powered by vBulletin®
Copyright ©2000 - 2026, 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 ©2026 elitepvpers All Rights Reserved.