More actions
(Created page with "{{Infobox DS Homebrews}} {{Infobox DS Homebrews |title=dualHexen by elhobbs |image= |description=Updated hexan DS port. |author=elhobbs |lastupdated=2022/07/11 |type=Sho...") |
m (Text replacement - "|download=https://dlhb.gamebrew.org/dshomebrew/" to "|download=https://dlhb.gamebrew.org/dshomebrew2/") |
||
(24 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{Infobox DS Homebrews | {{Infobox DS Homebrews | ||
|title=dualHexen by elhobbs | |title=dualHexen by elhobbs | ||
|image= | |image=Dualhexenelh2.png | ||
|description=Updated hexan DS port. | |description=Updated hexan DS port. | ||
|author=elhobbs | |author=elhobbs | ||
Line 9: | Line 8: | ||
|version=2022 | |version=2022 | ||
|license=Mixed | |license=Mixed | ||
|download=https://dlhb.gamebrew.org/ | |download=https://dlhb.gamebrew.org/dshomebrew2/dualhexehelh.7z?k33p0fil35 Binary & argv file sample | ||
|website=https://gbatemp.net/threads/help-wanted-dualhexen-issues-in-dsi.607806/post-9876965 | |website=https://gbatemp.net/threads/help-wanted-dualhexen-issues-in-dsi.607806/post-9876965 | ||
|source=https://github.com/elhobbs/dualHexen | |source=https://github.com/elhobbs/dualHexen | ||
}} | }} | ||
This is a modified version of dualHexen, a DS port of first-person shooter Hexen by [[dualHexen|Sketor]] and [[DualHexen Mod|Dopefish]] ( | This is a modified version of dualHexen, a DS port of first-person shooter Hexen by [[dualHexen|Sketor]] and [[DualHexen Mod|Dopefish]] (original ported by Rich Whitehouse). | ||
This version has been updated to build with newer devkitarm and libnds, with some changes to improve performance (DSi), added support for argv file and fixed an issue with save code. | This version has been updated to build with newer devkitarm and libnds, with some changes to improve performance (DSi), added support for argv file and fixed an issue with save code. | ||
Line 25: | Line 24: | ||
* [[DLDI]] patch Hexen (if your card does not have auto patching) and then copy it to anywhere on your card. | * [[DLDI]] patch Hexen (if your card does not have auto patching) and then copy it to anywhere on your card. | ||
* Get hexen.wad version 1.1 (MD5: abb033caf81e26f12a2103e1fa25453f). | * Get hexen.wad version 1.1 (MD5: abb033caf81e26f12a2103e1fa25453f). | ||
* Copy hexen.wad x: | * Copy hexen.wad to x:/data/hexen/hexen.wad. Create the folders if they do not exist. | ||
* Launch Hexen and hopefully it can find hexen.wad (saves are written to /data/hexen/). | * Launch Hexen and hopefully it can find hexen.wad (saves are written to /data/hexen/). | ||
* On slot-1 devices, it can take a minute to load on some slow devices, there is no progress bar. | * On slot-1 devices, it can take a minute to load on some slow devices, there is no progress bar. | ||
Line 34: | Line 33: | ||
==Controls== | ==Controls== | ||
A - Fire | A - Fire | ||
L/R - Strafe left/Right | L/R - Strafe left/Right | ||
Line 45: | Line 38: | ||
D-Pad - Move forward/backwards, Turn left/right | D-Pad - Move forward/backwards, Turn left/right | ||
Touchscreen - Mouselook | Touchscreen - Mouselook | ||
Select - Map | Select - Map | ||
Start - Pause and Options menu | Start - Pause and Options menu | ||
L+R - Speed | |||
X+Left/Right - Inventory change | |||
X+Up/Down - Fly | |||
X+L - Use item | |||
X+R - Change weapon | |||
==Screenshots== | ==Screenshots== | ||
Line 72: | Line 75: | ||
* Fixed an issue with the save code. The save code required the folder "/data/hexen/" to exist. I added code to create the path. not ideal but I changed the path to "./data/hexen/" - the reasoning is that it should work with launchers that support current directory and those that don't. And for launchers that do support current directory it will keep the save games in the same folder. I only tested this so far as completing the first level. | * Fixed an issue with the save code. The save code required the folder "/data/hexen/" to exist. I added code to create the path. not ideal but I changed the path to "./data/hexen/" - the reasoning is that it should work with launchers that support current directory and those that don't. And for launchers that do support current directory it will keep the save games in the same folder. I only tested this so far as completing the first level. | ||
* Enabled the code to allow argv/command line parameters to be processed, but did not test it at all. | * Enabled the code to allow argv/command line parameters to be processed, but did not test it at all. | ||
* Updated controls. | |||
'''v0.29 2011/04/04''' (by Sektor) | '''v0.29 2011/04/04''' (by Sektor) | ||
Line 84: | Line 88: | ||
* This is a modified verison of Sektor's dualHexen, a port of Hexen to the Nintendo DS. Note that Sektor's version is itself a modification of Rich Whitehouse's hexenDS. Mainly I was frustrated by not being able to strafe, but there aren't enough buttons to go around, so I had to move something to the touchscreen. While I was at it I made a couple other changes, and here we are. | * This is a modified verison of Sektor's dualHexen, a port of Hexen to the Nintendo DS. Note that Sektor's version is itself a modification of Rich Whitehouse's hexenDS. Mainly I was frustrated by not being able to strafe, but there aren't enough buttons to go around, so I had to move something to the touchscreen. While I was at it I made a couple other changes, and here we are. | ||
* My changes include: | * My changes include: | ||
** Saving/Loading games (however savegames are not compatible with the PC version | ** Saving/Loading games (however savegames are not compatible with the PC version. | ||
** Inventory manipulation via the touchscreen: | ** Inventory manipulation via the touchscreen: | ||
** Touch the image of the active inventory item to use it. | *** Touch the image of the active inventory item to use it. | ||
** Touch the empty area just to the right of the item to bring up the inventory bar. | *** Touch the empty area just to the right of the item to bring up the inventory bar. | ||
** Touch an item in the inventory bar to make it the active item. | *** Touch an item in the inventory bar to make it the active item. | ||
** If you have more than 7 items in inventory, select the one at the edge to scroll, then return to your inventory. | *** If you have more than 7 items in inventory, select the one at the edge to scroll, then return to your inventory. | ||
** This interface could stand to be improved, but it is functional. | *** This interface could stand to be improved, but it is functional. | ||
** Altered control configuration: | ** Altered control configuration: | ||
*** A = fire | *** A = fire | ||
Line 138: | Line 142: | ||
==Credits== | ==Credits== | ||
Authors: | Authors: | ||
* | * hexenDS by [http://www.telefragged.com/thefatal/ Rich Whitehouse]. | ||
* | * dualHexen updates by [http://vespenegas.com/hexen.html Dopefish] and [http://gtamp.com/DS Sektor]. | ||
Additional thanks: | Additional thanks: | ||
Line 152: | Line 156: | ||
* GBtemp - https://gbatemp.net/threads/help-wanted-dualhexen-issues-in-dsi.607806/post-9876965 | * GBtemp - https://gbatemp.net/threads/help-wanted-dualhexen-issues-in-dsi.607806/post-9876965 | ||
* gbadev.org - https://forum.gbadev.org/viewtopic.php?p=174185#p174185 | * gbadev.org - https://forum.gbadev.org/viewtopic.php?p=174185#p174185 | ||
Latest revision as of 05:03, 16 August 2024
dualHexen by elhobbs | |
---|---|
General | |
Author | elhobbs |
Type | Shooter |
Version | 2022 |
License | Mixed |
Last Updated | 2022/07/11 |
Links | |
Binary & argv file sample Download | |
Website | |
Source | |
This is a modified version of dualHexen, a DS port of first-person shooter Hexen by Sketor and Dopefish (original ported by Rich Whitehouse).
This version has been updated to build with newer devkitarm and libnds, with some changes to improve performance (DSi), added support for argv file and fixed an issue with save code.
Installation
What you need:
- The wad from the full version of Hexen (shareware not supported natively by code released by Raven).
- A DS and a compatible flash cart.
How to use:
- DLDI patch Hexen (if your card does not have auto patching) and then copy it to anywhere on your card.
- Get hexen.wad version 1.1 (MD5: abb033caf81e26f12a2103e1fa25453f).
- Copy hexen.wad to x:/data/hexen/hexen.wad. Create the folders if they do not exist.
- Launch Hexen and hopefully it can find hexen.wad (saves are written to /data/hexen/).
- On slot-1 devices, it can take a minute to load on some slow devices, there is no progress bar.
ARGV file sample for addon by CrashMidnick (disable highdetail for better FPS):
dualhexen.nds -iwad Hexen.wad -file HEXDD.WAD -save HEXDD
Controls
A - Fire
L/R - Strafe left/Right
D-Pad - Move forward/backwards, Turn left/right
Touchscreen - Mouselook
Select - Map
Start - Pause and Options menu
L+R - Speed
X+Left/Right - Inventory change
X+Up/Down - Fly
X+L - Use item
X+R - Change weapon
Screenshots
Compatibility
Tested and works on:
NDSL and O3DSXL with R4 (launch from hbmenu)
DS Fat with R4 (labelled as 2020, launch from the menu and hbmenu)
O3DS with R4i (launch from the menu and hbmenu)
O3DS with TWiLight Menu++
O3DS with DSTWO (launch from the menu and hbmenu)
DSi using Memory Pit (launch from hbmenu)
melonDS emulator
Changelog
v0.28 update 2022/07/11 (by elhobbs)
- Updated version with minimal changes to build with current devkitarm and libnds versions.
- Made some minor changes to use more memory in dsi mode, set the detail to high by default.
- Fixed an issue with the save code. The save code required the folder "/data/hexen/" to exist. I added code to create the path. not ideal but I changed the path to "./data/hexen/" - the reasoning is that it should work with launchers that support current directory and those that don't. And for launchers that do support current directory it will keep the save games in the same folder. I only tested this so far as completing the first level.
- Enabled the code to allow argv/command line parameters to be processed, but did not test it at all.
- Updated controls.
v0.29 2011/04/04 (by Sektor)
- Selecting quit should now return to hbmenu compatible loaders.
- Not tested but should be Sudokuhax/iEvo DSi mode compatible.
- There are still many Z_Malloc memory errors (need to reduce memory usage).
v0.28 2010/05/23 (by elhobbs and Sektor)
- Changes to the source code so it compiles with the current libnds. elhobbs sound code was the main change.
v0.27 2009/12/17 (by Dopefish)
- This is a modified verison of Sektor's dualHexen, a port of Hexen to the Nintendo DS. Note that Sektor's version is itself a modification of Rich Whitehouse's hexenDS. Mainly I was frustrated by not being able to strafe, but there aren't enough buttons to go around, so I had to move something to the touchscreen. While I was at it I made a couple other changes, and here we are.
- My changes include:
- Saving/Loading games (however savegames are not compatible with the PC version.
- Inventory manipulation via the touchscreen:
- Touch the image of the active inventory item to use it.
- Touch the empty area just to the right of the item to bring up the inventory bar.
- Touch an item in the inventory bar to make it the active item.
- If you have more than 7 items in inventory, select the one at the edge to scroll, then return to your inventory.
- This interface could stand to be improved, but it is functional.
- Altered control configuration:
- A = fire
- B = use (i.e. open doors)
- Y = jump
- X = cycle weapons
- L = strafe left
- R = strafe right
- D-Pad = move forward/backwards, turn left/right
- Touchscreen = mouselook, inventory
- Touch screen sensitivity can be adjusted in the options menu. There is a special ds menu on the main menu which has a gamma option and other ds-specific things (such as warp and give all cheats).
- Source code: Source is included. There are a lot of warnings I've been too lazy to fix, but otherwise it's relatively clean. Most changes will be marked with rww or Sektor.
- Add -D_HEXENDS_GBFS to the arm9 makefile to build the GBFS version.
v0.26 2007/01/30 (by Sektor)
- Updated to DLDI version of libfat for greater device compatiblity.
- A and B now work on the menu (previously you had to push Start and Select).
- Added libcartreset - Quit option returns to menu on supported slot-2 devices.
- Level warp now works on DS-X (unexpected side effect of newer devkitARM).
- DS LED blinking is stopped at startup because DS-X annoyingly leaves it on.
- DS sleeps/powersaves when closed.
- Saving and loading are still broken.
- I need a better icon.
v0.25 2006/10/27 (by Sektor)
- Moved from devkitARM r17 to r19b.
- Added libfat support. Hexen can finally be played on GBAMP.
- Changed controls so you don't have to use the touch screen.
- Saving and loading are still broken.
v0.2 2006/03/04 (by Rich Whitehouse)
- Moved from devkitARM r14 to r17, fixing a lot of common bugs in the process (this* should take care of the swapped screens problem some people have as well).
- General speedups. Lots of them.
- Low detail mode from Doom incorporated (made low detail versions of all of Hexen's rendering functions). ARM versions of col/span low detail rendering also included (which are around 13% faster than their GCC O3 versions).
- On-demand texture patch resizing, in order to lessen memory use (should solve any remaining Z_Malloc errors, especially with those huge animating textures).
- Fixed the info screen displaying unreadable junk on the main screen (but it's still info from the PC version, just think of it as authentic!).
- Added an invert look option in the menus.
- Tweaked touchscreen code more to make it more errorproof (it has always worked fine on my hardware, so this isn't 100%).
- When errors occur, the game will display them instead of stopping and spinning in place, so that you can go to my forums and yell at me about them (if someone else hasn't already).
- Fixed mana bars not rendering empty space on the bottom screen.
- Proper loading screen for the initial load sequence.
- Removed the need for cat from the wad-building process.
v0.1 2005/08/10 (by Rich Whitehouse)
- First release. Includes sound, touchscreen and automap support.
Credits
Authors:
- hexenDS by Rich Whitehouse.
- dualHexen updates by Dopefish and Sektor.
Additional thanks:
- WinterMute and Dovoto.
- Chishm (libfat).
- Damian Yerrick (gbfs).
- Ravensoft for releasing the Hexen code to the public.
- Everyone else who has constributed to the wealth of knowledge available for DS homebrewing.