Skip to content

Commit

Permalink
Bitrunner translation (#90)
Browse files Browse the repository at this point in the history
## About The Pull Request
Перевод битраннера

fixes #88
fixes #89

---------

Co-authored-by: BR54FF <[email protected]>
Co-authored-by: Gaxeer <[email protected]>
  • Loading branch information
3 people authored Apr 17, 2024
1 parent a36584d commit 90eafa6
Show file tree
Hide file tree
Showing 27 changed files with 159 additions and 160 deletions.
2 changes: 1 addition & 1 deletion code/modules/bitrunning/objects/byteforge.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "byteforge"

circuit = /obj/item/circuitboard/machine/byteforge
desc = "A machine used by the quantum server. Quantum code converges here, materializing decrypted assets from the virtual abyss."
desc = "Машина, используемая квантовым сервером. Квантовый код сходится здесь, материализуя расшифрованные активы из виртуальной бездны."
icon = 'icons/obj/machines/bitrunning.dmi'
icon_state = "byteforge"
obj_flags = BLOCKS_CONSTRUCTION | CAN_BE_HIT
Expand Down
30 changes: 15 additions & 15 deletions code/modules/bitrunning/objects/netpod.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

base_icon_state = "netpod"
circuit = /obj/item/circuitboard/machine/netpod
desc = "A link to the netverse. It has an assortment of cables to connect yourself to a virtual domain."
desc = "Связущее звено с сетевым миром. Здесь есть множество кабелей для подключения себя к виртуальному домену."
icon = 'icons/obj/machines/bitrunning.dmi'
icon_state = "netpod"
max_integrity = 300
Expand Down Expand Up @@ -51,30 +51,30 @@
. = ..()

if(isnull(server_ref?.resolve()))
. += span_infoplain("It's not connected to anything.")
. += span_infoplain("Netpods must be built within 4 tiles of a server.")
. += span_infoplain("Оно ни к чему не подключено.")
. += span_infoplain("Нетподы должны быть построены на расстоянии 4-х тайлов от сервера.")
return

. += span_infoplain("Drag yourself into the pod to engage the link.")
. += span_infoplain("It has limited resuscitation capabilities. Remaining in the pod can heal some injuries.")
. += span_infoplain("It has a security system that will alert the occupant if it is tampered with.")
. += span_infoplain("Перетащите себя на под, чтобы начать подключение.")
. += span_infoplain("Под имеет ограниченные возможности реанимации. Нахождение в поде может вылечить некоторые ранения.")
. += span_infoplain("Имеется система безопасности, оповещающая пользователя, если начнется вмешательство с подом.")

if(isnull(occupant))
. += span_notice("It is currently unoccupied.")
. += span_notice("Сейчас внутри пусто.")
return

. += span_notice("It is currently occupied by [occupant].")
. += span_notice("It can be pried open with a crowbar, but its safety mechanisms will alert the occupant.")
. += span_notice("Сейчас внутри находится - [occupant].")
. += span_notice("Оно может быть насильно открыто монтировкой, но системы безопасности оповестят пользователя.")

/obj/machinery/netpod/add_context(atom/source, list/context, obj/item/held_item, mob/user)
. = ..()

if(isnull(held_item))
context[SCREENTIP_CONTEXT_LMB] = "Select Outfit"
context[SCREENTIP_CONTEXT_LMB] = "Выбрать одежду"
return CONTEXTUAL_SCREENTIP_SET

if(istype(held_item, /obj/item/crowbar) && occupant)
context[SCREENTIP_CONTEXT_LMB] = "Pry Open"
context[SCREENTIP_CONTEXT_LMB] = "Насильно открыть"
return CONTEXTUAL_SCREENTIP_SET

return CONTEXTUAL_SCREENTIP_SET
Expand Down Expand Up @@ -301,24 +301,24 @@
/obj/machinery/netpod/proc/enter_matrix()
var/mob/living/carbon/human/neo = occupant
if(!ishuman(neo) || neo.stat == DEAD || isnull(neo.mind))
balloon_alert(neo, "invalid occupant.")
balloon_alert(neo, "неверный пользователь.")
return

var/obj/machinery/quantum_server/server = find_server()
if(isnull(server))
balloon_alert(neo, "no server connected!")
balloon_alert(neo, "нет подключения к серверу!")
return

var/datum/lazy_template/virtual_domain/generated_domain = server.generated_domain
if(isnull(generated_domain) || !server.is_ready)
balloon_alert(neo, "nothing loaded!")
balloon_alert(neo, "ничего не загружено!")
return

var/mob/living/carbon/current_avatar = avatar_ref?.resolve()
if(isnull(current_avatar) || current_avatar.stat != CONSCIOUS) // We need a viable avatar
var/obj/structure/hololadder/wayout = server.generate_hololadder()
if(isnull(wayout))
balloon_alert(neo, "out of bandwidth!")
balloon_alert(neo, "кончилась пропускная способность!")
return
current_avatar = server.generate_avatar(wayout, netsuit)
avatar_ref = WEAKREF(current_avatar)
Expand Down
12 changes: 6 additions & 6 deletions code/modules/bitrunning/server/_parent.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

circuit = /obj/item/circuitboard/machine/quantum_server
density = TRUE
desc = "A hulking computational machine designed to fabricate virtual domains."
desc = "Громоздкая вычислительная машина, предназначенная для создания виртуальных доменов."
icon = 'icons/obj/machines/bitrunning.dmi'
base_icon_state = "qserver"
icon_state = "qserver"
Expand Down Expand Up @@ -78,17 +78,17 @@
/obj/machinery/quantum_server/examine(mob/user)
. = ..()

. += span_infoplain("Can be resource intensive to run. Ensure adequate power supply.")
. += span_infoplain("Может требовать много ресурсов при работе. Обеспечьте достаточное энергоснабжение.")

if(capacitor_coefficient < 1)
. += span_infoplain("Its coolant capacity reduces cooldown time by [(1 - capacitor_coefficient) * 100]%.")
. += span_infoplain("Вместимость охладителя уменьшает время задержки на [(1 - capacitor_coefficient) * 100]%.")

if(servo_bonus > 0.2)
. += span_infoplain("Its manipulation potential is increasing rewards by [servo_bonus]x.")
. += span_infoplain("Injury from unsafe ejection reduced [servo_bonus * 100]%.")
. += span_infoplain("Потенциал манипуляторов увеличивает награду на [servo_bonus]x.")
. += span_infoplain("Повреждения, получаемые при небезопасном выходе, уменьшены на [servo_bonus * 100]%.")

if(!is_ready)
. += span_notice("It is currently cooling down. Give it a few moments.")
. += span_notice("Сервер охлаждается, пожалуйста, ожидайте.")

/obj/machinery/quantum_server/emag_act(mob/user, obj/item/card/emag/emag_card)
. = ..()
Expand Down
28 changes: 14 additions & 14 deletions code/modules/bitrunning/server/loot.dm
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@

var/obj/item/paper/certificate = new()
certificate.add_raw_text(get_completion_certificate())
certificate.name = "certificate of domain completion"
certificate.name = "сертификат о прохождении домена"
certificate.update_appearance()

var/obj/structure/closet/crate/secure/bitrunning/decrypted/reward_cache = new(src, generated_domain, bonus)
Expand Down Expand Up @@ -61,37 +61,37 @@

var/time_difference = world.time - generated_domain.start_time

var/completion_time = "### Completion Time: [DisplayTimeText(time_difference)]\n"
var/completion_time = "### Время завершения: [DisplayTimeText(time_difference)]\n"

var/grade = "\n---\n\n# Rating: [grade_completion(time_difference)]"
var/grade = "\n---\n\n# Рейтинг: [grade_completion(time_difference)]"

var/text = "# Certificate of Domain Completion\n\n---\n\n"
var/text = "# Сертификат о прохождении домена\n\n---\n\n"

text += "### [generated_domain.name][domain_randomized ? " (Randomized)" : ""]\n"
text += "- **Difficulty:** [generated_domain.difficulty]\n"
text += "- **Threats:** [domain_threats]\n"
text += "- **Base Reward:** [base_points][domain_randomized ? " +1" : ""]\n\n"
text += "- **Total Bonus:** [bonuses]x\n\n"
text += "### [generated_domain.name][domain_randomized ? " (Случайно)" : ""]\n"
text += "- **Сложность:** [generated_domain.difficulty]\n"
text += "- **Угрозы:** [domain_threats]\n"
text += "- **Начальная награда:** [base_points][domain_randomized ? " +1" : ""]\n\n"
text += "- **Общий бонус:** [bonuses]x\n\n"

if(bonuses <= 1)
text += completion_time
text += grade
return text

text += "### Bonuses\n"
text += "### Бонусы\n"
if(domain_randomized)
text += "- **Randomized:** + 0.2\n"
text += "- **Случайно:** + 0.2\n"

if(length(avatar_connection_refs) > 1)
text += "- **Multiplayer:** + [(length(avatar_connection_refs) - 1) * multiplayer_bonus]\n"
text += "- **Множитель:** + [(length(avatar_connection_refs) - 1) * multiplayer_bonus]\n"

if(domain_threats > 0)
text += "- **Threats:** + [domain_threats * 2]\n"
text += "- **Угрозы:** + [domain_threats * 2]\n"

var/servo_rating = servo_bonus

if(servo_rating > 0.2)
text += "- **Components:** + [servo_rating]\n"
text += "- **Компоненты:** + [servo_rating]\n"

text += completion_time
text += grade
Expand Down
20 changes: 10 additions & 10 deletions code/modules/bitrunning/server/map_handling.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@
return

if(!length(avatar_connection_refs))
balloon_alert_to_viewers("powering down domain...")
balloon_alert_to_viewers("отключение домена...")
playsound(src, 'sound/machines/terminal_off.ogg', 40, vary = TRUE)
reset()
return

balloon_alert_to_viewers("notifying clients...")
balloon_alert_to_viewers("оповещаем клиентов...")
playsound(src, 'sound/machines/terminal_alert.ogg', 100, vary = TRUE)
user.visible_message(
span_danger("[user] begins depowering the server!"),
span_notice("You start disconnecting clients..."),
span_danger("You hear frantic keying on a keyboard."),
span_danger("[user] начинает отключать сервер!"),
span_notice("Вы отключаете клиентов..."),
span_danger("Вы слышите быстрый стук клавиш по клавиатуре."),
)

SEND_SIGNAL(src, COMSIG_BITRUNNER_SHUTDOWN_ALERT, user)
Expand All @@ -30,23 +30,23 @@
return FALSE

if(isnull(map_key))
balloon_alert_to_viewers("no domain specified!")
balloon_alert_to_viewers("домен не выбран!")
return FALSE

if(generated_domain)
balloon_alert_to_viewers("stop the current domain first!")
balloon_alert_to_viewers("остановите текущий домен!")
return FALSE

if(length(avatar_connection_refs))
balloon_alert_to_viewers("all clients must disconnect!")
balloon_alert_to_viewers("все клиенты должны отключиться!")
return FALSE

is_ready = FALSE
playsound(src, 'sound/machines/terminal_processing.ogg', 30, 2)

/// If any one of these fail, it reverts the entire process
if(!load_domain(map_key) || !load_map_items() || !load_mob_segments())
balloon_alert_to_viewers("initialization failed!")
balloon_alert_to_viewers("инициализация провалена!")
scrub_vdom()
is_ready = TRUE
return FALSE
Expand All @@ -57,7 +57,7 @@
setup_glitch()

playsound(src, 'sound/machines/terminal_insert_disc.ogg', 30, vary = TRUE)
balloon_alert_to_viewers("domain loaded.")
balloon_alert_to_viewers("домен загружен.")
generated_domain.start_time = world.time
points -= generated_domain.cost
update_use_power(ACTIVE_POWER_USE)
Expand Down
10 changes: 5 additions & 5 deletions code/modules/bitrunning/virtual_domain/domains/abductor_ship.dm
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
/datum/lazy_template/virtual_domain/abductor_ship
name = "Abductor Ship"
name = "Корабль абдукторов"
cost = BITRUNNER_COST_MEDIUM
desc = "Board an abductor ship and take their goodies."
desc = "Высадитесь на корабль абдукторов и заберите их ценности."
difficulty = BITRUNNER_DIFFICULTY_MEDIUM
completion_loot = list(/obj/item/toy/plush/abductor/agent = 1)
help_text = "An abductor mothership unknowingly entered a hostile environment. \
They are currently preparing to escape the area with their gear and loot including \
the crate. Be careful, they are known for their advanced weaponry."
help_text = "Материнский корабль абдукторов непреднамеренно вошел во враждебное окружение. \
В настоящее время они готовятся покинуть зону, прихватив своё снаряжение и добычу, включая \
ящик. Будьте осторожны, так как абдукторы известны своим продвинутым вооружением."
is_modular = TRUE
key = "abductor_ship"
map_name = "abductor_ship"
Expand Down
4 changes: 2 additions & 2 deletions code/modules/bitrunning/virtual_domain/domains/ash_drake.dm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/datum/lazy_template/virtual_domain/ash_drake
name = "Ashen Inferno"
name = "Пепельный ад"
cost = BITRUNNER_COST_MEDIUM
desc = "Home of the ash drake, a powerful dragon that scours the surface of Lavaland."
desc = "Здесь обитает пепельный дрейк, могущественный дракон, который бороздит поверхность Лаваланда."
difficulty = BITRUNNER_DIFFICULTY_MEDIUM
forced_outfit = /datum/outfit/job/miner
key = "ash_drake"
Expand Down
8 changes: 4 additions & 4 deletions code/modules/bitrunning/virtual_domain/domains/beach_bar.dm
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
/datum/lazy_template/virtual_domain/beach_bar
name = "Beach Bar"
desc = "A cheerful seaside haven where friendly skeletons serve up drinks. Say, how'd you guys get so dead?"
name = "Бар на пляже"
desc = "Веселая пляжная обитель, где дружелюбные скелеты подают напитки. Ребят, а как вы погибли?"
completion_loot = list(/obj/item/toy/beach_ball = 1)
help_text = "This place is running on a skeleton crew, and they don't seem to be too keen to share details. \
Maybe a few drinks of liquid charm will get the spirits up. As the saying goes, if you can't beat 'em, join 'em."
help_text = "Это место работает на скелетной команде, и они не очень хотят делиться информацией. \
Может быть, парочка рюмочек жидкого очарования поднимут им настроение. Как говорится, если не можешь их победить - присоединись к ним!"
key = "beach_bar"
map_name = "beach_bar"

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/datum/lazy_template/virtual_domain/blood_drunk_miner
name = "Sanguine Excavation"
name = "Кровавые раскопки"
cost = BITRUNNER_COST_MEDIUM
desc = "Few escape the surface of Lavaland without a few scars. Some remain, maddened by the hunt."
desc = "Немногие покидают поверхность Лаваленда без парочки шрамов. Другие остаются, обезумев от охоты."
difficulty = BITRUNNER_DIFFICULTY_MEDIUM
forced_outfit = /datum/outfit/job/miner
key = "blood_drunk_miner"
Expand Down
6 changes: 3 additions & 3 deletions code/modules/bitrunning/virtual_domain/domains/breeze_bay.dm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/datum/lazy_template/virtual_domain/breeze_bay
name = "Breeze Bay"
desc = "A beach front town with a large forest to the north."
help_text = "It's simple! Enjoy some rays, catch some fish, and have a good time! Don't get bit by the crabs, though."
name = "Прохладный залив"
desc = "Городок на берегу моря с большим лесом на севере."
help_text = "Всё просто! Наслаждайтесь лучами, половите рыб и хорошо проведите время! Только не дайте крабам куснуть вас."
key = "breeze_bay"
map_name = "breeze_bay"
reward_points = BITRUNNER_REWARD_LOW
Expand Down
4 changes: 2 additions & 2 deletions code/modules/bitrunning/virtual_domain/domains/bubblegum.dm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/datum/lazy_template/virtual_domain/bubblegum
name = "Blood-Soaked Lair"
name = "Пропитанное кровью логово"
cost = BITRUNNER_COST_HIGH
desc = "King of the slaughter demons. Bubblegum is a massive, hulking beast with a penchant for violence."
desc = "Король демонов резни. Бубльгум - это массивное, громоздкое чудовище, жаждущее насилия."
difficulty = BITRUNNER_DIFFICULTY_HIGH
completion_loot = list(/obj/item/toy/plush/bubbleplush = 1)
forced_outfit = /datum/outfit/job/miner
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
/datum/lazy_template/virtual_domain/clown_planet
name = "Clown Planet"
name = "Планета клоунов"
cost = BITRUNNER_COST_LOW
desc = "In the deep, dark reaches of space, there is only Honk."
desc = "В самых темных уголках космоса есть только Хонк."
difficulty = BITRUNNER_DIFFICULTY_LOW
completion_loot = list(/obj/item/bikehorn = 1)
forced_outfit = /datum/outfit/job/clown
help_text = "The trials of the Honkitude have begun. The sound of bike horns wailing in the distance. \
this realm- some sort of puzzle, has existed in legend as the final test of just how silly you are."
help_text = "Испытания Хонкости начались. Вдалики раздаются звуки велосипедных гудков. \
Этот мир - своего рода головоломка - существует в легендах как последняя проверка вашей смешнявости."
key = "clown_planet"
map_name = "clown_planet"
reward_points = BITRUNNER_REWARD_LOW
4 changes: 2 additions & 2 deletions code/modules/bitrunning/virtual_domain/domains/colossus.dm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/datum/lazy_template/virtual_domain/colossus
name = "Celestial Trial"
name = "Небесное испытание"
cost = BITRUNNER_COST_HIGH
desc = "A massive, ancient beast named the Colossus. Judgment comes."
desc = "Массивное древнее чудовище по имени Колосс. Суд грядёт."
difficulty = BITRUNNER_DIFFICULTY_HIGH
forced_outfit = /datum/outfit/job/miner
key = "colossus"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
/datum/lazy_template/virtual_domain/gondola_asteroid
name = "Gondola Asteroid"
desc = "An asteroid home to a bountiful forest of gondolas. Peaceful."
help_text = "What a lovely forest. There's a loot crate here in the middle of the map. \
Hmm... It doesn't budge. The gondolas don't seem to have any trouble moving it, though. \
I bet there's a way to move it myself."
name = "Астероид с гондолами"
desc = "Этот астероид является домом для обильного леса с гондолами. Умиротворительно."
help_text = "Какой чудесный лес. Нужный нам ящик находится в центре леса. \
Странно, ящик не толкнуть. А вот гондолы, похоже, без проблем его передвигают. \
Наверняка есть способ сдвинуть его своими силами."
key = "gondola_asteroid"
map_name = "gondola_asteroid"

Expand Down
4 changes: 2 additions & 2 deletions code/modules/bitrunning/virtual_domain/domains/hierophant.dm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/datum/lazy_template/virtual_domain/hierophant
name = "Zealot Arena"
name = "Арена ревнителя"
cost = BITRUNNER_COST_HIGH
desc = "Dance, puppets, dance!"
desc = "Танцуйте, марионетки, танцуйте!"
difficulty = BITRUNNER_DIFFICULTY_HIGH
forced_outfit = /datum/outfit/job/miner
key = "hierophant"
Expand Down
10 changes: 5 additions & 5 deletions code/modules/bitrunning/virtual_domain/domains/pipedream.dm
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
/datum/lazy_template/virtual_domain/pipedream
name = "Disposal Pipe Factory"
name = "Завод труб отправки"
cost = BITRUNNER_COST_LOW
desc = "An abandoned and infested factory manufacturing disposal pipes."
desc = "Заброшенный и зараженный завод по производству труб отправки."
difficulty = BITRUNNER_DIFFICULTY_LOW
completion_loot = list(/obj/item/stack/pipe_cleaner_coil/random/five = 1)
help_text = "Not long ago, this place was thriving with activity. The workers \
seemed to have left in a hurry, and now productivity is in the bin. Something \
must have trashed the place, but what?"
help_text = "Не так давно здесь кипела бурная деятельность. Рабочие, \
похоже, уходили в спешке, и производительность теперь на нуле. Что-то, \
должно быть, разгромило это место, но что?"
is_modular = TRUE
key = "pipedream"
map_name = "pipedream"
Expand Down
Loading

0 comments on commit 90eafa6

Please sign in to comment.