1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

1.2.6 (1.3.4) Баг с надписями Жена\Муж

Тема в разделе 'PW Вопросник', создана пользователем greser, 7 июл 2017.

  1. TopicStarter Overlay

    greser Пользователи

    Сообщения:
    16
    Лайки:
    0
    Пол:
    Мужской
    Репутация:
    0
    Страна:
    Ukraine Ukraine
    Пропали надписи над персами Муж\Жена, кто-то сталкивался с подобным багом на 1.3.6?
  2. ГрУбОсТь Пользователи

    Сообщения:
    125
    Лайки:
    43
    Пол:
    Мужской
    Репутация:
    2
    Страна:
    Ukraine Ukraine
    Давно не играл на 1.3.6, но если не ошибаюсь надо или выйти сразу после свадьбы и не заходить 30 мин или не выходить из игры 30 мин паре персов, решение со стороны игрока, лучше бы взял какую то 1.4.+ и срезал то что не нравится. Я сам с 1.3.6 не возился
  3. TopicStarter Overlay

    greser Пользователи

    Сообщения:
    16
    Лайки:
    0
    Пол:
    Мужской
    Репутация:
    0
    Страна:
    Ukraine Ukraine
    Слышал такое уже, но звучит дико, что это нельзя пофиксить, а игрокам придется заниматься подобным)
  4. Homriel Пользователи

    Сообщения:
    144
    Лайки:
    42
    Пол:
    Мужской
    Репутация:
    -2
    Команда:
    Unnamed
    Страна:
    Russian Federation Russian Federation
    После свадьбы надо выходить)
    Тыщ нравится это.
  5. nikes Программист Пользователи

    Сообщения:
    90
    Лайки:
    62
    Пол:
    Мужской
    Репутация:
    -2
    Команда:
    -=hunters=-
    На самом деле фикс есть, но это отлов пакетов на сколько я помню или чтения лога, и отправка пакета на сервак, таким еще Арх занимался, и где то у меня даже валялся этот костыль.
    --- добавлено: 8 июл 2017 в 13:11 ---
    Вот, держи, я думаю уже некто не будет против.

    Код:
    using System;
    using System.Net.Sockets;
    using System.Runtime.CompilerServices;
    using System.Threading;
    
    namespace coord
    {
        class Program
        {
    
            public static void Sender(byte[] send, out byte[] recivd, out int bytescount_out, out int bytescount_in, out int errcode)
            {
                string str = "127.0.0.1";
                int i = 29400;
                errcode = 0;
                byte[] bs = new byte[20000];
                TcpClient tcpClient = new TcpClient();
                Console.WriteLine("\r\nConnecting to server...");
                try
                {
                    tcpClient.Connect(str, i);
                }
                catch
                {
                    Console.WriteLine(String.Concat(new object[] { "Cannot connect to remote host: ", str, " port:", i }));
                    Console.WriteLine("Press \'Enter\'...");
                    Console.ReadLine();
                    tcpClient.Close();
                    errcode = 1;
                }
                Socket socket = tcpClient.Client;
                socket.Send(send);
                bytescount_out = (int)send.Length;
                bytescount_in = socket.Receive(bs);
                recivd = bs;
                socket.Close();
                tcpClient.Close();
            }
    
            public static string DecToHex(int dec)
            {
                return Convert.ToString(dec, 16).Replace("-", "");
            }
    
            public static void PrintHexBytes(byte[] bytes, int bytescount)
            {
                bool flag = (bytes != null) ? ((int)bytes.Length == 0 == false) : false;
                if (!flag)
                {
                    Console.WriteLine("");
                    goto IL_0046;
                }
                int i = 0;
                do
                {
                    Console.Write("{0:X2} ", bytes[i]);
                    i++;
                IL_003d:
                    flag = i < bytescount;
                }
                while (flag);
            IL_0046:
                return;
            }
    
            public static void BAToSingle(byte[] bytes, int index)
            {
                float f = BitConverter.ToSingle(bytes, index);
                Console.WriteLine(BitConverter.ToString(bytes, index, 4), f);
            }
    
            private static void Main(string[] args)
            {
                byte[] bs1;
    
                int k1;
    
                int i1 = 0;
                int j1 = 0;
                bool flag = (int)args.Length == 0 == false;
                if (!flag)
                {
                    Console.WriteLine("Please enter rid1 and rid2.");
                    Console.WriteLine("Usage: rid1 rid2");
                    Console.WriteLine("Press \'Enter\'...");
                    Console.ReadLine();
                }
                int i2 = Convert.ToInt32(args[0]);
                int j2 = Convert.ToInt32(args[1]);
                byte[] bs2 = new byte[] { 139, 197, 8, 128, 0, 0, 1, 0, 0, 0, 0 };
                byte[] bs3 = BitConverter.GetBytes(i2);
                byte[] bs4 = BitConverter.GetBytes(j2);
                Array.Reverse(bs3);
                Array.Reverse(bs4);
                Array.Copy(bs3, 0, bs2, 7, 4);
                Sender(bs2, out bs1, out j1, out i1, out k1);
                object[] locals = new object[] { "GRoleBase ", i2, ", bytes send: ", j1 };
                Console.WriteLine(String.Format(String.Concat(locals), new object[0]));
                Console.WriteLine(String.Format("{0} bytes recived", i1));
                int k2 = i1;
                byte[] bs6 = new byte[4];
                Array.Copy(bs1, k2 - 12, bs6, 0, 4);
                Array.Reverse(bs6);
                int i3 = BitConverter.ToInt32(bs6, 0);
                locals = new object[] { "Current spouse id ", i2, ": ", i3 };
                Console.WriteLine(String.Concat(locals));
                byte[] bs13 = new byte[] { 196 };
                byte[] bs7 = bs13;
                bs13 = new byte[] { 128 };
                byte[] bs8 = bs13;
                bs13 = new byte[] { 75 };
                byte[] bs9 = bs13;
                bs13 = new byte[4];
                byte[] bs10 = bs13;
                Array.Copy(bs7, 0, bs1, 1, 1);
                Array.Copy(bs8, 0, bs1, 4, 1);
                Array.Copy(bs9, 0, bs1, 7, 1);
                flag = i3 == j2 == false;
                if (!flag)
                {
                    locals = new object[] { "Clear spouse ", i2, " and ", j2 };
                    Console.WriteLine(String.Concat(locals));
                    Array.Copy(bs3, 0, bs1, 8, 4);
                    Array.Copy(bs10, 0, bs1, k2 - 12, 4);
                }
                else
                {
                    Array.Copy(bs3, 0, bs1, 8, 4);
                    Array.Copy(bs4, 0, bs1, k2 - 12, 4);
                    Console.WriteLine(String.Concat("PutSpouse ", i2));
                }
                Sender(bs1, out bs1, out j1, out i1, out k1);
                Thread.Sleep(1000);
                Array.Copy(bs4, 0, bs2, 7, 4);
                Sender(bs2, out bs1, out j1, out i1, out k1);
                locals = new object[] { "GRoleBase ", j2, ", bytes send: ", j1 };
                Console.WriteLine(String.Format(String.Concat(locals), new object[0]));
                Console.WriteLine(String.Format("{0} bytes recived", i1));
                int j3 = i1;
                byte[] bs12 = new byte[4];
                Array.Copy(bs1, j3 - 12, bs12, 0, 4);
                Array.Reverse(bs12);
                int k3 = BitConverter.ToInt32(bs12, 0);
                locals = new object[] { "Current spouse id ", j2, ": ", k3 };
                Console.WriteLine(String.Concat(locals));
                Array.Copy(bs7, 0, bs1, 1, 1);
                Array.Copy(bs8, 0, bs1, 4, 1);
                Array.Copy(bs9, 0, bs1, 7, 1);
                flag = k3 == i2 == false;
                if (!flag)
                {
                    locals = new object[] { "Clear spouse ", j2, " and ", i2 };
                    Console.WriteLine(String.Concat(locals));
                    Array.Copy(bs4, 0, bs1, 8, 4);
                    Array.Copy(bs10, 0, bs1, j3 - 12, 4);
                }
                else
                {
                    Array.Copy(bs4, 0, bs1, 8, 4);
                    Array.Copy(bs3, 0, bs1, j3 - 12, 4);
                    Console.WriteLine(String.Concat("PutSpouse ", j2));
                }
                Sender(bs1, out bs1, out j1, out i1, out k1);
            }
        }
    
    }
    Последнее редактирование модератором: 16 июл 2017
    greser и ГрУбОсТь нравится это.
  6. TopicStarter Overlay

    greser Пользователи

    Сообщения:
    16
    Лайки:
    0
    Пол:
    Мужской
    Репутация:
    0
    Страна:
    Ukraine Ukraine
    спасибо, будем пробовать)
  7. b3nz1n Art Пользователи

    Сообщения:
    160
    Лайки:
    110
    Репутация:
    -3
    В 1.3.1 это фикшено
Черновик сохранён Черновик удалён

Поделиться этой страницей