В игре ГГ будет держать оружие как попало, поскольку в экспедицию солдат не брали: надеялись прилететь на пустую планету. Оружие было взято на всякий случай.
После "игры за неделю" я решил перейти с Unity на Game Maker Studio. Причин на это довольно много, но в основном они сводятся к моему тотальному неумению пользоваться довольно сложным инструментом и к тому факту, что настолько сложный инструмент мне просто не нужен.

Хочу сначала рассказать о том, что планирую

А планирую я некоторое отхождение от изначальной концепции. Так, бои в космосе это довольно классно, но первостепенной задачей все же будет шутер-выживалка с видом сверху. Космические баталии неоправданно тяжелы в реализации и с текущим количеством программистов в команде реализовать их будет трудновато.

А теперь о том, что я уже сделал

Стоит, я думаю, начать с бесшовных текстур. Я нарисовал свою первую убогенькую бесшовную текстуру, меня это очень радует. Правда, я до сих пор не понимаю, как можно рисовать бесшовно траву или песок. Может быть, есть какой-то редактор, который бы позволял за пару кликов посмотреть, как текстура будет смотреться в игре? Я такого не нашел, но, как бы то ни было, вот скриншоты:
Также я запилил анимацию стрельбы и саму стрельбу. ГГ стреляет огроменными циллиндрами, летящими с предельно низкой скоростью. В ближайшее время исправлю, ну а пока вы можете насладиться нереалистичной физикой в 60fps.
К слову, 60fps будет и в самой игре, без них перемещение игрока выглядит чересчур дерганым.
Также я запилил основные индикаторы - количества патронов в магазине и в общем. Одной из выживательных особенностей игры станет изменение интерфейса при смене бронекостюма. В том числе будет меняться и удобство интерфейса. Так, в стартовом костюме будет поддерживаться только стандартная винтовка; если же игрок возьмет в руки другое оружие, имеющее больше трех патронов в магазине, индикатор будет упорно отображать ровно три.
Также стоит упомянуть, что все это дело анимировано, а спрайты взяты из TSP. Ну и внутренняя структура частично заимствована оттуда, так как она была довольно удобной в использовании и доработке.
Рандомный код
if blts_now <= 0 { 
    return 0
}

blts_mgz_now--
blts_now--

sprite_index = animation_fire
image_speed = image_number / animation_fire_time
mode = "fire"

var ldir_x = lengthdir_x(sprite_width, image_angle),
    ldir_y = lengthdir_y(sprite_height, image_angle),
    b = instance_create(
        x + ldir_x, 
        y + ldir_y, 
        bullet_type);

b.image_angle = image_angle

with b {
    x -= ldir_x
    y -= ldir_y

    move_towards_point(mouse_x, mouse_y, lspeed)
    
    x += ldir_x
    y += ldir_y
    
    hspeed += other.hspeed
    vspeed += other.vspeed
}

if blts_mgz_now == 0 {
    blts_mgz_now = min(blts_mgz_max, blts_now)
}

В дальнейшем я надеюсь постараться начать возможно придерживаться изначальной идеи и постить по новости в неделю, но это не точно. Вы, к слову, можете также подписаться на группу игры ВК, где размещаются промежуточные новости и идеи на будущее. Еще, возможно, я однажды сделаю лог про написание сценария. Это может быть интересно.