Jump to content

[Share] Auto-Enchant 100% working and more!


Recommended Posts

Posted

hi all i test it and works for me fine in l2Inc .

works fine for S grade weapons and armor but when i try A grade items i am in trouble. The script does not know when to stop enchant or start enchant from the beginning. I think there is something wrong with the crystals grade. i would really apreciate if someone can help me with what i must change to make the script work with a grade items.

Thanks in advance

Posted

The script sees every weapon as +0, no matter what + it is. So if you want to enchant a weapon from +12 to +16 then you would want to put "4" as the enchant amount.

 

This was covered in the first post. Please read it.

 

I got certain issues when I try that out. Haven't really gone into the script, just read it through fast. It's working, just not reporting correctly after I overwrite the scripts with different strings. Could also be connected to buying new scrolls. Somehow even after the weapon breaks, it reports as if it continued enchanting and claims it was successful even if it broke. Does it's job though, just dunno why sometimes it reports correctly and sometimes not. Here:

problemw.th.png

Posted

Thanks for the quick reply, it happens regardless of lags however. Usually after I modify and overwrite a script within an existing session. It keeps trying to enchant an non-existent item despite the fact that the item had already crashed earlier on. It's not that it takes a bit longer, just that it fails to recognize the attempt as a fail despite the crystals obtained. Therefore, it reports of a x/x successfully enchanted items.

 

There must be a reason, doesn't really change anything in the actual enchanting process, more of a log flaw.

Guest
This topic is now closed to further replies.



  • Posts

    • I open the l2j server and see 1. XOR->NewCrypt.encXORPass(raw, offset, size, Rnd.nextInt()); ---> xor everything is clear 2. _staticCrypt.crypt(raw, offset, size); -----> private void encryptBlock(byte[] src, int srcIndex, byte[] dst, int dstIndex) { int xl = bytesTo32bits(src, srcIndex); int xr = bytesTo32bits(src, srcIndex + 4); xl ^= P[0]; for (int i = 1; i < ROUNDS; i += 2) { xr ^= func(xl) ^ P[i]; xl ^= func(xr) ^ P[i + 1]; } xr ^= P[ROUNDS + 1]; bits32ToBytes(xr, dst, dstIndex); bits32ToBytes(xl, dst, dstIndex + 4); }   I scroll down the code and see this code   ----->>> /**      * Decrypt the given input starting at the given offset and place the result in the provided buffer starting at the given offset. The input will be an exact multiple of our blocksize.      * @param src      * @param srcIndex      * @param dst      * @param dstIndex      */     private void decryptBlock(byte[] src, int srcIndex, byte[] dst, int dstIndex)     {         int xl = bytesTo32bits(src, srcIndex);         int xr = bytesTo32bits(src, srcIndex + 4);         xl ^= P[ROUNDS + 1];         for (int i = ROUNDS; i > 0; i -= 2)         {             xr ^= func(xl) ^ P[i];             xl ^= func(xr) ^ P[i - 1];         }         xr ^= P[0];         bits32ToBytes(xr, dst, dstIndex);         bits32ToBytes(xl, dst, dstIndex + 4);     }   ===================================================   I'm transferring this code to C# private void decryptBlock(byte[] src, uint srcIndex, byte[] dst, uint dstIndex)    {        uint xl = BytesTo32bits(src, srcIndex);        uint xr = BytesTo32bits(src, srcIndex + 4);        xl ^= P[ROUNDS + 1];        for (int i = ROUNDS; i > 0; i -= 2)        {            xr ^= F(xl) ^ P[i];            xl ^= F(xr) ^ P[i - 1];        }        xr ^= P[0];        Bits32ToBytes(xr, dst, dstIndex);        Bits32ToBytes(xl, dst, dstIndex + 4);    }   And in c# I first do decryptBlock and then XOR and everything works, I get the package and the first 2 bytes have already been removed as far as I remember   This only works for the login server for the game server, I think it’s not much different  
    • Ask him what you know, and what I know hahaha.
    • https://prnt.sc/2G_hOHfUIGLM   not sure what you mean Teddy boi  
    • Hello first of all thank you for your prompt response and the time you are taking to read this and answer, I am aware that not everyone takes the time and for that I thank you. On the other hand the specific problem is when decrypting this package and being able to parse it,  In some places it says that it is only encrypted with xor, in others that only a static blowfish is used and in others that both are used in the order of xor and then blowfish, this is the problem in spite of being able to see the encryption mechanisms of the servers, I can not put together the function that reverses this encryption to obtain the keys sent by the init packet.   Thanks for your time, hopefully the rest can contribute something because it is a super useful module to extend any functionality to the client and I will publish it in an opensource way when it is finished.
  • Topics

×
×
  • Create New...