المساعد الشخصي الرقمي

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


Mostafa Shalby
2019-10-29, 01:36 PM
طبعا الموضوع باين من الاسم
ولل محملش السورس
[منقول للافادة] New Sourc 3d Porto (عفواً لايمكن عرض الروابط في الإرشيف)
أول حاجه هتخش ع
Program.cs
ابحث عن
Protection.LoaderProgram.Init();
امسحو
ابحث عن
#region GameServer|AuthServer
و بدله كله ب ده
#region GameServer|AuthServer
private static void GameServer_OnClientReceive(byte[] buffer, int length, ClientWrapper 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(Encod ing.Default.GetBytes(Constants.GameCryptographyKey ));
byte[] numArray = new byte[length];
Array.Copy((Array)buffer, (Array)numArray, length);
gameCryptography.Decrypt(numArray, length);
bool flag = false;
int offset = 0;
for (int x = 0; x < 80; x++)
{
if (BitConverter.ToInt32(numArray, x) == 128)
{
if (length >= 205)
{
offset = x;
flag = true;
connector.Cryptography.Decrypt(buffer, length - 40);
}
else
{
offset = x;
connector.Cryptography.Decrypt(buffer, length);
}
}
}
int int32 = BitConverter.ToInt32(buffer, offset);
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(Publ icKey, connector.Cryptography);
if (!flag)
return;
byte[] buffer1 = new byte[40];
Buffer.BlockCopy((Array)buffer, length - 40, (Array)buffer1, 0, 40);
processData(buffer1, 40, connector);
}
}
else
processData(buffer, length, connector);
}
}
private static void processData(byte[] buffer, int length, Client.GameState Client)
{
Client.Cryptography.Decrypt(buffer, length);
Client.Queue.Enqueue(buffer, length);
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(data, Client);
}
}
static void GameServer_OnClientConnect(ClientWrapper obj)
{
Client.GameState client = new Client.GameState(obj);
client.Send(client.DHKeyExchange.CreateServerKeyPa cket());
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[] buffer, int length, ClientWrapper arg3)
{
var player = arg3.Connector as Client.AuthClient;
AuthClient authClient = arg3.Connector as AuthClient;
player.Cryptographer.Decrypt(buffer, length);
player.Queue.Enqueue(buffer, length);
while (player.Queue.CanDequeue())
{
byte[] packet = player.Queue.Dequeue();
ushort len = BitConverter.ToUInt16(packet, 0);
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 => p.Entity.LoweredName == name);
}
#endregion
وبعد كدا هتبحث عن
public GameState(ClientWrapper socket)
و بدله ب ده
public GameState(ClientWrapper socket)
{
Fake = socket == null;
Queue = new ConcurrentPacketQueue();
PacketFilter = new PacketFilter() { { 10010, 10 }, { 10005, 7 }, { 2064, 4 }, { 2032, 3 }, { 1027, 2 } };
Attackable = false;
Action = 0;
_socket = socket;

ExtraStatus = new System.Collections.Concurrent.ConcurrentDictionary<Role.Instance.RoleStatus.StatuTyp, Role.Instance.RoleStatus>();
// Cryptography = new GameCryptography(Program.Encoding.GetBytes(AuthSer ver.GameLogginKeyServer));
Cryptography = new GameCryptography(Program.Encoding.GetBytes(Constan ts.GameCryptographyKey));

DHKeyExchange = new Network.GamePackets.DHKeyExchange.ServerKeyExchang e();
//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
عاش استمر

ElSaher
2019-10-29, 02:57 PM
جيد جدن

Mostafa Shalby
2019-10-29, 03:54 PM
عاش استمر

تسلم

Mostafa Shalby
2019-10-29, 03:55 PM
جيد جدن

شكرا

ALz3em
2019-10-29, 09:47 PM
عاش تسلم

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

Medos
2019-11-06, 11:15 PM
طيب انا محتاج حل مشكله الاسم وى البسورد لازم يكونو زى بعض عايز احمل البرنامج علىشان اعرف اخلى الاسم غير البسورد

Adel Abd El Hay
2019-11-07, 03:47 PM
طيب انا عدلت ع السورس زي ما انتا قولت بالظبط لاكن بيجيلي الايرور دي ياريت تقولي ايه الحل ؟
عفواً لايمكن عرض الروابط في الإرشيف
عفواً لايمكن عرض الروابط في الإرشيف

3abqrino
2019-11-08, 06:28 PM
عاااااش

stafyx
2019-11-14, 01:07 PM
الف شكر بالتوفيق

uncelsam
2020-03-03, 10:35 PM
3aaa4

sa3ed
2020-04-25, 07:40 PM
جميل

ahmedhamedd555e
2021-08-20, 05:40 AM
عاشش

etoa200
2021-08-20, 09:49 AM
جميل

Gamal Askr
2021-08-21, 07:00 PM
تسلم إيدك ياريت لينك الباتش وشكرا على المجهود الرائع

kingofkingdom12
2022-01-25, 09:52 AM
عااش اووي

Ahmed3bdElR2ouF
2023-09-11, 03:21 PM
تسلم ايدك <3

Muhammad
2024-08-28, 03:39 AM
تمام