LINUX.ORG.RU

Сообщения vbcnthfkmnth123

 

Kiwix в 2025

Kiwix — это свободный оффлайн веб-браузер, созданный Emmanuel Engelhart и Renaud Gaudin в 2007. Первоначально он был создан для того чтобы можно было читать Википедию без интернета.

Грубо говоря он позволяет просматривать сайты локально. В качестве формата файлов используется ZIM. Этот формат поддерживает сжатие и полнотекстовый поиск.

Подробности о ZIM — libzim 9.0.0.

Но данный веб-браузер поддерживает ещё и работу в режиме сервера, что позволяет в локальной сети подключаться с других устройств. Здесь запущен kiwix-desktop в режиме сервера на T60. Однако kiwix-desktop для работы требует графику, то есть конкретно в данном случае просто запустить на безголовом сервере не получится.

Очень удобно при нынешних проблемах с интернетом. В наличии доступны дампы википедии, арчвики и прочее. Также можно скачать сайты и самому, например скачал лорвики для себя.

Плюс ещё в арчвики добавили какую-то новую защиту от ботов, не получается через неё пробится, так что приходится это локально поднимать.

 , ,

vbcnthfkmnth123
()

T60 в 2025

Наконец-то руки дошли до моего IBM T60. Поставил на него Antix, дистрибутив для старого железа.

Есть текстовый инталлятор, причем c TUI, а с cli.

По советам ЛОР'а решил попробовать на нем — Подскажите DE для ноута с экраном 1024x768 EDE, Trinity, Icewm

Пробовал ставить на него Sugar, но зависает, пробовал оставить на ночь, так и не отвис. Там видимо 32-битный процессор не вытягивает, так как Sugar написан на питоне. Пробовал ставить EDE, не собирается, требует python2 а в репах python2 уже выкинули. Хотя отдельный дистрибутив с EDE норм работал, единственное там переключалка раскладок работает только вручную, без комбинации клавиш. Разработчики выпускали Ubuntu 12.04 с EDE, я ставил потыкать, но там софт староват и сертификаты устарели.

( читать дальше... )

 , ,

vbcnthfkmnth123
()

Меню выключения для CDE

Common Desktop Environment — среда рабочего стола, основанная на Motif, в основном использовалась в проприетарных операционных системах UNIX, OpenVMS. CDE разработана в The Open Group совместно с Hewlett-Packard, IBM, Novell и Sun Microsystems и основана на VUE от HP. 6 августа 2012 года исходный код CDE был опубликован на SourceForge.net под лицензией GNU LGPL, за последующие годы сообществом выпущен ряд новых версий.

( читать дальше... )

 ,

vbcnthfkmnth123
()

far2l в 2025

FAR Manager — консольный файловый менеджер для операционных систем семейства Microsoft Windows и Linux.

Конкретно здесь рассматривается форк FAR Manager v2 для Linux — far2l.

Он у меня запускается в st, к сожалению в dtterm глючит.

Попытка собрать его с wxgtk3 у меня закончилась неудачей.

( читать дальше... )

 , , far2l,

vbcnthfkmnth123
()

re3 в 2025

Поиграл немного в нативный re3. Из багов заметил что если пропускать катсцены по кнопке, то скрипты могут не запуститься, и пройти миссию будет нельзя.

Из фич могу отметить наличие карты (да, в оригинале её не было, только радар), возможность после провала миссии перезапустить её прямо сразу после провала (то есть выводит окошко с фичей перезапустить миссию).

( читать дальше... )

 , ,

vbcnthfkmnth123
()

Freeciv в 2025 году

Я давно хотел адаптировать темы GTK-приложений под цвета CDE. Однако, к сожалению, единственное, что мне удалось найти — это конвертор цветов текущей темы CDE для GTK2-приложений.

Так как версия Freeciv в репах Hyperbola GNU/Linux-libre это GTK3-приложение, то пришлось искать последнюю версию, которая поддерживала GTK2. Это 2.6.11.

Собирал пакет так:

_basename=freeciv
pkgname=freeciv-gtk2
pkgver=2.6.11
pkgrel=1
pkgdesc="A multiuser clone of the famous Microprose game of Civilization"
arch=('x86_64')
url="http://www.freeciv.org/"
license=('GPL-2.0-or-later')
depends=('curl' 'gtk2' 'lua'  'sqlite')
makedepends=( 'meson' 'intltool')
conflicts=('freeciv' 'freeciv-sdl2')
provides=('freeciv')
source=("https://sourceforge.net/projects/freeciv/files/Freeciv%202.6/2.6.11/freeciv-2.6.11.tar.bz2")
sha256sums=('SKIP')



build() {
ls
    #export CFLAGS=${CFLAGS/FORTIFY_SOURCE=2/FORTIFY_SOURCE=0}
   cd $_basename-$pkgver
    ./configure --prefix=/usr --sysconfdir=/etc --enable-shared --enable-sys-lua \
  --enable-client=gtk2 --enable-fcdb=sqlite3 --enable-aimodules
}

package() {
      #cd "$srcdir"/$_pkgname-$pkgver
        cd $_basename-$pkgver
        make DESTDIR="$pkgdir" install
}

Далее скачал dtgtkrcgen.xz здесь. — для генерации темы gtk с цветами моей текущей темы.

Примечание: Для работы dtgtkrcgen требуется ksh93.

[vbcnthfkmnth123@localhost Downloads]$ unxz dtgtkrcgen.xz 
ksh93 dtgtkrcgen
grep: /home/vbcnthfkmnth123/.dt/sessions/current/dt.resources: No such file or directory
grep: /home/vbcnthfkmnth123/.dt/sessions/current/dt.resources: No such file or directory
grep: /home/vbcnthfkmnth123/.dt/sessions/current/dt.resources: No such file or directory
cat: /usr/dt/palettes/: Is a directory
Видно что скрипт не работает.

В строчках

SESS_DIR="$DT_USER_DIR/sessions/current"
SESS_DIR="$DT_USER_DIR/sessions/home"
Исправляем
SESS_DIR=~/.dt/sessions/current.old
SESS_DIR=~/.dt/sessions/home.old
После этого скрипт отработывает без ошибок и сохраняет готовый файл темы в ~/gtkrc-2.0-new

Freeciv хранит свои конфиг темы(у него своя отдельная тема gtk, отличная от системной) по пути /usr/share/freeciv/themes/gui-gtk-2.0/Freeciv/gtk-2.0/

Заменяем его тему

sh-5.1# cp gtkrc-2.0-new /usr/share/freeciv/themes/gui-gtk-2.0/Freeciv/gtk-2.0/gtkrc
И получаем результат, как на скрине. Используется набор цветов Neptune, поэтому все выглядит так.

Примечание: по умолчанию в скрипте используются такие шрифты

FONT="Helvetica 10"
Но мне больше нравится Dejavu Sans, поэтому заменил на
FONT="Dejavu Sans 12"
P.S. Это все выводится через интеловскую встройку на Gigabyte GA-G41M-ES2L прошитую через libreboot. То есть встройка тут и после перепрошивки работает.

 ,

vbcnthfkmnth123
()

Daggerfall Unity с nouveau

В прошлый раз показывал просто Hyberbola с libreboot, теперь руки дошли и до игр.

Используется nouveau для работы графики, выводится картинка прямо через видеокарту, то есть все это работает. Материнская плата где все это тестировалось Gigabyte GA-G41M-ES2L. Удалось найти чуть побольше памяти, так что добил её до максимума для этой материнки. Версия Daggerfall Unity где это тестировалось 1.1.1. Звук тоже выводится через HDMI в игре, так что это тоже работает с nouveau. Используется 64-битная версия системы. Daggerfall Unity я не собирал, так что используется 64-битный бинарник от разработчиков.

Для тестирования использовалась видеокарта ASUS GeForce GT 730 [GT730-4H-SL-2GD5]. Из особенностей я упомяну что у неё пассивное охлаждение и PCIe x1, так что результат на обычной 730 видеокарте с активным скорее всего будет другим.

 , ,

vbcnthfkmnth123
()

Gorky 17 в 2025 году

Gorky 17  — ролевая компьютерная игра, разработанная польской компанией Metropolis Software и выпущенная Monolith Productions для Microsoft Windows в 1999 году. Позже игра была портирована на Linux фирмой Hyperion Entertainment и выпущена Linux Game Publishing в 2006 году.

Здесь мы рассматриваем именно нативную для Linux версию.

Начнем с инсталятора:

ldd gorky18-installer-2009.01.14.bin
        linux-gate.so.1 => linux-gate.so.1 (0xf7f59000)
        libpthread.so.0 => /lib32/libpthread.so.0 (0xf7f2f000)
        libz.so.1 => /lib32/libz.so.1 (0xf7f16000)
        libbz2.so.1 => not found
        libdl.so.2 => /lib32/libdl.so.2 (0xf7f11000)
        libm.so.6 => /lib32/libm.so.6 (0xf7e44000)
        libc.so.6 => /lib32/libc.so.6 (0xf7c1d000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0xf7f5b000)
Исправляется так: создаем директорию lib там, где лежит инсталятор, копируем туда 32 битную libbz2.so и делаем симлинк. Например:
mkdir lib
cp /lib32/libbz2.* lib
export LD_LIBRARY_PATH="./lib"
cd lib
ls -s libbz2.so libbz2.so.1
Уточняю, инсталятор текстовый. После вышеописанного запускается без проблем. Gorky 17 требует для работы звука oss, так как это 32-битное приложение и у меня alsa используется для вывода звука, то мне пришлось собирать alsa-oss-32. Вот так
./configure --prefix=/usr --libdir=/usr/lib32
        make
        make DESTDIR=$PKG install
        mv $PKG/usr/bin/aoss $PKG/usr/bin/aoss-32
        rm -r $PKG/usr/share/man/
        rm $PKG/usr/include/oss-redir.h
Кроме вышеуказанного, создал ещё пустой файл .32bit в директорию пакета, чтобы переменные 32-битные передались в сборку (это специфика CRUX). Конкретно вот это:
export CFLAGS="${CFLAGS} -m32"
export CXXFLAGS="${CXXFLAGS} -m32"
export LDFLAGS="${LDFLAGS} -m32"
export PKG_CONFIG_LIBDIR="/usr/lib32/pkgconfig"
То есть если у вас не CRUX и вы собираете alsa-oss-32, то эти переменные придется передавать руками. И затем запускал так:
aoss-32 ./gorky18

 ,

vbcnthfkmnth123
()

Blade and Sword в 2025 году

Blade and Sword — это диаблоклон в сеттинге Древнего Китая. Есть три персонажа на выбор: мечник, девушка с двумя мечами и мечник-силач. Конкретно на скрине мечник.

К сожалению максимально поддерживаемое игрой разрешение — это 800x600.

Из уникальных фич могу отметить собственно монстров, они взяты из мифологии Древнего Китая и расчлененку. Шмота нет, вместо него драгоценные камни, которые вставляются в разные слоты.

Тестировалось это все на вайне версии от Kron4ek:

$ ./wine --version
wine-7.19
Скачать можно вроде здесь

 , ,

vbcnthfkmnth123
()

War1gus в 2025 году

Warcraft: Orcs & Humans — компьютерная игра в жанре стратегия в реальном времени, разработанная компанией Blizzard Entertainment. Это первая игра в серии Warcraft.

War1gus — это повторная реализация “Warcraft: Orcs & Humans”, которая позволяет играть в Warcraft на движке Stratagus. В игре используются графика и звуки из оригинальной Warcraft, но улучшены механизмы игрового процесса с помощью многих современных удобств, которые предоставляет движок Stratagus, таких как современное управление мышью, именованные группы, более широкий выбор групп, больше фракций игроков в многопользовательских играх, редактор карт и несколько городов.

Собирал версии stratagus 3.3.2 и war1gus 3.3.2

Stratagus собирал так

cmake $name-$version \
  -DCMAKE_BUILD_TYPE=Release \
  -DCMAKE_INSTALL_PREFIX=/usr \
  -DGAMEDIR=/usr/bin \
  -DSBINDIR=/usr/bin \
  -DLUA_INCLUDE_DIR=/usr/include/lua5.1 \
  -DWITH_STACKTRACE=OFF \
  -Bbuild

  make -C build
        cd $SRC/build
        ls
        make DESTDIR=$PKG install
        mkdir -p ${PKG}/usr/include
  cp ${SRC}/$name-$version/gameheaders/stratagus-game-launcher.h ${PKG}/usr/include
  cp ${SRC}/$name-$version/gameheaders/stratagus-gameutils.h ${PKG}/usr/include
War1gus собирал так
cmake "${name}-${version}" -DCMAKE_INSTALL_PREFIX=/usr -DGAMEDIR=/usr/bin -Bbuild
  make -C build

  cd build
  make  DESTDIR=${PKG} install
Зависимости такие
ldd /usr/bin/stratagus
        linux-vdso.so.1 => linux-vdso.so.1 (0x00007fff74f5a000)
        liblua5.1.so.5.1 => /usr/lib/liblua5.1.so.5.1 (0x00007f4e79b52000)
        libSDL2-2.0.so.0 => /usr/lib/libSDL2-2.0.so.0 (0x00007f4e79999000)
        libSDL2_mixer-2.0.so.0 => /usr/lib/libSDL2_mixer-2.0.so.0 (0x00007f4e7994b000)
        libSDL2_image-2.0.so.0 => /usr/lib/libSDL2_image-2.0.so.0 (0x00007f4e7991e000)
        libtoluapp.so => /usr/lib/libtoluapp.so (0x00007f4e79912000)
        libz.so.1 => /lib/libz.so.1 (0x00007f4e798f8000)
        libbz2.so.1.0 => /usr/lib/libbz2.so.1.0 (0x00007f4e798e3000)
        libmng.so.2 => /usr/lib/libmng.so.2 (0x00007f4e7986f000)
        libogg.so.0 => /usr/lib/libogg.so.0 (0x00007f4e79865000)
        libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x00007f4e79838000)
        libtheora.so.0 => /usr/lib/libtheora.so.0 (0x00007f4e797f3000)
        libgomp.so.1 => /usr/lib/libgomp.so.1 (0x00007f4e797ad000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f4e7957f000)
        libm.so.6 => /lib/libm.so.6 (0x00007f4e794a0000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f4e7947f000)
        libc.so.6 => /lib/libc.so.6 (0x00007f4e7929e000)
        liblua.so.5.4 => /usr/lib/../lib/liblua.so.5.4 (0x00007f4e79259000)
        libjpeg.so.8 => /usr/lib/libjpeg.so.8 (0x00007f4e791b2000)
        liblcms2.so.2 => /usr/lib/liblcms2.so.2 (0x00007f4e7914c000)
        /lib/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x00007f4e7a094000)
ldd /usr/bin/war1gus
        linux-vdso.so.1 => linux-vdso.so.1 (0x00007ffd58766000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f634744b000)
        libm.so.6 => /lib/libm.so.6 (0x00007f634736c000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f634734b000)
        libc.so.6 => /lib/libc.so.6 (0x00007f634716a000)
        /lib/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x00007f63476c1000)

Однако при попытке подложить ресурсы в директории DATA игры при выборе DATA.WAR, war1gus крашился с такой ошибкой

terminate called after throwing an instance of 'std::out_of_range'
  what():  basic_string::compare: __pos (which is 18446744073709551614) > this->size() (which is 2)
Aborted
Решением стал запуск собранных разработчиками war1gus для винды бинарников war1gus в вайне, и подсовыванием им тем же самых файлов. В таком случае ресурсы распаковываются без ошибок. Затем просто копируются из ~/.wine/drive_c/users/username/Documents/Stratagus/data.War1gus в ~/.stratagus/data.War1gus. После этого игра работает.

 ,

vbcnthfkmnth123
()

The Matrix: Path of Neo в 2024 году

The Matrix: Path of Neo — компьютерная игра, основанная на трилогии фильмов «Матрица», и разработанная Shiny Entertainment. Была выпущена в 2005 году. Можно поиграть самим Нео, отыгрывая известные сцены из фильма.

Так как соавторами игры были братья (сейчас уже сёстры) Вачовски, то они добавили уровни, которых нет в фильмах. Фактически эту игру можно считать значительным расширением фильмов. Для примера можно рассмотреть бой с финальным боссом (см. скриншот). В игре это куда более эпично, чем в фильме.

( читать дальше... )

 , ,

vbcnthfkmnth123
()

Адаптация Something Unlimited

Something Unlimited — это игра со стилистикой одного старого мультсериала.

Немного предыстории. Я давно хотел адаптировать эту игру под нативный запуск на линуксе, но к сожалению она использует движок Unity3d. А там для адаптации под линукс нужно повозиться, если нет в наличии исходного проекта самой игры. К сожалению, у меня это так и не получилось. Однако спустя некоторое время я обнаружил 2 вещи:

1) Разработчики выпустили спинофф этой игры, внезапно с использованием Ren'Py, а не Unity3d.

2) Также разработчики выпустили порт этой игры на Android.

Так как apk фактически представляет собой просто zip-архив, я просто распаковал его с помощью unzip и изучил. К моему удивлению оказалось, что разработчики используют для Android-версии данной игры Ren'Py. Я предположил, что разработчики использовали для порта ту же версию Ren'Py, что и для спиноффа. Далее было сделано следующее

1) Запущен спинофф через portproton(там не было версии для линукса), чтобы определить, какая версия Ren'Py. Для этого был написан и скопирован в директорию game спиноффа скрипт version.rpy со следующим содержимым

screen show_version():
    vbox:
        text "Made with: [renpy.version_only]"
        textbutton "About":
            action ShowMenu("about")
init python:
    config.overlay_screens.append('show_version')
После запуска спиноффа, это позволило определить мне, что нужной версией Ren'Py является версия 8.1.3

2) Были изучены ресурсы Android-порта игры и было обнаружено, что разработчики просто дописали ко всем именам файлов и директорий «x-».

cd SU-Android-92
$ ls
AndroidManifest.xml  assets  classes.dex  lib  META-INF  res  resources.arsc  SU-Android-92.zip
$ cd assets/
$ ls
android-downloading.jpg  android-presplash.jpg  private.mp3  x-android.json  x-game  x-renpy
$ ls x-game
 x-Aero.ttf                          'x-MADE Mirage Bold.otf'     x-script.rpyc
 x-BADABB__.TTF                       x-MadeynSans-Bold.ttf       x-script_version.txt
 x-BebasNeue.otf                      x-MadeynSans-Light.ttf      x-Timeless-Bold.ttf
 x-cache                              x-nothing.png               x-Timeless.ttf
 x-CG                                 x-options.rpyc              x-tl
 x-Charmset.ttf                       x-paladins.ttf              x-Tungsten-Bold.ttf
 x-DORADOHEADLINE.TTF                 x-portraits                'x-UNMASKEDBB 1.OTF'
 x-gui                                x-QuickMoney.ttf            x-UNMASKEDBB_BOLD.OTF
 x-gui.rpyc                           x-ReliqStd-BoldActive.otf   x-UNMASKEDBB_BOLD.TTF
 x-images                             x-ReliqStd-BoldCalm.otf    'x-UNMASKEDBB_ITAL 1.OTF'
 x-LearnShareColaborateBoldFont.otf   x-scenes                    x-UNMASKEDBB_ITAL.OTF
 x-locations                          x-screens.rpyc              x-UNMASKEDBB.OTF
Чтобы это исправить, ко всем именам было применено рекурсивно
for file in *; do mv "${file}" "${file/x-/}"; done
3) Ресурсы Android-порта игры были скопированы с перезаписью в директорию launcher renpy-8.1.3-sdk.

После этого игра заработала нативно.

 , ,

vbcnthfkmnth123
()

Hyperbola GNU/Linux-libre в 2024 году

Hyperbola GNU/Linux-libre это дистрибутив, основанный на Arch Linux, но очищенный от несвободного софта. Из уникальных фич заметил наличие 32-битной версии дистрибутива и соотвествующих пакетов и вместо Xorg здесь форк xorg от OpenBSD, Xenocara. Вместо systemd тут используется openrc. Документация достаточно подробная, так что проблем с установкой у меня был минимум. Видео выводится через встроенную интеловскую видеокарту.

Вообще могу сказать, что тут намного больше готовых пакетов, чем в том же CRUX, документация тоже намного лучше. Так что первое впечатление этот дистрибутив оставил у меня очень хорошее.

Версия ядра при установке такая:

[vbcnthfkmnth123@localhost ~]$ uname -a
Linux localhost 5.10.191-gnu1-1-lts #1 SMP Mon Oct 2 05:25:02 UTC 2023 i686 GNU/Linux

Ест это все столько:

sh-5.1# ./ps_mem.py 
 Private  +   Shared  =  RAM used       Program

100.0 KiB +  32.5 KiB = 132.5 KiB       init
184.0 KiB +  58.5 KiB = 242.5 KiB       start-stop-daemon
300.0 KiB +  47.5 KiB = 347.5 KiB       rpcbind
408.0 KiB +  28.5 KiB = 436.5 KiB       Xsession
584.0 KiB +  30.5 KiB = 614.5 KiB       dhcpcd
572.0 KiB +  72.5 KiB = 644.5 KiB       sndiod
520.0 KiB + 273.5 KiB = 793.5 KiB       sh
688.0 KiB + 266.5 KiB = 954.5 KiB       openrc-run.sh
  1.1 MiB + 488.5 KiB =   1.6 MiB       agetty (11)
  1.7 MiB +  34.5 KiB =   1.7 MiB       udevd
  1.5 MiB + 252.0 KiB =   1.8 MiB       supervise-daemon (12)
  1.2 MiB + 750.5 KiB =   1.9 MiB       xclock
  1.9 MiB + 185.5 KiB =   2.0 MiB       ttsession
916.0 KiB +   1.2 MiB =   2.1 MiB       dtlogin (3)
  2.5 MiB + 869.5 KiB =   3.3 MiB       dtpad
  2.1 MiB +   1.2 MiB =   3.3 MiB       bash (5)
  2.6 MiB + 805.5 KiB =   3.4 MiB       dtsession
  3.6 MiB +   1.2 MiB =   4.7 MiB       dtwm
  3.6 MiB +   1.7 MiB =   5.3 MiB       dtterm (2)
  2.0 MiB +   3.6 MiB =   5.6 MiB       dtfile (2)
  4.6 MiB +   1.7 MiB =   6.3 MiB       dtexec (4)
  3.6 MiB +   3.6 MiB =   7.3 MiB       script-fu
 33.8 MiB +   1.6 MiB =  35.4 MiB       Xorg
 65.0 MiB +   8.1 MiB =  73.1 MiB       gimp-2.10
186.8 MiB +   6.3 MiB = 193.1 MiB       iceweasel-uxp
---------------------------------
                        356.1 MiB

Единственное, что dtlogin себя странно ведет с openrc: почему-то все ждут его при выключении, из-за чего процесс выключения значительно замедлился.

 ,

vbcnthfkmnth123
()

Протестировал Strip Poker Night at the Inventory

Strip Poker Night at the Inventory  — это open source стрип покер на раздевание под лицензией MIT. Игра активно развивается, есть большое количество контента, например персонажей.

По сути это веб-приложение, но его можно использовать offline.

Для этого необходимо

1) скачать сами исходники этой игры здесь;

2) подтянуть зависимости с помощью скрипта prepare-online.sh в директории исходников, путем его запуска(sh prepare-online.sh). Также необходимо поставить nodejs для работы;

Конкретно в данном случае тестировалось на версии

$ node --version
v22.6.0

3) скачать паки персонажей здесь;

4) распаковать паки персонажей в директорию исходников;

5) запустить скрипт start_offline.sh(./start_offline.sh) в директории исходников;

6) перейти в браузере на http://127.0.0.1:8080 или на http://192.168.10.193:8080 для запуска собственно самой игры.

Запускалось это все в локально браузере surf. Почему-то при попытке запуска в Google Chrome часть ресурсов не прогружалась при запуске offline, хотя с online-версией таких проблем не возникало.

Адресной строкой в браузере surf служит dmenu, поэтому адрес выглядит именно так. Для табов используется tabbed.

 , , ,

vbcnthfkmnth123
()

American McGee's Alice(2011) в 2024 году

American McGee’s Alice — компьютерная игра в жанре action от третьего лица, разработанная американской компанией Rogue Entertainment под руководством геймдизайнера Американа Макги и изданная Electronic Arts. Сюжет игры основан на сказках Льюиса Кэрролла «Алиса в Стране чудес» и «Алиса в Зазеркалье», однако представлен другим вариантом этой вымышленной вселенной — мрачным, наполненным жестокостью и насилием.

Немного истории. Первый выпуск игры состоялся 5—6 декабря 2000 года. Однако в 2011 году был выпущен её ремастер. Этот ремастер никогда не продавался, и по сути всегда распространялся в комплекте со второй частью игры. Конкретно здесь рассматривается не оригинальная игра, а её ремастер.

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

Оригинальная структура выглядит так:

bash-5.1$ ls models/characters/
antlion            chess_bishop  firesnark         marchhare
army_ant           chess_king    fishfootman       mock_turtle
army_ant_corp      chess_knight  flyingbook        phantasm
bill               chess_pawn    frogfootman       queen1
bloodrose          chess_queen   fungi             queen2
boojum             chess_rook    gnome_elder       snark
cardguard_club     clockwork     gryphon           spider
cardguard_diamond  demon_king    humptydumpty      torchgnome
cardguard_heart    demon_lesser  insanechildrenew  tweedledee
cardguard_spade    demon_normal  jabberspawn       tweedledum
caterpillar        dormouse      jabberwock        walkrock_large
centipede          duchess       ladybug           walkrock_small
centipede_larva    evil_shroom   madhatter         whiterabbit
cheshire           fireimp       magmamen
Структура текстур, которые были перерисованы, выглядит так:
bash-5.1$ ls models/characters/
Boojum     Centipede     MorckTurtle  Tweedledee  whiterabbit
CardGuard  Cheshire_Cat  spider       Tweedledum
bash-5.1$ ls models/characters/CardGuard/
CardGuard_club  CardGuard_Diamond  CardGuard_Heart  CardGuard_Spade

Как можно заметить, часть новых текстур располагается по новому пути и в результате просто не применяется. American McGee’s Alice использует для своей работы модифицированный движок Quake 3, и как и в оригинальном движке, формат pk3 представляет собой переименованный zip-архив. То есть достаточно будет распаковать pak5_mod.pk3 (это архив, где хранятся новые текстуры) в ремастере, расположить текстуры по тем же путям, что и в архиве pak1_large.pk3, запаковать это в zip архив и переименовать его в pak5_mod.pk3 — это исправит ошибку.

Судя по тестированию есть, ошибка связанная с сохранением игр, эта ошибка общая и для ремастера, и для оригинальной игры. В игру встроена проверка свободного места для записи сохранений. Если этого недостаточно, то сохранения не создаются. Однако если игра расположена на большом разделе диска, то эта проверка ломается, и вне зависимости от количества свободного места, игра считает что свободного места недостаточно и отказывается создавать новые сохранения. Это исправляется путем переноса игры на раздел диска меньшего размера, например в моем случае игра была перенесена на раздел диска объёмом 916G.

Кроме того, включение фуллскрина в настройках отключается после перезапуска игры. Это исправляется путем выставления фуллскрина в конфигурационном файле игры (config.cfg в Documents/My Games/American McGee's Alice) и выставлении атрибута для этого файла только на чтение. Эта ошибка тоже общая как и для ремастера, так и для оригинальной игры.

Тестировалось это все на вайне версии от Kron4ek:

bash-5.1$ ./wine --version
wine-6.19 (Staging)
Скачать можно вроде здесь.

Запускается игра так (поскольку ремастер распространялся только в комплекте со второй частью и запускался изнутри неё):

alice.exe -RunningFromAlice2

 , ,

vbcnthfkmnth123
()

WordStar в 2024 году

WordStar был одним из самых популярных текстовых процессоров в 80-х годах прошлого века. Изначально он был написан под операционную систему CP/M, а затем портирован под DOS. В середине 90-х программа уступила позиции другим текстовым процессорам.

Многие писатели до сих пор используют этот редактор, например Дж. Мартин¹ именно под WordStar 4.0 пишет все свои книги. Да-да, до сих пор.

На скриншоте показан WordStar 7.0 (1992 года выпуска), который был недавно опубликован канадским писателем-фантастом Робертом Джеймсом Сойером² здесь.

Если кому-то интересны причины, почему писатели используют эту программу, то можно увидеть подробности здесь.

Запущен WordStar с помощью dosbox-x. Это форк dosbox, который позволяет более точно эмулировать dos, чем обычный dosbox.

Собирал пакет dosbox-x так:

  cd $SRC/dosbox-x-dosbox-x-v${version}
    #Workaround: https://github.com/joncampbell123/dosbox-x/issues/4436
  export CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions \
    -Wp,-D_FORTIFY_SOURCE=2 -Wformat \
    -fstack-clash-protection -fcf-protection"
  export CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS"

  sed -i -e 's/-j3/-j$(nproc)/g' build
  ./build
  make DESTDIR="${PKG}" install

В конфиге для doxbox-x прописал так:

mount c  /path
C:
cd WS
C:\WS\WSVDOS.EXE
exit
Если просто монтировать «/path/WS» как диск C, то эта программа не запускается, так что необходимо монтировать именно так.

На скриншоте у меня вывод с TrueFont шрифтами. Scaler Norlmal4x.

  1. Джордж Ре́ймонд Ри́чард Ма́ртин — американский писатель-фантаст, сценарист, продюсер и редактор, лауреат многих литературных премий. Автор известного романа «Песнь льда и пламени». Подробности здесь

  2. Роберт Джеймс Сойер – канадский писатель-фантаст, ведущий, педагог. Автор известного романа «Вспомни, что будет». Подробности здесь

 , ,

vbcnthfkmnth123
()

Протестировал Симбионт

«Симбионт» — компьютерная игра, разработанная компанией Targem games и изданная компанией «Бука» на территории России и 505 Games на территории СНГ под названием Swarm в 23 октября 2008 года. После выхода игры на Xbox 360 игра получила название MorphX.

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

У игры есть уникальная фишка в том как организована прокачка. Здесь она сделана не просто через покупку улучшений как в том же прототипе, а через решение головоломки. Например

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

Об этой игре нет записи в winedb, поэтому решил проверить как она работает в вайне. Судя по тестированию работает без каких либо проблем сразу из коробки. Поставил только dxvk и все. Единственное что, так нельзя запустить игру не во весь экран, то есть тут даже виртуальный рабочий стол в настройках вайна с разрешением меньше, чем у рабочего стола не поможет.

Тестировалось это все на вайне версии от Kron4ek:

./wine --version
wine-5.12-14075-gdf982e6865c

Скачать можно вроде здесь.

Запускал также на версии вайна 8.21 (Staging), так что скоре всего эта игра должна ещё работать и в современных версиях вайна без проблем, вроде работу не ломали.

UPD: поменял скрин обратно на без иконок на игре, так получше выглядит.

 , ,

vbcnthfkmnth123
()

TimeShift (2007) в 2024 году

TimeShift — компьютерная игра, научно-фантастический шутер от первого лица, разработанный компанией Saber Interactive (подразделением из Санкт-Петербурга) для платформ PC, Xbox 360 и PlayStation 3.

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

На winedb у игры стоит статус Garbage. Но как оказалось, её вполне можно сделать играбельной под вайном! Для этого надо просто обновить её до версии 1.2 и поставить фикс для многоядерных процессоров. То есть по сути, проблема была не в вайне, а в самой игре, которая ломается, если в неё играть на современном процессоре.

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

Обращаю ваше внимание, что в стиме продается игра без патча. Таким образом, чтобы поиграть в TimeShift под линуксом необходимо поставить патч, если игра из стима, и не ставить патч, если игра из гога. После этого необходимо поставить фикс для процессоров. Этот фикс заменяет exe-файл игры.

ссылка на патч

ссылка на фикс

Тестировалось это все на вайне версии от Kron4ek:

./wine --version
wine-5.12-14075-gdf982e6865c

Скачать можно вроде здесь.

Библиотеки у меня стоят следующие:

bash-5.1$ ls
d3d10_1.dll         x3daudio1_2.dll     xactengine2_6.dll  xapofx1_1.dll
d3d10core.dll       x3daudio1_3.dll     xactengine2_7.dll  xapofx1_2.dll
d3d10.dll           x3daudio1_4.dll     xactengine2_8.dll  xapofx1_3.dll
d3d11.dll           x3daudio1_5.dll     xactengine2_9.dll  xapofx1_4.dll
d3d9.dll            x3daudio1_6.dll     xactengine3_0.dll  xapofx1_5.dll
d3dcompiler_43.dll  x3daudio1_7.dll     xactengine3_1.dll  xaudio2_0.dll
d3dcompiler_47.dll  xactengine2_0.dll   xactengine3_2.dll  xaudio2_1.dll
d3dx10_43.dll       xactengine2_10.dll  xactengine3_3.dll  xaudio2_2.dll
d3dx9_36.dll        xactengine2_1.dll   xactengine3_4.dll  xaudio2_3.dll
d3dx9_42.dll        xactengine2_2.dll   xactengine3_5.dll  xaudio2_4.dll
dxgi.dll            xactengine2_3.dll   xactengine3_6.dll  xaudio2_5.dll
x3daudio1_0.dll     xactengine2_4.dll   xactengine3_7.dll  xaudio2_6.dll
x3daudio1_1.dll     xactengine2_5.dll   xapofx1_0.dll      xaudio2_7.dll

 , , ,

vbcnthfkmnth123
()

5d Chess - пятимерные шахматы

Полное название — 5D Chess With Multiverse Time Travel. Как и написано на упаковке, это шахматы с механикой путешествия во времени. То есть каждая фигура, может перемещаться не только вперед и назад, а ещё вперед в будущее, назад в прошлое и по параллельным временным линиям.

В игре есть 4 оси: ось X (горизонталь), ось Y (вертикаль), ось времени и ось параллельных вселенных. Ось параллельных вселенных (далее ось пв или просто пв) — это все те линии досок, которые показываются фиолетовыми стрелками и идут перпендикулярно линии настоящего (the present). Правила хождения фигур точно такие же, просто распространяются на 4 оси, а не на 2, как в классических, причём ось X параллельна оси времени, а ось у параллельна оси пв.

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

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

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

Список зависимостей:

ldd 5dchesswithmultiversetimetravel
        linux-vdso.so.1 (0x00007ffd8bbe5000)
        libSDL2-2.0.so.0 => /home/oleg/.local/share/Steam/steamapps/common/5dchesswithmultiversetimetravel/./lib64/libSDL2-2.0.so.0 (0x00007f8d4b400000)
        libSDL2_mixer-2.0.so.0 => /home/oleg/.local/share/Steam/steamapps/common/5dchesswithmultiversetimetravel/./lib64/libSDL2_mixer-2.0.so.0 (0x00007f8d4b000000)
        libm.so.6 => /lib/libm.so.6 (0x00007f8d4b862000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f8d4b841000)
        libc.so.6 => /lib/libc.so.6 (0x00007f8d4b21f000)
        libdl.so.2 => /lib/libdl.so.2 (0x00007f8d4b83a000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00007f8d4b835000)
        librt.so.1 => /lib/librt.so.1 (0x00007f8d4b830000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f8d4ba84000)
Для примера в обычных шахматах есть три способа уйти от шаха:

  1. выйти из-под боя;
  2. закрыться фигурой;
  3. сбить фигуру соперника.

В пятимерных шахматах есть четыре способа уйти от шаха и первые два по сути малоприменимы из-за шаха в прошлое:

  1. выйти из-под боя;
  2. закрыться фигурой;
  3. сбить фигуру соперника;
  4. вернуться в прошлое.

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

 , , ,

vbcnthfkmnth123
()

Затестил The Hybrid Mod для Openxcom

UFO: Enemy Unknown — компьютерная игра, разработанная компанией Mythos Games.

Игра была издана в марте 1994 года компанией MicroProse для MS-DOS и Amiga.Действие игры начинается в 1999 году. Обеспокоенные участившимися сообщениями о появлении НЛО и похищениях людей, правительства Земли учреждают службу X-COM (англ. eXtraterrestrial Combat Unit — подразделение по борьбе с внеземными угрозами), которая призвана защитить человечество от внеземной агрессии, если такая угроза окажется реальной. Игрок выступает в роли главы этой службы.

X-COM: Terror from the Deep («Ужас из глубин») — компьютерная стратегическая игра, разработанная и выпущенная американской компанией MicroProse в 1995 году для ПК и в 1996 году для PlayStation. Это вторая часть серии X-COM и непосредственное продолжение X-COM: UFO Defense.

В X-COM: Terror From The Deep игрок руководит международной организацией X-COM, ранее противостоявшей вторжению пришельцев, а теперь перенацеленной на угрозы из морских глубин. В отличие от предыдущей игры, в Terror From The Deep значительная часть действия происходит на море и под водой.

OpenXcom — открытая реализация движка игры UFO: Enemy Unknown, лицензированный GPL и написанный на C++ с использованием библиотеки SDL с открытым исходным кодом для Linux, Mac OS X, Windows и других операционных систем с исправленными ошибками и возможностью моддинга.

Конкретно мной была использована OpenXcom Extended, это форк этого движка с поддержкой X-COM: Terror from the Deep и ещё большими возможностями для моддинга.

The Hybrid Mod — это по сути реализация UFO: Enemy Unknown и X-COM: Terror From The Deep в рамках одного игрового процесса. То есть доступны как механики UFO: Enemy Unknown, так и механики X-COM: Terror From The Deep на протяжении одной игры. Единственное что невозможно использовать оружие из UFO: Enemy Unknown под водой.

Основные фичи:

  • Доступны для боя как НЛО так и инопланетяне из TFTD.
  • Можно строить базы как на суще, так и на море
  • Восстановить НЛО из моря.
  • Весь мир доступен, вы не ограничены только землей в восстановлении НЛО, как в большинстве модов НЛО.
  • Новая механика глубины. Теперь подводный бой разделен на 3 уровня глубины. Мелкий, средний и очень глубокий.
  • Если ваши войска не носят подходящую броню и находятся на нужной глубине… они утонут.

Загвоздка вот в чем, этот мод распространяется только в виде сборочки движка для винды и в комплекте самого мода.

То есть чтобы поиграть на линуксе мне пришлось сделать следующее:

1) скачать сборочку для винды здесь;

2) вытащить оттуда сами файлы мода;

3) собрать движок (я собирал версию 7.11.4; использовать более новую версию не рекомендую, могли поломать совместимость;

4) подсунуть ему файлы UFO: Enemy Unknown — да, это не ошибка;

5) подсунуть туда сами файлы мода.

Собирал движок так:

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX="/usr" -DCMAKE_BUILD_TYPE="None" -DDEV_BUILD="Off"
make

Зависимости такие

# Depends on: xorg-xorgproto xmlto glu doxygen docbook-xml docbook-xsl cmake boost yaml-cpp sdl1 gcc sdl_gfx sdl_image sdl_mixer hicolor-icon-theme

Обращаю внимание. Ни в коем случае не пытайтесь собрать игру с sdl12-compact, это сломает игру. Если собрать игру с sdl12-compact, то игра запустится, но будет постоянно выдавать ошибку уфопедии.

Единственное, что мне пришлось отредактировать дату начала игры в файлах мода, потому там по умолчанию стоит 2040 год, и это выглядит как-то не очень.

Исходники движка брал здесь

К сожалению тут нет срезов для отдельных релизов. Коммит для той версии что я использовал - здесь

 , ,

vbcnthfkmnth123
()

RSS подписка на новые темы