Пару недель назад достроил атомку в #Satisfactory. Иронично: занимаюсь атомными станциями в реальной жизни по работе, и теперь вот в игре тоже.
Понравилось решение разработчиков сделать ядерные отходы неуничтожимыми. Любой ресурс в игре легко удаляется специальной кнопкой, и только атомные энергоблоки производят отходы, которые можно либо переработать очень сложным образом, либо складывать бесконечно куда-то в угол карты. А если хочешь более мощную станцию, то и переработать нельзя, только складывать.
Недавно, кстати, состоялся релиз. До этого игра была в «раннем доступе», то есть формально считалась предварительной версией в активной стадии разработки. В релизе же изящно решили сразу две значительные проблемы. Во-первых, теперь можно дорогим и конечным способом точечно масштабировать энергетику и производство в отдельных местах. Это очень нужно ближе к концу игры для тонкой настройки. Во-вторых, и это самое крутое: можно построить специальный телепорт для ресурсов себе в рюкзак. Носить с собой в рюкзаке сколько угодно ресурсов нельзя, и поэтому для действительно масштабного строительства приходилось постоянно бегать на склад, это очень утомляло. Теперь исключительно целях строительства можно забирать ресурсы с некоторой задержкой прямо из места их производства на фабриках, которые ты построил по всей карте. Но конечно для автоматической передачи в цепочках производства так читерить нельзя, и это правильно. Только организация логистики.
Игра очень хорошо учит выстраивать процессы и дает понимание ничтожности отдельного элемента, если весь процесс включает тысячи таких элементов. В общем, мастхэв, 350 часов наиграно, и до конца ещё далеко.
#games
http://pythoncentral.io/cutting-and-slicing-strings-in-python/
Python strings as sequences of #characters
Python strings are sequences of individual characters, and share their basic methods of access with those other Python sequences – #lists and #tuples.
s = 'Don Quijote'
»> s[4😏
'Quijote' # Returns from pos 4 to the end of the string
»> s[:4]
'Don ' # Returns from the beginning to pos 3
»> s[4:8:1] # 1 is the default value anyway, so same result
'Quij'
»> s[4:8:2] # Return a character, then move forward 2 positions, etc.
'Qi' # Quite interesting!
»> s.split()
['Don', 'Quijote']
»> tim = '16:30:10'
»> hrs, mins, secs = tim.split(':')
»> hrs
'16'
»> mins
'30'
»> secs
'10'
»> tim.split(':', 1) # split() only once
['16', '30:10']
»> tim.rsplit(':', 1)
['16:30', '10']
.
.
.