[README] Direct3D8 to Direct3D9 Proxy

News and releases for the Direct3D8 to Direct3D9 proxy created specifically for Final Fantasy XI.
Locked
User avatar
atom0s
Site Admin
Posts: 457
Joined: Sat May 14, 2016 5:13 pm

[README] Direct3D8 to Direct3D9 Proxy

Post by atom0s » Thu Apr 13, 2017 12:59 pm


Direct3D8 to Direct3D9 Proxy
Final Fantasy XI in Direct3D9!


Donations
  • This project is released for free in hopes to help fix issues with playing the game on laptops that have switchable graphics. Donations can be made to show your appreciation to my work and a way to say thanks if this project has helped fix any issues you may have had. Donations are also what encourage me to continue working on this project in the future if other bugs and problems arise. Any amount is appreciated and I am thankful to anyone that does donate. I hope this project can help fix your issues like it has mine. :)

    I accept donations through Paypal. You can donate, even without an account, by using this link:
    https://www.paypal.com/cgi-bin/webscr?c ... Q2GRT6KUJN

What Is This Project?
  • The Direct3D8 to Direct3D9 proxy project is a middle-man DLL that interprets the Direct3D8 calls, used by Final Fantasy XI to render the game, and proxies them to Direct3D9 calls instead. This causes the game to run within Direct3D9 as if the game was coded to use it originally. This can have a huge impact on performance for lower-end machines, machines that suffer issues with Nvidia Optimus / AMD Switchable Graphics, and so on. This also can solve issues with those on Windows 10 having issues running FFXI at all due to low performance or invalid rendering due to the lack of true Direct3D8 support. (Mostly seen on laptops for this specific use-case.)

Who Should Use This Project?
  • Ideally, anyone can use this project. However, I designed it mainly for my own personal use due to issues running the game on my new laptop. A huge problem today with Windows 10 and things like Nvidia Optimus / AMD Switchable Graphics where they refuse to work with older (Direct3D8 based) games. Because of this problem, games tend to run at extremely poor performance, low framerates, and even render incorrectly.

    As an example, I have a brand new MSI GE72VR 7RF Apache Pro with an Intel Core i7-7700HQ processor and a Nvidia Geforce 1060 graphics card. Because of being a 7th gen Intel chip, I am forced into Windows 10. Due to this, my laptop refuses to run FFXI using the dedicated graphics and instead uses the CPU rendering for everything. While this happens, with a beast of a machine like this, FFXI runs at 5-10fps. Along with that, things tend to render incorrectly or very poorly regardless of settings.

    Using my Direct3D8 to Direct3D9 proxy, the performance gain is over 100%. The game runs under Direct3D9 which causes Nvidia Optimus to pick up the process and use the dedicated graphics. This also fixes ALL the rendering issues I was facing without the proxy. FPS is a solid 30 (60 if set, 100+ is fully unlocked) with no issues of slowdown, lag, input delay etc. making the game fully playable.
Lead Ashita Developer

Want to donate to say thanks?
https://www.paypal.me/atom0s
User avatar
atom0s
Site Admin
Posts: 457
Joined: Sat May 14, 2016 5:13 pm

Re: [README] Direct3D8 to Direct3D9 Proxy

Post by atom0s » Thu Apr 13, 2017 1:05 pm

System Requirements
  • The following things will need to be installed on your machine in order for this project to work. While this project is focused on Windows 10 users whom have switchable graphics issues, others are free to use this project to up-scale the game to Direct3D9 if they wish. This offers more control of the games rendering via your graphics card options should you wish to mess with them any.
    For Windows 8.1 / Windows 10 users, you may be prompted to install DirectPlay when you load the game, this is required to even play Final Fantasy XI on the newer operating systems. Simply accept the installation for that and follow the steps on-screen to do so. This is built into Windows and not related to this project at all but is required to play the game.
Lead Ashita Developer

Want to donate to say thanks?
https://www.paypal.me/atom0s
User avatar
atom0s
Site Admin
Posts: 457
Joined: Sat May 14, 2016 5:13 pm

Re: [README] Direct3D8 to Direct3D9 Proxy

Post by atom0s » Thu Apr 13, 2017 1:15 pm

How To Use / How To Install
  • At this time, the project will only work with the stock retail client, or while using Ashita.
    Ashita is a Windower alternative for those that are unaware of what it is. You can learn more about Ashita on it's homepage here:
    http://ashita.atom0s.com/

    The installation of this project depends on if you play on Retail servers or if you play on a private server. Please follow the directions below for which one you play on. Failure to do these directions properly will result in the project not working properly, crashing the game, or not working at all.
    • Retail Installation Steps
      1. Download the latest version of this project.
      2. Open the folder where you have PlayOnline installed to. (ie. C:\Program Files (x86)\PlayOnline\SquareEnix\PlayOnlineViewer\)
      3. Extract the d3d8.dll and d3d8.ini file into this folder.
      Both files should be copied into this folder.
      If installed correctly, the folder should look like this:
      http://i.imgur.com/UxkK2cL.png

    • Private Server Installation Steps
      1. Download the latest version of this project.
      2. Open the folder where you have Ashita installed to and open the ffxi-bootmod folder. (ie. C:\Ashita\ffxi-bootmod\)
      3. Extract the d3d8.dll and d3d8.ini file into this folder.
      Both files should be copied into this folder.
      If installed correctly, the folder should look like this:
      http://i.imgur.com/AjWHGD9.png

      If your private server requires that you use a custom boot loader in a different location, then you will need to copy the two files (d3d8.dll, d3d8.ini) into the folder with their custom loader instead.
Lead Ashita Developer

Want to donate to say thanks?
https://www.paypal.me/atom0s
User avatar
atom0s
Site Admin
Posts: 457
Joined: Sat May 14, 2016 5:13 pm

Re: [README] Direct3D8 to Direct3D9 Proxy

Post by atom0s » Thu Apr 13, 2017 1:17 pm

Full Updated Information

In the event that this post is not kept fully up to date, the project contains a Read Me.txt file that is included. This file will contain the most up to date information regarding this project, such as if the requirements change, installation methods change, etc. Please refer to this document anytime there is an update to this project to ensure that you are not missing anything or if a new feature is added you are aware of it.
Lead Ashita Developer

Want to donate to say thanks?
https://www.paypal.me/atom0s
User avatar
atom0s
Site Admin
Posts: 457
Joined: Sat May 14, 2016 5:13 pm

Re: [README] Direct3D8 to Direct3D9 Proxy

Post by atom0s » Thu Apr 13, 2017 1:24 pm

Frequently Asked Questions

Q. Will this work for 'x' video card / 'y' processor / 'z' setup?
A. I cannot guarantee this project will work for all users. I have had very good testing so far from a variety of systems from volunteers. So the general feedback has been very positive and that it has worked great across the board.

Q. I have an AMD system and this project is crashing, any ideas?
A. Try installing the following version of the AMD drivers: AMD Radeon Software Crimson Relive v17.4.2
http://support.amd.com/en-us/kb-article ... Notes.aspx

Q. I have issues with shadows flickering or lighting being messed up.
A. Check out the d3d8.ini file. Open it in a text editor such as notepad. At the bottom you should see a section named 'Fix_ShadowZFighting'. In this section you should see enabled = 0, change this to enabled = 1.
See the following for help: http://i.imgur.com/CS3ljJ2.png
Lead Ashita Developer

Want to donate to say thanks?
https://www.paypal.me/atom0s
Locked