tmgamebot.narod.ru - бот для игры Техномагия(tmgame.ru)

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



Детонация 2. Ошибка.

Сообщений 1 страница 13 из 13

1

Бот работал отлично, работал 3 дня без сбоев, но вот пришло время качать Детонацию, и сразу же выявился очень неприятный глюк, как с ним бороться не знаю=( Когда есть камни, он нормально использует заклинание, когда камней нету и красных и зелёных, он нормально разбирает поле, а вот если 1-их камней на заклинание хватает, а 2-ых нет он пытается использовать заклинание и у него нечего не получается, дисквалификация=( Хотел найти где встроенные ИИ редактируются, но не нашёл. Может быть знаете как решить эту проблему? или готовы выложить свой ИИ на тупой кач этим заклинанием?

0

2

Ещё определил то что, если красных камней хватает, а зелёных нет бот начинает тупить, а если зелёных хватает, а красных нет, то он нормально раскладывает поле в ручную без магии.
Очень сильно хотелось бы точно такой же скрипт, только рабочий=)

Отредактировано Axz (2009-06-14 14:39:24)

0

3

Вот код встроенной детонации. Адаптировать под скрипт не сложно, да и выйдет короче.

Код:
   Point[] BotAIDitka()
        {
            Point[] p = new Point[2];
            
                int creestCountR = Convert.ToInt32(tbScill1StownR.Text);
            int creestCountB = Convert.ToInt32(tbScill1StownB.Text);
            int creestCountG = Convert.ToInt32(tbScill1StownG.Text);

          
           int lifeMinMyCreet = (int)(100 / 100 * 50);
          
       
            Otchet currentViborOtchet = new Otchet();
            if (MainOtchet.subOtchets.Count != 0)
            {
                if (StownRMe > StownGMe)
                {
                    MainOtchet.subOtchets.Sort(new OtchetListComparerG(SortOrder.Descending));
                }
                else
                {
                    MainOtchet.subOtchets.Sort(new OtchetListComparerR(SortOrder.Descending));
                }


                if (StownRMe >= creestCountR & StownBMe >= creestCountB & StownGMe >= creestCountG)
                {
                    p[1] = p[0] = ((Otchet)MainOtchet.subOtchets[0]).p1;

                    lbCell11.Text = Convert.ToString(p[0].X);
                    lbCell12.Text = Convert.ToString(p[0].Y);

                    lbCell21.Text = Convert.ToString(p[1].X);
                    lbCell22.Text = Convert.ToString(p[1].Y);

                    if (p[0].X < 10)
                    {

                        p[0].X = 240 + p[0].X * (325 / 6) + (325 / 12);
                        p[0].Y = 20 + p[0].Y * (325 / 6) + (325 / 12);
                    }

                    return p;
                }

                for (int i = 0; i < MainOtchet.subOtchets.Count; i++)
                {
                    Otchet tempOtchet;
                    tempOtchet = (Otchet)MainOtchet.subOtchets[i];
                    if (tempOtchet.DeadM == 0)
                        if (tempOtchet.combo6 > 0 | tempOtchet.combo5 > 0 | tempOtchet.combo4 > 0)
                        {
                            currentViborOtchet = (Otchet)MainOtchet.subOtchets[i];
                            p[0] = currentViborOtchet.p1;
                            p[1] = currentViborOtchet.p2;
                            if (tempOtchet.result == Result.Combo4)
                                break;
                        }
                        else
                            if (tempOtchet.result == Result.EndHod & (currentViborOtchet.combo6 == 0 & currentViborOtchet.combo5 == 0 & currentViborOtchet.combo4 == 0))
                            {
                                currentViborOtchet = (Otchet)MainOtchet.subOtchets[i];
                                p[0] = currentViborOtchet.p1;
                                p[1] = currentViborOtchet.p2;
                                break;
                            }



                    //MainOtchet.subOtchets.Sort(new MainOtchet.subOtchetsComparer(SortOrder.Descending));
                    if ((i == MainOtchet.subOtchets.Count - 1 & p[0] == p[1] & p[0] == new Point()) & (StownGMe < 84 & StownRMe < 84))
                    {
                        //if (StownRMe - 3 >= 0 & StownGMe - 3 >= 0 & StownBMe - 3 >= 0)
                        //{
                        //    p[0] = p[1] = puhaMesto;
                        //}
                        //else
                        {
                            currentViborOtchet = (Otchet)MainOtchet.subOtchets[0];
                            p[0] = currentViborOtchet.p1;
                            p[1] = currentViborOtchet.p2;
                        }
                    }

                }

                if (/*LifeMe > lifeMinMy &*/ currentViborOtchet.combo4 == 0 & currentViborOtchet.combo5 == 0 & currentViborOtchet.combo6 == 0)
                {
                    if (StownRMe > StownGMe)
                    {
                        MainOtchet.subOtchets.Sort(new OtchetListComparerG(SortOrder.Descending));
                    }
                    else
                    {
                        MainOtchet.subOtchets.Sort(new OtchetListComparerR(SortOrder.Descending));
                    }

                    for (int i = 0; i < MainOtchet.subOtchets.Count; i++)
                    {
                        Otchet tempOtchet;
                        tempOtchet = (Otchet)MainOtchet.subOtchets[i];
                        if (tempOtchet.DeadM == 0)
                        {
                            currentViborOtchet = (Otchet)MainOtchet.subOtchets[i];
                            p[0] = currentViborOtchet.p1;
                            p[1] = currentViborOtchet.p2;
                            break;
                        }
                    }
                }

                if (LifeMe < lifeMinMyCreet)
                {
                    MainOtchet.subOtchets.Sort(new OtchetListComparerD(SortOrder.Descending));

                    currentViborOtchet = (Otchet)MainOtchet.subOtchets[0];
                    p[0] = currentViborOtchet.p1;
                    p[1] = currentViborOtchet.p2;


                    if (currentViborOtchet.DeadM < 5)
                    {
                        if (StownRMe - 3 >= 0 & StownGMe - 3 >= 0 & StownBMe - 3 >= 0)
                        {
                            p[0] = p[1] = puhaMesto;
                        }
                    }
                }

                lbCell11.Text = Convert.ToString(p[0].X);
                lbCell12.Text = Convert.ToString(p[0].Y);

                lbCell21.Text = Convert.ToString(p[1].X);
                lbCell22.Text = Convert.ToString(p[1].Y);

                if (p[0].X < 10)
                {
                    p[0].X = 240 + p[0].X * (325 / 6) + (325 / 12);
                    p[0].Y = 20 + p[0].Y * (325 / 6) + (325 / 12);

                    p[1].X = 240 + p[1].X * (325 / 6) + (325 / 12);
                    p[1].Y = 20 + p[1].Y * (325 / 6) + (325 / 12);
                }
            }

            return p;


        }

0

4

Ай-ай.. тут Си=(( йа его не знаю..
Может кто уже сталкивался с такой проблемой и есть уже готовый ИИ?

Отредактировано Axz (2009-06-15 09:13:36)

0

5

ну напиши ты скрипт на тупое тыкание в одну точку. это несложно.

0

6

Камней надо оч много, что бы тупо тыкать в 1 точку, встроенный то умный, но с небольшим косяком...
Я думал кто-нибудь уже с этим сталкивался и исправил уже=(

0

7

ммм... прокачал много мультов. Дитка качается идеально.
Проблем со встроеным скриптом не наблюдал. Может проблема в другом? А дитка просто попала в эти крит. моменты?
Камни на использование заклинания правильно выставил в боте?
Косяк может выйти, если ты установил дитку, допустим 1 лвла, апнул перс уровень, ты апнул следующий уровень дитки, а колличество необходимых камней не изменил в боте, вот он и тычет.
Проверь все как следует.
Повторюсь. У меня проблем не было, а мультов штук 30)))))

0

8

Не не, всё проверил, симптомы не изменилсь, когда красных камней больше, а зелёных не хватает.. всё бот начинает тупить и пропускает ходы.не верите проверьте сами)

0

9

тупит, есть такое дело, лечил тыканьем...

0

10

Может быть на помощь придёт создатель бота?)

0

11

TMGameBot реши пожалуйста проблему с диткой

0

12

POFF написал(а):

TMGameBot реши пожалуйста проблему с диткой

сильно его разглядывать было лень, стер какой то участок(вроде из за него проблема) жди обновленную версию).

0

13

Спасибо, жду с нетерпением.

0