Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Porting Hexen 2 for Linux is continuing: Hammer of Thyrion
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gamers & Players
View previous topic :: View next topic  
Author Message
paras_rasmatazz
n00b
n00b


Joined: 21 Apr 2004
Posts: 39

PostPosted: Thu Jan 20, 2005 5:28 am    Post subject: Porting Hexen 2 for Linux is continuing: Hammer of Thyrion Reply with quote

Do you remember the 'Anvil of Thyrion' Hexen 2 Linux Port, which has not been updated since 2002 ? Check http://uhexen2.sourceforge.net/ , a Team has taken over the Project and already released a new Version of their Port, called "Hammer of Thyrion", in which u finally can defeat the first boss Famine because, well, he does even appear :) Maybe someone can make an Ebuild ?
Back to top
View user's profile Send private message
paras_rasmatazz
n00b
n00b


Joined: 21 Apr 2004
Posts: 39

PostPosted: Mon Mar 07, 2005 11:50 pm    Post subject: Reply with quote

new version 1.2.4 out....... What is a good place to start on documentation on how to make ebuilds ? Maybe I'm a try this myself..
Back to top
View user's profile Send private message
Stygius
n00b
n00b


Joined: 27 Apr 2002
Posts: 16

PostPosted: Tue Mar 08, 2005 11:11 pm    Post subject: Reply with quote

Try this one. Feel free to modify it and/or submit it to bugzilla. I don't have the inclination to do the latter.

Name the file hot-1.2.4.ebuild or similar, and put it in your $PORTDIR_OVERLAY.

Things to consider:
    * It seems there is no way to use native midi through SDL_mixer in Linux. Mac and Windows both have native midi bindings in SDL_mixer, but Linux doesn't (someone correct me if they know differently). You have to go with timidity, and suffer a huge performance penalty.

    * Due to the way HoT's Makefile is constructed, there doesn't appear to be an easy way to get the optimized CFLAGS into the 'make' call. I suppose one could do a patch, but that's just ugly and tiresome.

    * The file with the source hasn't, at the time of writing, shown up on all sourceforge mirrors yet. When you don't get the file, re-emerge to try another mirror.

Code:
# $Header: $

inherit eutils games

DESCRIPTION="Linux port of the Hexen 2 source"
HOMEPAGE="http://uhexen2.sourceforge.net"
SRC_URI="mirror://sourceforge/uhexen2/hexen2source-HoT-${PV}.tgz"
RESTRICT="nomirror"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86"
IUSE="opengl alsa timidity"

RDEPEND=">=media-libs/libsdl-1.2.7
   >=media-libs/sdl-mixer-1.2.5
   virtual/x11
   timidity? ( media-sound/timidity++ )
   alsa? ( >=media-libs/alsa-lib )
   opengl? ( virtual/opengl )"
DEPEND="${RDEPEND}
   >=dev-lang/nasm-0.98.38"

S="${WORKDIR}"

src_unpack() {
   unpack ${A}
   cd ${S}/hexen2source-HoT-${PV}/hexen2
   use !alsa && sed -i -e "s/USEALSA=yes/USEALSA=no/" Makefile.packaging
   use !opengl && sed -i -e "s/BUILDGL=yes/BUILDGL=no/" Makefile.packaging
   use !timidity && sed -i -e "s/USEMIDI=yes/USEMIDI=no/" Makefile.packaging
}

src_compile() {
   cd ${S}/hexen2source-HoT-${PV}/hexen2
   use opengl && make -f Makefile.packaging glh2_dynamic
   use opengl && make -f Makefile.packaging clean
   use opengl && make -f Makefile.packaging glmp_dynamic

   use !opengl && make -f Makefile.packaging h2_dynamic
   use !opengl && make -f Makefile.packaging clean
   use !opengl && make -f Makefile.packaging mp_dynamic
}

src_install() {
   use opengl && games_make_wrapper glhexen2 "${GAMES_BINDIR}/glhexen2.bin" "${GAMES_DATADIR}/hexen2"
   use opengl && games_make_wrapper glh2mp "${GAMES_BINDIR}/glh2mp.bin" "${GAMES_DATADIR}/hexen2"

   use !opengl && games_make_wrapper hexen2 "${GAMES_BINDIR}/hexen2.bin" "${GAMES_DATADIR}/hexen2"
   use !opengl && games_make_wrapper h2mp "${GAMES_BINDIR}/h2mp.bin" "${GAMES_DATADIR}/hexen2"

   use opengl && newgamesbin ${S}/hexen2source-HoT-${PV}/hexen2/glhexen2 glhexen2.bin
   use opengl && newgamesbin ${S}/hexen2source-HoT-${PV}/hexen2/glh2mp glh2mp.bin

   use !opengl && newgamesbin ${S}/hexen2source-HoT-${PV}/hexen2/hexen2 hexen2.bin
   use !opengl && newgamesbin ${S}/hexen2source-HoT-${PV}/hexen2/h2mp h2mp.bin

   cd ${S}/hexen2source-HoT-${PV}/docs
   dodoc README TODO CHANGES ABOUT README.AoT

   dodir ${GAMES_DATADIR}/hexen2

   prepgamesdirs
}

pkg_postinst() {
        games_pkg_postinst
        einfo "Just put the data files in ${GAMES_DATADIR}/hexen2"
        einfo "before playing!"
}
Back to top
View user's profile Send private message
tigrezno
Apprentice
Apprentice


Joined: 28 Jun 2002
Posts: 251
Location: Spain

PostPosted: Thu Mar 10, 2005 1:38 pm    Post subject: Reply with quote

what data files do you need? hexen2 + expansion?
Back to top
View user's profile Send private message
Stygius
n00b
n00b


Joined: 27 Apr 2002
Posts: 16

PostPosted: Thu Mar 10, 2005 9:28 pm    Post subject: Reply with quote

The given ebuild produces one binary for the original game (glhexen2) and one for the expansion (glh2mp). (Perhaps this should be selectable through a USE flag?). So you only need the data files from the original game to play.

The needed files and their md5sums are as follows for the original game:
Code:
4ad129364c4af58ff4bfa8914a48fdcf  data1/hexen.rc
c9675191e75dd25a3b9ed81ee7e05eff  data1/pak0.pak
c2ac5b0640773eed9ebe1cda2eca2ad0  data1/pak1.pak
2334c5036d573d6831fc95737142bf73  data1/progs.dat
ee5ffd6f2303261e0e23b6b98a7f9dca  data1/progs2.dat
d54e74fe9f6a2b38f9f4e43d03d0e0cf  data1/strings.txt

And for the expansion:
Code:
2d187e6c0a3a22b52cd807ef0ba56fad  portals/default.cfg
56a9811d4fbab1736d4ffda6ee56a18c  portals/hexen.rc
5ebdca473f47729144f088c2ee5e22bb  portals/infolist.txt
77ae298dd0dcd16ab12f4a68067ff2c3  portals/pak3.pak
d78612ae67a3051108fdaf98b9ccf23c  portals/progs.dat
df7c95d83638c187e703cf9c3644339a  portals/puzzles.txt
adf39e079d40f31ebbf0eb3b7ebf76a8  portals/strings.txt

Note that the latest official patches (1.11 and 1.12a, respectively) must be applied to a fresh CD install to get the correct files. On the Hammer of Thyrion page, they provide binaries enabling Linux users to patch from CD to latest official version without using Wine or similar.
Back to top
View user's profile Send private message
tuppe666
Guru
Guru


Joined: 02 Mar 2004
Posts: 423

PostPosted: Wed Aug 31, 2005 9:59 pm    Post subject: Reply with quote

1.30 is out :)
Back to top
View user's profile Send private message
PaulBredbury
Watchman
Watchman


Joined: 14 Jul 2005
Posts: 7310

PostPosted: Tue Sep 13, 2005 10:41 am    Post subject: Reply with quote

tuppe666 wrote:
1.30 is out :)

I have posted an ebuild for uhexen2-1.30 on Bugzilla
Back to top
View user's profile Send private message
sezero
n00b
n00b


Joined: 13 Sep 2005
Posts: 1

PostPosted: Tue Sep 13, 2005 12:03 pm    Post subject: Reply with quote

PaulBredbury wrote:
I have posted an ebuild for uhexen2-1.30 on Bugzilla


I don't have access to your Bugzilla, so here are
my notes/questions/suggestions:

> * uhexen2 requires that the data files in /usr/share/games/hexen2/data1/ be
> pre-patched to a version >=1.1, which in Linux requires the script "update_h2"
> found in hexen2-1.3.0-linux.i586.tgz at
> http://sourceforge.net/project/showfiles.php?group_id=124987&package_id=136554

- For correctness, patched version should be 1.11.
- All and every data-files including the patch deltas are
included in the source package. One exception is
the separate hexenworld pakfile package. For patching,
(and for the patch script), loki_patch is required, although
the same thing can be achived by using xdelta-1.1.3
with a proper script.
- As an example for automated building/packaging see
the rpm spec file. Can you not do the data file installation
within the ebuild ?
(I don't know anything about ebuild, therefore apologies in
advance, if I said something stupid.)

> Midi playback, which is only available via timidity, has not been heard to
> work. This is a problem with uhexen2 rather than the ebuild.

This is really news to me: Are your timidity and SDL_mixer
installations OK? Care to make a bug report on our project
page?
Back to top
View user's profile Send private message
PaulBredbury
Watchman
Watchman


Joined: 14 Jul 2005
Posts: 7310

PostPosted: Wed Sep 14, 2005 2:38 am    Post subject: Reply with quote

sezero wrote:
For correctness, patched version should be 1.11

Thanks, I've updated Bugzilla.

sezero wrote:
As an example for automated building/packaging see the rpm spec file. Can you not do the data file installation within the ebuild ?

I suppose there are several methods that the ebuild (or a separate ebuild) could use to perform the patching. Pointing people at update_sh is just my quick 'n' easy fix, but it's certainly not the most elegant :)

sezero wrote:
Are your timidity and SDL_mixer installations OK? Care to make a bug report on our project page?

I'll check further, and report here (if fixed) or add a bug report on your project page (if not fixed). Thanks.
Back to top
View user's profile Send private message
PaulBredbury
Watchman
Watchman


Joined: 14 Jul 2005
Posts: 7310

PostPosted: Wed Sep 14, 2005 4:13 am    Post subject: Reply with quote

For any newbies wondering how to install the custom ebuild, here's the steps:

Code:
echo 'PORTDIR_OVERLAY="/usr/local/portage"' >> /etc/make.conf
mkdir -p /usr/local/portage/games-fps/uhexen2
cd /usr/local/portage/games-fps/uhexen2
wget -O uhexen2-1.4.0.ebuild http://bugs.gentoo.org/attachment.cgi?id=85671
ebuild uhexen2-1.4.0.ebuild digest
echo "games-fps/uhexen2 ~x86" >> /etc/portage/package.keywords
echo "games-fps/uhexen2 alsa opengl timidity" >> /etc/portage/package.use
emerge uhexen2


Edit: Updated version to 1.4.0


Last edited by PaulBredbury on Sun May 07, 2006 10:14 pm; edited 1 time in total
Back to top
View user's profile Send private message
tuppe666
Guru
Guru


Joined: 02 Mar 2004
Posts: 423

PostPosted: Wed Sep 14, 2005 5:20 pm    Post subject: Reply with quote

Just got it up and running. Its wonderful.

btw newbie steps wonderful it was handy to do a little cut and paste.
Back to top
View user's profile Send private message
PaulBredbury
Watchman
Watchman


Joined: 14 Jul 2005
Posts: 7310

PostPosted: Sun Sep 25, 2005 3:00 pm    Post subject: Reply with quote

Happily, my Gentoo-specific problem with the midi music not playing is now fixed.
Back to top
View user's profile Send private message
Sodki
Guru
Guru


Joined: 11 Aug 2003
Posts: 419
Location: London, U.K. & Lisbon, Portugal

PostPosted: Sun May 07, 2006 8:44 am    Post subject: Reply with quote

Version 1.4 is now released.
Back to top
View user's profile Send private message
tuppe666
Guru
Guru


Joined: 02 Mar 2004
Posts: 423

PostPosted: Sun May 07, 2006 8:41 pm    Post subject: Reply with quote

Nice to see this being updated its belting.
Back to top
View user's profile Send private message
tuppe666
Guru
Guru


Joined: 02 Mar 2004
Posts: 423

PostPosted: Tue Jul 04, 2006 9:50 pm    Post subject: Reply with quote

Anyone got an updated version for (1.4) of the new ebuild. I quickly tried but I don't think I've done something wrong. Looks like a quick change of program names, but I haven't looked in detail yet.
Back to top
View user's profile Send private message
PaulBredbury
Watchman
Watchman


Joined: 14 Jul 2005
Posts: 7310

PostPosted: Wed Jul 05, 2006 3:30 am    Post subject: Reply with quote

Try the freshly-tidied uhexen2 ebuild with the Hexen 2 demo data and coloured lighting :)
Back to top
View user's profile Send private message
tuppe666
Guru
Guru


Joined: 02 Mar 2004
Posts: 423

PostPosted: Thu Jul 06, 2006 1:30 am    Post subject: Reply with quote

Wow just got it up and running very nice. Haven't tried the coloured lighting something disn't feel right in the way its implimented, and I suspect it would make my graphics card cry.

This is definately one to keep an eye on :)
Back to top
View user's profile Send private message
PaulBredbury
Watchman
Watchman


Joined: 14 Jul 2005
Posts: 7310

PostPosted: Sat Nov 11, 2006 3:05 pm    Post subject: Reply with quote

The uhexen2 ebuild has been updated to version 1.4.1 :)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gamers & Players All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum