Добро пожаловать на Arcom Tech! | |
На этом сайте вы
можете прочитать о моих текущих и архивных проектах, скачать ПО,
прочитать статьи про разработку различных программных решений. По сути, является хобби-сайтом, все что вы здесь увидите - упражнения для саморазвития в свободное от работы времени. ТЕКУЩИЙ КРУПНЫЙ ПРОЕКТ: Контроллеры серии ArCom - ARduino COMmander, модели T328 и 2560 - для использования в качестве основного ядра повседневных роботов, проектов автоматизации и систем умного дома. +++ ПРИЯТНОГО И ПОЛЕЗНОГО ВРЕМЯПРОВОЖДЕНИЯ НА МОЕМ САЙТЕ! +++ | Почта: V.Voronin voroninCKservice@yandex.ru |
//НОВОСТНАЯ ЛЕНТА САЙТА |
10.09.2021: СТАТЬИ - ПРОСТОЙ AI (Искусственный Интелект) ДЛЯ КОМПЬЮТЕРНЫХ ИГР | |
Вот и первая статья на сайте. Она будет посвящена примеру простейшего
искусственного интелекта в прототипе несложной игрушки. Суть игры. Есть два персонажа. Один ("Р") управляется игроком при помощи кнопок на форме, ИИ ("H") - искуственный игрок-конкурент. Поле игры - таблица TStringgrid - "лес", в котором растут деревья ("Т"), расположение которых каждый раз генерируется. Цель игры - срубить больше деревьев в лесу, чем оппонент, или выгнать его из леса, снизив его hp до нуля. Кнопка NEW очищает игровое поле и начинает все заново. Основная механика игры - проверка находящихся рядом ячеек. Например, при нажатии кнопки R (вправо) - проверяются условия:
Объект "дерево" находится ближе, и его ценность для ИИ выше, поэтому он пойдет вправо, а на следующей итерации выберет, какое дерево рубить. в данном случае: if (StringGrid1.Cells[x1,y1+1]='T') or (StringGrid1.Cells[x1,y1+1]='P') or (StringGrid1.Cells[x1,y1+2]='T') or (StringGrid1.Cells[x1,y1+2]='P') or (StringGrid1.Cells[x1,y1+3]='T') or (StringGrid1.Cells[x1,y1+3]='P') then sel:=0 else if (StringGrid1.Cells[x1,y1-1]='T') or (StringGrid1.Cells[x1,y1-1]='P') or (StringGrid1.Cells[x1,y1-2]='T') or (StringGrid1.Cells[x1,y1-2]='P') or (StringGrid1.Cells[x1,y1-3]='T') or (StringGrid1.Cells[x1,y1-3]='P') then sel:=1 else if (StringGrid1.Cells[x1+1,y1]='T') or (StringGrid1.Cells[x1+1,y1]='P') or (StringGrid1.Cells[x1+2,y1]='T') or (StringGrid1.Cells[x1+2,y1]='P') or (StringGrid1.Cells[x1+3,y1]='T') or (StringGrid1.Cells[x1+3,y1]='P') then sel:=2 else if (StringGrid1.Cells[x1-1,y1]='T') or (StringGrid1.Cells[x1-1,y1]='P') or (StringGrid1.Cells[x1-2,y1]='T') or (StringGrid1.Cells[x1-2,y1]='P') or (StringGrid1.Cells[x1-3,y1]='T') or (StringGrid1.Cells[x1-3,y1]='P') then sel:=3 проверяет сначала сверху, потом снизу, потом справа, потом слева, следовательно, сначала "срубит" нижнее "дерево", потом правое. Для тех, кто заинтересовался, хочет "поиграться" с проектом и посмотреть исходники и щикарный образчик индусокода > ССЫЛКА >>> https://disk.yandex.ru/d/VD89QXFUdSYWkQ | |
09.09.2021: ПРОГРАММЫ - ACALC <DOWNLOAD> | 08.09.2021: ПРОГРАММЫ - RIC3EDIT <DOWNLOAD> |
Инженерный калькулятор, написанный в среде Delphi. К сожалению, исходники были утеряны. Возможности:
|
Простой редактор текстовых RTF файлов. Поддерживает
такие функции, как расширенные редактирование (изменение шрифтов, цвета текста, выравнивание и прочее форматирование), перенос открытого файла в microsoft word, поиск по тексту с учетом или без регистра, целого слова или его части, построение таблиц в документе. Исходники, если нужно для целей обучения (сделано на Delphi7) <<<<<<<<<Download Source>>>>>>>>> |