Skip to content

Releases: VCKing101/Dissidia012-pc

v0.4.0 (developer preview)

Pre-release

Choose a tag to compare

@VCKing101 VCKing101 released this 31 Oct 05:50

Dissidia 012 PC port v0.4.0 (developer preview)

A native PC port of Dissidia 012 Duodecim Final Fantasy (PSP, USA). The game's code is recompiled to native code
and runs on PortableKit's rebuilt PSP system and Vulkan renderer. It is
not an emulator.

No game data is included. You need your own copy of the game: the USA disc ULUS10566, as an .iso. Setup
makes the game from it on your PC, and nothing made from it leaves your PC.

What's new in v0.4.0

A new Battle BGM Maker, a program of its own. The tool for making battle music mods is no longer a page in your
browser with a console window beside it: it is a Windows program, Battle BGM Maker in the Start menu. It is
still optional: tick it in the setup (it takes about 4 MB, where the old one with Python and FFmpeg's programs took
56 MB). It follows Windows' light or dark theme and works in four steps:

  1. Mod: make a mod or pick one.
  2. Music: series and tracks in one tree. Drag your audio files in from Explorer (MP3, Ogg, Opus, FLAC, WAV,
    BRSTM, BCSTM, BFSTM); titles come from their tags.
  3. Loops: a waveform editor with sample-exact markers, zero-crossing snap, playback that loops as the game
    does, a seam audition, and loop suggestions that find where a song repeats.
  4. Check & save: the game's own rules check the mod before anything is written, and Try in game starts the
    game with the loading screen's music choice already on your track.

Ctrl+Z and Ctrl+Y undo and redo everything until you save. Mods made with the old tool open as they are.

Optional: your mods on PPSSPP or a PSP. At the end of Check & save, Make a PSP / PPSSPP ISO writes a copy of
your ISO with your mods' tracks added to the game's own battle music list, as <series> - <title> ("FFXVI - Titan
Lost"), looping where you set them. Your ISO is only read, never changed. It needs the clean USA dump (the one setup
accepts), takes about a minute for 30 tracks, and fits 125 added tracks. Tested in PPSSPP; not yet tested on a
real PSP
(custom firmware needed), so reports are welcome.

Local split-screen versus: player 2's chases. The big × in the middle of the screen when a chase can be
started only ever showed for player 1 (thanks to the Reddit player who reported it). Now it shows in the half of the
player who can chase, and the streaks that come with it are drawn in that player's view only.

DLC music under its own game. The game's own DLC (music packs and costumes) works once you add it yourself; this
project includes none. DLC tracks now join the battle music list under their game ("FFI - Chaos Shrine" under FINAL
FANTASY I, after its disc tracks) instead of a DOWNLOADED group, and one with the same title as a disc track shows
"(DLC)". The DLC costumes ("DLC 1", "DLC 2" under Look, Square, at character select) and Aerith as an assist work
too. The log says at startup how many DLC files the game will find, and warns about a folder with the wrong name.
How to add it: Downloadable content in the
README. Tested with a decrypted copy of the USA DLC; DLC still encrypted as a PSP stores it may not load.

Steady pillars at 60 fps and above. In World of Darkness the pillars flickered at 60 and 90 fps (not at 30):
the in-between frames sometimes drew a pillar halfway towards its neighbour. Copies of the same object now pair with
themselves, wherever they are in the scene.

All of the above was played on a Steam Deck (the port's Deck build, at 90 fps with an occasional drop to 60).

For mod makers: a series can now have a short name (up to 16 characters) for that ISO's track names; the port
ignores it (mod folder format).

Install

  1. Download Dissidia012-PC-Setup-0.4.0.exe below (76 MB).
  2. Run it. It is not code-signed, so Windows may say "Windows protected your PC": choose More info, then
    Run anyway.
  3. Choose the install folder and your .iso, and optionally the Battle BGM Maker. Setup then makes the game,
    which takes a few minutes.
  4. Play with the "Dissidia 012 (PC port)" shortcut in the Start menu. Esc, or L3 + R3 on a controller, opens the
    port's menu with video, controls and audio settings.

You need Windows 10 or 11 (64-bit), a graphics driver with Vulkan (any GPU from about 2016 on) and about 2.5 GB of
free disk space. Your saves are in data\ms0 in the install folder; back that folder up.

To check the download: its SHA-256 is in SHA256SUMS below.

Coming from v0.3.0

Run this setup and install into the same folder. Your saves, settings and mods stay; the old Python BGM Maker and the
FFmpeg programs it used are removed. If you had ticked it before, the box starts ticked and the new one takes its
place in the Start menu; untick it to go without. Running the setup again later adds or removes it the same way.

Known issues

  • The setup is not code-signed, hence Windows' warning above.
  • Windows "N" editions: Make a PSP / PPSSPP ISO needs Microsoft's Media Feature Pack (the encoder reads audio
    through Media Foundation). Everything else works without it.
  • The PSP / PPSSPP ISO has not been tried on a real PSP.
  • DLC has been tried only decrypted; the port does not decrypt DLC still encrypted the way a PSP stores it. DLC
    music shares the game's room for added tracks: with all 43 USA DLC tracks, mods can add 82 rather than 125.
  • Steam Deck: the setup has not been tried there. The Deck build is still made on a Windows PC with
    setup.ps1 -Deck (guide); the
    Battle BGM Maker is not part of it: make mods on the PC.
  • Expect occasional graphical glitches in effects; please report them with a screenshot.
  • Ad hoc (wireless) multiplayer doesn't work. Native Linux is untested.

Building from source

setup.ps1 builds the port and the Battle BGM Maker from the repository, and the ISO export's encoder (atracdenc)
from its source: see the README's
Building from source and
docs/port/setup.md. The Python tool stays
in port/tools/bgm_maker for developers.

Earlier changes: v0.3.0 (the Windows setup),
v0.2.0 (local split-screen versus),
v0.1.2 (saves move to and from PPSSPP),
v0.1.1.

Help and reporting issues

Report bugs on the Issues page. Say what you were doing, and add
a screenshot and the log, data\logs\D012Native.log in the install folder. If the setup itself failed, add
game-code-build.log from the install folder.


Not affiliated with or endorsed by Square Enix or Sony. You need your own legally obtained copy of the game. The
program contains the PSP's published fixed keys and the published key for the game's executable, so it can read your
own disc; see NOTICE.md. Built on PortableKit by
TeamGDB (MIT), with FFmpeg (LGPL), SDL3, Dear ImGui, llvm-mingw (clang, LLVM; Apache 2.0 with LLVM exceptions) and,
for the PSP / PPSSPP ISO, atracdenc (LGPL 2.1, its source included). The licences are in the licenses folder of
the install.

v0.3.0 (developer preview)

Pre-release

Choose a tag to compare

@VCKing101 VCKing101 released this 28 Oct 07:32

A newer version is out: v0.4.0 brings a new Battle BGM Maker program, DLC music sorted under its own game, and steadier frames at 60 fps and above.

Dissidia 012 PC port v0.3.0 (developer preview)

A native PC port of Dissidia 012 Duodecim Final Fantasy (PSP, USA). The game's code is recompiled to native code
and runs on PortableKit's rebuilt PSP system and Vulkan renderer. It is
not an emulator.

No game data is included. You need your own copy of the game: the USA disc ULUS10566, as an .iso. Setup
makes the game from it on your PC, and nothing made from it leaves your PC.

What's new in v0.3.0

A Windows setup that needs nothing installed first. No Visual Studio, Python or Git: download
Dissidia012-PC-Setup-0.3.0.exe below, run it, choose where to install and your ISO, and play.

  • It sets the game up from your ISO by itself: it decrypts the game's program, then compiles the game's code for
    your PC with the compiler that comes with it. That takes a few minutes, about 4 on a recent 8-core PC, with a
    progress bar. Nothing is downloaded.
  • No administrator rights: it installs for your user only, by default in AppData\Local\Programs\Dissidia012.
  • Updating is running the next release's setup over the same folder. Your saves, settings and mods stay, and the
    game's code is only compiled again when the new version needs it.
  • Uninstalling asks whether to keep your saves (it keeps them unless you say otherwise).

The game's code runs about three times faster. It is now compiled with clang, the compiler the setup ships,
instead of Microsoft's: 2.3 to 2.8 ms of game code per battle frame, against 6.8 before, on the same PC. That leaves
much more room on slower PCs.

The Battle BGM Maker, optional in the setup. Tick it to get a Start-menu shortcut that opens the tool in your
browser, on your mods folder, for making your own battle music mods with their loop points. Playing mods others made
does not need it: drop them in the mods folder (the setup adds a Start-menu shortcut to it).

Local split-screen versus, better framed. The lock-on camera now keeps the fighters inside each player's half,
where before it often let a fighter (your own included) sit in the part the half crops away. A new Split-screen
field of view
slider at the end of the menu's Video page (80% to 150%, default 100%) widens or narrows both halves.

Install

  1. Download Dissidia012-PC-Setup-0.3.0.exe below (93 MB).
  2. Run it. It is not code-signed, so Windows may say "Windows protected your PC": choose More info, then
    Run anyway.
  3. Choose the install folder and your .iso, and optionally the Battle BGM Maker. Setup then makes the game,
    which takes a few minutes.
  4. Play with the "Dissidia 012 (PC port)" shortcut in the Start menu. Esc, or L3 + R3 on a controller, opens the
    port's menu with video, controls and audio settings.

You need Windows 10 or 11 (64-bit), a graphics driver with Vulkan (any GPU from about 2016 on) and about 2.5 GB of
free disk space. Your saves are in data\ms0 in the install folder; back that folder up.

To check the download: its SHA-256 is in SHA256SUMS below.

Coming from an earlier version

  • Built with setup.ps1 before? You can keep doing that: git pull, then run setup.cmd again. Or move to the
    setup: install it, then copy your old build\port\data\ms0 and build\port\data\mods folders into the new
    install's data\ folder, replacing what is there. Don't copy settings.ini; set your options again in the menu.

Known issues

  • The setup is not code-signed, hence Windows' warning above.
  • The setup has been tested on one PC. Reports from others, above all slower ones and PCs that never had developer
    tools, are very welcome.
  • Steam Deck: the setup has not been tried there. The Deck build is still made on a Windows PC with
    setup.ps1 -Deck (guide).
  • The Battle BGM Maker runs in a small console window next to your browser; closing that window stops it.
  • Expect occasional graphical glitches in effects; please report them with a screenshot.
  • Ad hoc (wireless) multiplayer doesn't work. Native Linux is untested.

Building from source

setup.ps1 still builds the port from the repository, for following the latest changes or developing it: see the
README's Building from source and
docs/port/setup.md. Its recompile step is
about three times faster in this version too.

Earlier changes: v0.2.0 (local split-screen
versus), v0.1.2 (saves move to and from PPSSPP),
v0.1.1.

Help and reporting issues

Report bugs on the Issues page. Say what you were doing, and add
a screenshot and the log, data\logs\D012Native.log in the install folder. If the setup itself failed, add
game-code-build.log from the install folder.


Not affiliated with or endorsed by Square Enix or Sony. You need your own legally obtained copy of the game. The
program contains the PSP's published fixed keys and the published key for the game's executable, so it can read your
own disc; see NOTICE.md. Built on PortableKit by
TeamGDB (MIT), with FFmpeg (LGPL), SDL3, llvm-mingw (clang, LLVM; Apache 2.0 with LLVM exceptions) and, with the
Battle BGM Maker, Python (PSF licence). The licences are in the licenses folder of the install.

v0.2.0 (developer preview)

Pre-release

Choose a tag to compare

@VCKing101 VCKing101 released this 27 Oct 12:56

A newer version is out: v0.4.0 brings a new Battle BGM Maker program, DLC music sorted under its own game, and steadier frames at 60 fps and above.

Dissidia 012 PC port v0.2.0 (developer preview)

A native PC port of Dissidia 012 Duodecim Final Fantasy (PSP, USA). The game's code is recompiled to native C++
and runs on PortableKit's rebuilt PSP system and Vulkan renderer. It is
not an emulator.

No game data is included. This release is source code and a setup script. The port is built on your own PC
from your own copy of the game: the USA disc ULUS10566 as an .iso.

What's new in v0.2.0

Local split-screen versus. Two players on one PC, each with their own controller and camera.

  • Battle Mode has a new row, Quick Battle (Player vs Player). It needs a second gamepad; without one it says
    "Connect a second controller". Player 1 plays on the keyboard or the first gamepad, player 2 on the second.
  • Player 2 picks on their own controller, from player 1's roster, under a red "Player 2 Select" header. Player 2
    fights with player 1's saved build for that character: level, equipment, abilities, accessories, look and set.
  • The battle setup has no CPU rows. Player 2 shows as the GUEST, at their saved level.
  • In battle the screen is split down the middle, each half from its player's own camera, with their own lock-on
    cursor and command prompts, at 60 fps on both halves. The HUD is laid out as in the original game, with 1P / 2P
    tags over the portraits. Chases stay split; EX Bursts and the victory play full screen.
  • Either player can pause. A controller that disconnects pauses the battle until it comes back.
  • The winner is named at the end, and a versus battle leaves no rewards or records in your save.
  • To turn it off, set game.local_versus=0 in build\port\data\settings.ini (the line appears there after the
    first start). The game is then exactly as before.

Also new: fewer hitches the first time a stage or effect loads. The port now reads the disc image through in the
background from launch, so the game rarely waits on the disk.

Update: if you used git, run git pull, then setup.cmd. If you used the zip, extract this release over your
folder (your build\ folder with your saves stays), then run setup.cmd.

Fixed in v0.1.2

  • Saves now move between the port and PPSSPP, both ways. Before, PPSSPP said "Unable to load data" for a
    save the port wrote, and the port refused a save from PPSSPP as broken. The port wrote the encrypted save file
    slightly differently from a PSP and PPSSPP; it now writes and checks saves their way. Tested both ways against
    PPSSPP 1.20.4.
  • Saves the port already made are fixed automatically. The first time you start v0.1.2, the game loads your
    save and the port rewrites it in the corrected format, with nothing lost. After that it can be copied to PPSSPP.
  • A PPSSPP save the older port refused was left as it was, so it now loads. If the game had already saved over
    it in the port (for example after starting a New Game), copy it again from PPSSPP.
  • To move a save: copy (don't move) the folder ULUS10566GameData00, between build\port\data\ms0\PSP\SAVEDATA
    in the port and PSP\SAVEDATA in PPSSPP's memory stick folder. Keep a backup of both sides.

Thanks to the player who reported it.

Fixed in v0.1.1

  • Setup now builds on Windows set to any language. On Windows set to Chinese, Japanese, Korean and other
    languages, setup stopped with "pk_cmake.cmd failed with exit code 2" (error C2001 in the build log). The
    compiler now always reads the sources as UTF-8. Thanks to the Reddit user who reported it and found the
    workaround.
  • If you already set $env:_CL_ = "/utf-8" to get past it, you no longer need it.

What you get

  • 60 fps, smoothed from the game's 30 fps logic, and a higher internal resolution.
  • Local split-screen versus for two players on one PC (new in v0.2.0).
  • Right-stick camera in battle and on the world map. R3 recentres it.
  • True analog movement on the world map, instead of 8 directions.
  • Battle music mods: add your own tracks (MP3, OGG, FLAC, WAV, or BRSTM with its loop) as new series in a
    two-level music selector on the loading screen. Mods only add to the game; nothing is replaced. The Battle BGM
    Maker
    tool helps you set up a mod and its loop points.
  • Plays from New Game through Story Mode, menus and battles on Windows. It also runs on a Steam Deck through Proton
    (see below).

Install (Windows 10/11, 64-bit)

1. Install these (all free):

  • Visual Studio 2022 Community, or Build Tools 2022, with the
    workload Desktop development with C++
  • Python 3.10 or newer. Tick Add python.exe to PATH.
  • Git for Windows
  • An up-to-date graphics driver (Vulkan: any GPU from about 2016 on)
  • About 5 GB of free disk space

2. Get the port. Either:

  • Recommended (easy updates): in PowerShell, run

    git clone https://github.com/VCKing101/Dissidia012-pc.git
    cd Dissidia012-pc
  • or download Source code (zip) below and extract it to a folder.

3. Run the setup. Double-click setup.cmd in the folder. Or, in PowerShell from the folder, run:

powershell -ExecutionPolicy Bypass -File .\setup.ps1

It checks the tools above and tells you exactly what is missing. It downloads and verifies the build parts, then asks
for your ISO. It decrypts the game's program from the ISO, checks it, and builds the port. The first run takes about
5 to 30 minutes, depending on your PC.

4. Play with the new Dissidia 012 (PC port) shortcut on your desktop or in the Start menu. Esc, or L3 + R3 on a
controller, opens the port's menu, with video, controls and audio settings.

Your saves are in build\port\data\ms0. Mods go in build\port\data\mods. Back up build\port\data before big
changes.

Updating

  • If you used git: run git pull, then run setup.cmd again. It rebuilds only what changed.
  • If you used the zip: extract the new release over your existing folder, so your build\ folder with your saves
    stays. Then run setup.cmd again.

Steam Deck

It runs through Proton as a non-Steam game. You build the package on a Windows PC with setup.ps1 -Deck, then copy
it to the Deck. Step-by-step guide, including over-the-network updates:
docs/port/steam-deck.md. A native
Linux build is planned.

Known issues

  • This is an early preview. Expect occasional graphical glitches in effects. Please report them with a screenshot.
  • Ad hoc multiplayer doesn't work.
  • Local versus on the Steam Deck is untested.
  • Linux (native) and lower-end PCs (8 GB RAM / 4 cores) are untested.
  • Building needs Visual Studio. An installer that doesn't need it is planned.

Help and reporting issues

Troubleshooting: docs/port/setup.md.
Report bugs on the Issues page. Say what you were doing, and add
a screenshot and the log from build\port\logs if you can.


Not affiliated with or endorsed by Square Enix or Sony. You need your own legally obtained copy of the game. The repo
includes the public decryption key for the game's executable, so the port can read your own disc; see
NOTICE.md. Built on PortableKit by TeamGDB (MIT),
with FFmpeg (LGPL), SDL3, glslang and the Vulkan headers.

v0.1.2 (developer preview)

Pre-release

Choose a tag to compare

@VCKing101 VCKing101 released this 26 Oct 03:26

A newer version is out: v0.4.0 brings a new Battle BGM Maker program, DLC music sorted under its own game, and steadier frames at 60 fps and above.

Dissidia 012 PC port v0.1.2 (developer preview)

A native PC port of Dissidia 012 Duodecim Final Fantasy (PSP, USA). The game's code is recompiled to native C++
and runs on PortableKit's rebuilt PSP system and Vulkan renderer. It is
not an emulator.

No game data is included. This release is source code and a setup script. The port is built on your own PC
from your own copy of the game: the USA disc ULUS10566 as an .iso.

What's new in v0.1.2

  • Saves now move between the port and PPSSPP, both ways. Before, PPSSPP said "Unable to load data" for a
    save the port wrote, and the port refused a save from PPSSPP as broken. The port wrote the encrypted save file
    slightly differently from a PSP and PPSSPP; it now writes and checks saves their way. Tested both ways against
    PPSSPP 1.20.4.
  • Saves the port already made are fixed automatically. The first time you start v0.1.2, the game loads your
    save and the port rewrites it in the corrected format, with nothing lost. After that it can be copied to PPSSPP.
  • A PPSSPP save the older port refused was left as it was, so it now loads. If the game had already saved over
    it in the port (for example after starting a New Game), copy it again from PPSSPP.
  • To move a save: copy (don't move) the folder ULUS10566GameData00, between build\port\data\ms0\PSP\SAVEDATA
    in the port and PSP\SAVEDATA in PPSSPP's memory stick folder. Keep a backup of both sides.

Thanks to the player who reported it.

Update: if you used git, run git pull, then setup.cmd. If you used the zip, extract this release over your
folder (your build\ folder with your saves stays), then run setup.cmd.

Fixed in v0.1.1

  • Setup now builds on Windows set to any language. On Windows set to Chinese, Japanese, Korean and other
    languages, setup stopped with "pk_cmake.cmd failed with exit code 2" (error C2001 in the build log). The
    compiler now always reads the sources as UTF-8. Thanks to the Reddit user who reported it and found the
    workaround.
  • If you already set $env:_CL_ = "/utf-8" to get past it, you no longer need it.

What you get

  • 60 fps, smoothed from the game's 30 fps logic, and a higher internal resolution.
  • Right-stick camera in battle and on the world map. R3 recentres it.
  • True analog movement on the world map, instead of 8 directions.
  • Battle music mods: add your own tracks (MP3, OGG, FLAC, WAV, or BRSTM with its loop) as new series in a
    two-level music selector on the loading screen. Mods only add to the game; nothing is replaced. The Battle BGM
    Maker
    tool helps you set up a mod and its loop points.
  • Plays from New Game through Story Mode, menus and battles on Windows. It also runs on a Steam Deck through Proton
    (see below).

Install (Windows 10/11, 64-bit)

1. Install these (all free):

  • Visual Studio 2022 Community, or Build Tools 2022, with the
    workload Desktop development with C++
  • Python 3.10 or newer. Tick Add python.exe to PATH.
  • Git for Windows
  • An up-to-date graphics driver (Vulkan: any GPU from about 2016 on)
  • About 5 GB of free disk space

2. Get the port. Either:

  • Recommended (easy updates): in PowerShell, run

    git clone https://github.com/VCKing101/Dissidia012-pc.git
    cd Dissidia012-pc
  • or download Source code (zip) below and extract it to a folder.

3. Run the setup. Double-click setup.cmd in the folder. Or, in PowerShell from the folder, run:

powershell -ExecutionPolicy Bypass -File .\setup.ps1

It checks the tools above and tells you exactly what is missing. It downloads and verifies the build parts, then asks
for your ISO. It decrypts the game's program from the ISO, checks it, and builds the port. The first run takes about
5 to 30 minutes, depending on your PC.

4. Play with the new Dissidia 012 (PC port) shortcut on your desktop or in the Start menu. Esc, or L3 + R3 on a
controller, opens the port's menu, with video, controls and audio settings.

Your saves are in build\port\data\ms0. Mods go in build\port\data\mods. Back up build\port\data before big
changes.

Updating

  • If you used git: run git pull, then run setup.cmd again. It rebuilds only what changed.
  • If you used the zip: extract the new release over your existing folder, so your build\ folder with your saves
    stays. Then run setup.cmd again.

Steam Deck

It runs through Proton as a non-Steam game. You build the package on a Windows PC with setup.ps1 -Deck, then copy
it to the Deck. Step-by-step guide, including over-the-network updates:
docs/port/steam-deck.md. A native
Linux build is planned.

Known issues

  • This is an early preview. Expect occasional graphical glitches in effects. Please report them with a screenshot.
  • Ad hoc multiplayer doesn't work.
  • Linux (native) and lower-end PCs (8 GB RAM / 4 cores) are untested.
  • Building needs Visual Studio. An installer that doesn't need it is planned.

Help and reporting issues

Troubleshooting: docs/port/setup.md.
Report bugs on the Issues page. Say what you were doing, and add
a screenshot and the log from build\port\logs if you can.


Not affiliated with or endorsed by Square Enix or Sony. You need your own legally obtained copy of the game. The repo
includes the public decryption key for the game's executable, so the port can read your own disc; see
NOTICE.md. Built on PortableKit by TeamGDB (MIT),
with FFmpeg (LGPL), SDL3, glslang and the Vulkan headers.

v0.1.1 (developer preview)

Pre-release

Choose a tag to compare

@VCKing101 VCKing101 released this 25 Oct 03:10

A newer version is out: v0.4.0 brings a new Battle BGM Maker program, DLC music sorted under its own game, and steadier frames at 60 fps and above.

Dissidia 012 PC port v0.1.1 (developer preview)

A native PC port of Dissidia 012 Duodecim Final Fantasy (PSP, USA). The game's code is recompiled to native C++
and runs on PortableKit's rebuilt PSP system and Vulkan renderer. It is
not an emulator.

No game data is included. This release is source code and a setup script. The port is built on your own PC
from your own copy of the game: the USA disc ULUS10566 as an .iso.

What's new in v0.1.1

  • Setup now builds on Windows set to any language. On Windows set to Chinese, Japanese, Korean and other
    languages, setup stopped with "pk_cmake.cmd failed with exit code 2" (error C2001 in the build log). The
    compiler now always reads the sources as UTF-8. Thanks to the Reddit user who reported it and found the
    workaround.
  • If you already set $env:_CL_ = "/utf-8" to get past it, you no longer need it.

Already on v0.1.0 and it built fine? Nothing changes for you, so there's no need to update.

What you get

  • 60 fps, smoothed from the game's 30 fps logic, and a higher internal resolution.
  • Right-stick camera in battle and on the world map. R3 recentres it.
  • True analog movement on the world map, instead of 8 directions.
  • Battle music mods: add your own tracks (MP3, OGG, FLAC, WAV, or BRSTM with its loop) as new series in a
    two-level music selector on the loading screen. Mods only add to the game; nothing is replaced. The Battle BGM
    Maker
    tool helps you set up a mod and its loop points.
  • Plays from New Game through Story Mode, menus and battles on Windows. It also runs on a Steam Deck through Proton
    (see below).

Install (Windows 10/11, 64-bit)

1. Install these (all free):

  • Visual Studio 2022 Community, or Build Tools 2022, with the
    workload Desktop development with C++
  • Python 3.10 or newer. Tick Add python.exe to PATH.
  • Git for Windows
  • An up-to-date graphics driver (Vulkan: any GPU from about 2016 on)
  • About 5 GB of free disk space

2. Get the port. Either:

  • Recommended (easy updates): in PowerShell, run

    git clone https://github.com/VCKing101/Dissidia012-pc.git
    cd Dissidia012-pc
  • or download Source code (zip) below and extract it to a folder.

3. Run the setup. Double-click setup.cmd in the folder. Or, in PowerShell from the folder, run:

powershell -ExecutionPolicy Bypass -File .\setup.ps1

It checks the tools above and tells you exactly what is missing. It downloads and verifies the build parts, then asks
for your ISO. It decrypts the game's program from the ISO, checks it, and builds the port. The first run takes about
5 to 30 minutes, depending on your PC.

4. Play with the new Dissidia 012 (PC port) shortcut on your desktop or in the Start menu. Esc, or L3 + R3 on a
controller, opens the port's menu, with video, controls and audio settings.

Your saves are in build\port\data\ms0. Mods go in build\port\data\mods. Back up build\port\data before big
changes.

Updating

  • If you used git: run git pull, then run setup.cmd again. It rebuilds only what changed.
  • If you used the zip: extract the new release over your existing folder, so your build\ folder with your saves
    stays. Then run setup.cmd again.

Steam Deck

It runs through Proton as a non-Steam game. You build the package on a Windows PC with setup.ps1 -Deck, then copy
it to the Deck. Step-by-step guide, including over-the-network updates:
docs/port/steam-deck.md. A native
Linux build is planned.

Known issues

  • This is an early preview. Expect occasional graphical glitches in effects. Please report them with a screenshot.
  • Ad hoc multiplayer doesn't work.
  • Linux (native) and lower-end PCs (8 GB RAM / 4 cores) are untested.
  • Building needs Visual Studio. An installer that doesn't need it is planned.

Help and reporting issues

Troubleshooting: docs/port/setup.md.
Report bugs on the Issues page. Say what you were doing, and add
a screenshot and the log from build\port\logs if you can.


Not affiliated with or endorsed by Square Enix or Sony. You need your own legally obtained copy of the game. The repo
includes the public decryption key for the game's executable, so the port can read your own disc; see
NOTICE.md. Built on PortableKit by TeamGDB (MIT),
with FFmpeg (LGPL), SDL3, glslang and the Vulkan headers.

v0.1.0 (developer preview)

Pre-release

Choose a tag to compare

@VCKing101 VCKing101 released this 24 Oct 23:15

A newer version is out: v0.4.0 brings a new Battle BGM Maker program, DLC music sorted under its own game, and steadier frames at 60 fps and above.

Dissidia 012 PC port v0.1.0 (developer preview)

A native PC port of Dissidia 012 Duodecim Final Fantasy (PSP, USA). The game's code is recompiled to native C++
and runs on PortableKit's rebuilt PSP system and Vulkan renderer. It is
not an emulator.

No game data is included. This release is source code and a setup script. The port is built on your own PC
from your own copy of the game: the USA disc ULUS10566 as an .iso.

What you get

  • 60 fps, smoothed from the game's 30 fps logic, and a higher internal resolution.
  • Right-stick camera in battle and on the world map. R3 recentres it.
  • True analog movement on the world map, instead of 8 directions.
  • Battle music mods: add your own tracks (MP3, OGG, FLAC, WAV, or BRSTM with its loop) as new series in a
    two-level music selector on the loading screen. Mods only add to the game; nothing is replaced. The Battle BGM
    Maker
    tool helps you set up a mod and its loop points.
  • Plays from New Game through Story Mode, menus and battles on Windows. It also runs on a Steam Deck through Proton
    (see below).

Install (Windows 10/11, 64-bit)

1. Install these (all free):

  • Visual Studio 2022 Community, or Build Tools 2022, with the
    workload Desktop development with C++
  • Python 3.10 or newer. Tick Add python.exe to PATH.
  • Git for Windows
  • An up-to-date graphics driver (Vulkan: any GPU from about 2016 on)
  • About 5 GB of free disk space

2. Get the port. Either:

  • Recommended (easy updates): in PowerShell, run

    git clone https://github.com/VCKing101/Dissidia012-pc.git
    cd Dissidia012-pc
  • or download Source code (zip) below and extract it to a folder.

3. Run the setup. Double-click setup.cmd in the folder. Or, in PowerShell from the folder, run:

powershell -ExecutionPolicy Bypass -File .\setup.ps1

It checks the tools above and tells you exactly what is missing. It downloads and verifies the build parts, then asks
for your ISO. It decrypts the game's program from the ISO, checks it, and builds the port. The first run takes about
5 to 30 minutes, depending on your PC.

4. Play with the new Dissidia 012 (PC port) shortcut on your desktop or in the Start menu. Esc, or L3 + R3 on a
controller, opens the port's menu, with video, controls and audio settings.

Your saves are in build\port\data\ms0. Mods go in build\port\data\mods. Back up build\port\data before big
changes.

Updating

  • If you used git: run git pull, then run setup.cmd again. It rebuilds only what changed.
  • If you used the zip: extract the new release over your existing folder, so your build\ folder with your saves
    stays. Then run setup.cmd again.

Steam Deck

It runs through Proton as a non-Steam game. You build the package on a Windows PC with setup.ps1 -Deck, then copy
it to the Deck. Step-by-step guide, including over-the-network updates:
docs/port/steam-deck.md. A native
Linux build is planned.

Known issues

  • This is an early preview. Expect occasional graphical glitches in effects. Please report them with a screenshot.
  • Ad hoc multiplayer doesn't work.
  • Linux (native) and lower-end PCs (8 GB RAM / 4 cores) are untested.
  • Building needs Visual Studio. An installer that doesn't need it is planned.

Help and reporting issues

Troubleshooting: docs/port/setup.md.
Report bugs on the Issues page. Say what you were doing, and add
a screenshot and the log from build\port\logs if you can.


Not affiliated with or endorsed by Square Enix or Sony. You need your own legally obtained copy of the game. The repo
includes the public decryption key for the game's executable, so the port can read your own disc; see
NOTICE.md. Built on PortableKit by TeamGDB (MIT),
with FFmpeg (LGPL), SDL3, glslang and the Vulkan headers.