منتدي اكواد

منتدي اكواد (https://code.vpscairo.com/index.php)
-   تطوير سيرفرات كونكر (https://code.vpscairo.com/forumdisplay.php?f=11)
-   -   طريقه تشغيل السورس البروتو New Sourc 3d Porto (https://code.vpscairo.com/showthread.php?t=2705)

Mostafa Shalby 2019-10-29 01:36 PM

طريقه تشغيل السورس البروتو New Sourc 3d Porto
 
طبعا الموضوع باين من الاسم
ولل محملش السورس
عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع
أول حاجه هتخش ع
Program.cs
ابحث عن
كود PHP:

Protection.LoaderProgram.Init(); 

امسحو
ابحث عن
كود PHP:

#region GameServer|AuthServer 

و بدله كله ب ده
كود PHP:

#region GameServer|AuthServer
        
private static void GameServer_OnClientReceive(byte[] bufferint lengthClientWrapper obj)
        {
            if (
obj.Connector == null)
            {
                
obj.Disconnect();
            }
            else
            {
                
GameState connector obj.Connector as GameState;
                if (
connector.Exchange)
                {
                    
connector.Exchange false;
                    
connector.Action = (byte)1;
                    
EgyXos.Network.Cryptography.GameCryptography gameCryptography = new EgyXos.Network.Cryptography.GameCryptography(Encoding.Default.GetBytes(Constants.GameCryptographyKey));
                    
byte[] numArray = new byte[length];
                    Array.
Copy((Array)buffer, (Array)numArraylength);
                    
gameCryptography.Decrypt(numArraylength);
                    
bool flag false;
                    
int offset 0;
                    for (
int x 080x++)
                    {
                        if (
BitConverter.ToInt32(numArrayx) == 128)
                        {
                            if (
length >= 205)
                            {
                                
offset x;
                                
flag true;
                                
connector.Cryptography.Decrypt(bufferlength 40);
                            }
                            else
                            {
                                
offset x;
                                
connector.Cryptography.Decrypt(bufferlength);
                            }
                        }
                    }
                    
int int32 BitConverter.ToInt32(bufferoffset);
                    
int index1 offset 4;
                    if (
int32 != 128)
                    {
                        
connector.Disconnect(true);
                    }
                    else
                    {
                        
byte[] bytes = new byte[128];
                        
int index2 0;
                        while (
index2 int32)
                        {
                            
bytes[index2] = buffer[index1];
                            ++
index2;
                            ++
index1;
                        }
                        
string PublicKey Encoding.Default.GetString(bytes);
                        
connector.Cryptography connector.DHKeyExchange.HandleClientKeyPacket(PublicKeyconnector.Cryptography);
                        if (!
flag)
                            return;
                        
byte[] buffer1 = new byte[40];
                        
Buffer.BlockCopy((Array)bufferlength 40, (Array)buffer1040);
                        
processData(buffer140connector);
                    }
                }
                else
                    
processData(bufferlengthconnector);
            }
        }
        private static 
void processData(byte[] bufferint lengthClient.GameState Client)
        {
            
Client.Cryptography.Decrypt(bufferlength);
            
Client.Queue.Enqueue(bufferlength);
            if (
Client.Queue.CurrentLength 1224)
            {
                
Console.WriteLine("[Disconnect]Reason:The packet size is too big. " Client.Queue.CurrentLength);
                
Client.Disconnect();
                return;
            }
            while (
Client.Queue.CanDequeue())
            {
                
byte[] data Client.Queue.Dequeue();
                
Network.PacketHandler.HandlePacket(dataClient);
            }
        }
        static 
void GameServer_OnClientConnect(ClientWrapper obj)
        {
            
Client.GameState client = new Client.GameState(obj);
            
client.Send(client.DHKeyExchange.CreateServerKeyPacket());
            
obj.Connector client;
        }
        static 
void GameServer_OnClientDisconnect(ClientWrapper obj)
        {
            if (
obj.Connector != null)
                (
obj.Connector as Client.GameState).Disconnect();
            else
                
obj.Disconnect();
        }

        public static 
void AuthServer_OnClientReceive(byte[] bufferint lengthClientWrapper arg3)
        {
            var 
player arg3.Connector as Client.AuthClient;
            
AuthClient authClient arg3.Connector as AuthClient;
            
player.Cryptographer.Decrypt(bufferlength);
            
player.Queue.Enqueue(bufferlength);
            while (
player.Queue.CanDequeue())
            {
                
byte[] packet player.Queue.Dequeue();
                
ushort len BitConverter.ToUInt16(packet0);
                if (
len == 312)
                {
                    
player.Info = new EgyXos.Network.AuthPackets.Authentication();
                    
player.Info.Deserialize(packet);
                    
player.Account = new AccountTable(player.Info.Username);
                    if (!
LoginBruteForce.AcceptJoin(arg3.IP))
                    {
                        
Console.WriteLine(string.Concat(new string[] { "Client > "player.Info.Username"was blocked address"arg3.IP"!" }));
                        
arg3.Disconnect();
                        break;
                    }
                    
Forward Fw = new Forward();
                    
//Console.WriteLine("UserName: {0} Password: {1} ServerName: {2} Online", player.Info.Username, player.Info.Password, player.Info.Server);
                    
if (player.Account.Username == player.Info.Username && player.Account.exists)
                    {
                        if (
player.Account.Password == player.Info.Password && player.Account.exists)
                        {
                            
Fw.Identifier player.Account.GenerateKey();
                            
Kernel.AwaitingPool[Fw.Identifier] = player.Account;
                            
Fw.IP GameIP;
                            
Fw.Port GamePort;
                        }
                        else
                        {
                            
LoginBruteForce.ClientRegistred(arg3.IP);
                            
Fw.Type Forward.ForwardType.InvalidInfo;
                        }
                    }
                    else
                    {
                        
Fw.Type Forward.ForwardType.WrongAccount;
                    }
                    
player.Send(Fw);
                }
            }
        }


        static 
void AuthServer_OnClientDisconnect(ClientWrapper obj)
        {
            
obj.Disconnect();
        }
        static 
void AuthServer_OnClientConnect(ClientWrapper obj)
        {
            
Client.AuthClient authState;
            
obj.Connector = (authState = new Client.AuthClient(obj));
            
authState.Cryptographer = new Network.Cryptography.AuthCryptography();
            
Network.AuthPackets.PasswordCryptographySeed pcs = new PasswordCryptographySeed();
            
pcs.Seed Kernel.Random.Next();
            
authState.PasswordSeed pcs.Seed;
            
authState.Send(pcs);
           
// Protection.LoaderProgram.CLientsPass.Clear();////////
            //Protection.LoaderProgram.CLientsPass.Add(authState.PasswordSeed, "");
        
}
        
internal static Client.GameState FindClient(string name)
        {
            return 
GamePool.FirstOrDefault(=> p.Entity.LoweredName == name);
        }
        
#endregion 

وبعد كدا هتبحث عن
كود PHP:

 public GameState(ClientWrapper socket

و بدله ب ده
كود PHP:

public GameState(ClientWrapper socket)
        {
            
Fake socket == null;
            
Queue = new ConcurrentPacketQueue();
            
PacketFilter = new PacketFilter() { { 1001010 }, { 10005}, { 2064}, { 2032}, { 1027} };
            
Attackable false;
            
Action 0;
            
_socket socket;

            
ExtraStatus = new System.Collections.Concurrent.ConcurrentDictionary<Role.Instance.RoleStatus.StatuTypRole.Instance.RoleStatus>();
           
// Cryptography = new GameCryptography(Program.Encoding.GetBytes(AuthServer.GameLogginKeyServer));
            
Cryptography = new GameCryptography(Program.Encoding.GetBytes(Constants.GameCryptographyKey));

            
DHKeyExchange = new Network.GamePackets.DHKeyExchange.ServerKeyExchange();
            
//SpiritBeadQ = new Game.Features.SpiritBeadQuest(this);
            
ChiPowers = new List<ChiPowerStructure>();
            
Retretead_ChiPowers = new ChiPowerStructure[4];
            
//JiangPowers = new List<JiangPowerStructure>();
        


كلمة شكر تكفي :D

محمد ياسر 2019-10-29 02:45 PM

رد: طريقه تشغيل السورس البروتو New Sourc 3d Porto
 
عاش استمر

ElSaher 2019-10-29 02:57 PM

رد: طريقه تشغيل السورس البروتو New Sourc 3d Porto
 
جيد جدن

Mostafa Shalby 2019-10-29 03:54 PM

رد: طريقه تشغيل السورس البروتو New Sourc 3d Porto
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Hazem (المشاركة 19875)
عاش استمر

تسلم

Mostafa Shalby 2019-10-29 03:55 PM

رد: طريقه تشغيل السورس البروتو New Sourc 3d Porto
 
اقتباس:

المشاركة الأصلية كتبت بواسطة Mohamed X Black (المشاركة 19876)
جيد جدن

شكرا

ALz3em 2019-10-29 09:47 PM

رد: طريقه تشغيل السورس البروتو New Sourc 3d Porto
 
عاش تسلم

Adel Abd El Hay 2019-11-06 03:58 PM

رد: طريقه تشغيل السورس البروتو New Sourc 3d Porto
 
tray

Medos 2019-11-06 11:15 PM

رد: طريقه تشغيل السورس البروتو New Sourc 3d Porto
 
طيب انا محتاج حل مشكله الاسم وى البسورد لازم يكونو زى بعض عايز احمل البرنامج علىشان اعرف اخلى الاسم غير البسورد

Adel Abd El Hay 2019-11-07 03:47 PM

رد: طريقه تشغيل السورس البروتو New Sourc 3d Porto
 
طيب انا عدلت ع السورس زي ما انتا قولت بالظبط لاكن بيجيلي الايرور دي ياريت تقولي ايه الحل ؟
عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع
عفواً لايمكن عرض الروابط إلا بعد الرد على الموضوع

3abqrino 2019-11-08 06:28 PM

رد: طريقه تشغيل السورس البروتو New Sourc 3d Porto
 
عاااااش


الساعة الآن 10:55 AM

مرحبا بكم في منتدي اكواد لتطوير الالعاب