uHexen2 (Hammer of Thyrion) v1.5.5

Discuss anything not covered by any of the other categories.
Post Reply
szo
Posts: 132
Joined: Mon Dec 06, 2010 4:42 pm

uHexen2 (Hammer of Thyrion) v1.5.5

Post by szo »

Version 1.5.5 of Hammer of Thyrion (uHexen2) is released:

Downloads
Downloads
Project page

ChangeLog:

* Utils (light, vis, jsh2color): Added unix pthreads support for running multi-threaded. Enabled windows multi-threads on all platforms instead of alpha-only. Default is single-threaded. Use "-threads #" to specify the required number of threads. (max: 32. -1 tries to autodetect.)
* Utils, qbsp: Added a command line option "-oldhullsize" to replicate the old h2utils/qbsp behavior of using the original hexen2 sizes for hulls #5 and #6, not H2MP ones, if so needed.
* Utils, hcc: Added a command line option "-old" to replicate old hcc versions' behavior of allowing the STR_ constants be saved globals and letting precache_file() calls go into progs.dat, if so needed.
* Utils, dcc: Some small fixes. Added new command line options -fields, -functions, -globaldefs, -prglobals, -statements and -strings, which dump the related information.
* Utils, all: Some fixes/improvements to command line options handling.
* Support for the rarely used progs version 7 spec with 32 bit offsets instead of 16 bit of the original version 6: The engine can run both with v6 as well as with v7 progs. The hcc and dhcc tools are changed to compile the progs as v6 whenever possible for compatibility, or as v7 otherwise. they can also be made to compile specifically v6 or v7 progs by the new command line options -v6, -v7, or -version . The dhcc tool can now decompile both v6 and v7 progs.
* Fixed a respawn-after-death issue which sometimes rendered the player unable to move backwards, or unable to use certain inventory items, or several other weird effects (bug #2176023.) The bug was there since the original hexen2 source release.
* New quake2-style noclip movement. (from Fitzquake; configured by new cvar sv_altnoclip, enabled by default.)
* Client: Fixed a demo playback failure when certain conditions are met.
* Client: Fixed a minor and rare intermission glitch.
* Client: unbindall before loading stored bindings (configurable by new cvar cfg_unbindall, enabled by default.)
* SDL, keyboard input: Fixed control-character handling in unicode mode.
* All, keyboard input: Several tweaks.
* Software renderer: Disabled progress bars drawing, as it was reported to cause excessively long load times on some systems. Disabled the rotating skull drawing during file i/o.
* Software renderer: Fixed occasional crash when sprites rendered very close to the camera origin, such as the teleportation puff. (used to happen mostly in 64 bit builds. bug #3562290.)
* OpenGL: Fixed a crash in texture resampling code with 3d hardware max texture size greater than 1024 and wide-enough textures.
* Windows: Removed hooks for QHOST, which is (was) a proprietery server administation tool.
* Mac OS X: packages now have ogg/vorbis and mp3 music playback support.
* Mac OS X: New MIDI driver.
* Mac OS X: Support for text paste from OS clipboard to console. Support for the Apple (Command) key.
* Mac OS X: Support for building using the makefiles and cross-compiling from Linux.
* MorphOS builds: added missing -noixemul to the compiler flags.
* MorphOS, AROS, Amiga: Support text paste from OS clipboard to console.
* All platforms, gameplay: fixed bug in original hexen2 hcode which used to cause weapon switching to get stuck if several weapons were picked up too fast. fixed a minor bug in assassin's fourth weapon in powered mode. cleaned up weapon cycling code, minor fixes/clean-ups in weapon selection. fixed cube of force, so that it doesn't attack the player's own summoned imp anymore. several other hcode cleanups.
* All platforms, hexenworld: pak4.pak from the ancient beta 0.11 version is now recognized properly.
* All platforms, h2patch: Simplifications.
* Windows: support for Visual Studio 2012.
* All: Incremented versions for hexen2 engine to 1.27, hexenworld engine to 0.27, and gamecode version to 1.27.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by revelator »

Did you get the image loader code i posted to Work ? or was it scrapped :) just asking out of curiosity.

If you did you should probably scrap the DDS portion as it newer worked to well besides its still in the blue if its legal to use.
Productivity is a state of mind.
szo
Posts: 132
Joined: Mon Dec 06, 2010 4:42 pm

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by szo »

reckless wrote:Did you get the image loader code i posted to Work ? or was it scrapped :) just asking out of curiosity.
If you did you should probably scrap the DDS portion as it newer worked to well besides its still in the blue if its legal to use.
Sorry, the external image loader stuff didn't make into 1.5.5, I'd like to do that for the next release (and possibly w/o the DDS code.)
leileilol
Posts: 2783
Joined: Fri Oct 15, 2004 3:23 am

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by leileilol »

Did the software -conwidth stuff get in?
i should not be here
szo
Posts: 132
Joined: Mon Dec 06, 2010 4:42 pm

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by szo »

leileilol wrote:Did the software -conwidth stuff get in?
If you are referring to the stuff posted by Siggi at http://sourceforge.net/projects/uhexen2 ... ic/5568940 then no: he said himself that his implementation is very slow (see one of the last posts in the thread), so I didn't add.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by revelator »

Oki :) could probably be improved on even more as i used a pretty old implementation from TQ lets see where it leads when you get time.
Productivity is a state of mind.
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by mh »

Loading DDS should be legal, it's GPL in Doom 3 after all so you can just rip that code. What's doubtful is if you try to convert DDS back to RGB(A).
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by revelator »

Aye thats what the code did so its probably better to just scrap it.
Productivity is a state of mind.
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by Spike »

by 'version 7' progs, I *REALLY* hope you refer to a fourth type of 'version 7'.
the fteqcc-v7 implies a whole load of new instructions, as well as some other twiddles.
the qfcc-v7 implies a whole load of new instructions also, as well as some other stuff that I've not read enough to explain.
the kkqwsv-v7 extends only the dstatement_t structure which means saved games are broken (fine for deathmatch-only, but fatal for hexen2).
So I really hope its a fourth version of v7. :P
that said hexen2 has slightly different opcodes+crc, but hey...

tbh you shouldn't really need 32bit indicies anyway. fteqcc can compile h2mp down to only 15k globals. I guess it depends how many arrays you have.
If you do try want to use fteqcc for hexen2 code, you should use the -h2 argument (which outputs h2 opcodes+crc+enables the thinktime keyword). Should work with any engine that still supports vanilla/mp progs.


Regarding dds formats, the claimed patent is on s3tc/dxt textures rather than dds itself. Its the drivers that decode them rather than your code, so its only the drivers that need the patent. So long as you don't (pointlessly?) decode it to rgba, and your gl driver actually supports it, you're fine (provide a separate tga-only version or something).
You can support RGB(A) dds textures just fine. They should be good for cubemaps etc, its only s3tc/dxt, not dds files themselves.
szo
Posts: 132
Joined: Mon Dec 06, 2010 4:42 pm

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by szo »

Spike wrote:by 'version 7' progs, I *REALLY* hope you refer to a fourth type of 'version 7'.
the fteqcc-v7 implies a whole load of new instructions, as well as some other twiddles.
the qfcc-v7 implies a whole load of new instructions also, as well as some other stuff that I've not read enough to explain.
the kkqwsv-v7 extends only the dstatement_t structure which means saved games are broken (fine for deathmatch-only, but fatal for hexen2).
So I really hope its a fourth version of v7. :P
that said hexen2 has slightly different opcodes+crc, but hey...

tbh you shouldn't really need 32bit indicies anyway. fteqcc can compile h2mp down to only 15k globals. I guess it depends how many arrays you have.
If you do try want to use fteqcc for hexen2 code, you should use the -h2 argument (which outputs h2 opcodes+crc+enables the thinktime keyword). Should work with any engine that still supports vanilla/mp progs.
The v7 spec I added is one that of Pa3PyX (http://pa3pxy.dnsalias.org/) who did it back in 2003, so I guess it fits your definition of "fourth v7"??. It isn't that I like the format or 32 bit offsets or anything (on the contrary, actually), but the thing is "in the wild", i.e. rarely used but really is there :)

As the svn commit log says (http://uhexen2.svn.sourceforge.net/view ... ision=5028), there are only two hexen2 mods out there with v7 progs: one is Pa3PyX's own mod whose binaries are bundled with v7 progs (but his hcode can really compile as v6). The other is 'Project Peanut' by Shanjaq, which really needs v7 because numpr_globals exceeds 65535 with his code. It it because someone asked for support for Shanjaq's mod that I needed to add support for the v7 thing.
revelator
Posts: 2621
Joined: Thu Jan 24, 2008 12:04 pm
Location: inside tha debugger

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by revelator »

Code was from another hexen2 port and was discussed ealier here as not being fit for GPL use :) thats why i warned about using it.
It also has some bugs so Ill see if i can Cook something up that is explicitly GPL friendly and Works as it should.
Productivity is a state of mind.
leileilol
Posts: 2783
Joined: Fri Oct 15, 2004 3:23 am

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by leileilol »

szo wrote:he said himself that his implementation is very slow (see one of the last posts in the thread), so I didn't add.
Works fast and fine with the usual opaque quake statusbar even on Pentiums, perhaps the refdef is making it refresh too much on the transpic (i'd imagine 1920x1080 would be torture, especially if you enter the menus).
Perhaps a duff device would be in order for all the stretch pixel bits?


By the way, i'm having some trouble with the colored lighting applied to models, as they'd (the polyse/aclip functions) have to go all C for the color blending to work at all, and you might not like some of the assembly sacrificed for a new feature. I don't, and with the case of alias models, you can't even partially have them co-exist with the C implementations :( (unlike the sprites, bsp and surfaceblock)
i should not be here
qbism
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am
Contact:

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by qbism »

I played a little of 1.5.5 Win7 x64 and it ran smoothly in both software and GL. Native laptop mode was detected (1600x900). Was trying to figure out how to shepherd with the teleporter without telefragging them. Pushing barrels around also works nicely. Amazing how they can be pushed off the edge in H2 but not Q2.
szo
Posts: 132
Joined: Mon Dec 06, 2010 4:42 pm

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by szo »

qbism wrote:I played a little of 1.5.5 Win7 x64 and it ran smoothly in both software and GL. Native laptop mode was detected (1600x900). Was trying to figure out how to shepherd with the teleporter without telefragging them. Pushing barrels around also works nicely. Amazing how they can be pushed off the edge in H2 but not Q2.
Yeah. Although less appreciated, h2 did much with q1 engine back in the time.
leileilol
Posts: 2783
Joined: Fri Oct 15, 2004 3:23 am

Re: uHexen2 (Hammer of Thyrion) v1.5.5

Post by leileilol »

The Pentacle hc file was a fun read, you can see the Gummeltian enthusiasm throughout that, and any tiger code :)
i should not be here
Post Reply