Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat: Амбиции #1236

Merged
merged 44 commits into from
Sep 20, 2022
Merged

Feat: Амбиции #1236

merged 44 commits into from
Sep 20, 2022

Conversation

PhantornRU
Copy link
Contributor

@PhantornRU PhantornRU commented Aug 21, 2022

Fixes:

#1352
#1354

What Does This PR Do

Кучу времени я разрабатывал время от времени систему амбиций и наконец-то доделал спустя месяц.

Авоут одобрен: https://discord.com/channels/617003227182792704/755125334097133628/1012641966091153448

На данный момент готово: ~1500 амбиций

Что такое амбиции?
Амбиции - РП-задачи не нацеленные на антагонистские действия, не нарушающие правила и разнообразивающие РП-игру игроков, которые решили себе их выдать. Ролевые мирные цели, направленные на получение легальной возможности для смысла своей жизни, если игрок не может придумать, чем ему хотелось бы заняться в раунде или его голова не варит/не хочет и он уповается на богов рандома.
Данные амбиции не подкреплены никакими механиками и рассчитаны целиком и полностью на отыгрыш игрока. Они по прежнему не могут нарушить правила и не дают на это разрешение.

R7 Самоантагонизм - получит приписку:

  • Амбиции не дают право нарушать правила, следует избегать антагонистских вариантов выполнения своих амбиций.

Амбиции подразделяются на 2 основных раздела:

Общие

Амбиции, которые может получить любая должность.

Отделов

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

Отдельные особенности:
Бригмед получает амбиции не только СБ, но и Мед. отдела.
Главы могут получить амбиции своих отделов.
НТР может получить общие амбиции закона.
Магистрат может получить общие амбиции глав.

Ambition Code

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

  • [random_crew] - случайный член экипажа
  • [random_departament] - случайный отдел
  • [random_departament_crew] - наименования членов отдела
  • [random_pet] - случайный питомец
  • [random_food] - случайная еда
  • [random_drink] - случайный напиток
  • [random_holiday] - случайный праздник

Возможности амбиций

Амбиции возможно свободно добавлять и удалять, а также отдельной кнопкой указать их выполнение.
Установлено ограничение в 6 амбиций.
При добавлении новой амбиции, проверяется её уникальность, чтобы не возникало повторов.
image

Конец раунда

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

Пример выставленных амбиций:
image

Чат

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

Также в чате отписывается, какая амбиция была добавлена и выполнена.
image

Задачи и амбиции раздельны

Все амбиции записаны отдельно от должностных задач, а значит не будут сливаться в одну кашу в памяти (например у РНД и Робо).
image

Добавление новых амбиций

Все амбиции находятся в файлах JSON по пути Paradise\strings, во внутренних разделах, вида:
image

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

Why It's Good For The Game

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

@PhantornRU PhantornRU marked this pull request as draft August 21, 2022 12:56
@PhantornRU PhantornRU marked this pull request as ready for review August 23, 2022 08:54
Copy link
Contributor

@dj-34 dj-34 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Мельком пробежался

code/datums/mind.dm Outdated Show resolved Hide resolved
strings/ambition_objectives_engineering.json Outdated Show resolved Hide resolved
strings/ambition_objectives_engineering.json Outdated Show resolved Hide resolved
strings/ambition_objectives_generic.json Outdated Show resolved Hide resolved
strings/ambition_objectives_generic.json Outdated Show resolved Hide resolved
strings/ambition_objectives_security.json Outdated Show resolved Hide resolved
@PhantornRU
Copy link
Contributor Author

Шел четвертый день без еды, воды и MERG'а. Сегодня мы потеряли нашего клоуна. Он 28 раз упал на нож и сварился в котле. Похоже этот день мы еще сможем прожить. Всех пробило на смешинку.

@PhantornRU
Copy link
Contributor Author

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

@PhantornRU
Copy link
Contributor Author

Шел 6й день мерджа. Говорят другие ПРы уже спасли и замержили. Но это пока слухи. Мы не знаем когда это закончится. Но мы выстоим. Мы сильны.

@Den109G
Copy link
Contributor

Den109G commented Aug 31, 2022

Поставь капкан в тех файлах этого ПРа. Вдруг какая зверина мешает.

@PhantornRU
Copy link
Contributor Author

16 день без амбиций.
Амбиции:
Амбиция #1: Приготовлю Этанол и сам же его выпью.

image

… выдаче, причесывание кода, избавление от ошибки саппорт-отдела, первый символ теперь всегда в верхнем регистре
@PhantornRU
Copy link
Contributor Author

Интересный факт. Всего готово ~1500 амбиций.

@PhantornRU
Copy link
Contributor Author

Шла 3-я неделя без амбиций. Наши амбиции тухли на глазах.

За это время я даже пофиксить их успел при нахождении новых багов.
А еще убрал все "Вы", теперь есть только "Я"

strings/ambition_objectives_science.json Outdated Show resolved Hide resolved
code/modules/economy/Job_Departments.dm Outdated Show resolved Hide resolved
code/game/jobs/job_objective.dm Outdated Show resolved Hide resolved
strings/ambition_objectives_engineering.json Outdated Show resolved Hide resolved
code/controllers/subsystem/jobs.dm Outdated Show resolved Hide resolved
code/modules/economy/Job_Departments.dm Outdated Show resolved Hide resolved
code/game/ambitions/ambition_objective.dm Show resolved Hide resolved
strings/ambition_objectives_special.json Outdated Show resolved Hide resolved
code/game/ambitions/ambition_objective.dm Outdated Show resolved Hide resolved
text = ""
for(var/item in items)
for (var/code in random_codes)
item = replacetextEx_char(item, "[code]\]", random_choose(code))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

А ты не смотрел, есть ли какое-то готовое решение для этой задачи мб?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

есть что-то наподобии пенкода. До этого я код на его манер и делал, но по итогу это оказалось крайне грязно и не удобно, поэтому я сделал такую обработку. Примеров для этого нету, а я немало искал, это самописное.

Copy link
Contributor Author

@PhantornRU PhantornRU left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Мелкие ошибки исправил, сейчас пойду переопределять функции

@PhantornRU
Copy link
Contributor Author

Выпилена шиза
image

@PhantornRU
Copy link
Contributor Author

Ура, прошел месяц ожидания амбиций!

@Dimach Dimach merged commit a7827b6 into ss220-space:master220 Sep 20, 2022
@PhantornRU
Copy link
Contributor Author

Ура он был замержен! Ехууу! Праздник! Шампанское!

@PhantornRU PhantornRU deleted the ambitions branch September 21, 2022 02:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants