Skip to content

A New Year - version 3.0!

Latest
Compare
Choose a tag to compare
@Struggleton Struggleton released this 17 Jan 15:10

This is a developer's note from me to everyone who gets this release - If you're not interested in reading it, and only reading the changelog / downloading the latest release, feel free to skip this. But if you're so inclined to do so, contribute to me and the project by donating using the Paypal / KoFi / Patreon links below. I've been grinding hard to get this new release out and create something I'm really proud of, and I would love to continue to work on it.

It's been over a year since Delfinovin's last release. Delfinovin was not in a state I felt I wanted to leave it in, with numerous bugs and issues, but between college and general life happenings, I couldn't find the time to make the changes I wanted to make to improve it. At some point, I began poking at the code base and realized that a lot of issues that I had with the application and code were so deeply rooted in its design that I felt that only a rewrite could really remedy them. College got in the way of me doing what I wanted, but as of recently it began to wind down, I gained a lot more motivation towards fixing it, and I was able to spend more time on it.

For the last month or so I've spent most of my time rewriting Delfinovin and its code into a more solid code base, something easier to understand and update. I rewrote the UI, basically all of the code to interact with the adapter, and implementing a lot of useful and interesting features. I also wanted to make this project something people trying to learn, could take something away from, so I've commented on a lot of code and what it does and attempted to implement a lot of consistency rules in the code. I will admit, feature creep definitely came into play, and this release doesn't have all of the features I would've liked to include. But if I didn't stop myself this release would've never seen the light of day, haha.

With all of that being said, here is the changelog for Delfinovin v3.0.0!

  • Completely new UI - A new UI with the goal of simplifying the experience overall for people compared to the old version. How to operate it is hopefully more clear.
  • New profile system - In the previous versions, Delfinovin used its own custom configuration implementation to store controller and application settings. Now in Delfinovin v3 it uses a more standardized and easily extensible JSON profile system. Controller profiles are shared application wide, and can now be favorited in a list. This fixes a number of issues with profiles not saving, not loading, default profiles not being assigned properly, etc.
    • With this however, old profiles will not carry over and will have to be redone. My deepest apologies.
  • A new input system backend - Basically a complete rewrite of how inputs are handled. Inputs are only updated when changes to the previous input are made. The inputs are handled significantly differently, allowing for a number of new features to be added such as:
  • Button Remapping - A feature long time requested! Buttons can be remapped to different Xbox buttons and button combinations can be created in order to press buttons on the Xbox controller that the Gamecube controller does not have.
    • With this, the EnableDigitalPress setting was removed in favor of users being able to directly map the digital button to the triggers.
    • ...However a new setting called SwapControlSticks was added that now allows users to swap the left and right thumbsticks.
  • Hotkeys - Hotkeys and button combinations can now be assigned in Delfinovin to perform a number of actions, such as...
  • Input Recording - I think this is the first implementation of input recording on an input wrapper ever. Inputs can be recorded, stored and played back in Delfinovin! Use this to record combos/scenarios in various games.

  • Input Display - Open a window with a fighting game-esque input display, with a greenscreen for easy chroma keying.
  • A number of miscellaneous improvements and bugfixes were made to the application:
    • Improved UI response time. Closing / Opening the application is now cleaner + faster.
    • Improve stick ranges and calibration. Stick ranges and values should now be more accurate to the controller.
    • Fixed an issue where Delfinovin would leave the process open if closed using the Taskbar.
    • Fixed an issue where the system tray icon would be left behind if closed in a specific way.
    • Fixed an issue where default profiles failed to load on startup.
    • Fixed an issue where two triggers could not be pressed at the same time.

With that, please enjoy! If you are interested in contributing to the project or using it at large events, navigate to the contributions and events page on the wiki for more information on how to do so.

With this new version however, Delfinovin has migrated to the .NET Core Framework. This is different from the .NET Framework that is prepacked with Windows. .NET Core is a newer framework, receiving multiple modern updates and support compared to the .NET framework, and I found it in my best interest to migrate to it.

This means you will have to install the .NET 7 Desktop Runtime in order to run the application. Opening Delfinovin for the first time will prompt you to install it and will download it for you automatically, should you let it. You can also follow the setup instructions on the wiki, if you are a first time user of Delfinovin. Any issues regarding the .NET Runtime installation will be closed.