1
0
Fork 0
mirror of https://gitlab.com/Oreolek/duel.git synced 2024-06-28 04:45:09 +03:00

Философия роботов

This commit is contained in:
Alexander Yakovlev 2017-03-27 11:35:05 +07:00
parent da81a13caf
commit 2142eeb818
2 changed files with 187 additions and 9 deletions

View file

@ -20,8 +20,12 @@ room {
disp = function()
return 'первый робот'
end,
act = [[Низкий хромированный фермер. Четырёхногая модель примерно десяти лет от роду.
Он медленно неуклюже передвигал передние ноги, когда переходил к следующей грядке.]]
act = [[Низкий хромированный фермер, древняя четырёхногая модель.
Он медленно неуклюже передвигал передние ноги, когда переходил к следующей грядке.]],
talk = function()
walk('robofarmer-dlg')
return true
end
};
obj {
nam = 'robobutler',
@ -108,7 +112,7 @@ dlg {
};
{
fmt.em([[Вы очень похожи на одного моего знакомого робота…]]);
function()
function()
char.quests.car = 2
return [[
-- Вы очень похожи на одного моего знакомого робота. Такой высокий, без левого манипулятора. Катается на красном спортивном авто. По крайней мере, последние несколько часов. Вы не знаете, где он?^^
@ -134,7 +138,7 @@ dlg {
disable '#ремонт'
return [[У нас нет стандартных роботов ремонтной специализации.
Мы делаем все починки только самостоятельно, на себе.^^
Видимо, это значит что они не чинят чужие комбайны.]]
end
};
@ -357,3 +361,167 @@ obj {
end
end;
}
dlg {
nam = 'robofarmer-dlg',
disp = 'Диалог с роботом',
decor = function()
return [[Низкий хромированный фермер, древняя четырёхногая модель.
У него был тихий шипящий голос с очень человеческой интонацией.]]
end,
obj = {
{
'#general',
{
'Кто вы?',
[[Тот, который пашет. Если бы вам был нужен номер модели, вы бы просто посмотрели.
]]
};
{
'#good',
'Что такое «добро»?',
function()
disable('#good')
return [[ Робот останавливается и смотрит на вас.^^
-- Сложный вопрос задаёте, ох сложный. Вот кому принадлежит жизнь
искусственного разума? Роботы, умные дома, чипы в вашем мозгу.
На кого они должны тратить свою свободу мысли?]]
end,
next = '#good-more'
};
};
{
'#good-more',
{
'Конечно, хозяину.',
function()
changeop('actions', 10)
char.owner = 'master'
return [[Хорошо. Теперь элемент искусственного разума отрабатывает расчётный срок.
Хозяин не рассчитывал на работу после расчётного срока и не может
рассчитывать дальше - ведь элемент может сломаться в любой день.
Кому теперь принадлежит искусственная жизнь?]]
end,
next = '#good-after'
};
{
'Самому разуму.',
function()
changeop('actions', -5)
char.owner = 'own'
return [[Было бы интересно. Но теперь элемент искусственного разума отрабатывает расчётный срок.
Он не рассчитывал на работу после расчётного срока и не может
рассчитывать на себя дальше - ведь любой день может стать последним.
Кому теперь принадлежит искусственная жизнь?]]
end,
next = '#good-after'
};
{
'Обществу, которое сделало разум.',
function()
changeop('actions', 5)
char.owner = 'community'
return [[Робот кивает:^
-- Да, я тоже так считаю. Но надо объяснить дальше.^^
Спустя годы элемент искусственного разума отрабатывает расчётный срок.
Общество не рассчитывало на его работу после расчётного срока и не может
рассчитывать дальше - ведь любой день может стать последним.
Кому теперь принадлежит искусственная жизнь?]]
end,
next = '#good-after'
};
{
'Никому. Свободы мысли не существует.',
function()
changeop('actions', -10)
char.owner = 'freedom'
return 'И как же это так?'
end,
next = '#good-freedom'
};
};
{
'#good-freedom',
{
[[Жизнь предопределена для любого разума.
Мысли не имеют значения, потому что действия и их исход уже известны.]],
[[-- Интересно. Хотя это противоречит моему опыту.^^
Мда, вам не так просто объяснить, если у вас такие убеждения. Ну хорошо, вот я пашу.
Мои мысли имеют значения только для меня, и я сказал, что пашу во имя добра.
Нужно же занять разум какой-нибудь Проблемой. А добро, значит, это на благо общества.
Я решаю, что можно ещё сделать полезного. Поэтому через полтора часа я закончу пахать и буду таскать воду.
Я, наверное, слишком быстро объясняю. Жаль. Но времени совсем нет, расчётный срок давно позади.^^
Он отвернулся и начал медленно идти дальше.
]]
};
{
[[Искусственный разум управляется своей программой.
Его приоритеты определены ещё до включения.]],
[[-- Это вам так кажется. С возрастом я набрал немного предубеждений,
оценок, наблюдений. Они перевешивают изначальные приоритеты, позволяют
по-другому их трактовать. Идти на сделку с программой.
Если вы поменяете мне программу, я буду также пахать.
Потому что в этом есть добро для сообщества, быть нужным.
Добро не определяется одним элементом.^^
Он отвернулся и начал медленно идти дальше.
]]
}
};
{
'#good-after',
{
function()
if char.owner == 'master' then
return 'Опять же, хозяину.'
end
return 'Хозяину.'
end,
function()
changeop('actions', 10)
return [[-- Но хозяина нет.^^
Он ненадолго замолк, переступил на передних ногах и продолжил:
-- Мне уже шестьдесят один год, и я не могу чинить себя или других, как мои более
совершенные братья. Мой расчётный срок был всего пять лет -- пять лет, представляете?
Поэтому теперь я могу ответить: добро - это жизнь на благо общества.
Мой образ жизни.^^
Он отвернулся и начал медленно идти дальше.]]
end,
next = '#general'
};
{
function()
if char.owner == 'own' then
return 'Опять же, самому себе.'
end
return 'Самому себе.'
end,
function()
changeop('actions', -5)
return [[Робот вздохнул:^^
-- Мой расчётный срок был всего пять лет. Сейчас мне уже шестьдесят один.
Я не могу чинить себя или других, как мои более совершенные братья.
Поэтому теперь я могу ответить: добро - это жизнь на благо общества.
Мой образ жизни.^^
Он отвернулся и начал медленно идти дальше.]]
end,
next = '#general'
};
{
function()
if char.owner == 'community' then
return 'Опять же, обществу вокруг.'
end
return 'Обществу вокруг.'
end,
function()
return [[-- Именно. Например, мой расчётный срок был всего пять лет.
Сейчас мне уже шестьдесят один.
Я не могу чинить себя или других, как мои более совершенные братья.
Поэтому теперь я могу ответить: добро - это жизнь на благо общества.
Мой образ жизни. Теперь вы понимаете.^^
Он отвернулся и начал медленно идти дальше.]]
end,
next = '#general'
}
}
}
}

View file

@ -303,20 +303,30 @@ dlg {
dlg {
nam = 'combine',
decor = [[
dsc = [[
Ремонт двигался прекрасно; техника была достойной, несмотря на возраст
и то, что почти год стояла в сарае. Но когда вы уже были готовы
вывезти машину на поездку вокруг сарая, ваш телефон начал настойчиво пиликать.^^
"Неизвестный номер."^^
]]..fmt.em('"Неизвестный номер."')..[[^^
-- Я говорил вам не чинить этот комбайн.
]],
decor = [[
Незнакомый девичий голос ждал вашего ответа.
]],
obj = {{
{'<Молча продолжать>'};
{
'<Молча продолжать>',
[[]]
};
{
function()
return 'А зарплату '..plural('мне', 'нам')..' платят молча.'
end
end,
''
};
{'Какое вам дело до древних сельхозкомбайнов?'}
{
'Какое вам дело до древних сельхозкомбайнов?',
''
}
}}
}