#game-engine #gamedev #game #monogame #sample #engin #example #2d #3d

Sebanisu b600dda734 more async for monster and data dat. 1 year ago
Core 8b7e4ae380 improvment to movie op code dump 1 year ago
Dat Dump b600dda734 more async for monster and data dat. 1 year ago
DirectX a6a76756c3 Linux fixes 5 years ago
DumpStrings a6a76756c3 Linux fixes 5 years ago
Encoding 7ca2f66fbb rain codemaid on sections of code changed UInt16 to short etc. added a new struct for 16 bit color maybe better than method? 6 years ago
OpenGL a6a76756c3 Linux fixes 5 years ago
OpenGLLinux 570b2505e0 Fix reswizzle (#186) 4 years ago
PAK Extractor a6a76756c3 Linux fixes 5 years ago
Search a6a76756c3 Linux fixes 5 years ago
Testing a6a76756c3 Linux fixes 5 years ago
docs 608d6fd389 new string dump app. 6 years ago
packages a6a76756c3 Linux fixes 5 years ago
.deepsource.toml b6f4323976 Add .deepsource.toml 3 years ago
.editorconfig cb4431656a created editorconfig to export my settings 5 years ago
.gitignore 35b7a7c161 Blue magic pool and fixes 6 years ago
.gitmodules 8e9819eea2 zzzDeArchive as submodule 6 years ago
DirectMidiNet.dll 801c32d085 looks like I forgot about DLLs 7 years ago
LICENSE 283c7540b9 Create LICENSE 6 years ago
NAudio.dll 3b42d81c63 Audio finished- plays ADPCM mono+stereo by WAVEFORMATEX 7 years ago
NAudio.xml 3b42d81c63 Audio finished- plays ADPCM mono+stereo by WAVEFORMATEX 7 years ago
OpenVIII.sln 2a87a162ab string dump app 6 years ago
README.md 98e9a38be4 remove old linux and windows find directory references. 4 years ago
UpgradeLog.htm f3657df573 post merge conflict fixes 6 years ago
linuxAutoBuild.sh 043dd6fe3a Create linuxAutoBuild.sh 6 years ago
sebanisu.yml 64dccd132b changed the yml to name so it wouldn't conflict if maki wanted to add one to main branch. 6 years ago
updatesubmodule.bat 1233a7862a updated zzzdearchive 6 years ago

README.md

OpenVIII

Open source VIII engine implementation in C#

Check our website to find screenshots and more info at: https://makipl.github.io/OpenVIII-monogame/

Getting started (Windows)

Requirements: MonoGame + Visual Studio

  1. Download and install Visual Studio 2019 and NET Framework 4.7.2

  2. Clone the repository:

    git clone https://github.com/MaKiPL/OpenVIII-monogame.git
    
  3. Download and install MonoGame 3.7.1:

  4. If you get an "Unable to load DLL 'FreeImage'" error, download and install:

  5. In Visual Studio 2019, while the solution is open, go to Tools > NuGet Package Manager > Manage NuGet Packages for solution. Make sure the required packages are installed and everything is up to date. There should be a notice on this screen if a package isn't installed. There will be a number in a box next to Updates if there are out of date packages.

  6. Make sure you add the Final Fantasy VIII path to the array at Core\GameDirectoryFinder.cs. On Windows the code tries to detect the install path via the registry. If it fails, it'll fall back to the array.

  7. That's all. You can now compile the executable.

Getting started (Linux/Mono) [Tested on Ubuntu]

  1. Clone the repository

    git clone https://github.com/MaKiPL/OpenVIII-monogame.git
    cd OpenVIII-monogame
    
  2. Make sure your Linux is up to date. Due to the FFmpeg dependency, we require Ubuntu Cosmos.

    sudo apt update
    sudo apt upgrade
    
  3. Install dependencies

    ## Installing ffmpeg and mono
    sudo apt-get --assume-yes install nuget mono-complete mono-devel gtk-sharp3 zip ffmpeg
    echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | sudo debconf-set-selections
    sudo apt-get --assume-yes install ttf-mscorefonts-installer
    ## Installing monogame 3.7.1
    wget https://github.com/MonoGame/MonoGame/releases/download/v3.7.1/monogame-sdk.run
    chmod +x monogame-sdk.run
    sudo ./monogame-sdk.run --noexec --keep --target ./monogame
    cd monogame
    echo Y | sudo ./postinstall.sh
    cd ..  
    ## Get missing Nuget Packages
    nuget restore
    
  4. Build from command line (optional):

    msbuild $Env:APPVEYOR_BUILD_FOLDER/OpenGL$Env:operatingsystem /property:Configuration=Debug$Env:operatingsystem  /property:Platform=$Env:platform
    #$Env:APPVEYOR_BUILD_FOLDER is just a folder you want to build to.
    #$Env:operatingsystem = Linux
    #$Env:platform = x86 or x64
    #please customize the command for what you want to do.
    
  5. Install an IDE

    1. Latest version of MonoDevelop for Linux
    2. The new version 3.8 of Monogame is recommending VSCODE. It may work with Monogame 3.7.1. This reddit post talks about getting things working. Though it might be easier to stick with Monodevelop. I haven't had a chance to test vscode out.
  6. Open FF8.sln with your IDE.

  7. If you encounter missing Microsoft.XNA... then please open NuGet package Edit/Packages/Add Package:

MonoGame.Framework.DesktopGL

MonoGame.Framework.DesktopGL.Core

MonoGame.Framework.OpenGL

  1. Make sure you add the Final Fantasy VIII path to the array at Core/GameDirectoryFinder.cs

Command-Line Arguments

  1. Enable log file.

log=true

  1. Force a FF8 Directory Path.

dir="Path_To_FF8"

  1. Force a different data folder.

data="Path_To_Data"

  1. Force language code.

lang=xx

Development guidelines

  1. This project is currently in active development, therefore you can make new pull requests directly to main branch.

  2. ??

PS. Required FFmpeg dlls. (available on Ubuntu Cosmos via sudo apt-get install ffmpeg)

  • avcodec-58.dll
  • avdevice-58.dll
  • avfilter-7.dll
  • avformat-58.dll
  • avutil-56.dll
  • postproc-55.dll
  • swresample-3.dll
  • swscale-5.dll
    I'd like to thank everyone involved in this project!