Rust — новый язык программирования: Часть 1. Общее описание, характеристики и свойства


Системные требования Rust — это описание примерных характеристик, которым должен соответствовать компьютер для того, чтобы на нём могло использоваться какое-либо определённое программное обеспечение.

Эти характеристики могут описывать требования как к аппаратному обеспечению (тип и частота процессора, объём оперативной памяти, объём жёсткого диска), так и к программному окружению (операционная система, наличие установленных системных компонентов и сервисов и т. п.). Обычно такие требования составляются производителем или автором ПО.

Чтобы вы могли играть в Rust, ваш компьютер должен соответствовать определённым требованиям. Существуют минимальные и рекомендуемые системные требования.

Минимальные системные требования Rust

В минимальных системных требованиях Rust чаще всего указывают ту комплектацию PC, на которой игру можно будет запустить без проблем при минимальных настройках графики.

ТребованияМинимальные
ОС:Windows 7 SP1, Windows 8.1, Windows 10
Процессор:Core 2 Duo E4400 2.0GHz или Athlon 64 X2 Dual Core 4200+ или лучше
Оперативная память:4 GB ОЗУ
Видеокарта:GeForce GT 340 или Radeon X1900 GT или лучше

Сюжет

Чтобы выжить, игроку необходимо укрытие. Его придется построить самостоятельно. В хижине будет храниться оружие, снаряжение, добываемые ресурсы. Для того, чтобы выжить, персонажа надо вооружить. В Rust предлагаются разные виды оружия: стрелы, лук, арбалет. Позже появятся пистолеты, взрывчатые вещества. Их используют для проникновения в чужие убежища с целью ограбления.

В проекте есть много разных радтаунов, свалки, заводов, магазинов, станций, космодром. Сооружения можно исследовать. Иногда может прилетать вертолет, которые пытается уничтожить персонажа. Его можно сбить, получить ценный ресурс. Мимо острова проходят суда с различными ценностями.

Камнем можно убить все, что движется: животных птиц, кабанов. С таким оружием приходится спасаться от волков. Они агрессивны, пытаются убить героя.

Не стоит забывать и про то, что убить могут сзади, пока персонаж в Rust будет что-то делать. Другие игроки могут просто напасть, отобрать нажитое добро. Чтобы враг не смог подкрасться, следует почаще оглядываться, прятаться.

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

Рекомендуемые системные требования Rust

Рекомендуемые системные требования Rust показывают, на каком компьютере можно запустить игру на максимальных настройках графики и при этом играть без подтормаживаний и с большим количеством кадров в секунду (FPS).

ТребованияРекомендуемые
ОС:Windows 7 SP1, Windows 8.1, Windows 10 (только 64-bit версия)
Процессор:Intel Core 2 Duo 3.0 GHz или AMD Athlon 64 X2 6000+ или аналогичный
Оп.память:8 GB ОЗУ
Видеокарта:nVidia GeForce GTX 460 или ATI Radeon HD 5850

Для комфортной и производительной работы или игры нужен компьютер, удовлетворяющий рекомендованным требованиям. Хотя бывают случаи, что при соответствии всем системным требованиям программа не работает или работает с ошибками «глючит».

Системные и технические требования могут изменяться время от времени, в связи с чем настоящий документ может быть изменен и/или дополнен.

Rust / Rust Experimental [1928/1.12.2016/1492621][2014, FPS, Симулятор]

Системные требования:

    Минимальные:
  • OS Windows: Vista/7/8/8.1/10
  • Процеcсор: 2 ядра 2,5 GHz
  • ОЗУ: 8Gb DDR2
  • Видео: 512 mb, DirectX 9.0c
  • Жесткий диск: 6Gb
    Рекомендуемые:
  • OS Windows: 7/8/8.1/10
  • Процессор: 4 ядра 3,5 GHz
  • ОЗУ: 16Gb DDR3
  • Видео: 2Gb, DirectX 12.0
  • Жесткий диск: 6Gb

Описание: Rust — это многопользовательская игра, так что больше стоит опасаться не животных, а других игроков, которые тоже пытаются выжить. К сожалению для вас, они могут попробовать выжить за ваш счет, найти ваше убежище и попробовать убить вас, при этом забрав все ваши вещи. К счастью для вас, вы можете обороняться и попытаться противостоять бандитам. Лучше всего подружиться с другими игроками и помогать друг другу выживать. Мир RUST кишит опасностями, так что вам лучше найти себе компаньонов. Окружающая мир в игре крайне враждебен. Медведи и волки будут преследовать вас и обязательно убьют, если догонят. Падение с большой высоты не оставит вам шансов. Подвергаясь воздействию радиации тоже не рекомендуется, вы рискуете превратиться в ходячий труп. Голодание или переохлаждение тоже могут убить вас довольно быстро.

Особенности пиратки • Релиз основан на версии steam 1928 (1.12.2016/1492621). • При установке можно выбрать разрядность клиента. • Сжатие данных без потерь. • Релиз подготовил KosiakS.

Как подключиться на сервер? 1. Запустить игру через Launcher.exe или ярлык на рабочем столе. 2. Запустить Steam и войти в аккаунт. 3. Войти в игру и нажать F1. 4. Ввести client.connect ip_adress:port, где «ip_adress» — IP адрес сервера, а «port» номер порта.

  • client.connect rust-exp.alkad.org:28015
  • client.connect rust-exp.alkad.org:28019
  • client.connect spb-1.alkad.org:2021
  • client.connect rust-exp.alkad.org:22222
  • client.connect survival-instinct.ru:29015
  • client.connect play.rustrpg.ru:2211
  • client.connect spb-2.alkad.org:2231

Порядок установки Внимание! Перед распаковкой файлов, инсталлятор удаляет все файлы в папке назначения. Путь установки не должен содержать русских букв!

Если при выборе 32-разрядной версии устанавливается 64-разрядная, то запустите Setup.exe от имени администратора.

1. Запустить файл Setup.exe. 2. Следуя подсказкам инсталлятора, настроить параметры установки, и установить.

Показать скриншоты

Ссылки

  • [playrust.com/ Официальный сайт, playrust.com] (англ.)
  • [games.mail.ru/pc/articles/review/rust_by_nikitalanda_mail_ru/ Игра от создателей Garry’s Mod — самой безумной песочницы. Вот только здесь надо выживать, сражаться, добывать.] // Mail.ru, 9 января 2014, 7/10.0
  • [www.gamespot.com/articles/worlds-apart-how-dayz-and-rust-fill-different-roles-in-the-survival-genre/1100-6417178/ Worlds Apart: How DayZ and Rust Fill Different Roles in the Survival Genre] // Gamespot, 2014-01-17 (англ.)
  • [kanobu.ru/articles/dayz-i-rust-dve-igryi-odin-zhanr-367819/ DayZ и Rust: две игры, один жанр] // Перевод от Kanobu, 19 января 2014
  • [www.pcgamer.com/2014/01/10/rust-alpha-review/ Rust alpha review] // PCGamer, 2014-10-01 (англ.)

Выпуск

9 февраля 2020 года Rust вышел из раннего доступа. 14 ноября 2019 года, на мероприятии X019, было объявлено, что Rust

выйдет на Xbox One и PlayStation 4 в 2020 году, а издателем обеих версий выступит компания Double Eleven[7].

Продажи

  • Ранние версии Rust были проданы в количестве 150 тысяч копий за две недели[8].
  • В январе 2014 года игра стала самой продаваемой на платформе Steam[9]. За пять недель после выхода альфа-версии, студия заработала 40 % от суммы, полученной на продажах Garry’s Mod за девять лет[10]. А уже к февралю было продано более миллиона копий игры[11].
  • Всего в 2014 году было продано около 2 миллионов копий, но в 2015 уже на миллион меньше[12]. Ближе к 2020 году, статистика посещения игры значительно выросла. Компания Facepunch предоставила данные в виде 15 тысяч игроков онлайн в среднем, а пиковые значения были в районе 29 тысяч человек.

Опыт использования C

Положительный

  • Чтение исходного кода проекта POV-Ray впервые и изучение того, как использовать объектно-ориентированный подход и наследование в чистом C;
  • Чтение исходного кода проекта GTK+ и изучение читаемого, поддерживаемого и чистого стиля написания кода на C;
  • Чтение исходного кода проекта SIOD, а также ранних исходников проекта Guile и понимание того, как интерпретатор Scheme может быть написан на C;
  • Написание первых версий Eye of Gnome и доработка системы микротайлового рендеринга.

Негативный

  • Работа в команде Evolution, когда программа постоянно падала. Мы были вынуждены приобрести машину с Solaris на борту, чтобы иметь возможность купить Purify; в те времена Valgrind-а еще не существовало;
  • Отладка взаимных блокировок потоков в gnome-vfs;
  • Безуспешная отладка Mesa;
  • Когда мне передали исходники первых версий Nautilus-share, я увидел, что free() вообще не используется;
  • Попытки рефакторинга кода, о стратегии управления памятью которого я не имел понятия;
  • Попытка сделать библиотеку из кода, кишащего глобальными переменными, и в котором ни одна функция не помечена как static.

Rust

Для своей второй игры Гарри Ньюмен

, создатель
Garry’s Mod
, и его команда выбрали действительно востребованную тему — их
Rust
посвящена борьбе за существование в суровом мире, который населяют монстры и враждебные игроки. Явная схожесть с
DayZ
бьет в глаза, и многие восприняли Rust как клон, а значит, и как попытку Ньюмена обогатиться на новой моде.

Возможно, по этой причине Facepunch Studios в феврале 2014-го променяли зомби на бешеных волков и медведей-мутантов. Тем не менее дух survival-шутера с ожившими мертвецами остался, просто теперь нам кажется, будто они бродят где-то неподалеку, за кадром. Говоря по правде, тут и без них хлопот хватает!

Сочетание зомби, создания предметов и выживания популярно далеко не первый год. У Rust, «тезки» одной из популярных сетевых карт для Call of Duty: Modern Warfare 2

, есть сразу несколько источников вдохновения — помимо очевидной DayZ, это чуть менее явные
Minecraft
и
S.T.A.L.K.E.R
. Rust позаимствовала по несколько кусочков у каждой из трех культовых игр.

Из DayZ сюда пришли паранойя, буйные мертвецы и охота на животных, из Minecraft — строительство и создание предметов, необходимых для выживания в глуши, а также возможность отстраивать персональную крепость с колючими заборами. У серии STALKER, в свою очередь, позаимствованы радиация, вечная осень, романтика спальных мешков и встреч у костра. Только водки для постядерного антуража не хватает, но зато здесь можно отведать консервированных бобов, тунца из банки или куриной грудки, которую придется лично добыть с трупа забитой свиньи. Разработчики так нежно любят шутку про то, как в Rust из свинины получается курятина, что даже посвятили ей одну из коллекционных «стимовских» карточек игры.

При всех заимствованиях Rust — самодостаточная игра со своим узнаваемым обликом. Симулятор выживания скрещен с классическим deathmatch. Ареной для драк служит большой остров, созданный разработчиками. Каждый игрок, впервые попавший на новый для себя сервер, начинает голым аборигеном. В руках — только крупный булыжник, которым можно добывать древесину, стуча по деревьям, и другие ценные материалы, дробя камни.

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

В особой цене здесь металлические детали, из которых собираются самые дорогие предметы: от амбарных замков и железных дверей до винтовки М4. По качеству предметы можно условно разделить на деревянные, каменные и железные. Материалы добываются просто: древесину можно собрать со специальных поленниц или рубя деревья, камни отламываются от больших валунов, а металл придется плавить в печи, расходуя низкокачественное, сваренное на коленке топливо.

► Взгляд на обманчиво безлюдный ландшафт с холма… и с вершины горы.

Основная задача игрока — выжить любой ценой, поддерживая на приемлемом уровне три ключевых параметра: здоровье, сытость и дозу полученной радиации. Здоровье соответствует «живучести» героя и теряется от выстрелов, укусов, ударов и падений даже с небольшой высоты. С сытостью чуть интереснее. Показатель неумолимо падает со временем, но в комфортных условиях (например, у разведенного костра) снижается медленно, а холодной ночью или во время активного бега от врагов — значительно быстрее. В игре встречаются радиационные зоны, в которых опасно задерживаться надолго. От радиации взгляд мутнеет, изображение расплывается на пиксели, а счетчик Гейгера шуршит, указывая на смертельную опасность и рост лучевой дозы в организме.

Но самую большую опасность представляют другие игроки. Эти негодяи обожают издеваться над новичками — просто потому, что способов полно. В Rust можно запереть игрока в его же жилище, заставить его раздеться и бегать голышом, сверкая причинным местом, или же посадить на специальную диету из сырого мяса. Апогей веселья показан в ролике, посвященном созданию братства Penis Brotherhood. И именно это привлекает множество игроков — море возможностей для глумления над остальными и так называемого «грифинга». В этом смысле Rust даст фору и DayZ, и Dota 2

, и другим «неприветливым» играм.

► Стоило подкормить мясом двух этих «бомжей», как они решили отобрать все мои продовольственные запасы! Не стоило помогать злодеям, но понимание этого пришло слишком поздно.► В горах легко переломать себе ноги, пытаясь прыгать с кручи на кручу. Но куда опаснее бродить вдоль дороги, где поджидают опытные игроки с пистолетами и дешевыми винтовками рычажного действия.

Выживать в Rust считается немодным. Игроки предпочитают поскорее разжиться материалами для изготовления взрывчатки и огнестрельного оружия, а затем, сбившись в банду, терроризировать остальное население сервера. Даже на официальных серверах администрация смотрит на такие бандформирования сквозь пальцы, поэтому начинающим игрокам приходится или заискивать перед ОПГ с надеждой попасть в «бригаду», или прятаться по горам и окрестным лесам в надежде, что постоянное сафари на аборигенов обойдет их стороной. Вернее, даст время на то, чтобы сделать допотопные средства самообороны.

На самых популярных серверах играет по 150—170 игроков, и зачастую там творится натуральный беспредел — ни дать ни взять, «смертельный матч» ветеранов с автоматическими дробовиками и MP5 против тех, кто только-только собрал каменный топор и надеялся достроить стены в шалаше. С поведением игроков сложились реальные проблемы, поэтому играть в удовольствие проблематично. Выживать приходится в условиях вечных издевок, насмешек и постоянного риска потерять за секунду все, что копил сутками.

Шесть глупых смертей

Первая смерть.

Начало игры, официальный сервер. Через две минуты после старта отошел от компьютера ответить на телефонный звонок. Персонажа оставил на месте, под деревом. Паузы нет. Возвращаюсь и обнаруживаю, что его убил персонаж по имени SisyastayaTvar.

Урок №1: не оставляйте героя без присмотра!

Вторая смерть.

Вышел на охоту за хряком. Долго бегал за ним, пока не раздались выстрелы. Пришлось прятаться за ближайшим амбаром. Из ниоткуда выскочил волк и загрыз меня в два укуса.

Урок №2: в случае опасности не стойте на месте!

Третья смерть.

Нашел огромное блочное общежитие. Запрыгнул в жилище без крыши, обокрал спящего хозяина, расправился с ним, но выйти из комнаты не смог — дверь и стены сломать было нечем. Полчаса ждал голодной смерти, но тут в жилище вломился еще один мерзавец и убил меня выстрелом в голову.

Урок №3: не лезьте туда, откуда не сможете выбраться!

Четвертая смерть.

Столкнулся с голым человеком, вооруженным железным топором. Он меня ударил, началось сильное кровотечение. Перевязать было нечем. Попытался скрыться от него в радиоактивной зоне. Человек переключился на лук и добил меня метким выстрелом.

Урок №4: далеко не все сторонятся радиоактивных зон!

Пятая смерть.

Ушел в горы и построил там лачугу. В знак протеста против охоты на начинающих игроков (на местном жаргоне — «кепки») написал послание в общий чат и обрек себя на голодовку. На сервере было людно, но в горы никто не пришел. Голодовка длилась много часов и закончилась мучительной смертью.

Урок №5: если хотите выразить свою позицию, поищите лучше чертеж дробовика.

Шестая смерть.

Приютил ночью около костра двух аборигенов. Поделился с одним из них мясом. Он отблагодарил в голосовом чате: «
Братиш, спасибо за угощение
!» Погасил костер. Оба босяка, включая накормленного, стали гоняться за мной и в итоге забили камнями насмерть.

Урок №6: даже если помочь кому-то выжить, нет гарантий, что он станет с вами дружить.

Выглядит Rust до изумления неказисто, потому что создается на движке Unity и в основном использует стандартные библиотечные модели и текстуры. Но, несмотря на это, Rust для Гарри Ньюмена — золотая жила. Игра пользуется огромным спросом в Steam и в своей нише уступает по популярности только DayZ. Широкие возможности по мастерению всего и вся позволяют создать массу интересных штук: от кирки и отмычки до фонарика, гранат F1 и противорадиационных таблеток. И охотиться за другими обладателями мощной экипировки, нажитой тяжким трудом, — особое удовольствие.

Факторы успеха
Факторы риска
  • хорошо работает на слабых компьютерах;
  • значительно дешевле и понятнее DayZ;
  • удобно проводить садистские эксперименты.
  • выглядит Rust ну очень неприметно;
  • мало «мирных» серверов и игроков, плохие возможности для социализации;
  • низкое (по сравнению с DayZ) разнообразие игровых ситуаций.
Стадия разработки

Несмотря на статус ранней альфа-версии, с декабря прошлого года все желающие могут купить игру в Steam и присоединиться к движению голых дикарей. Обновления для «альфы» выходят регулярно.

Будем ждать?

По сравнению с Minecraft, в Rust сильно упрощены строительство и физика, по сравнению с DayZ — графика и детальность выживания. Но новый проект создателя Garry’s Mod в первую очередь интересен даже не как «симулятор выживателя», а как площадка для социальных исследований и издевательских экспериментов.

Rust — это системный язык, его главное достоинство заключается в быстрой обработке компьютером и высокой степени безопасности. В нём исключены практически все причины падения серверов. Другим преимуществом является устранение неопределённости в доступе к информации от нескольких пользователей. Разработкой языка занимается Mozilla. Он лёг в основу современного и инновационного браузера Servo.

Что общего у Rust и других языков?

В перечисленные определения сложно поверить, это выглядит нереалистичным заявлением, так как ранее все языки выбирали одну из сторон: надёжность или производительность.

Ярким представителем высокой скорости является C++, но всем нам известно, как часто появляются ошибки из-за неправильного доступа к выделенной памяти, удалённым серверам, а о непредсказуемых выводах результатов работы и говорить нечего. Из-за нескольких потоков записи часто сложно предсказать результат.

Уклон в сторону надёжности лучшим образом демонстрирует язык Haskell, который имеет компилируемую природу и обеспечивает высокие показатели безопасности. Всё, что можно компилировать, будет исправно работать. Главный недостаток – это низкая производительность, сложно представить проект, требующий высокой скорости написанный на Haskell.

Нейтральную позицию, некоего баланса занимают Python, Java, и остальные. В них уклон поставлен в практичность.

Rust вобрал в себя лучшие характеристики C++ и Haskell, а также смог сохранить достаточную практичность и функциональность от остальных конкурентов.

В чем же прелесть языка Rust?

Волшебные характеристики Rust стали доступными при помощи основ компилирования и информации о сущности владельца (owner), о программисте, который только временно отлаживает или занял проект (mutable borrow), а также об обычном зрителе (immutable borrow).

При программировании на Java или же C++, приходится удерживать данную информацию в памяти, хотя вид данных несколько отличается. В Rust это реализуется с помощью языковых конструкций, данная информация облегчает компилятору задачу установления личности и правильности подбора модели поведения. Благодаря компилятору можно гарантировать устранение потенциальных и частых проблем в ходе выполнения кода.

Этому языку необходим несколько отличающийся подход. Несмотря на непривычность, алгоритм достаточно очевидный и эффективный. Теперь мы определимся с основами языка, которые способны завести в тупик при начале изучения:

  1. Полностью устранена система наследования, для замены используется особая структура и способности, подробнее traits.
  2. Присутствуют указатели исключительно в коде, который не подвергается дополнительной защите, то есть внутри функции unsafe {}. Для их замены в безопасном коде используются ссылки, которые обеспечивают правильное указание на имеющиеся объекты.
  3. Если ссылка статическая и ведёт к определённому элементу, например, immutable borrow = &Object, до момента смерти ссылки она не может изменяться любым пользователем.
  4. При наличии изменяющейся ссылки mutable borrow = &mut Object, нельзя прочитать содержимое любому другому пользователю весь период жизни ссылки.
  5. Разработчики делают акцент на Mac и *nix платформы, из-за этого работать на системе Windows можно только с использованием среды GNU.

Достаточно важна целевая аудитория, у языка Rust достаточное активное содружество, развитая система общения и обучения. Рекомендуем посетить канал IRC или Reddit. До сегодняшнего дня уже написано много интересных программ, а большинство из них до сих пор постоянно развиваются, их проекты можно найти на GitHub.

Наибольшая популярность языка отмечается у разработчиков, которые стали на путь создания графики и игр. Существуют даже наработки для создания полноценной операционной системы, но они ещё только разрабатываются. В ближайшей перспективе присутствует возможность написания клиентских программ и веб-серверов. Все перечисленные задачи вполне по плечу Rust.

Главным, а, наверное, и единственным, недостатком является его чрезмерно активное развитие. По мере выхода новых версий несколько изменяется синтаксис, периодически появляется необходимость изменять логику поведения и разработки, чтобы подстроиться под появившиеся возможности. Ситуация будет продолжать ещё некоторое время до момента выхода Rust-1.0.

Следить за изменениями в языке программирования помогает постоянная рубрика «This Week in Rust», которую можно найти в Rust ‘n Stuffs по ссылке. Здесь всегда есть информация о предшествующих и прошедших изменениях, а также перспективах развития языка.

Рейтинг
( 2 оценки, среднее 4.5 из 5 )
Понравилась статья? Поделиться с друзьями: