реклама
Бургер менюБургер меню

Михаил Леднев – Код Тени (страница 11)

18

defi test gravity control():

Тестирование контроля гравитации в песочнице

printi( ТЕСТ КОНТРОЛЯ ГРАВИТАЦИИ… )

Создаем тестовые объекты

test objects = sandbox.create test objects(5)

Применяем гравитацию

ifor i, obj in enumerate(test objects):

gravity strength = 0.5 + (i 0.2)

result = sandbox.test reality hack(

adjust gravity ,

target : obj, multiplier : gravity strength

)

ifi result[ success ]:

printi(f ОБЪЕКТ i : ГРАВИТАЦИЯ gravity strength g )

log skill progress( gravity control , 10)

elsei:

printi(f ОБЪЕКТ i : ОШИБКА result[ error ] )

test gravity control()

НАБЛЮДЕНИЕ: Объекты в песочнице начали падать с разной скоростью. Один парил в воздухе, другой притянулся к полу с огромной силой.

ЭКСПЕРИМЕНТ 2: МОДИФИКАЦИЯ ПАМЯТИ NPC

defi test memory manipulation():

Тестирование перезаписи памяти

printi( ТЕСТ МОДИФИКАЦИИ ПАМЯТИ… )

Создаем тестового NPC

test npc = sandbox.create sentient entity()

original memory = test npc.recall memory( childhood )

Внедряем ложное воспоминание

false memory =

event : встреча с инопланетянами ,

emotion : удивление ,

details : они показали мне код вселенной

result = sandbox.test reality hack(

modifiy memory ,

target : test npc, memory key : childhood , new memory : false memory

)

ifi result[ success ]:

new memory = test npc.recall memory( childhood )

ifi new memory[ event ] == встреча с инопланетянами :

printi( ПАМЯТЬ УСПЕШНО ИЗМЕНЕНА! )

log skill progress( memory manipulation , 15)

Проверяем последствия

analyze behavior changes(test npc)

СИСТЕМА ПРОКАЧКИ НАВЫКОВ

По мере экспериментов я разработал систему отслеживания прогресса:

class SkillSystem:

defi init (self):

self.skills =

reality perception : level : 1, xp : 0, max xp : 100 ,

code manipulation : level : 1, xp : 0, max xp : 150 ,

system hacking : level : 1, xp : 0, max xp : 200 ,

dimension control : level : 1, xp : 0, max xp : 250

self.unlocked abilities = []

defi gain xp(self, skill, amount):

Получение опыта для навыка

self.skills[skill][ xp ] += amount

Проверка уровня

ifi self.skills[skill][ xp ] .= self.skills[skill][ max xp ]:

self.level up(skill)

defi level up(self, skill):

Повышение уровня навыка

self.skills[skill][ level ] += 1

self.skills[skill][ xp ] = 0

self.skills[skill][ max xp ] = int(self.skills[skill][ max xp ] 1.5)

printi(f УРОВЕНЬ skill ПОВЫШЕН ДО self.skills[skill][ level ] ! )

Разблокировка новых способностей