Kujivunia

Пользователь

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Kujivunia

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

https://dota2.ru/forum/threads/simuljator-vzloma-terminala-iz-fallout-3-nv-4.1447628/

 

Некоторое время назад я писал про симулятор мини-игры взлома терминала из трёхмерных Фоллаутов. 

 

В качестве одной из главных проблем была указана проблема отсутствия мотивации играть. Нет награды. Я не очень согласен - в Судоку тоже нет награды, кроме чувства победы. Но, с другой стороны, тоже согласен. Ведь судоку - игра абстрактная. А взлом терминала тематически привязан именно ко взлому терминала. Юный взломщик, да и вообще любой адекватный человек даже на подсознательном уровне ожидает, что после взлома терминала он сможет получить доступ к какой-то хранящейся в нём информации, будь то координаты клада, дневник шизофреничного аль-гуля или диссертация на тему биохимии возникновения микротрещин в волосах на голове человека. 

 

Таким образом, передо мною стоит проблема написания "ОС" для этого терминала. Системы, которая позволит делать простейшие действия из Фоллаутов. Очевидно, что открывать двери или активировать роботов не имеет смысла по причине отсутствия окружающего мира (привет, Матрица), но создавать текстовые заметки и читать их - дело благое. 

 

Как я вижу эту "ОС"? 

  1. Она делится на "Конфигурации" или "Пользователей". При запуске терминала нужно выбрать пользователя. Если пользователь один (администратор) - грузится сразу он. При этом если нет пароля, то идёт сразу загрузка системы, а если есть - то требуется ввести пароль. В этом месте можно либо сразу писать пароль, либо... нажав секретную комбинацию клавиш (как ctrl-alt-del, только очевидно без реальных системных сочетаний винды, которые из игры я поймать не смогу) войти в "режим отладки", которым является мини-игра по взлому терминалов.
  2. Внутри содержится древовидная структура файлов. Каждый файл открывается программой, которая зависит от разрешения файла. (папка - это файл, который содержит в себе ссылки на файлы, и открывается "проводником").
  3. В большинстве случаев доступна командная строка, в которой можно вручную запустить любую программу с параметрами или без, что может понадобиться для создания нового файла или открытия программы, которая не создаёт файлы ("калькулятор", например). Соответственно, формат ввода примерно такой: "команда параметр1 параметр2 параметр3... параметрN".
 

 

А как? Серьёзно, у меня ровно нуль рабочих схем такого проекта, как я ни старался придумывать. 

Две моих лучших попытки выглядели так: 

  1. Вся система это список Object. Каждый объект - это экземпляр ICommand.ConcreteCommand. У них у всех есть три пересечения: поле для выводимого текста, поле для экранных координат и длины выводимого объекта, метод Execute(). 

    Да, я знаю. Это совершенно, мастерски, шедеврально, Евгениально. Но есть одна крошечная проблемка. Я сам не понимаю, как из этого можно сделать то, что я описал выше. 
  2. Буквально описанная выше эпидерсия. А именно, интерпретатор команд и процедуры-"программы", которые он запускает (проводник, блокнот). Всё круто. Но есть одна крошечная проблема. Я всё ещё не понимаю, рабочая ли это схема. 
 

ИТОГО: я считаю приоритетной схему №2. Что думаете вы, и есть ли у вас свои идеи на этот счёт? 

Adramanov

Пользователь

Регистрация: 01.11.2021

Сообщения: 1124

Рейтинг: 377

Adramanov

Регистрация: 01.11.2021

Сообщения: 1124

Рейтинг: 377

Теперь понимаю когда мне говорят AngryRead.gif?1616514005

Kujivunia

Пользователь

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Kujivunia

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Adramanov сказал(а):

Теперь понимаю когда мне говорят AngryRead.gif?1616514005

Нажмите, чтобы раскрыть...

Ну попробую нарисовать.

v54trnb4.png

rot1t

Пользователь

Регистрация: 15.01.2016

Сообщения: 5940

Рейтинг: 2136

Нарушения: 104

rot1t

Регистрация: 15.01.2016

Сообщения: 5940

Рейтинг: 2136

Нарушения: 104

Ты какой-то кал выдумал. Читай, как устроены операционные системы, чел

Kujivunia

Пользователь

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Kujivunia

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

rot1t сказал(а):

Ты какой-то кал выдумал. Читай, как устроены операционные системы, чел

Нажмите, чтобы раскрыть...

Ты чёт захотел повыделоваться, но забыл снять штаны. 

 

Начнём с того, что у меня в тексте слово ОС взято в кавычки: "ОС". Продолжим тем, что у меня перечислены весьма конкретные функции. 

Но для тебя походу любое игровое меню это ОС. 

rot1t

Пользователь

Регистрация: 15.01.2016

Сообщения: 5940

Рейтинг: 2136

Нарушения: 104

rot1t

Регистрация: 15.01.2016

Сообщения: 5940

Рейтинг: 2136

Нарушения: 104

Kujivunia сказал(а):

Начнём с того, что у меня в тексте слово ОС взято в кавычки: "ОС". Продолжим тем, что у меня перечислены весьма конкретные функции. 

Но для тебя походу любое игровое меню это ОС. 

Нажмите, чтобы раскрыть...

Ты вообще какой-то поток мыслей несвязный высрал. Ты начал описывать многопользовательскую систему, где есть файловая система, можно открывать простейшие приложения и терминал, как то к этому приплел фолыч, какое-то открывание дверей. Короче, клоуна поставлю на всякий случай.

 

Диаграмма говна у тебя, кстати

Kujivunia

Пользователь

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Kujivunia

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

rot1t сказал(а):

Ты вообще какой-то поток мыслей несвязный высрал. Ты начал описывать многопользовательскую систему, где есть файловая система, можно открывать простейшие приложения и терминал, как то к этому приплел фолыч, какое-то открывание дверей. Короче, клоуна поставлю на всякий случай.

 

Диаграмма говна у тебя, кстати

Нажмите, чтобы раскрыть...

Я вообще ХЗ что ты несёшь, шизофреничный бред какой-то. Тебя что, в детстве изнасиловали ОС? Или ты долбишься в глаза и не умеешь читать? 

 

Lancer.Rev.X

Пользователь

Регистрация: 07.12.2014

Сообщения: 4181

Рейтинг: 2228

Lancer.Rev.X

Регистрация: 07.12.2014

Сообщения: 4181

Рейтинг: 2228

img
Kujivunia сказал(а):

https://dota2.ru/forum/threads/simuljator-vzloma-terminala-iz-fallout-3-nv-4.1447628/

 

Некоторое время назад я писал про симулятор мини-игры взлома терминала из трёхмерных Фоллаутов. 

 

В качестве одной из главных проблем была указана проблема отсутствия мотивации играть. Нет награды. Я не очень согласен - в Судоку тоже нет награды, кроме чувства победы. Но, с другой стороны, тоже согласен. Ведь судоку - игра абстрактная. А взлом терминала тематически привязан именно ко взлому терминала. Юный взломщик, да и вообще любой адекватный человек даже на подсознательном уровне ожидает, что после взлома терминала он сможет получить доступ к какой-то хранящейся в нём информации, будь то координаты клада, дневник шизофреничного аль-гуля или диссертация на тему биохимии возникновения микротрещин в волосах на голове человека. 

 

Таким образом, передо мною стоит проблема написания "ОС" для этого терминала. Системы, которая позволит делать простейшие действия из Фоллаутов. Очевидно, что открывать двери или активировать роботов не имеет смысла по причине отсутствия окружающего мира (привет, Матрица), но создавать текстовые заметки и читать их - дело благое. 

 

Как я вижу эту "ОС"? 

  1. Она делится на "Конфигурации" или "Пользователей". При запуске терминала нужно выбрать пользователя. Если пользователь один (администратор) - грузится сразу он. При этом если нет пароля, то идёт сразу загрузка системы, а если есть - то требуется ввести пароль. В этом месте можно либо сразу писать пароль, либо... нажав секретную комбинацию клавиш (как ctrl-alt-del, только очевидно без реальных системных сочетаний винды, которые из игры я поймать не смогу) войти в "режим отладки", которым является мини-игра по взлому терминалов.
  2. Внутри содержится древовидная структура файлов. Каждый файл открывается программой, которая зависит от разрешения файла. (папка - это файл, который содержит в себе ссылки на файлы, и открывается "проводником").
  3. В большинстве случаев доступна командная строка, в которой можно вручную запустить любую программу с параметрами или без, что может понадобиться для создания нового файла или открытия программы, которая не создаёт файлы ("калькулятор", например). Соответственно, формат ввода примерно такой: "команда параметр1 параметр2 параметр3... параметрN".

 

А как? Серьёзно, у меня ровно нуль рабочих схем такого проекта, как я ни старался придумывать. 

Две моих лучших попытки выглядели так: 

  1. Вся система это список Object. Каждый объект - это экземпляр ICommand.ConcreteCommand. У них у всех есть три пересечения: поле для выводимого текста, поле для экранных координат и длины выводимого объекта, метод Execute(). 

    Да, я знаю. Это совершенно, мастерски, шедеврально, Евгениально. Но есть одна крошечная проблемка. Я сам не понимаю, как из этого можно сделать то, что я описал выше. 
  2. Буквально описанная выше эпидерсия. А именно, интерпретатор команд и процедуры-"программы", которые он запускает (проводник, блокнот). Всё круто. Но есть одна крошечная проблема. Я всё ещё не понимаю, рабочая ли это схема. 

ИТОГО: я считаю приоритетной схему №2. Что думаете вы, и есть ли у вас свои идеи на этот счёт? 

Нажмите, чтобы раскрыть...

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

Kujivunia сказал(а):

Я вообще ХЗ что ты несёшь, шизофреничный бред какой-то. Тебя что, в детстве изнасиловали ОС? Или ты долбишься в глаза и не умеешь читать? 

Нажмите, чтобы раскрыть...

и ещё я бы до кучи накинул режим "взломать максимальное число терминалов за время" и "бесконечный режим" с набиванием бесконечного количества очков, и ещё я бы прикрутил таблицу лидеров и соревновательный режим "кто быстрее взломает терминал", всё, игру можно выпускать

Kujivunia

Пользователь

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Kujivunia

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Lancer.Rev.X сказал(а):

всё, игру можно выпускать

Нажмите, чтобы раскрыть...

Нельзя, 

2980ab7d715c9b52b0e82b9c437ade60.jpg

Александр

Почетный пользователь

Регистрация: 10.08.2013

Сообщения: 5314

Рейтинг: 4188

Александр

Регистрация: 10.08.2013

Сообщения: 5314

Рейтинг: 4188

Kujivunia сказал(а):

Таким образом, передо мною стоит проблема написания "ОС" для этого терминала

Нажмите, чтобы раскрыть...
Kujivunia сказал(а):

Вся система это список Object. Каждый объект - это экземпляр ICommand.ConcreteCommand

Нажмите, чтобы раскрыть...

Так вот откуда ноги растут

Неудивительно, что твои прошлые творения выдают 30 фпс в окне 600х400 при наличии двух с половиной пиксельарт текстурок на карте

Aragorn_

Пользователь

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

Aragorn_

Регистрация: 20.12.2021

Сообщения: 389

Рейтинг: 48

Нарушения: 100

е

 
rot1t сказал(а):

Ты какой-то кал выдумал. Читай, как устроены операционные системы, чел

Нажмите, чтобы раскрыть...

Расскажи чем отличается файловая система в Linux и Windows

Kujivunia

Пользователь

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Kujivunia

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Александр сказал(а):

Так вот откуда ноги растут

Неудивительно, что твои прошлые творения выдают 30 фпс в окне 600х400 при наличии двух с половиной пиксельарт текстурок на карте

Нажмите, чтобы раскрыть...

Ты чёт захотел повыделоваться, но забыл снять штаны. Я даже не буду объяснять, почему -- это уже бесполезно, если ты такой бред высираешь. 

Александр

Почетный пользователь

Регистрация: 10.08.2013

Сообщения: 5314

Рейтинг: 4188

Александр

Регистрация: 10.08.2013

Сообщения: 5314

Рейтинг: 4188

Kujivunia сказал(а):

Ты чёт захотел повыделоваться, но забыл снять штаны. Я даже не буду объяснять, почему -- это уже бесполезно, если ты такой бред высираешь. 

Нажмите, чтобы раскрыть...

Да не, я по факту написал

Возможно это не все вокруг забыли штаны снять. Если ты не видишь, где насрано, возможно виновник ты сам

Kujivunia

Пользователь

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Kujivunia

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Александр сказал(а):

Да не, я по факту написал

Возможно это не все вокруг забыли штаны снять. Если ты не видишь, где насрано, возможно виновник ты сам

Нажмите, чтобы раскрыть...

По факту ты высрал. 

 

Сочувствую твоим родителям. 

 

Но да ладно, над калечными грешно душу отводить, дай мне милостивый Господь всемогущий долготерпения и доброты. 

 

  1. Мои прошлые творения рендерились в тестовом режиме через учебную библиотеку вывода примитивов GraphABC, которая работает на процессоре, а не GPU. 
  2. Что самое смешное - об этом было прямо написано в моих постах, так что ты либо не читал, либо полный дурак. 
  3. У меня нет ни одного творения с окном 600*400. 
 

Ну и наконец поведай нам, каким образом ты с помощью объектов сделаешь так, чтобы игра выдавала 30 фпс, и чтобы это ещё зависело от текстурок и разрешения окна? 

Александр

Почетный пользователь

Регистрация: 10.08.2013

Сообщения: 5314

Рейтинг: 4188

Александр

Регистрация: 10.08.2013

Сообщения: 5314

Рейтинг: 4188

Kujivunia сказал(а):

Мои прошлые творения рендерились в тестовом режиме через учебную библиотеку вывода примитивов GraphABC, которая работает на процессоре, а не GPU. 

Нажмите, чтобы раскрыть...

Правда?

xd

Если чё то поделие на GABC у тебя выдавало 8 фпс в простое без анимации, его я даже не вспоминал

На остальное даже отвечать не буду, ты же непробиваемый баран. Даже если я тебе 10 раз объясню ты не поймёшь (вспоминаем твои потуги в прошлой теме). Зря вообще в тему ответил, у crusader.png?1572155482 голова не работает как у обычных людей, только и способен высирать про "вы все обосрались"

Kujivunia

Пользователь

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Kujivunia

Регистрация: 10.01.2015

Сообщения: 5530

Рейтинг: 1006

Александр сказал(а):

Правда?

xd

Если чё то поделие на GABC у тебя выдавало 8 фпс в простое без анимации, его я даже не вспоминал

На остальное даже отвечать не буду, ты же непробиваемый баран. Даже если я тебе 10 раз объясню ты не поймёшь (вспоминаем твои потуги в прошлой теме). Зря вообще в тему ответил, у crusader.png?1572155482 голова не работает как у обычных людей, только и способен высирать про "вы все обосрались"

Нажмите, чтобы раскрыть...

Ну и где ты видишь пруф вины объектов? Я в этих сообщениях вижу жалобу на то, что комп делает слишком много математики. 

 

Вот спецом поднял код, и да, объекты иногда создаются. Но проблема не в том, что их много, а в том, что они создаются. Да и создаются они там потому что я писал лабу и мне нужен был удобный, а не быстрый код. Написать dir = new Point(0, 0); гораздо проще и понятнее, чем dir.x = 0; dir.y = 0;

Хотя оптимизировать этот момент и/или вычислить узкое место в проге я всё равно попытаюсь. Но не думаю, что это даст большой прирост фэпэсов.