Disgaea PC

Disgaea PC

640 ratings
Pretty Prinny
By Kaldaien
Primarily render enhancements, this mod aims to fix the most glaring visual problems with the game. It also touches on usability (e.g. Steam controller support) and performance / stability. It uses the same core systems developed for my recent Tales of ..., Dragon's Dogma, Fallout 4 and Arkham Knight mods and is completely free and Open Source.

    Sit and spin, d00d!
2
4
2
   
Award
Favorite
Favorited
Unfavorite
Introduction
At present, the project does the following:
  • Uncaps the 720p internal resolution
  • Removes artifacts caused by sprite smoothing
  • Enhances SSAO quality
  • Fixes bad texture coordinates on many sprites
  • Bypasses Intel integrated GPUs on laptops
  • Improves OpenGL performance
  • Supports custom button icons
  • Supports custom resolutions
  • Adds cursor management
  • Adds UI color customization
  • Adds MSAA support
  • Adds a PSN Trophy sound on achievement unlock
      (which can be replaced with any .wav file in OpenGL32.ini)
Problem Description

There are a lot of things wrong with this game on the render-end. My expertise is OpenGL and I am going to take a crack at fixing some of the render issues and adding whatever enhancements I see fit. I thoroughly enjoy this work, so expect interesting things.

Input is a different story. I am not a game developer anymore and have only a passing knowledge of input related systems as they pertain to games. I can fix some general issues (e.g. no XInput support), but understanding why the game handles input the clunky way that it does is beyond me.
Download
Download the Dependencies
Visual C++ 2015 Runtime
    This mod requires the (x86) version, grab the installer here.[www.microsoft.com]

Download the Mod
Pretty Prinny

The latest version (0.5.5) is available from GitHub (grab PrettyPrinny.zip only, not the source code):
    Latest
      v 0.5.5
    Download from here.[github.com]

    Previous
      v 0.5.4
    Download from here.[github.com]

I ask that you never link directly to a GitHub release page when discussing this project; it creates troubleshooting problems for me. Instead, if you could link to the Steam forum post or this guide, that would be appreciated.
Installation
Install
  1. Unzip PrettyPrinny.zip to your Disgaea PC install path (SteamApps/common/Disgaea PC)

      When you install the mod for the first time, it is suggested that you delete the Pad.cfg file to ensure maximum compatibility.

Uninstall
  1. Delete OpenGL32.dll and PrettyPrinny.dll from your Disgaea PC install path
    • Delete the config files for PrettyPrinny.ini and OpenGL.ini as well as logs stored in logs/
Before and After
720p + Absurd button icons

4K 4x MSAA + Meaningful buttons
Configuration
Render
[PrettyPrinny.Render]
SceneResX
    []
Uncaps the game's horizontal resolution (FULLSCREEN MODE)
    The game defaults to 720p (1280)
SceneResY
    []
Uncaps the game's vertical resolution (FULLSCREEN MODE)
    The game defaults to 720p (720)
SwapInterval
    []
Controls VSYNC
    Application-level VSYNC works as follows:
      Values > 0
      Normal VSYNC
        (MaxFPS = Refresh Rate / <SwapInterval>)
      0
      No VSYNC
      Values < 0
      Adaptive VSYNC
        (MaxFPS = Refresh Rate / -<SwapInterval>)
MSAA_Samples
    { 0 | 2 | 4 | (8) }
Applies Multisample Anti-Aliasing
    8x is a practical limit due to excessive memory requirements.
You can toggle this on/off while the game is running by pressing [] + [] + []
RemoveFringing
    { true | false }
Removes alpha fringing artifacts on sprites
    Alpha fringing appears as white borders around the edges of sprites
You can toggle this on/off while the game is running by pressing [] + [] + []
HighPrecisionSSAO
    { true | false }
Eliminates flickering artifacts on Ambient Occlusion
    This makes SSAO more VRAM and GPU intensive (by about 33%)



You can toggle this on/off while the game is running by pressing [Ctrl] + [Shift] + [H]

Please Note:

Many of Pretty Prinny's features do not work when the game is running in mini-window mode.

    They almost all require a "Fullscreen Window" or proper Fullscreen mode. This is because mini-window mode is locked to an even lower resolution (544p) than fullscreen (720p) and is too much of a hassle to deal with.
Configuration
Display
[PrettyPrinny.Display]
Width
    {-1 | 0} [640 - 4096]
The output width in fullscreen mode
    -1
    Let the game decide
    0
    Match the desktop
    >0
    You decide
If you let the game decide, it will usually result in very lengthy Alt+Tabbing and may seriously hurt performance on laptops with high-resolution screens.
Height
    {-1 | 0} [360 - 2160]
The output height in fullscreen mode
    -1
    Let the game decide
    0
    Match the desktop
    >0
    You decide
If you let the game decide, it will usually result in very lengthy Alt+Tabbing and may seriously hurt performance on laptops with high-resolution screens.
Refresh
    {-1 | 0} [23 - 60+]
The output refresh rate in fullscreen mode
    -1
    Let the game decide
    0
    Match the desktop
    No matter what you choose, the game will not exceed 60 FPS.
    >0
    You decide
The game is very bad at deciding which refresh rate to use, do it yourself.
Configuration
Input
[PrettyPrinny.Input]
WrapXInput
    { true | false }
Routes game's controller management through XInput
This option is scheduled for removal, the game supports XInput natively now.
ManageCursor
    { true | false }
When a gamepad is hooked up, hide the mouse cursor intelligently.
CursorTimeout
    []
Time (in seconds) before an inactive mouse cursor is hidden.
GamepadSlot
    { -1 | 0 | 1 | 2 | 3 }
XInput controller to use when checking if a controller is present
    If you do not have an XInput controller, set to -1 to disable hot-plug detection.
When hot-plugging is disabled, cursor will always hide itself even if no controller is connected.
KeysActivateCursor
    { true | false }
Whether or not pressing a key will unhide the cursor

If you use a Steam controller and have custom keybindings setup, turn this off.
AliasArrowsToWASD
    { true | false }
Arrow keys behave the same as WASD
Configuration
Odds and Ends
[PrettyPrinny.Colors]
RedText
    []
Overrides the color of red (negative stat) text
    Pretty Prinny is slightly brighter than the game's default
The game's original values were roughly 128,32,32
BlueText
    []
Overrides the color of blue (positive stat) text
    Pretty Prinny is significantly brighter than the game's default
The game's original values were roughly 32,32,128
OSD Functions
†NOTE:
RivaTuner Statistics Server v. 6.4.0 or newer is required for the overlay features to work.

This ships with certain overclocking software such as MSI Afterburner, or can be downloaded as a standalone package from Guru3D here.[www.guru3d.com]

† OSD Functions
Toggle Framerate Counter
Ctrl + Shift + F
Toggle Clock / Version No.
Ctrl + Shift + T
Toggle GPU Monitor
Ctrl + Shift + G
Toggle CPU Monitor
Ctrl + Shift + C
Toggle Memory Monitor
Ctrl + Shift + M
Toggle I/O Monitor
Ctrl + Shift + I
Toggle Disk Monitor
Ctrl + Shift + D
Toggle Page File Monitor
Ctrl + Shift + P

Resize OSD
Ctrl + Shift + + / -
Toggle Entire OSD
Ctrl + Shift + O

Toggle Command Console
Ctrl + Shift + Tab

Suggested RTSS Settings shown to the left.
Troubleshooting
The project is rather special in that it is the first mod I have done that uses OpenGL. I expect things to be rocky at first, and would ask that any issues encountered be reported in the development thread here.

When reporting a problem, logs/PrettyPrinny.log, logs/steam_api.log and logs/OpenGL32.log are useful information for me. If you could paste those to pastebin.com and then post a link in the thread, I will do my best to track the problem down.
Known Issues
OSD in D3D12 versions of MSI Afterburner

The Render API on the OSD will show up as UNKNOWN (it should say OpenGL) if you are using the latest version of MSI Afterburner.

I have a fix for this in my other projects but am not ready to merge it with this one yet. The problem is mostly benign and you can safely ignore it.

NVIDIA Driver Issues

There were known issues with NVIDIA's 364.47 drivers. They have been resolved in later driver releases, and you are encouraged to upgrade if you have 364.xx drivers installed.

Changing Textures in-game

The mod is configured to enable a feature called "VRAM caching" to speed up rendering in the item world. This feature may cause the game to crash if you change between New and Old textures while the game is running.

    If you need to swap between New and Old textures, edit PrettyPrinny.ini and set VRAMCaching=false to avoid potential problems.
Source Code and Donations




I believe strongly in open source software and I never charge a penny for any of my work. However, these projects do take a considerable amount of my time and I like to think that has some value.

Donations are completely optional, and they permit me to buy books, tools and dedicate more of my time to these projects. See the GitHub repository[github.com] for more information.
223 Comments
Square 19 Apr @ 7:47pm 
the achievements after the install gonna still avaiable?
FineMouche16 [FR] 11 Feb @ 1:27pm 
there is a pad.tga not a pad.cfg, do i del the pad.tga instead of the unfound pad.cfg ?
Katros #FixTF2 4 Feb @ 4:00pm 
This doesn't do anything?
MatheusPese 4 Jan @ 7:48pm 
@Argenwarrior_DestroyerofPeronia same...
Bracken 15 Oct, 2023 @ 12:54pm 
im so lost
Argenwarrior_DestroyerofPeronia 4 Oct, 2023 @ 9:47am 
was having trouble with the sprite layering and installing this didn't fix it plus the screen is very darkened and gave me a glsl missing warning on booting up, am I screwed out of luck due to having an AMD card? Disgaea's 2 demo didn't have that problem so that's odd
Cyborg Snake 31 Aug, 2023 @ 6:42am 
I installed 0.7 and the specialK overlay shows up and says this branch is invalid and crashes game does anyone know how to fix this?
yarow12 20 May, 2023 @ 5:56pm 
@Shearman360 Same. Thought it was intentional in some way, though, 🤷🏿‍♂️
Shearman360 20 May, 2023 @ 12:14pm 
I get horizontal lines across my screen when I move around and they don't appear in screenshots
yarow12 20 Apr, 2023 @ 8:33pm 
nvm, I just found your Discussions post and see that v 0.7.x is for testing.