summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO2
-rw-r--r--PKGBUILD78
-rwxr-xr-xgog-heroes-of-might-and-magic-3-complete-edition-hd-mod30
-rw-r--r--gog-heroes-of-might-and-magic-3-complete-edition-hd-mod.desktop10
-rwxr-xr-xgog-heroes-of-might-and-magic-3-complete-edition-hota30
-rw-r--r--gog-heroes-of-might-and-magic-3-complete-edition-hota.desktop10
6 files changed, 149 insertions, 11 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 75486c6a768f..e0c06d8876d7 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = gog-heroes-of-might-and-magic-3-complete-edition
pkgdesc = Heroes of Might & Magic III and its expansions: Armageddon's Blade and The Shadow of Death (with optional HD patch)
pkgver = 4.0.28740
- pkgrel = 2
+ pkgrel = 3
url = https://www.gog.com/game/heroes_of_might_and_magic_3_complete_edition
arch = i686
arch = x86_64
diff --git a/PKGBUILD b/PKGBUILD
index 9fb0d3de7a9d..41eee164998a 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,9 +1,10 @@
pkgname=gog-heroes-of-might-and-magic-3-complete-edition
pkgver=4.0.28740
-pkgrel=2
+pkgrel=3
_gamename=${pkgname#gog-}
_gamename=${_gamename//-/_}
-_gamehdpatchname="HoMM3%20HD%20Latest.exe"
+#INCLUDE_HD_MOD=true
+#INCLUDE_HOTA=true
pkgdesc="Heroes of Might & Magic III and its expansions: Armageddon's Blade and The Shadow of Death (with optional HD patch)"
arch=("i686" "x86_64")
@@ -13,7 +14,6 @@ groups=("games")
source=("setup_homm3_complete_${pkgver}.exe::gogdownloader://${_gamename}/en1installer0"
"setup_homm3_complete_${pkgver}-1.bin::gogdownloader://${_gamename}/en1installer1"
- # "http://h3hota.com/HD/HoMM3%20HD%20Latest.exe"
"${pkgname}.desktop"
"${pkgname}-campaign-editor.desktop"
"${pkgname}-map-editor.desktop"
@@ -23,7 +23,6 @@ source=("setup_homm3_complete_${pkgver}.exe::gogdownloader://${_gamename}/en1ins
"${pkgname}.install")
sha256sums=('eaf75707911b16850ec770a551c59e594abba60c7a879fb0c171fc442b1299b3'
'044f62c74067188ec0e52fb0db460109bcd23951acb9cfd424267a22c0f0d4f1'
- # 'SKIP'
'ab14524f06cb213ee0b1e5bcd5d9089da9e66057794430347d32a60a86a945fd'
'de064d9bc819403dc5990fd70d81c88d63d708ba5b4e02015cc616e77338c478'
'4dc5f7d1bd44405dae2969ec093ef6ce680aec889024b68350023feb4a12ee1b'
@@ -37,6 +36,25 @@ makedepends=(icoutils "lgogdownloader>=2.25")
# Register lgogdownloader as a download agent
DLAGENTS+=('gogdownloader::/usr/bin/lgogdownloader --download-file=%u -o %o')
+if [[ ${INCLUDE_HD_MOD} = true ]]; then
+ # source+=("http://vm914332.had.yt/HoMM3_HD_Latest_setup.exe"
+ source+=("http://h3hota.com/HD/HoMM3_HD_Latest_setup.exe"
+ gog-heroes-of-might-and-magic-3-complete-edition-hd-mod
+ gog-heroes-of-might-and-magic-3-complete-edition-hd-mod.desktop)
+ sha256sums+=('SKIP'
+ '2d13b3e53fb1022101e12df1300a70ac8f7e0e08b381fa85a8827634d35ca3eb'
+ '4178301b73d3854211a43fc1d2ca94b484314f4b05c6d7d2f88bbaf0911ab6fc')
+fi
+
+if [[ ${INCLUDE_HOTA} = true ]]; then
+ source+=("http://heroes3towns.com/HotA/HotA_1.6.1_setup.exe"
+ gog-heroes-of-might-and-magic-3-complete-edition-hota
+ gog-heroes-of-might-and-magic-3-complete-edition-hota.desktop)
+ sha256sums+=('SKIP'
+ 'e30d83ac656684eb96ba0f133f9288c445b35e9aec3b785b1b06c84e0ff6234d'
+ '412efeda87b6d74895572014c1942341afd021a9e678ad4e197bdea5bfaacf9d')
+fi
+
build() {
export WINEDEBUG=-all
export WINEPREFIX="$srcdir"/tmp/env
@@ -47,16 +65,36 @@ build() {
msg "Running GOG installer"
wine "${srcdir}/setup_homm3_complete_${pkgver}.exe" /LOG=$(tty) /Dir="${srcdir}/${pkgname#gog-}" /NoIcons=0 /verysilent # /LANG=english /?
- # msg "Installing HD patch"
- # wine "${srcdir}/${_gamehdpatchname}" /verysilent
+ if [[ ${INCLUDE_HD_MOD} = true ]]; then
+ msg "Installing HD Mod"
+ if $(WINEDEBUG="" wine "${srcdir}/HoMM3_HD_Latest_setup.exe" log=${srcdir}/tmp/hd_mod_install.log /verysilent /suppressmsgboxes); then
+ echo failed to install
+ cat ${srcdir}/tmp/hd_mod_install.log
+ false
+ fi
+ cat ${srcdir}/tmp/hd_mod_install.log
+ fi
+
+ if [[ ${INCLUDE_HOTA} = true ]]; then
+ msg "Installing HotA"
+ wine "${srcdir}/HotA_1.6.1_setup.exe" /verysilent /LOG=$(tty) /Dir="${srcdir}/${pkgname#gog-}"
+ fi
msg "Extracting HKEY_LOCAL_MACHINE registry"
regedit -e ${srcdir}/local_machine.reg "HKEY_LOCAL_MACHINE\Software\New World Computing"
- sed -i 's,C:\\\\GOG Games\\\\homm 3 complete,Z:\\\\opt\\\\gog\\\\homm 3 complete,g' local_machine.reg
+ sed -i 's,C:\\\\GOG Games\\\\homm 3 complete,Z:\\\\opt\\\\gog\\\\homm 3 complete,g' ${srcdir}/local_machine.reg
msg "Generating Icons"
mkdir -p "${srcdir}"/icons
wrestool -x -t14 -o "${srcdir}"/icons "${srcdir}/${pkgname#gog-}/"{Heroes3,h3maped,h3ccmped}.exe
+ if [[ ${INCLUDE_HD_MOD} = true ]]; then
+ wrestool -x -t14 -o "${srcdir}"/icons "${srcdir}/${pkgname#gog-}/"HD_Launcher.exe
+ rm ${srcdir}/icons/HD_Launcher.exe_14_103_1049.ico
+ fi
+ if [[ ${INCLUDE_HOTA} = true ]]; then
+ wrestool -x -t14 -o "${srcdir}"/icons "${srcdir}/${pkgname#gog-}/"HotA_launcher.exe
+ rm ${srcdir}/icons/HotA_launcher.exe_14_103_1049.ico
+ fi
icotool -x -o "${srcdir}"/icons "${srcdir}"/icons/*.ico
}
@@ -79,12 +117,25 @@ package() {
install -Dm644 "${srcdir}/${pkgname}.desktop" ${pkgdir}/usr/share/applications/${pkgname}.desktop
install -Dm644 "${srcdir}/${pkgname}-map-editor.desktop" ${pkgdir}/usr/share/applications/${pkgname}-map-editor.desktop
install -Dm644 "${srcdir}/${pkgname}-campaign-editor.desktop" ${pkgdir}/usr/share/applications/${pkgname}-campaign-editor.desktop
+ if [[ ${INCLUDE_HD_MOD} = true ]]; then
+ install -Dm644 "${srcdir}/${pkgname}-hd-mod.desktop" ${pkgdir}/usr/share/applications/${pkgname}-hd-mod.desktop
+ fi
+ if [[ ${INCLUDE_HOTA} = true ]]; then
+ install -Dm644 "${srcdir}/${pkgname}-hota.desktop" ${pkgdir}/usr/share/applications/${pkgname}-hota.desktop
+ fi
- for res in 16 32 48
- do
- install -Dm644 ${srcdir}/icons/Heroes3.exe*${res}x${res}x8.png ${pkgdir}/usr/share/icons/hicolor/${res}x${res}/apps/${pkgname}.png
+ for res in 16 32 48 64; do
install -Dm644 ${srcdir}/icons/h3maped.exe*${res}x${res}x8.png ${pkgdir}/usr/share/icons/hicolor/${res}x${res}/apps/${pkgname}-map-editor.png
install -Dm644 ${srcdir}/icons/h3ccmped.exe*${res}x${res}x8.png ${pkgdir}/usr/share/icons/hicolor/${res}x${res}/apps/${pkgname}-campaign-editor.png
+ install -Dm644 ${srcdir}/icons/Heroes3.exe*${res}x${res}x8.png ${pkgdir}/usr/share/icons/hicolor/${res}x${res}/apps/${pkgname}.png
+ done
+ for res in 16 32 48 128; do
+ if [[ ${INCLUDE_HD_MOD} = true ]]; then
+ install -Dm644 ${srcdir}/icons/HD_Launcher.exe*${res}x${res}x32.png ${pkgdir}/usr/share/icons/hicolor/${res}x${res}/apps/${pkgname}-hd-mod.png
+ fi
+ if [[ ${INCLUDE_HOTA} = true ]]; then
+ install -Dm644 ${srcdir}/icons/HotA_launcher.exe*${res}x${res}x32.png ${pkgdir}/usr/share/icons/hicolor/${res}x${res}/apps/${pkgname}-hota.png
+ fi
done
# Install startup scripts
@@ -93,6 +144,13 @@ package() {
do
install -m755 ${srcdir}/${file} ${pkgdir}/usr/bin
done
+
+ if [[ ${INCLUDE_HD_MOD} = true ]]; then
+ install -m755 ${srcdir}/${pkgname}-hd-mod ${pkgdir}/usr/bin
+ fi
+ if [[ ${INCLUDE_HOTA} = true ]]; then
+ install -m755 ${srcdir}/${pkgname}-hota ${pkgdir}/usr/bin
+ fi
}
# vim:set ts=2 sw=2 et:
diff --git a/gog-heroes-of-might-and-magic-3-complete-edition-hd-mod b/gog-heroes-of-might-and-magic-3-complete-edition-hd-mod
new file mode 100755
index 000000000000..0727430111f8
--- /dev/null
+++ b/gog-heroes-of-might-and-magic-3-complete-edition-hd-mod
@@ -0,0 +1,30 @@
+#!/bin/bash
+unset WINEPREFIX
+export WINEPREFIX="$HOME"/.local/share/gog-heroes-of-might-and-magic-3-complete-edition
+SOURCE=/opt/gog/heroes-of-might-and-magic-3-complete-edition
+DATA_DIR="${WINEPREFIX}/HoMM3-data"
+UNIONFS_MNT="${WINEPREFIX}/drive_c/GOG Games/HoMM 3 Complete"
+if [ ! -d "$WINEPREFIX" ]
+then
+ mkdir -p "$WINEPREFIX"
+ wineboot -i
+fi
+
+if [ ! -d "${DATA_DIR}" ]
+then
+ mkdir -p "${DATA_DIR}"
+fi
+
+if [ ! -d "${UNIONFS_MNT}" ]
+then
+ mkdir -p "${UNIONFS_MNT}"
+fi
+if ! mountpoint "${UNIONFS_MNT}"
+then
+ unionfs -o cow,allow_other,relaxed_permissions,use_ino,suid,dev,nonempty ${DATA_DIR}=RW:${SOURCE}=RO "${UNIONFS_MNT}"
+fi
+cd "${UNIONFS_MNT}"
+wine HD_Launcher.exe "$@"
+cd ..
+fusermount -u "${UNIONFS_MNT}"
+#wine HD_Launcher.exe "$@"
diff --git a/gog-heroes-of-might-and-magic-3-complete-edition-hd-mod.desktop b/gog-heroes-of-might-and-magic-3-complete-edition-hd-mod.desktop
new file mode 100644
index 000000000000..884ca305607e
--- /dev/null
+++ b/gog-heroes-of-might-and-magic-3-complete-edition-hd-mod.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=Heroes of Might and Magic 3 Complete - HD Mod
+Exec=gog-heroes-of-might-and-magic-3-complete-edition-hd-mod
+Type=Application
+StartupNotify=true
+Icon=gog-heroes-of-might-and-magic-3-complete-edition-hd-mod
+StartupWMClass=HD_Launcher.exe
+Version=4.0.10665
+Terminal=false
+Categories=Game;
diff --git a/gog-heroes-of-might-and-magic-3-complete-edition-hota b/gog-heroes-of-might-and-magic-3-complete-edition-hota
new file mode 100755
index 000000000000..a09cfe3a17fe
--- /dev/null
+++ b/gog-heroes-of-might-and-magic-3-complete-edition-hota
@@ -0,0 +1,30 @@
+#!/bin/bash
+unset WINEPREFIX
+export WINEPREFIX="$HOME"/.local/share/gog-heroes-of-might-and-magic-3-complete-edition
+SOURCE=/opt/gog/heroes-of-might-and-magic-3-complete-edition
+DATA_DIR="${WINEPREFIX}/HoMM3-data"
+UNIONFS_MNT="${WINEPREFIX}/drive_c/GOG Games/HoMM 3 Complete"
+if [ ! -d "$WINEPREFIX" ]
+then
+ mkdir -p "$WINEPREFIX"
+ wineboot -i
+fi
+
+if [ ! -d "${DATA_DIR}" ]
+then
+ mkdir -p "${DATA_DIR}"
+fi
+
+if [ ! -d "${UNIONFS_MNT}" ]
+then
+ mkdir -p "${UNIONFS_MNT}"
+fi
+if ! mountpoint "${UNIONFS_MNT}"
+then
+ unionfs -o cow,allow_other,relaxed_permissions,use_ino,suid,dev,nonempty ${DATA_DIR}=RW:${SOURCE}=RO "${UNIONFS_MNT}"
+fi
+cd "${UNIONFS_MNT}"
+wine HotA_launcher.exe "$@"
+cd ..
+fusermount -u "${UNIONFS_MNT}"
+#wine HD_Launcher.exe "$@"
diff --git a/gog-heroes-of-might-and-magic-3-complete-edition-hota.desktop b/gog-heroes-of-might-and-magic-3-complete-edition-hota.desktop
new file mode 100644
index 000000000000..562acfbb09cf
--- /dev/null
+++ b/gog-heroes-of-might-and-magic-3-complete-edition-hota.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=Heroes of Might and Magic 3 - Horn of the Abyss
+Exec=gog-heroes-of-might-and-magic-3-complete-edition-hota
+Type=Application
+StartupNotify=true
+Icon=gog-heroes-of-might-and-magic-3-complete-edition-hota
+StartupWMClass=HotA_launcher.exe
+Version=4.0.10665
+Terminal=false
+Categories=Game;