-
Posts
164 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Store
Everything posted by kennylovecode
-
release ConquerDX9.Hook - DirectX9 Hooking with ImGui Overlay
kennylovecode replied to carniato's topic in Projects
In fact, have you found that while you are using imgui, the fps of the original game drawing window is dropping sharply. That's why I gave up using imgui, because I didn't find a solution. -
Character Creation Stuck on Screen – Need Help
kennylovecode replied to soulfly's topic in Conquer Online
I'm glad this can help you. You just need to replace this file, because the 5065 version of this file should have no subsequent code for logging in after creation, so you must close the client and log in again. -
Character Creation Stuck on Screen – Need Help
kennylovecode replied to soulfly's topic in Conquer Online
I once met this kind.It appeared when I changed from version 5517 to version 5065, because I replaced CharacterInAndOut.swf To version 5065, you will not directly enter the game after creating a character, so you must close the client and reopen the login. -
I'm glad to offer this little thing.
-
nice bro.... I'm glad I provided value like dust
-
I did a boring experiment, and you made a world.
-
hi, why the github link death...
-
using System; using System.IO; namespace ConquerServer_v2.Client { public static class DHKeyExchange { public class ServerKeyExchange { OpenSSL.DH _keyExchange; byte[] _serverIv; byte[] _clientIv; public byte[] CreateServerKeyPacket() { _clientIv = new byte[8]; _serverIv = new byte[8]; string P = "E7A69EBDF105F2A6BBDEAD7E798F76A209AD73FB466431E2E7352ED262F8C558F10BEFEA977DE9E21DCEE9B04D245F300ECCBBA03E72630556D011023F9E857F"; string G = "05"; _keyExchange = new OpenSSL.DH(OpenSSL.BigNumber.FromHexString(P), OpenSSL.BigNumber.FromHexString(G)); _keyExchange.GenerateKeys(); return GeneratePacket(_serverIv, _clientIv, P, G, _keyExchange.PublicKey.ToHexString()); } public GameCryptography HandleClientKeyPacket(string PublicKey, GameCryptography cryptographer) { byte[] key = _keyExchange.ComputeKey(OpenSSL.BigNumber.FromHexString(PublicKey)); cryptographer.SetKey(key); cryptographer.SetIvs(_clientIv, _serverIv); return cryptographer; } public byte[] GeneratePacket(byte[] ServerIV1, byte[] ServerIV2, string P, string G, string ServerPublicKey) { Random Random = new Random(); int PAD_LEN = 11; int _junk_len = 12; string tqs = "TQServer"; MemoryStream ms = new MemoryStream(); byte[] pad = new byte[PAD_LEN]; Random.NextBytes(pad); byte[] junk = new byte[_junk_len]; Random.NextBytes(junk); int size = 47 + P.Length + G.Length + ServerPublicKey.Length + 12 + 8 + 8; BinaryWriter bw = new BinaryWriter(ms); bw.Write(pad); bw.Write(size - PAD_LEN); bw.Write((UInt32)_junk_len); bw.Write(junk); bw.Write((UInt32)ServerIV2.Length); bw.Write(ServerIV2); bw.Write((UInt32)ServerIV1.Length); bw.Write(ServerIV1); bw.Write((UInt32)P.ToCharArray().Length); foreach (char fP in P.ToCharArray()) { bw.BaseStream.WriteByte((byte)fP); } bw.Write((UInt32)G.ToCharArray().Length); foreach (char fG in G.ToCharArray()) { bw.BaseStream.WriteByte((byte)fG); } bw.Write((UInt32)ServerPublicKey.ToCharArray().Length); foreach (char SPK in ServerPublicKey.ToCharArray()) { bw.BaseStream.WriteByte((byte)SPK); } foreach (char tq in tqs.ToCharArray()) { bw.BaseStream.WriteByte((byte)tq); } byte[] Packet = new byte[ms.Length]; Packet = ms.ToArray(); ms.Close(); return Packet; } } } } you are using this code , right?
-
When setting up a private service for the first time, it is best to ensure that your client is the official original client. This way, you don't have to encounter DHKey exchange failures due to client issues. If you are using someone else's client, please solve the problem I mentioned first, and there is a high probability that you will be able to resolve it. For example, if you use the 5619 client, you don't necessarily need 5619. You can use any version between 5600-5930, and the difference between them won't be significant
-
You explained it very clearly, I hope it's true. I am an amateur C # enthusiast who has developed many private servers in China using Spirted's Comet source and some open-source sources. My strengths are basic business development and testing, feedback, and bug fixing. I have some experience in disassembly, but not much. Hope to have the opportunity to participate
-
So, are you saying that you will invest in this open-source project and develop it for everyone to use for free? Are you God~ My question is what can I gain from participating in this project? Just the joy of coding? Childhood memories? It still has monetary rewards. If it has monetary rewards, who will pay for this expense? If it has monetary rewards, would it still open source? Sorry, I have seen too many of these things before, and I am still very sensitive to them.
-
Your confusion is also my confusion. I don't believe in this kind of thing. People are all profit driven animals. This approach reminds me of pro4ever on the eliteppers forum.
-
MapItemIcon - Icons on ground not showing
kennylovecode replied to soulfly's topic in Conquer Online
You can write an absolute value of 130005 at the packet when debugging and building it, and see if the client displays it. -
MapItemIcon - Icons on ground not showing
kennylovecode replied to soulfly's topic in Conquer Online
I couldn't find what you called in my 6609 version ANI file Any data related to 40130005 So the question is whether you have used clients that have been modified by others, and whether you have aligned the data on the server with the file configuration on the client? -
Are you looking for free labor?
-
I am trapped in a logical loophole that has not been resolved yet. 1. I use a script to determine the number of monsters in the map when triggering monster kills. When determining the number of monsters, I used a copy of the monster object in the map, which may have some data delay. For thread safety, I did this. 3. The current problem is that when the monster is cleaned up at once and this script is triggered multiple times, the monster's IsAlive property in the replica data still seems to be true, which causes my next script statement to not be executed. How should I handle such issues? Regarding the issue of secure synchronization of multi-threaded data.
-
It works, but the logical order of the business code must be correct. I debugged for a long time because of the wrong order.
-
-
It is obvious that it is not very suitable because of the pre role model relationship. Make this effect look foolish...
-
MsgData msg = new MsgData (); MsgData msg = new MsgData(); msg.Identity = user.Id; msg.Action = 104; msg.Data = 1000000; msg.Details = 0; user.Send(msg); This data packet can modify the pre mask of the current map to achieve a dark like effect. But it cannot gradually darken and then gradually darken. Next, I will try sending some ROLE-FECT through StringPacket as you mentioned, hoping it will be fun.
-
The second problem has also been solved, it's really amazing. Every time I post on this forum, it always brings me inspiration to solve the problem. Actually, I should not add an invisible state with a value of 12, but rather a partially invisible state with a value of 23.