Примітка. Незабаром буде опубліковано опитування для улюбленого спільноти
У цьому KoTH мета - бути останнім живим ботом. Монети будуть розміщені у випадкових місцях, і ваш бот повинен отримати монети першими. Якщо бот натрапив на іншого бота, бот з більшою кількістю монет виграє, а інший бот гине. Детальніше нижче.
Типи монет
Буде 2 види монет: золота та срібна. Золото додає 5 монет міцності бота, а срібло - 2. Коли монета зібрана, інша монета розміщується на іншому місці на дошці. У будь-який момент часу на арені є одна золота і чотири срібних монети.
Зіткнення ботів
У випадку, коли два боти намагаються зайняти один і той же простір, той, у якого більше монет, залишиться, а той, у якого менше, буде… ні. Бот, який виграє, набере 85% монет опонентів (Закруглені). Якщо вони пов'язані, обидва гинуть. Якщо три або більше намагаються зайняти один і той же простір, виграє найпотужніший і отримує 85% усіх монет інших ботів. У випадку, якщо найпотужніший бот - краватка, всі боти гинуть, хто намагався увійти в космос.
Арена
Довжина сторони арени обчислюється за допомогою 4 + botCount
. При розміщенні ботів на початку гри вибираються випадкові місця. Система гарантує, що жоден бот не запускається в одному просторі або поруч один з одним. Монети генеруються випадковим чином, виключаючи квадрат 3 по 3 на кожному боті. Якщо бота знайшли поза ареною, він вмирає миттєво. Арена починається з (0,0), або Північно-Західного, у лівому верхньому куті, і розташування бота завжди є цілим числом.
Ваш бот
Ваш бот повинен бути функцією на будь-якій об'єктно-орієнтованій мові, що має масиви, цілі числа, рядки та функції. Зауважте, що всі подання будуть перетворені на Javascript, щоб зробити речі простішими. Щоб зберігати інформацію між рухами, використовуйте botNotes.storeData(key, value)
та botNotes.getData(key, value)
. Ви не можете зберігати або отримувати доступ до даних будь-яким іншим способом, крім того, який надається через параметри та botNotes
. Ви повинні створити функцію , яка при виклику, повертає рядок north
, east
, south
, west
, або none
. Існує 3 аргументи для функції:
Об'єкт з чотирма цілими числами (
locationX
,locationY
,coins
,arenaLength
), ваше місце свого перебування, ваші монети, а довжина арениБагатовимірний масив з координатами X і Y інших ботів та їх кількістю монет, наприклад,
[[0,5,4],[4,7,1],[7,4,12]]
Масив із переліченими місцями монет (золото завжди перше)
Це виклик короля пагорба, заборонені стандартні лазівки . Ваша функція буде виконуватися кілька тисяч разів, кожен раз дозволяючи один "Move". Зауважте, що якщо гра перевищує 20 000 ходів , виграє бот з найбільшою кількістю монет. Це буде зроблено 8000 разів, щоб усунути випадковість.
Чат: https://chat.stackexchange.com/rooms/81347/gold-collectors-koth
Призи:
Перше місце:
улюбленість спільноти у 100 балів : відповідь у 15 балів
Переможці:
Перше місце: TBTPTGCBCBA
Друге місце: Big King Little Hill
Третє місце: потенційно переможене
четверте місце: ввічливий недалекоглядний п'яний бот
П'яте місце: монета безпеки