DevilutionX 3DS

From GameBrew
Revision as of 13:17, 14 April 2020 by HydeWing (talk | contribs)

Template:Infobox 3DS homebrew

DevilutionX 3DS=

IgdQsJC.pngIsJ4KCc.png

Notes:

  • This still has a lot of untested / unimplemented features.
  • Installation instructions:
  • Get full game, either CD or GOG release.
  • Create a 'DevilutionX' folder to your SD, here: 'sdmc:/3ds/DevilutionX/'
  • From the full game, copy 'DIABDAT.MPQ', to: 'sdmc:/3ds/DevilutionX/'
  • Install and run .cia

Info

  • .cia only. Expect bugs!
  • Slow on old3DS

Build instructions:

From inside the build folder:

  • cmake .. -DBINARY_RELEASE=ON -DCMAKE_TOOLCHAIN_FILE=../CMake/ctr/devkitarm-libctru.cmake
  • make

Installation instructions:

  • Get full game, either CD or GOG release.
  • Download CIA: https://github.com/MrHuu/devilutionX-3ds/releases
  • Create a 'DevilutionX' folder to your SD, here: 'sdmc:/3ds/DevilutionX/'
  • From the full game, copy 'DIABDAT.MPQ', to: 'sdmc:/3ds/DevilutionX/'
  • Install and run .cia
  • ???
  • Profit!
  • OpenDingux / RetroFW
  • CMake arguments
  • General
  • The default build type is Debug. This can be changed with -DBINARY_RELEASE=ON. Independently of this, the debug mode of the Diablo engine is always enabled by default. It can be disabled with -DDEBUG=OFF. Finally, in debug builds the address sanitizer is enabled by default. This can be disabled with -DASAN=OFF. You can also generate 32bit builds on 64bit platforms by setting -DCMAKE_TOOLCHAIN_FILE=../CMake/32bit.cmake (remember to use the linux32 command if on Linux). Network support can be disabled using -DNONET=ON, this also removes the need for the ASIO and Sodium dependencies. You can compile the shareware version with -DSPAWN=ON this will allow you to try the game using spawn.mpq from the original shareware which can still be downloaded for free.

mingw32

Use -DCROSS_PREFIX=/path/to/prefix if the i686-w64-mingw32 directory is not in /usr.

Use SDL v1 instead of SDL v2

Pass -DUSE_SDL1=ON to build with SDL v1 instead of v2. Note that some features are not yet supported in SDL v1, notably upscaling, and fullscreen.

Multiplayer

  • TCP/IP only requires the host to expose port 6112
  • UDP/IP requires that all players expose port 6112
  • All games are encrypted and password protected.

Controller support

DevilutionX supports gamepad controls.

Default controller mappings (A/B/X/Y as in Nintendo layout, so the rightmost button is attack):

  • Left analog / DPad: move hero
  • Right analog: simulate mouse
  • A: attack nearby enemies, talk to towns people and merchants, pickup & place items in the inventory, OK while in main menu
  • B: Select spell, cancel while in main menu
  • X: pickup gold, potions & equipment from ground, open chests and doors that are nearby, use item when in inventory (useful to read books etc.)
  • Y: cast spell, go to previous screen when talking to people and in shops, delete character while in main menu
  • R1: inventory
  • L1: character sheet
  • R2: use mana potion from belt
  • L2: use health item from belt
  • Left analog click: toggle automap
  • Right analog click: left mouse click
  • Select: quest log
  • Start: game Menu, skip intro

For now, they can be re-mapped by changing SourceX/controls or by setting the SDL_GAMECONTROLLERCONFIG environment variable (see SDL_GameControllerDB).

Changelogs

v1.0.1

Notes:

  • Following upstream version, even with 1.0.1 now.
  • Suspend / Sleep / Shutdown still don't work as expected.

Installation instructions:

  • Get full game, either CD or GOG release.
  • Create a 'DevilutionX' folder to your SD, here: 'sdmc:/3ds/DevilutionX/'
  • From the full game, copy 'DIABDAT.MPQ', to: 'sdmc:/3ds/DevilutionX/'
  • Install and run .cia

Build instructions:

  • From inside: 'devilutionx\build', run:
  • cmake .. -DNIGHTLY_BUILD=ON -DCMAKE_TOOLCHAIN_FILE=../CMake/ctr/devkitarm-libctru.cmake && make

Advertising: