Видео с работой программы: https://youtu.be/9JmmVB2KoPc
Ссылка на ивент: https://dojorena.io/events/193
Ссылка на то, как играть в loderunner: https://dojorena.io/manuals/46
Бот занял 8 место из 450:
Чтобы начать работать потребуется Java 11. Так же Gradle версии 4.8.1 или выше
- Скопируйте клиент к себе
git clone https://github.com/CodeBattleCommunity/codebattle-loderunner-clients.git
- Импортируйте проект как "Gradle project" в вашу IDE Intellij Idea (работа под Eclipse не проверялась)
- Установите плагин Lombok.
- Чтобы подключится к серверу необходимо в файле CodeBattleJava\src\main\java\ru\codebattle\client\Main.java прописать uri сервера игры
public class Main {
private static final String SERVER_ADDRESS = "http://codingdojo2019.westeurope.cloudapp.azure.com/codenjoy-contest/board/player/kjfserksnckshus?code=3948792673423&gameName=loderunner";
- Метод - doMove в LodeRunnerClient.java должен возвращать в качестве ответа действие (String), которое вы хотите сделать.
protected String doMove(GameBoard gameBoard) {
clearScreen();
gameBoard.printBoard();
Random random = new Random(System.currentTimeMillis());
LoderunnerAction action = callback.apply(gameBoard);
System.out.println(action.toString());
return loderunnerActionToString(action);
}Все необходимые методы привязаны к объекту классе GameBoard, который передается как агрумент в главный метод doMove
Данный тип является обязательным для ответа в методе turn.
GO_LEFT = "left" – передвижение влево;
GO_RIGHT = "right" – передвижение вправо;
GO_UP = "up" - лезть по лестнице вверх;
GO_DOWN = "down" - лезть по лестнице вверх;
DRILL_RIGHT = "act,right" - копать справа;
DRILL_LEFT = "act,left" - копать слева;
DO_NOTHING = "stop" - пропуск хода
SUICIDE = "act(0)" - убийство персонажа (как и при его смерти от врагов будут сняты штрафные очки).
