Contributing to the Game: различия между версиями

imported>Harryob
Нет описания правки
 
мНет описания правки
 
(не показана 1 промежуточная версия 1 участника)
Строка 2: Строка 2:


<center>
<center>
= Click here for the [https://github.com/cmss13-devs/cmss13 CM-SS13 GitHub] =
= Официальный репозиторий [https://github.com/cmss13-devs/cmss13 CM-SS13] и наш репозиторий [https://github.com/ss220club/BandaMarines BandaMarines]  =
</center>
</center>


= Contributing to the Game =
= Вклад в разработку игры =
== Guidelines  ==
=== Getting started ===
Hey, we’re glad you’ve decided to contribute to the CM13 project, or at the very least give this
guide a cursory read over. Before you take your ideas and dive into coding, mapping, spriting,
and our contributor channels you should read over (at the very minimum) the guidelines section,
and skim the “What we want” and “What we don’t want” segments. At the very bottom of this
brief guide you can find links to various guides and tutorials we recommend. Not all of them
were written for CM13, or even Byond in general, but the content provided therein by the
original authors is invaluable.


=== CM13 - A loose idea, at best ===
== Руководство ==
CM13 is, at its heart two different games bundled into one; a moderately strategic team
deathmatch in moment to moment gameplay (though if we’re being more accurate it is closer to
a blend between an immersive simulator and an action roleplay game), with an adjacent
universe and setting that provides the grounds for a roleplay environment. We invite contributors
to collaborate and expand the game as they see fit based on their own experiences. The
strength of CM13, and SS13 as a whole comes from the multitude of ideas and visions shared
between different players, contributors, and developers. While CM13 may have an overarching
development direction speared by its development team, it is the players that keep the server
alive; and it is from the players that most all developers come.


=== С чего начать === 
Мы рады, что вы решили внести вклад в проект CM13 или хотя бы бегло ознакомиться с этим руководством. Прежде чем приступить к реализации своих идей — кодингу, маппингу, спрайтам и участию в каналах для контрибьюторов — вам следует, как минимум, ознакомиться с разделом с руководящими принципами, а также просмотреть разделы «Чего мы хотим» и «Чего мы не хотим». В самом конце этого краткого руководства вы найдёте ссылки на различные гайды и обучающие материалы, которые мы рекомендуем. Не все они были написаны специально для CM13 или даже для BYOND в целом, но материалы, созданные их авторами, являются чрезвычайно ценными.


Part of what makes CM13 great are the little things and their cross system interactions. From
=== CM13 — лишь набросок идеи === 
the ability to oil up your guns before you deploy as a marine to being able toggle various options
CM13 по сути представляет собой две разные игры, объединённые в одну: умеренно стратегический командный deathmatch в повседневном геймплее (хотя, если быть точнее, это скорее смесь иммерсивного симулятора и экшен-ролевой игры), с сопутствующей вселенной и сеттингом, создающими основу для ролевого взаимодействия. Мы приглашаем контрибьюторов развивать игру и расширять её, опираясь на свой собственный опыт. Сила CM13 и SS13 в целом — в разнообразии идей и видений, которыми обмениваются игроки, участники и разработчики. Несмотря на наличие общего курса развития, задаваемого командой разработчиков, именно игроки поддерживают сервер живым — и именно из числа игроков выходят большинство разработчиков.
on the M56B Smartgun system or pick which strain you’d like to evolve into as an Alien, small
and large details help make the game exciting and enjoyable for new and veteran players alike.


Одна из отличительных черт CM13 — это внимание к мелочам и взаимодействие между системами. Возможность смазать оружие перед высадкой, переключение режимов у M56B Smartgun, выбор эволюционного штамма у Чужих — крупные и мелкие детали делают игру интересной как для новичков, так и для ветеранов.


That’s where you as a contributor come in, be it cleaning up our legacy sprites from Bay12, or a
Именно здесь вы, как контрибьютор, можете проявить себя — будь то работа над устаревшими спрайтами из Bay12, добавление Nightmare-вставок на карты Big Red и LV, или реализация новых функций, формирующих уникальные истории каждого раунда. Каждый коммит имеет значение. Однако, в вопросах общего направления проекта последнее слово всегда остаётся за командой разработчиков. Вклад в проект — это простой путь к присоединению к этой команде. Если вы хотите оказывать большее влияние на развитие игры, мы рекомендуем сначала освоиться с нашим кодом и системами, а затем присоединиться.
mapper adding Nightmare Inserts to Big Red and LV, or a coder helping build features that
round out the generative and emergent story each round of CM13 tells. Every commit helps.
However, there is a divide in terms of game direction. Ultimately, the development team, and
its whims overrule that of the players and contributors. Contributing is an easy road to
joining the development team, so if you’re interested in having a greater stake in the project’s
direction we encourage you to join up once you’ve gotten comfortable with our code and
systems.


=== Guidelines ===
=== Руководящие принципы ===
These guidelines aren’t rules, and moreover suggestions to help you, and your fellow
Эти принципы — не строгие правила, а скорее советы, призванные помочь вам и другим контрибьюторам создать продуктивную и комфортную атмосферу совместной работы. Помните: каждый, даже самый талантливый программист или художник, когда-то писал свой первый "Hello world" или делал первый мазок кистью. Среди нас будут новички и те, кто работает инженерами в реальной жизни.
contributors work together to build a productive and enjoyable collaborative environment.
Remember this always, everyone, even the most talented coders and artists had to code their
first “Hello world” or apply their first brush stroke to the canvas. The contribution environment
will be full of people entirely new to working on digital, and maybe those who are senior
engineers in the real world.


Никогда не делайте предположений о других участниках и не забывайте оставаться скромными, помогая друг другу. Большое эго — кратчайший путь к плохой репутации. У всех свои идеи, и то, что чья-то идея отличается от вашей, не делает её плохой.


Never assume anything about your fellow contributors, and don’t forget to stay humble while
С другой стороны, не все идеи хороши, как и код, карты или спрайты. И это нормально! Ваша задача как контрибьютора (а наша как разработчиков) — помогать тем, кто в этом нуждается, и работать вместе, чтобы становиться лучше, а не критиковать и унижать.
assisting one another. A big ego is the fastest road to earning a poor reputation as a contributor.
Everyone has different ideas, just because someone else’s idea is different from yours doesn’t
immediately invalidate it.


Если сомневаетесь — спрашивайте. Принимайте конструктивную критику и прислушивайтесь к мейнтейнерам и разработчикам.


With that said, some ideas aren’t the greatest, nor will be someone’s code, maps, or sprites.
----
And that’s ok! It's up to you as a contributor (and us as Developers) to assist those who need
help and work together to bring each other up, rather than tear each other down.
When in doubt, ask for help. Take constructive criticism when it’s given to you, and listen to the
Maintainers and Developers.


== Чего мы хотим == 
Как уже было сказано: «Команда разработчиков и её решения имеют приоритет над мнением игроков и контрибьюторов». Это применимо и к тому, что скорее всего будет принято через Merge Request. Список ниже — не полный, но он даст общее представление о том, что хотелось бы видеть в пулл-реквестах.


----
=== Спрайты ===
* Замена устаревших спрайтов из Bay12 
* Уникальные дизайны штаммов Чужих (для тех, у кого их ещё нет) 
* Альтернативные спрайты для Чужих 
* Сортировка иконок по образцу оружейных листов 
* Новые косметические предметы экипировки, например, шлемы 
* Кастомные тайлсеты для карт, которые их не имеют 
* Уникальные объекты и детали для конкретных карт 
* Формы и экипировка колонистов, привязанные к картам 
* Дополнительные стили HUD 
* Исправления багов и устранение несоответствий 


== What we want ==
=== Карты ===
As said earlier “Ultimately, the development team, and its whims overrule that of the players and
* Nightmare-вставки 
contributors”, and that applies to what we’ll be more likely to accept into the game via a Merge
* Улучшения размещения объектов (например, расширение узких коридоров и путей, загромождённых объектами) 
Request. The following list is non-exhaustive, but should give you a good idea of what the dev
* Дополнительные декоративные элементы (если они не ухудшают производительность) 
team would like to see in Merge Requests.
* Удаление тупиков и бесполезных зон на картах 
* Новые карты* 
* Исправления багов и устранение несоответствий 


=== Spriting ===
===== Примечание о новых картах =====   
* Replacements of legacy Bay12 sprites
Полноценные новые карты часто становятся отправной точкой для вступления в мапперский отдел команды разработчиков. Однако создание новой карты — это проект на несколько месяцев, требующий вовлечённости и постоянной связи с опытными мапперами. Маппинг, как и спрайтинг или программирование, — навык, который требует практики. Первая карта, скорее всего, получится не самой удачной. Карты — живые объекты, которые не бывают окончательно завершёнными. Не привязывайтесь к изначальному дизайну и будьте готовы переработать половину проекта по ходу дела.
*  Strain specific designs for Aliens for ones that lack them
*  Alternative Alien sprite sets
*  Icon sheet sorting styled after firearms sheets
*  New cosmetic loadout items, such as additional helmet garb
*  Custom tilesets for maps that don’t have them
*  Map specific props and details
*  Map specific Colonist uniforms and equipment
*  Additional HUD styles
*  Bug fixes and inconsistency fixes


=== Mapping ===
=== Кодинг ===
Nightmare inserts
* Улучшения качества жизни, не влияющие на баланс, но повышающие удобство  
Object placement quality of life improvements (such as widening hallways and combat lanes cluttered with props)
* Оптимизация и уменьшение задержек  
Extra map detailing (so long as it doesn’t negatively impact performance)
* Рефакторинг серверных систем ради стабильности и производительности  
Removal of dead-ends or gameplay dead-space on existing maps
* Минорные функции, не меняющие цикл раунда  
New maps*
* Любые задачи с публичного таск-борда 
Bug fixes and inconsistency fixes
* Новые штаммы Чужих 
* Новые технологии для Чужих и Морпехов  
* Удаление устаревших механик из Bay12 (например, wizard backend, лазерные глаза и пр.) 
* Уникальные loadout-наборы для выживших на конкретных картах 
* Исправления багов и устранение несоответствий  


===== A note on new maps. =====
----
Entirely new maps are generally considered to be stepping stones into the Development team’s
mapping dept. proper. However, making a new map is a months long process that requires
dedication and constant communication and oversight from mappers on the Development team.
Mapping, like spriting and coding is an acquired skill, and it is highly likely your first map is going
to suck. Maps are fluid entities that are never absolutely complete, don’t wed yourself to your
initial layout, always be prepared to remap half the project when going in.


=== Coding ===
*  Quality of life improvements that don’t impact gameplay, but improve it
*  Latency optimizations and improvements
*  Backend system refactors that improve server stability or performance
*  Minor features that don’t impact the overall round loop
*  Anything on the public task-board
*  New Alien strains
*  New Marine and Alien tech options
*  Bay12 legacy feature removal (such as wizard backend, laser eyes, etc)
*  Map specific survivor loadouts
*  Bug fixes and inconsistency fixes


----
== '''Чего мы не хотим''' ==


== '''What we don’t want''' ==
Итак, есть вещи, механики, балансные правки, проекты и прочее, к чему мы не хотим, чтобы игроки-вкладчики прикасались. Некоторые из этих областей зарезервированы исключительно за командой разработчиков.


With that, there are things, features, balances, projects, and all other sorts of stuff that we don’t
Хотя этот список не является исчерпывающим, он даст вам хорошее представление о том, чего следует избегать при работе с нашей кодовой базой. Если вы создадите MR, затрагивающий один или несколько пунктов из списка, это не означает автоматический отказ (иногда такие изменения могут быть полезными), но, скорее всего, это серьёзно уменьшит шанс того, что ваш MR будет принят и слит. Так что не говорите, что вас не предупреждали!
want player contributors touching. Some things are reserved to the Development Team alone.
While this list isn’t comprehensive, it’ll give you a good idea of what you should keep your hands
off of while working with our codebase. If you make an MR that does one, or some of these
things it doesn’t mean it will be automatically denied (and sometimes doing something on the
following list is a good thing), but it will very likely drastically reduce your chances of having the
MR accepted and merged, so don’t say we didn’t warn you!


=== Spriting ===
=== Спрайты ===
Gun sprites & gun spriters. We have those bases covered.
Мы уже обеспечены художниками и спрайтами оружия.
* Resprites of recently updated content, such as uniforms, guns, marine armor
* Перерисовка недавно обновлённого контента, такого как униформа, оружие, броня морпехов
* Resprites that drastically alter the original CM-Styled item / object (Like turning the Staff Officer uniform into dress blues)
* Перерисовка, радикально меняющая стиль предмета/объекта в духе CM (например, превращение формы штаб-офицера в парадную форму)
* Donor item adjustments or changes (exemption for Donor’s making changes to their own items)
* Изменения донатных предметов (исключение — для самих доноров, вносящих изменения в свои вещи)
* Adjustments or modifications to major factions without prior approval. (If you don’t have approval and don’t knock us out of the park, expect to get turned down)
* Изменения, затрагивающие крупные фракции без предварительного одобрения (если его нет — рассчитывайте на отказ)
* Joke sprites (unless they’re of exceptional quality)
* Юморные спрайты (если только они не выдающегося качества)
* Attachment sprite changes
* Изменения спрайтов обвесов/модулей
* Tacticool equipment and gear. We’re retro-future (or cassette punk if you will).
* Тактикульное снаряжение. Мы — ретро-футуризм, или кассетный панк, если угодно


=== Mapping ===
=== Карты ===
* Nightmare inserts with ridiculous loot or ones that are out of place (don’t put snow on LV, for example)
* Nightmare-вставки с нелепым лутом или неуместные (например, снег на LV)
* Major lane changes or remaps of legacy maps
* Существенные изменения проходов или ремапы "наследуемых" карт
* Major remaps without prior approval
* Крупные ремапы без предварительного согласования
* Additional detailing that degrades arena space or hinders gameplay in any sort of way
* Детализация, ухудшающая пространство арены или мешающая геймплею


=== Coding ===
=== Код ===
* Only direct changes to balance numbers on an MR (damage, recoil, health, armor, movespeed, etc), with nothing else to add to the game (without prior approval)
* Изменения только чисел баланса (урон, отдача, здоровье, броня, скорость и т.д.), без другого наполнения (без согласования)
* Removal of non-legacy features
* Удаление не-наследуемых механик
* Major overhauls of gameplay without prior approval
* Крупные переработки игрового процесса без согласования
* Adding additional factions, antagonists, or species
* Добавление новых фракций, антагонистов или рас
* Again no additional species or races, even Arcturians
* Ещё раз — никаких новых рас, даже арктуриан
* New cassette tapes
* Новые кассеты
* Vehicle removals
* Удаление техники
* New jobs / roles
* Новые профессии/роли
* Changes to whitelist roles
* Изменения в вайтлист-ролях
* Removal of jobs / roles
* Удаление профессий/ролей
* Major reworks of jobs / roles
* Глобальные переработки профессий/ролей


Remember that the following lists are not exhaustive. And you can freely contribute an MR with
Помните: списки выше не являются исчерпывающими. Вы можете предложить MR с изменением, попадающим под категорию "чего мы не хотим", и он всё равно может быть принят. Просто шанс крайне низкий.
content that can be shuffled into the “What we don’t want” category, and still get it merged. It is
just very, very, unlikely.


= Ресурсы и ссылки =


= Resources & Links =
== Ресурсы по спрайтингу ==
== Spriting Resources ==
Визуальный и тематический гайд по стилю спрайтов CM-SS13, подготовленный нашей спрайт-командой. Всё ещё в разработке, будет выложен позже.
A visual & thematic style guide for CM-SS13. The go-to guide for styling CM13 sprites written
by our sprite team. This guide is still under construction, it’ll get posted later!


* [https://onimille.tumblr.com/ Onimille] Pixel Art Tutorials. A tumblr blog dedicated to smart pixel art practices.
* [https://onimille.tumblr.com/ Onimille] — уроки по пиксель-арту на Tumblr.
* [https://discord.gg/jYquSmy SS13 spriter server]. An SS13 orientated discord for spriters.
* [https://discord.gg/jYquSmy Сервер спрайтеров SS13] — дискорд для художников SS13.


=== Software Recommendations:===
=== Рекомендуемое ПО: ===
* [https://krita.org/en/ Krita], a free open source paint program.
* [https://krita.org/en/ Krita] — бесплатный редактор с открытым исходным кодом
* [https://firealpaca.com/ Fire Alpaca], a free robust drawing program.
* [https://firealpaca.com/ FireAlpaca] — мощная бесплатная программа для рисования
* [https://www.gimp.org/ GIMP], a free Photoshop alternative.
* [https://www.gimp.org/ GIMP] — альтернатива Photoshop
* [https://www.aseprite.org/ Asesprite], a pixel art specific program. Highly recommended.
* [https://www.aseprite.org/ Aseprite] — специализированный редактор для пиксель-арта. Настоятельно рекомендуется
* [https://www.adobe.com/products/photoshop.html Photoshop], the industry standard photo manipulation software.
* [https://www.adobe.com/products/photoshop.html Photoshop] — индустриальный стандарт
* [https://www.photopea.com/ Photopea], a browser based Photoshop clone that’s entirely free.
* [https://www.photopea.com/ Photopea] — браузерный аналог Photoshop, полностью бесплатен
* [https://www.getpaint.net/ Paint.net], yet another photo editing tool. Widely used, entirely free.
* [https://www.getpaint.net/ Paint.NET] — ещё один бесплатный редактор изображений, широко используется




----
----
<center>
<center>
=== CM-SS13 Spriting Visual Aids ===
=== Визуальные подсказки по спрайтингу CM-SS13 ===
----
----
</center>
</center>
==== [[File:Advtraumakit.png|32px]] Item Spriting [[File:Advtraumakit.png|32px]] ====
==== [[File:Advtraumakit.png|32px]] Спрайтинг предметов [[File:Advtraumakit.png|32px]] ====
{| style="border: 2px solid black; class="mw-collapsible mw-collapsed" style="width:53%"
{| style="border: 2px solid black; class="mw-collapsible mw-collapsed" style="width:53%"
  ! style="background-color:#7cbb90;"| <center>'''CM-SS13 Item Spriting Style References:'''</center>
  ! style="background-color:#7cbb90;"| <center>'''Ссылки по стилю спрайтинга предметов CM-SS13:'''</center>
|-
|-
|style="border: 2px solid black; border-bottom: 2px solid black; padding: 5px;" |
|style="border: 2px solid black; border-bottom: 2px solid black; padding: 5px;" |
----
----
{| style="border: 2px solid black; class="mw-collapsible mw-collapsed"
{| style="border: 2px solid black; class="mw-collapsible mw-collapsed"
  ! style="background-color:#ffad98;"|<center>'''Reference Image for Sprites:'''</center>
  ! style="background-color:#ffad98;"|<center>'''Изображение для ссылок на спрайты:'''</center>
|-
|-
|style="border: 2px solid black; border-bottom: 2px solid black; padding: 5px;" |<center>[[File:Spriting_Reference_Image.png]]</center>
|style="border: 2px solid black; border-bottom: 2px solid black; padding: 5px;" |<center>[[File:Spriting_Reference_Image.png]]</center>
Строка 195: Строка 144:
----
----
{| style="border: 2px solid black; class="mw-collapsible mw-collapsed"
{| style="border: 2px solid black; class="mw-collapsible mw-collapsed"
  ! style="background-color:#ffad98;"|<center>'''Spriting:'''</center>
  ! style="background-color:#ffad98;"|<center>'''Спрайтинг:'''</center>
|-
|-
|style="border: 2px solid black; border-bottom: 2px solid black; padding: 5px;" |<center>[[File:CM_Spriting_Style.png]]</center>
|style="border: 2px solid black; border-bottom: 2px solid black; padding: 5px;" |<center>[[File:CM_Spriting_Style.png]]</center>
Строка 201: Строка 150:
----
----
{| style="border: 2px solid black; class="mw-collapsible mw-collapsed"
{| style="border: 2px solid black; class="mw-collapsible mw-collapsed"
  ! style="background-color:#ffad98;"|<center>'''Final Product:'''</center>
  ! style="background-color:#ffad98;"|<center>'''Конечный продукт:'''</center>
|-
|-
|-
|-
Строка 210: Строка 159:




==== [[File:Jumpsuit.png|32px]] Uniform Spriting [[File:Jumpsuit.png|32px]] ====
==== [[File:Jumpsuit.png|32px]] Спрайтинг униформы [[File:Jumpsuit.png|32px]] ====


{| style="border: 2px solid black; class="mw-collapsible mw-collapsed" style="width:53%"
{| style="border: 2px solid black; class="mw-collapsible mw-collapsed" style="width:53%"
  ! style="background-color:#7cbb90;"|<center>'''CM-SS13 Uniform Spriting Style References:'''</center>
  ! style="background-color:#7cbb90;"|<center>'''Ссылки по стилю спрайтинга униформы CM-SS13:'''</center>
|-
|-
|style="border: 2px solid black; border-bottom: 2px solid black; padding: 5px;" |
|style="border: 2px solid black; border-bottom: 2px solid black; padding: 5px;" |
----
----
{| style="border: 2px solid black; class="mw-collapsible mw-collapsed"
{| style="border: 2px solid black; class="mw-collapsible mw-collapsed"
  ! style="background-color:#ffad98;"|<center>'''Basic Uniform Progression:'''</center>
  ! style="background-color:#ffad98;"|<center>'''Основной прогресс униформы:'''</center>
|-
|-
|style="border: 2px solid black; border-bottom: 2px solid black; padding: 5px;" |<center>[[File:Spriting_On_Mob_Reference_Images.png|link=https://cm-ss13.com/wiki/images/d/d9/Spriting_On_Mob_Reference_Images.png]]
|style="border: 2px solid black; border-bottom: 2px solid black; padding: 5px;" |<center>[[File:Spriting_On_Mob_Reference_Images.png|link=https://cm-ss13.com/wiki/images/d/d9/Spriting_On_Mob_Reference_Images.png]]
|}
|}
<small> ''Expand the table for visual aid and click on the image to get the full resolution version.''</small>
<small> ''Разверните таблицу для визуальной помощи и кликните на изображение, чтобы получить версию в полном разрешении.''</small>
 


<tabs>
<tabs>
<tab name="General Shape: Step One">
<tab name="Общая форма: Шаг первый">
For our first step, we want to define where our shirt, pants, belt and any other accessories may go on our model. We're not worrying about shading or anything complex at the moment, we just want to get a sense for what our sprite is going to eventually look like. You can take it a step further and use multiple shades to map out the chest, groin, legs, arms, etc. However, it is important to remember that we're not trying to be overly complex right now, or spend too much time on this step. We want most of our time to be spent on the shading, not the blueprint, so just get down what's important and improve it later. A video by Frans will be available at a later date showing how to do side directions.
На первом шаге нам нужно определить, где будут располагаться рубашка, штаны, пояс и другие аксессуары на нашем спрайте. Мы пока не заботимся о затенении или других сложных деталях, мы просто хотим наметить, как наш спрайт будет выглядеть в конечном итоге. Вы можете добавить несколько оттенков для отображения груди, паха, ног, рук и других частей тела. Однако важно помнить, что сейчас не стоит углубляться в сложные детали или тратить слишком много времени на этот шаг. Мы хотим, чтобы основное время было потрачено на затенение, а не на чертеж, поэтому на данном этапе нужно только наметить важные элементы и улучшать их позже. Видео от Франса, показывающее, как делать спрайты для боковых направлений, будет доступно позже.
 
</tab>
</tab>


<tab name="Outlines: Step Two">
<tab name="Контуры: Шаг второй">
A big part of what makes the CM artstyle is the use of heavy outlines on our sprites. On clothing specifically, you can breakup the outlines with lighter shades to give it a smoother appearance. This step however is all about laying the foundation for your shading, and giving your sprite some definition. Note that your outline isn't set and stone, however, and that it's perfectly acceptable to move it around during the shading stage. Similar to step one, don't spend too much time here.
Важной частью стиля CM является использование тяжелых контуров на наших спрайтах. Особенно для одежды, вы можете разорвать контуры светлыми оттенками, чтобы сделать их более плавными. Этот шаг ориентирован на закладку основы для затенения и добавления определения вашему спрайту. Однако контуры не должны быть жесткими и неизменными, и вполне допустимо перемещать их во время затенения. Как и на первом шаге, не тратьте слишком много времени на это.
</tab>
</tab>


<tab name="Shading: Step Three">
<tab name="Затенение: Шаг третий">
The most important step, most of your time will be spent here. Around the armpits and belt are where you'll typically see your darker shades. The inner leg is also typically darker then the outer leg. Commonly with CM sprites, the chest and stomach are distinct from one another, with a line to separate the two. Don't be afraid to experiment with your shading until it looks just right.
Это самый важный шаг, и основное время будет потрачено именно здесь. В области подмышек и пояса обычно используются темные оттенки. Внутренняя сторона ног часто темнее, чем внешняя. Обычно на спрайтах CM грудь и живот разделены линией. Не бойтесь экспериментировать с затенением, пока оно не станет идеальным.
</tab>
</tab>
</tabs>
</tabs>
Строка 241: Строка 190:
|}
|}


== Ресурсы по картографии ==
[[CM13 Mapping Crash Course]]. Всеобъемлющее руководство по StrongDMM и концепциям картографирования в CM13. Независимо от уровня подготовки, начните с этого.


----
'''Включает справочник по горячим клавишам и меню StrongDMM. Его можно найти в формате PDF в канале #codebase-announcements на нашем Discord-сервере.'''


== Mapping Resources ==
[[Distress Signal Map Essentials]]. Более конкретный список того, что составляет основу карт Distress Signal.
[[CM13 Mapping Crash Course]]. A comprehensive and generalized guide to StrongDMM and
CM13 mapping concepts. Regardless of skill level, you should start here.


'''This includes a StrongDMM hotkey and menu reference. It can be found as a PDF in #codebase-announcements in our Discord.'''
'''Рекомендуемое ПО:'''
*  [https://github.com/SpaiR/StrongDMM StrongDMM], рекомендованный инструмент для картографирования CM13.
*  [https://fastdmm2.ss13.io/ FastDMM2], веб-редактор карт. Преемник оригинального FastDMM.


[[Distress Signal Map Essentials]]. A more specific list of what makes Distress Signal maps tick.
== Ресурсы по программированию ==
[https://discord.gg/Vh8TJp9 Козерог-сервер для кодеров.] Если вам нужна помощь с хостингом сервера или пониманием кода и логики Byond, это Discord-сервер, который стоит посетить.


'''Software recommendations:'''
[https://www.byond.com/docs/ref/#/DM Документация по Dream Maker.] Справочник по всем вопросам, связанным с кодированием для Dream Maker.
[https://github.com/SpaiR/StrongDMM StrongDMM], CM13’s recommended mapping tool of choice.
*  [https://fastdmm2.ss13.io/ FastDMM2], a web based map editor. The successor to the original FastDMM.


== Coding Resources ==
'''Рекомендуемое ПО:'''
[https://discord.gg/Vh8TJp9 The coderbus.] If you need help hosting a server or understanding byond code and logic, this is discord server you should visit.
*  [https://code.visualstudio.com/ Visual Studio Code]. IDE, которая поддерживает плагины для языка Byond и интеграцию с Git. Рекомендуется для использования.
 
[https://www.byond.com/docs/ref/#/DM Dream Maker reference documentation.] This is a reference guide to all things code related for Dream Maker.
 
'''Software recommendations:'''
*  [https://code.visualstudio.com/ Visual Studio Code]. An IDE that has Byond language plugins and Git integration. Highly
recommended.


=== Git ===
=== Git ===
* [[Guide to Git]] - Gets you started with a modern development environment and your first Git commits.
* [[Guide to Git]] - Начало работы с современным развитием и первыми коммитами Git.
 
'''Software recommendations:'''
*  [https://git-scm.com/ Git], what you actually need to get started. Make sure to install this before anything.


= How to Host a Private Server =
'''Рекомендуемое ПО:'''
*  [https://git-scm.com/ Git], то, что вам нужно для начала. Убедитесь, что вы установили его до всего остального.


==Changing Permissions==
= Как хостить частный сервер =
* Go to Config then Examples and copy every file
* Go back to Config and paste those files and open admins.txt
* Below the example put your ckey and then rank desired
So it should look like:


==Изменение прав доступа==
* Перейдите в Config, затем в Examples и скопируйте все файлы.
* Вернитесь в Config и вставьте эти файлы, откройте admins.txt.
* Под примером добавьте свой ckey и желаемый ранг.
Пример:
CKEY - Host
CKEY - Host
* Save
* Сохраните.


==Compiling the server==
==Компиляция сервера==
* Go to the Bin folder (in the CM code you just downloaded) and then double click on server.cmd
* Перейдите в папку Bin (в папке с кодом CM, который вы только что скачали), дважды щелкните на server.cmd.
* While that's running search cmd in windows start menu and open it.
* Пока он работает, откройте командную строку (cmd) через меню «Пуск» в Windows.
* Enter ipconfig/all into the command prompt and locate your ipv4 (Your IP) and copy it
* Введите ipconfig/all в командной строке и найдите свой ipv4 (Ваш IP) и скопируйте его.
* Open byond and go to the top right cog, and then click on open location.
* Откройте Byond и перейдите в верхний правый угол, затем нажмите на значок шестеренки и выберите "open location".
* In the top bar you want to enter your IP and add :1337 to the end. After that click add and give it a name in the bottom bar of the popup. You've now created a private server bookmark. Once done you can press OK, it will immediately attempt to connect to the bookmark, if you don't connect server.cmd is most likely still running and creating paths etc.
* В верхней строке введите свой IP и добавьте :1337 в конце. После этого нажмите "add" и дайте название в нижней строке всплывающего окна. Теперь у вас есть закладка для частного сервера. После этого можно нажать OK, и программа сразу попытается подключиться к закладке. Если соединение не установлено, скорее всего server.cmd всё ещё работает и создаёт пути и прочее.
* Profit
* Готово!


''To use your private server bookmark again, just open location again and click on the bottom bar, and select the bookmark you made previously.''
''Чтобы снова использовать закладку для частного сервера, просто откройте location и выберите ранее созданную закладку.''

Текущая версия от 01:15, 5 мая 2025

Официальный репозиторий CM-SS13 и наш репозиторий BandaMarines

Вклад в разработку игры

Руководство

С чего начать

Мы рады, что вы решили внести вклад в проект CM13 или хотя бы бегло ознакомиться с этим руководством. Прежде чем приступить к реализации своих идей — кодингу, маппингу, спрайтам и участию в каналах для контрибьюторов — вам следует, как минимум, ознакомиться с разделом с руководящими принципами, а также просмотреть разделы «Чего мы хотим» и «Чего мы не хотим». В самом конце этого краткого руководства вы найдёте ссылки на различные гайды и обучающие материалы, которые мы рекомендуем. Не все они были написаны специально для CM13 или даже для BYOND в целом, но материалы, созданные их авторами, являются чрезвычайно ценными.

CM13 — лишь набросок идеи

CM13 по сути представляет собой две разные игры, объединённые в одну: умеренно стратегический командный deathmatch в повседневном геймплее (хотя, если быть точнее, это скорее смесь иммерсивного симулятора и экшен-ролевой игры), с сопутствующей вселенной и сеттингом, создающими основу для ролевого взаимодействия. Мы приглашаем контрибьюторов развивать игру и расширять её, опираясь на свой собственный опыт. Сила CM13 и SS13 в целом — в разнообразии идей и видений, которыми обмениваются игроки, участники и разработчики. Несмотря на наличие общего курса развития, задаваемого командой разработчиков, именно игроки поддерживают сервер живым — и именно из числа игроков выходят большинство разработчиков.

Одна из отличительных черт CM13 — это внимание к мелочам и взаимодействие между системами. Возможность смазать оружие перед высадкой, переключение режимов у M56B Smartgun, выбор эволюционного штамма у Чужих — крупные и мелкие детали делают игру интересной как для новичков, так и для ветеранов.

Именно здесь вы, как контрибьютор, можете проявить себя — будь то работа над устаревшими спрайтами из Bay12, добавление Nightmare-вставок на карты Big Red и LV, или реализация новых функций, формирующих уникальные истории каждого раунда. Каждый коммит имеет значение. Однако, в вопросах общего направления проекта последнее слово всегда остаётся за командой разработчиков. Вклад в проект — это простой путь к присоединению к этой команде. Если вы хотите оказывать большее влияние на развитие игры, мы рекомендуем сначала освоиться с нашим кодом и системами, а затем присоединиться.

Руководящие принципы

Эти принципы — не строгие правила, а скорее советы, призванные помочь вам и другим контрибьюторам создать продуктивную и комфортную атмосферу совместной работы. Помните: каждый, даже самый талантливый программист или художник, когда-то писал свой первый "Hello world" или делал первый мазок кистью. Среди нас будут новички и те, кто работает инженерами в реальной жизни.

Никогда не делайте предположений о других участниках и не забывайте оставаться скромными, помогая друг другу. Большое эго — кратчайший путь к плохой репутации. У всех свои идеи, и то, что чья-то идея отличается от вашей, не делает её плохой.

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

Если сомневаетесь — спрашивайте. Принимайте конструктивную критику и прислушивайтесь к мейнтейнерам и разработчикам.


Чего мы хотим

Как уже было сказано: «Команда разработчиков и её решения имеют приоритет над мнением игроков и контрибьюторов». Это применимо и к тому, что скорее всего будет принято через Merge Request. Список ниже — не полный, но он даст общее представление о том, что хотелось бы видеть в пулл-реквестах.

Спрайты

  • Замена устаревших спрайтов из Bay12
  • Уникальные дизайны штаммов Чужих (для тех, у кого их ещё нет)
  • Альтернативные спрайты для Чужих
  • Сортировка иконок по образцу оружейных листов
  • Новые косметические предметы экипировки, например, шлемы
  • Кастомные тайлсеты для карт, которые их не имеют
  • Уникальные объекты и детали для конкретных карт
  • Формы и экипировка колонистов, привязанные к картам
  • Дополнительные стили HUD
  • Исправления багов и устранение несоответствий

Карты

  • Nightmare-вставки
  • Улучшения размещения объектов (например, расширение узких коридоров и путей, загромождённых объектами)
  • Дополнительные декоративные элементы (если они не ухудшают производительность)
  • Удаление тупиков и бесполезных зон на картах
  • Новые карты*
  • Исправления багов и устранение несоответствий
Примечание о новых картах

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

Кодинг

  • Улучшения качества жизни, не влияющие на баланс, но повышающие удобство
  • Оптимизация и уменьшение задержек
  • Рефакторинг серверных систем ради стабильности и производительности
  • Минорные функции, не меняющие цикл раунда
  • Любые задачи с публичного таск-борда
  • Новые штаммы Чужих
  • Новые технологии для Чужих и Морпехов
  • Удаление устаревших механик из Bay12 (например, wizard backend, лазерные глаза и пр.)
  • Уникальные loadout-наборы для выживших на конкретных картах
  • Исправления багов и устранение несоответствий


Чего мы не хотим

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

Хотя этот список не является исчерпывающим, он даст вам хорошее представление о том, чего следует избегать при работе с нашей кодовой базой. Если вы создадите MR, затрагивающий один или несколько пунктов из списка, это не означает автоматический отказ (иногда такие изменения могут быть полезными), но, скорее всего, это серьёзно уменьшит шанс того, что ваш MR будет принят и слит. Так что не говорите, что вас не предупреждали!

Спрайты

Мы уже обеспечены художниками и спрайтами оружия.

  • Перерисовка недавно обновлённого контента, такого как униформа, оружие, броня морпехов
  • Перерисовка, радикально меняющая стиль предмета/объекта в духе CM (например, превращение формы штаб-офицера в парадную форму)
  • Изменения донатных предметов (исключение — для самих доноров, вносящих изменения в свои вещи)
  • Изменения, затрагивающие крупные фракции без предварительного одобрения (если его нет — рассчитывайте на отказ)
  • Юморные спрайты (если только они не выдающегося качества)
  • Изменения спрайтов обвесов/модулей
  • Тактикульное снаряжение. Мы — ретро-футуризм, или кассетный панк, если угодно

Карты

  • Nightmare-вставки с нелепым лутом или неуместные (например, снег на LV)
  • Существенные изменения проходов или ремапы "наследуемых" карт
  • Крупные ремапы без предварительного согласования
  • Детализация, ухудшающая пространство арены или мешающая геймплею

Код

  • Изменения только чисел баланса (урон, отдача, здоровье, броня, скорость и т.д.), без другого наполнения (без согласования)
  • Удаление не-наследуемых механик
  • Крупные переработки игрового процесса без согласования
  • Добавление новых фракций, антагонистов или рас
  • Ещё раз — никаких новых рас, даже арктуриан
  • Новые кассеты
  • Удаление техники
  • Новые профессии/роли
  • Изменения в вайтлист-ролях
  • Удаление профессий/ролей
  • Глобальные переработки профессий/ролей

Помните: списки выше не являются исчерпывающими. Вы можете предложить MR с изменением, попадающим под категорию "чего мы не хотим", и он всё равно может быть принят. Просто шанс крайне низкий.

Ресурсы и ссылки

Ресурсы по спрайтингу

Визуальный и тематический гайд по стилю спрайтов CM-SS13, подготовленный нашей спрайт-командой. Всё ещё в разработке, будет выложен позже.

Рекомендуемое ПО:

  • Krita — бесплатный редактор с открытым исходным кодом
  • FireAlpaca — мощная бесплатная программа для рисования
  • GIMP — альтернатива Photoshop
  • Aseprite — специализированный редактор для пиксель-арта. Настоятельно рекомендуется
  • Photoshop — индустриальный стандарт
  • Photopea — браузерный аналог Photoshop, полностью бесплатен
  • Paint.NET — ещё один бесплатный редактор изображений, широко используется



Визуальные подсказки по спрайтингу CM-SS13


Спрайтинг предметов

Ссылки по стилю спрайтинга предметов CM-SS13:

Изображение для ссылок на спрайты:

Спрайтинг:

Конечный продукт:


Спрайтинг униформы

Ссылки по стилю спрайтинга униформы CM-SS13:

Основной прогресс униформы:

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


На первом шаге нам нужно определить, где будут располагаться рубашка, штаны, пояс и другие аксессуары на нашем спрайте. Мы пока не заботимся о затенении или других сложных деталях, мы просто хотим наметить, как наш спрайт будет выглядеть в конечном итоге. Вы можете добавить несколько оттенков для отображения груди, паха, ног, рук и других частей тела. Однако важно помнить, что сейчас не стоит углубляться в сложные детали или тратить слишком много времени на этот шаг. Мы хотим, чтобы основное время было потрачено на затенение, а не на чертеж, поэтому на данном этапе нужно только наметить важные элементы и улучшать их позже. Видео от Франса, показывающее, как делать спрайты для боковых направлений, будет доступно позже.

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

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


Ресурсы по картографии

CM13 Mapping Crash Course. Всеобъемлющее руководство по StrongDMM и концепциям картографирования в CM13. Независимо от уровня подготовки, начните с этого.

Включает справочник по горячим клавишам и меню StrongDMM. Его можно найти в формате PDF в канале #codebase-announcements на нашем Discord-сервере.

Distress Signal Map Essentials. Более конкретный список того, что составляет основу карт Distress Signal.

Рекомендуемое ПО:

  • StrongDMM, рекомендованный инструмент для картографирования CM13.
  • FastDMM2, веб-редактор карт. Преемник оригинального FastDMM.

Ресурсы по программированию

Козерог-сервер для кодеров. Если вам нужна помощь с хостингом сервера или пониманием кода и логики Byond, это Discord-сервер, который стоит посетить.

Документация по Dream Maker. Справочник по всем вопросам, связанным с кодированием для Dream Maker.

Рекомендуемое ПО:

  • Visual Studio Code. IDE, которая поддерживает плагины для языка Byond и интеграцию с Git. Рекомендуется для использования.

Git

  • Guide to Git - Начало работы с современным развитием и первыми коммитами Git.

Рекомендуемое ПО:

  • Git, то, что вам нужно для начала. Убедитесь, что вы установили его до всего остального.

Как хостить частный сервер

Изменение прав доступа

  • Перейдите в Config, затем в Examples и скопируйте все файлы.
  • Вернитесь в Config и вставьте эти файлы, откройте admins.txt.
  • Под примером добавьте свой ckey и желаемый ранг.

Пример: CKEY - Host

  • Сохраните.

Компиляция сервера

  • Перейдите в папку Bin (в папке с кодом CM, который вы только что скачали), дважды щелкните на server.cmd.
  • Пока он работает, откройте командную строку (cmd) через меню «Пуск» в Windows.
  • Введите ipconfig/all в командной строке и найдите свой ipv4 (Ваш IP) и скопируйте его.
  • Откройте Byond и перейдите в верхний правый угол, затем нажмите на значок шестеренки и выберите "open location".
  • В верхней строке введите свой IP и добавьте :1337 в конце. После этого нажмите "add" и дайте название в нижней строке всплывающего окна. Теперь у вас есть закладка для частного сервера. После этого можно нажать OK, и программа сразу попытается подключиться к закладке. Если соединение не установлено, скорее всего server.cmd всё ещё работает и создаёт пути и прочее.
  • Готово!

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