Истории с тегом: игры

Всего историй: 519

8989

А это, дети, тормоза

В сентябре мы пошли в 11 класс. У нас сменился учитель информатики, и мы начали изучать Бейсик в «кубасике».

Где-то в октябре нам сказали, что «кубасик» заканчивается, потому что будут закупать новые системники с «семёркой», которая досовский QBasic не воспринимает. «Семёрка»? Ну ладно. Новому компу я рад всегда — пусть и школьный, но ведь за мной будет один закреплён.

А время идёт, а компов нет. И вот, перед Новым годом вижу чудное зрелище: несут коробки с интеловским значком! Только маленькие какие-то, не тянут на системники. Это были 15 ноутбуков для класса информатики, то есть для нас. Но учитель информатики пораскинул мозгами и решил, что детей не стоит допускать до столь тонкой техники, и ноутбуки раздали учителям в кабинеты. С учётом того, что компы покупали родители, все они были новыми — не чета компам в кабинете информатики. Куда дели недешёвые ноуты, никто не знает, но, думается, растащили по домам те же учителя.

Спрашиваю учителя: мол, Бейсик мы всё-таки продолжим изучать, ведь компы на ХР остались?

Они собрались ставить «семёрку» на машины 2001 года. На Целерон. На 128 метров оперативки и прочие прелести.

Я пожелал учителю удачи и стал изучать информатику сам. А на уроках больше меня не видели.

8891

Геймовер на всех фронтах

Вспомнил своё детство: ZX Spectrum, пятидюймовый дисковод. Купил дискет с игрушками, а как их запустить, понятия не имел. Купил какой-то самоучитель для чайников по Спектруму. Открываю главу про дискеты, читаю:

Перед использованием дискету нужно отформатировать.

Ну, я все дискеты с игрушками и вычистил. Потом долго не мог понять, почему же они не запускаются — я же всё делал по инструкции!

8876

Трогательная проекция

Помню, как-то университетский преподаватель для наглядности принёс проектор на пару, а потом куда-то сам пропал. Друг, недолго думая, достал маленький нетбук, подключил его к проектору и принялся играть в Quake 2 с ботами на тачпаде. Я встал поближе к экрану и докладывал счёт всей аудитории. С учётом того, что заняться было особо нечем, все увлечённо наблюдали за игрой моего товарища.

Итак, студенты обсуждают партию, комментируют удавшиеся фраги, и в этот момент в углу выскакивает уведомление о низком заряде батареи. По инерции протягиваю руку и тыкаю на крестик. По иронии судьбы, именно в этот момент мой друг прихлопывает это окошко у себя на нетбуке. Столько удивлённых глаз, обращённых ко мне, я не видел давно.

8874

Кто больше? Кто дальше? Кто глубже?

Только что, сидя по VNC с Win-ноутбука на Убунтовом десктопе, поймал себя на том, что вместо того, чтобы отлаживать PHP-код, я поставил KolibriOS под VirtualBox и режусь в ней в Xonix. Боюсь предположить, чем я буду завтра заниматься вместо работы.

8854

И рад бы, да не пускают

Я студент, за деньги модерирую форум и чат игрового онлайн-проекта. Для противодействия злостным читерам к клиенту прикручен античит, который делает невозможным запуск игры даже на виртуальной винде, не то что в линуксе.

Не стоит думать, что я не пытался найти решение. Почти неделю убил на поиск, перепробовал с десяток лаунчеров, включая и версии под определённые редакции. Держать на компе Windows только ради игры глупо, но других вариантов античит не приемлет.

Вот и сижу я на винде. Не только бухгалтерами юзер-база виндовая полнится.

8777

Регион-лок на низком уровне

Накрыла как-то ностальгия, и решил я поиграть во что-нибудь олдскульное. Поставил известный эмулятор известной приставки, нашёл ROM и целую субботу рубился в Shin Megami Tensei. Пройдя с треть, отправился спать, а с утра решил продолжить. Как бы не так: эмулятор со странной избирательностью не воспринимал клавиши.

Решаем задачку. Дано:

1) «Стрелочки» работают. Кнопки и «селект» со «стартом» — нет.

2) Настройки те же, что вчера, никто ничего не менял.

3) Другой эмулятор работает как следует (правда, сохранёнки от другого не читает).

Теряясь в догадках, решил переназначить клавиши. Тут-то всё и прояснилось: вместо Keyboard q в окошке возникло Keyboard Cyrillic shorti. Разборчивая программа желала исключительно «q» в латинской раскладке и принимать вместо неё «й» в кириллической отказывалась. Ишь чё удумали — раскладку менять!

8771

Дебиан: вооружён и не очень опасен

Играл я много лет тому назад в некую MMORPG. При создании персонажа путём подбора абсолютно случайных символов мелкий нубик был назван Дебианом. О линуксе я в те времена знал только то, что есть такая ось не для ламеров. Следует ли объяснять, как я удивился, узнав о том, что существует такой дистрибутив?

Прошло несколько лет. В эту игру я уже не играю, персонаж был удалён ещё до заката проекта. На телефоне Андроид, на компьютере Убунту уже полгода используется как основная ОС. В голове мысли о необходимости перехода на более серьёзный дистрибутив; из имеющегося разнообразия рассматривается всё тот же Дебиан. И лишь одна мысль не даёт покоя: как виндовый пользователь, пусть даже не так удалённый от IT, как большинство окружающих, мог со стопроцентной точностью попасть пальцем в небо?

8761

Косынка по-домашнему

Удалил бухам все игры начисто. Захожу в кабинет. Сидит паренёк-бух и раскладывает «косынку» по удалёнке через TeamViewer с домашнего компа.

8712

Когда все принцессы спасены

Одни так мечтают вместо обучения программированию баловаться играми, что для них приходится программы типа SuperPuperAntiGame писать. А у меня в детстве, когда мне «Денди» подарили, наоборот, через две недели возникло острое желание попрограммировать. Моя фантазия рисовала клавиатуру, подключающуюся вместо джойстика, и картридж с Бейсиком. О том, что для оригинальной NES всё это уже было реализовано, я не знал, а «Сюбора» тогда ещё даже в проекте не было.

Проблема решилась годом позже, с покупкой «Спектрума». Ох я и напрограммировался тогда — год почти не играл!

8693

SuperPuperAntiGame, или Гонка вооружений

В 1990 году поступил я в МВТУ им. Баумана и попутно устроился работать оператором в местный вычислительный центр под названием «Аквариум». Только-только появились первые персоналки, и к нам как раз завезли суперсовременные компьютеры IBM PC XT. Как водится, студенты сразу же вместо занятий стали на них играть.

Начальство поставило задачу игры запретить. Сначала пытались бороться словесно — не помогало. Тогда я решил бороться программно и взялся за изучение ассемблера. Через пару месяцев появился первый продукт под названием AntiGame. Программа резидентно висела в памяти, перехватывала запуск программ через функцию 4Bh 21 прерывания и имела базу сигнатур различных игр — просто читался кусок данных размером 32 байта из файла со смещением 1000h. Если запускаемая программа совпадала с одной из сигнатур, то считалась игрой. Запуск обрывался, в буфер клавиатуры посылалось echo y|del., проигрывалась веселая мелодия. Через месяц мелодию знали все.

Пару месяцев всё шло хорошо, база сигнатур пополнялась, студенты ходили злые и вынуждены были заниматься делом. Но тут группа студентов тоже села за ассемблер и через месяц хакнула мою программку. Хак быстро распространился среди посетителей «Аквариума», студенты снова стали довольные, играли повсеместно, а мелодии было не слышно. Отловив и изучив хак, я выяснил, что там тупо восстанавливался оригинальный вектор 21 прерывания, и моя программка обламывалась.

Покумекав, я взялся за клавиатуру. Спустя пару месяцев родился шедевр под названием SuperAntiGame. Это была шедевральная программа, написанная с использованием всех современных технологий, включая вирусные. Частично она даже использовала неизвестный тогда механизм «стелс», чем я до сих пор горжусь. Программа перехватывала 13 и 21 прерывания, причём не обычным способом, а путём внедрения в точки входа в области DOS, что делало бесполезным восстановление оригинальных векторов прерывания. В функциях поиска, открытия и записи файлов делалась проверка на имя файла antigame.exe и в случае совпадения возвращалась ошибка «File not found», так что ни один из «коммандеров» программу не видел. Также перехватывалось прерывание таймера 1Ch — на нём висела функция, постоянно проверяющая код в памяти. Если хотя бы один бит был изменён, то отключалась клавиатура, запускалась мелодия, флаг read only со всех файлов в текущем каталоге снимался, а в буфер клавиатуры отправлялось так любимое студентами echo y|del.. Помимо этого, там было ещё множество новаторских решений. Полный исходник занимал около 300 КБ текста, откомпилированный файл — 9 КБ.

Около года лучшие студенческие умы безуспешно бились за право играть в игрушки и пытались взломать мою программу. Почти год я ходил королём, пока в один прекрасный день не увидел нагло ухмыляющегося студента, демонстративно играющего в тетрис и смотрящего на меня с ехидцей. Моя программа была повержена.

Я, конечно, не питал иллюзий и знал, что рано или поздно это случится. К тому времени подходила к концу разработка бета-версии нового SuperPuperAntiGame, работающего в защищённом режиме только вышедшего тогда процессора 386SX, первые компьютеры с которым появились в нашем «Аквариуме».

Жаль, не удалось тогда довести задуманное до конца — увлёкся другим делом и AntiGame забросил. Но и сейчас, спустя два десятилетия, я вспоминаю эту гонку вооружений и думаю, какой же стимул для изучения программирования дала и сколько же талантливых программистов вырастила жажда игр.