PunishXIV / Splatoon

An accessibility tool to assist in FFXIV gameplay and compensate for human imperfections.
https://puni.sh/plugin/Splatoon
GNU Affero General Public License v3.0
221 stars 56 forks source link

Unable to open splatoon setting and unable to work #70

Closed Omnicidiel closed 2 months ago

Omnicidiel commented 3 months ago

IMG_0821

Furthermore it gives these error please see down below:


13:59:45.820 | ERR | Exception during raise of "Void <InvokeSafely>b__0()"
    SharpDX.CompilationException: unknown:28:61: E5013: Invalid semantic 'SV_InstanceID'.

       at SharpDX.D3DCompiler.ShaderBytecode.Compile(IntPtr textSource, Int32 textSize, String entryPoint, String profile, ShaderFlags shaderFlags, EffectFlags effectFlags, ShaderMacro[] defines, Include include, String sourceFileName, SecondaryDataFlags secondaryDataFlags, DataStream secondaryData)
       at SharpDX.D3DCompiler.ShaderBytecode.Compile(String shaderSource, String entryPoint, String profile, ShaderFlags shaderFlags, EffectFlags effectFlags, String sourceFileName, SecondaryDataFlags secondaryDataFlags, DataStream secondaryData)
       at Splatoon.Render.FanFill..ctor(RenderContext ctx) in \NightmareXIV\Render\FanFill.cs:line 90
       at Splatoon.Render.Renderer..ctor() in \NightmareXIV\Render\Renderer.cs:line 53
       at Splatoon.Gui.OverlayGui..ctor(Splatoon p) in \NightmareXIV\Gui\OverlayGui.cs:line 23
       at Splatoon.Splatoon.Load(IDalamudPluginInterface pluginInterface) in \NightmareXIV\Splatoon.cs:line 133
       at Splatoon.Modules.Loader.Load(IFramework fr) in \NightmareXIV\Modules\Loader.cs:line 128
       at Dalamud.Game.FrameworkPluginScoped.OnUpdateForward(IFramework framework) in C:\goatsoft\companysecrets\dalamud\Game\Framework.cs:line 623
       at Dalamud.Utility.EventHandlerExtensions.<>c__DisplayClass4_1.<InvokeSafely>b__0() in C:\goatsoft\companysecrets\dalamud\Utility\EventHandlerExtensions.cs:line 99
       at Dalamud.Utility.EventHandlerExtensions.HandleInvoke(Action act) in C:\goatsoft\companysecrets\dalamud\Utility\EventHandlerExtensions.cs:line 124
13:59:48.563 | ERR | Exception during raise of "Void <Initialize>b__0()"
    System.NullReferenceException: Object reference not set to an instance of an object.
       at Splatoon.Configuration.<>c__DisplayClass40_0.<Initialize>b__0() in \NightmareXIV\Serializables\Configuration.cs:line 77
       at Dalamud.Utility.EventHandlerExtensions.HandleInvoke(Action act) in C:\goatsoft\companysecrets\dalamud\Utility\EventHandlerExtensions.cs:line 124
14:04:30.844 | ERR | Exception during raise of "Void <Initialize>b__0()"
    System.NullReferenceException: Object reference not set to an instance of an object.
       at Splatoon.Configuration.<>c__DisplayClass40_0.<Initialize>b__0() in \NightmareXIV\Serializables\Configuration.cs:line 77
       at Dalamud.Utility.EventHandlerExtensions.HandleInvoke(Action act) in C:\goatsoft\companysecrets\dalamud\Utility\EventHandlerExtensions.cs:line 124
14:06:05.124 | ERR | [Command] Command /loadsplatoon not found.
14:06:05.245 | ERR | [LOCALPLUGIN] Could not unload "Splatoon", error in plugin dispose
    System.ArgumentException: Delegate to an instance method cannot have null 'this'.
       at System.MulticastDelegate.ThrowNullThisInDelegateToInstance()
       at Splatoon.Splatoon.Dispose() in \NightmareXIV\Splatoon.cs:line 219
       at Dalamud.Plugin.Internal.Types.LocalPlugin.<UnloadAsync>b__70_0() in C:\goatsoft\companysecrets\dalamud\Plugin\Internal\Types\LocalPlugin.cs:line 515
       at Dalamud.Game.Framework.<>c__DisplayClass67_0.<RunOnTick>b__0(Task[] _) in C:\goatsoft\companysecrets\dalamud\Game\Framework.cs:line 260
       at System.Threading.Tasks.TaskFactory`1.<>c.<ContinueWhenAllImpl>b__57_1(Task`1 completedTasks, Object state)
       at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()
       at System.Threading.Tasks.Task.<>c.<.cctor>b__281_0(Object obj)
       at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
    --- End of stack trace from previous location ---
       at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
       at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
    --- End of stack trace from previous location ---
       at Dalamud.Plugin.Internal.Types.LocalPlugin.UnloadAsync(Boolean reloading, Boolean waitBeforeLoaderDispose) in C:\goatsoft\companysecrets\dalamud\Plugin\Internal\Types\LocalPlugin.cs:line 515 
Bichunhi commented 3 months ago

to format the above better one resolved it by installing a updated dxvk with some wine versions two of us tried to fix using the above but doesnt work so likely is something different, alas no clue what it seems to only affect linux & mac 2 arch, 1 steamdeck, 1 mac, 1 unknown when trying to install splatoon it gives the following error;

| DBG | [Splatoon] Circle PS compile: 
 | ERR | Exception during raise of "Void <InvokeSafely>b__0()"
    SharpDX.CompilationException: unknown:26:11: E5030: Unknown modifier "line".
    unknown:26:11: E5001: 'row_major' and 'column_major' modifiers are only allowed for matrices.
    unknown:26:11: E5001: Parameter 'input' is declared as both "out" and "uniform".
    unknown:26:41: E5030: Unknown modifier "TriangleStream".
    unknown:26:35: E5001: Modifier 'inout' was already specified.
    unknown:26:56: E5000: syntax error, unexpected '<'
    V
       at SharpDX.D3DCompiler.ShaderBytecode.Compile(IntPtr textSource, Int32 textSize, String entryPoint, String profile, ShaderFlags shaderFlags, EffectFlags effectFlags, ShaderMacro[] defines, Include include, String sourceFileName, SecondaryDataFlags secondaryDataFlags, DataStream secondaryData)
       at SharpDX.D3DCompiler.ShaderBytecode.Compile(String shaderSource, String entryPoint, String profile, ShaderFlags shaderFlags, EffectFlags effectFlags, String sourceFileName, SecondaryDataFlags secondaryDataFlags, DataStream secondaryData)
       at Splatoon.Render.LineFill..ctor(RenderContext ctx) in \NightmareXIV\Render\LineFill.cs:line 94
       at Splatoon.Render.Renderer..ctor() in \NightmareXIV\Render\Renderer.cs:line 55
       at Splatoon.Gui.OverlayGui..ctor(Splatoon p) in \NightmareXIV\Gui\OverlayGui.cs:line 23
       at Splatoon.Splatoon.Load(IDalamudPluginInterface pluginInterface) in \NightmareXIV\Splatoon.cs:line 133
       at Splatoon.Modules.Loader.Load(IFramework fr) in \NightmareXIV\Modules\Loader.cs:line 127
       at Dalamud.Utility.EventHandlerExtensions.HandleInvoke(Action act) in C:\goatsoft\companysecrets\dalamud\Utility\EventHandlerExtensions.cs:line 124

this is the error when trying to open the gui of splatoon

| ERR | Exception during raise of "Void <Initialize>b__0()"
    System.NullReferenceException: Object reference not set to an instance of an object.
       at Splatoon.Configuration.<>c__DisplayClass40_0.<Initialize>b__0() in \NightmareXIV\Serializables\Configuration.cs:line 77
       at Dalamud.Utility.EventHandlerExtensions.HandleInvoke(Action act) in C:\goatsoft\companysecrets\dalamud\Utility\EventHandlerExtensions.cs:line 124
Limiana commented 3 months ago

Hey, please try using winetricks dxvk

Omnicidiel commented 2 months ago

Tried winetricks but continues not to work especially on steam deck

Bichunhi commented 2 months ago

Hey, please try using winetricks dxvk

this works, make sure winetricks is updated winetricks --self-update then run WINEPREFIX=~/.xlcore/wineprefix winetricks dxvk

if using xivlauncher-rb, there is no need to change the dxvk used in settings

Oldskooldkm commented 2 months ago

is there a way to do that via protontricks? Tried running that in konsole and doesn't work, also winetricks doesn't appear in the discover store as well. Am running on steam deck, looks like splatoon installs but it won't load the settings at all.

Limiana commented 2 months ago

No idea honestly, I'm working on bringing back old renderer as an option, that doesn't have this issue

Omnicidiel commented 2 months ago

I have even tried lutris to install the wine tricks but still unable to show splatoon reinstalled and installed still no luck

Bichunhi commented 2 months ago

edit2: legacy render is out, use that instead of the guide written edit1: might be worth to wait for a dev to fix the issue instead of this workaround for steamdeck users

this method enables devmode look up to see if this is something youre okay with i dont know if protontricks would work the method below works for omnicidiel

setup a password for your user in konsole using passwd this enables sudo for your user (be sure to remember the password) enable dev mode sudo steamos-devmode enable and restart steamdeck now run steamos-devmode -h to disable read-only mode and populate the pacman keyring it will download serveral things related to headers and development tools

now you can install packages from the arch linux repository sudo pacman -S winetricks

update winetricks using sudo winetricks --self-update

install dxvk to the wineprefix to fix splatoon using WINEPREFIX=~/.xlcore/wineprefix winetricks dxvk

if you did winetricks dxvk before doing the self update you need to WINEPREFIX=~/.xlcore/wineprefix winetricks --force dxvk

confirm if it works

enable readonly sudo steamos-readonly enable disable devmode steamos-devmode disable

Oldskooldkm commented 2 months ago

Can confirm the above worked for me! Much Thanks!

Oldskooldkm commented 2 months ago

Seems like since doing the above, I can no longer bring up my steam keyboard with the steam key + x. Doesn't work if I'm in ffxiv in game, but if I swifch over to the xiv launcher, it will work.

Anyone know a way around this?

Limiana commented 2 months ago

I've released testing version which allows to switch between old and new renderers. Ideally, I'd need to work with someone who has access to mac/linux to do decent testing or just gather logs if it still fails to load properly