Введение & Быстрый старт

Гайд по базовому примеру

file.py
from alem_f import World, Robot, Rotation  # Импорт необходимых классов

world = World(Vec3(9, 9, 6))  # Создание мира (x=9, y=9, z=6)

submit(world)  # Сервер присылает результат этого мира как http ответ

robot = Robot(world)  # Создание робота

robot.spawn()  # Инициализация робота в мире

robot.forward()  # Движение вперёд

robot.turn(Rotation.Left)  # Поворот налево

robot.back()  # Движение назад

Рекомендуется вызывать submit(world) сразу после создания мира.Это влияет только на корректность получения списка действий (actions) в случае возникновения ошибки.

Структура импортов

Для работы с платформой доступны два варианта импорта: упрощённый и расширенный.

Упрощённый (flat) импорт — для новичков

file.py
from alem_f import World, Robot, Rotation

Этот вариант предназначен для быстрого старта.
Он объединяет основные классы в одном месте и скрывает внутреннюю структуру проекта.

Рекомендуется для:

  • начального обучения
  • базовых примеров
  • простых квестов

Расширенный (прямой) импорт — для продвинутого использования

file.py
from alem.core import World
from alem.core.move_system import Rotation
from alem.errors import *
from alem.entities.robot import Robot
from alem.entities.core import *  # Базовые сущности

Этот вариант предоставляет прямой доступ к внутренней структуре модулей.

Таким образом:

  • alem_f — упрощённый слой для удобства и обучения
  • alem.* — полноценная модульная структура проекта