JordanSantiagoYT / FNF-JS-Engine

JS Engine is basically Psych Engine but with (almost) no botplay lag and NEW features!
Apache License 2.0
47 stars 27 forks source link

[Linux] Activating Eye sore crashes game #433

Closed TheKamboy closed 4 months ago

TheKamboy commented 4 months ago

Describe your bug here. If you are modding, try testing your bug in a clean version of the engine instead. Also, if you're using an older version of JSE, please try the latest version/action build. Also, be sure to check the pinned 'JS Engine: Known Issues' issue, to check if your issue hasn't already been found!

If anything calls the eye sore event, the game closes immediately.

Command Prompt/Terminal/Crash logs (if existing)

~/Downloads/FNF-JS-Engine-linux
❯ ./JSEngine
(DiscordClient) Connected to User (arrpc)
source/TitleState.hx:143: checking for update
source/TitleState.hx:156: version online: 1.28.0, your version: 1.28.0
source/TitleState.hx:163: the versions match!
source/FreeplayState.hx:610: master-hard
source/FreeplayState.hx:624: CURRENT WEEK: week5a
source/LoadingState.hx:162: Setting asset folder to shared
source/PlayState.hx:2097: Anim speed: 1
source/Conductor.hx:156: new BPM map BUDDY []
source/Paths.hx:121: NOTE_assets
source/FunkinLua.hx:2922: initializing haxe interp for: mods/dnb/scripts/death screen.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/dnb/scripts/death screen.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/dnb/scripts/credits.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/dnb/scripts/songname.lua
source/Paths.hx:587: oh no its returning null NOOOO (assets/images/empty.png)
source/Paths.hx:587: oh no its returning null NOOOO (assets/images/empty.png)
source/FunkinLua.hx:114: lua file loaded succesfully:mods/dnb/scripts/night.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/dnb/scripts/sunset.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/dnb/scripts/cameraMovement.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/morehp.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/hrkhud.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/aleonbfCountdown.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/precacheing.lua
source/Paths.hx:733: oh no its returning null NOOOO (assets/sounds/ChartingTick.ogg)
source/Paths.hx:587: oh no its returning null NOOOO (assets/images/noteSplashes.png)
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/iconbop.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/iconbopfix.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/fixDEtimeBar.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/strum.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/infotext.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/MoonHUD.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/Icon Bop And UI Pack.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/dnb/stages/space.lua
source/Paths.hx:587: oh no its returning null NOOOO (assets/images/empty.png)
source/Paths.hx:587: oh no its returning null NOOOO (assets/images/empty.png)
source/Paths.hx:733: oh no its returning null NOOOO (assets/sounds/ChartingTick.ogg)
source/Paths.hx:587: oh no its returning null NOOOO (assets/images/noteSplashes.png)
source/PlayState.hx:1420: Loading chart...
source/PlayState.hx:3452: Done! 362 notes were loaded in 0.0954670906066895 seconds.
source/FunkinLua.hx:114: lua file loaded succesfully:mods/dnb/custom_events/Eyesores.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/dnb/custom_events/Zoom.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/dnb/data/master/script2.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/dnb/data/master/script.lua
llua/Convert.hx:32: haxe value not supported
(x: 0 | y: 849.6 | w: 1280 | h: 27 | visible: true | velocity: (x: 0 | y: 0)) - TClass(flixel.text.FlxText)
Called from hxcpp::__hxcpp_main
Called from ApplicationMain::main ApplicationMain.hx line 26
Called from ApplicationMain::create ApplicationMain.hx line 137
Called from openfl.display.Application::exec openfl/display/Application.hx line 130
Called from lime.app.Application::exec lime/app/Application.hx line 150
Called from lime._internal.backend.native.NativeApplication::exec lime/_internal/backend/native/NativeApplication.hx line 146
Called from lime._internal.backend.native.NativeApplication::handleRenderEvent lime/_internal/backend/native/NativeApplication.hx line 375
Called from lime.app._Event_lime_graphics_RenderContext_Void::dispatch lime/_internal/macros/EventMacro.hx line 91
Called from openfl.display.Stage::__onLimeRender openfl/display/Stage.hx line 2186
Called from openfl.display.Stage::__render openfl/display/Stage.hx line 2105
Called from openfl.display.OpenGLRenderer::__render openfl/display/OpenGLRenderer.hx line 764
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 31
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 31
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 31
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 31
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 18
Called from openfl.display._internal.Context3DDisplayObject::renderDrawable openfl/display/_internal/Context3DDisplayObject.hx line 61
Called from openfl.display.DisplayObjectRenderer::__updateCacheBitmap openfl/display/DisplayObjectRenderer.hx line 664
Called from openfl.display.OpenGLRenderer::__renderFilterPass openfl/display/OpenGLRenderer.hx line 910
Called from openfl.display.OpenGLRenderer::__initShader openfl/display/OpenGLRenderer.hx line 538
Called from openfl.display.Shader::__init openfl/display/Shader.hx line 459
Called from openfl.display.Shader::__initGL openfl/display/Shader.hx line 511
Called from openfl.display.Shader::__createGLProgram openfl/display/Shader.hx line 346
Called from openfl.display.Shader::__createGLShader openfl/display/Shader.hx line 334
Called from lime.utils.Log::error lime/utils/Log.hx line 37
Error : [openfl.display.Shader] ERROR: Error compiling fragment shader
0:85(30): error: could not implicitly convert operands to arithmetic operator
0:85(22): error: operands to arithmetic operators must be numeric
0:85(49): error: could not implicitly convert operands to arithmetic operator
0:85(48): error: operands to arithmetic operators must be numeric
0:85(22): error: operands to arithmetic operators must be numeric
0:85(18): error: no matching function for call to `sin(error)'; candidates are:
0:85(18): error:    float sin(float)
0:85(18): error:    vec2 sin(vec2)
0:85(18): error:    vec3 sin(vec3)
0:85(18): error:    vec4 sin(vec4)
0:86(30): error: could not implicitly convert operands to arithmetic operator
0:86(22): error: operands to arithmetic operators must be numeric
0:86(49): error: could not implicitly convert operands to arithmetic operator
0:86(48): error: operands to arithmetic operators must be numeric
0:86(22): error: operands to arithmetic operators must be numeric
0:86(18): error: no matching function for call to `sin(error)'; candidates are:
0:86(18): error:    float sin(float)
0:86(18): error:    vec2 sin(vec2)
0:86(18): error:    vec3 sin(vec3)
0:86(18): error:    vec4 sin(vec4)
0:87(22): error: could not implicitly convert operands to arithmetic operator
0:87(22): error: operands to arithmetic operators must be numeric
0:87(41): error: could not implicitly convert operands to arithmetic operator
0:87(40): error: operands to arithmetic operators must be numeric
0:87(22): error: operands to arithmetic operators must be numeric
0:87(18): error: no matching function for call to `sin(error)'; candidates are:
0:87(18): error:    float sin(float)
0:87(18): error:    vec2 sin(vec2)
0:87(18): error:    vec3 sin(vec3)
0:87(18): error:    vec4 sin(vec4)
0:87(9): error: no matching function for call to `mix(float, error, float)'; candidates are:
0:87(9): error:    float mix(float, float, float)
0:87(9): error:    vec2 mix(vec2, vec2, float)
0:87(9): error:    vec3 mix(vec3, vec3, float)
0:87(9): error:    vec4 mix(vec4, vec4, float)
0:87(9): error:    vec2 mix(vec2, vec2, vec2)
0:87(9): error:    vec3 mix(vec3, vec3, vec3)
0:87(9): error:    vec4 mix(vec4, vec4, vec4)
0:88(22): error: could not implicitly convert operands to arithmetic operator
0:88(22): error: operands to arithmetic operators must be numeric
0:88(45): warning: `offsetZ' used uninitialized
0:88(41): error: could not implicitly convert operands to arithmetic operator
0:88(22): error: operands to arithmetic operators must be numeric
0:88(22): error: operands to arithmetic operators must be numeric
0:88(18): error: no matching function for call to `sin(error)'; candidates are:
0:88(18): error:    float sin(float)
0:88(18): error:    vec2 sin(vec2)
0:88(18): error:    vec3 sin(vec3)
0:88(18): error:    vec4 sin(vec4)
0:88(9): error: no matching function for call to `mix(float, error, float)'; candidates are:
0:88(9): error:    float mix(float, float, float)
0:88(9): error:    vec2 mix(vec2, vec2, float)
0:88(9): error:    vec3 mix(vec3, vec3, float)
0:88(9): error:    vec4 mix(vec4, vec4, float)
0:88(9): error:    vec2 mix(vec2, vec2, vec2)
0:88(9): error:    vec3 mix(vec3, vec3, vec3)
0:88(9): error:    vec4 mix(vec4, vec4, vec4)
0:89(22): error: could not implicitly convert operands to arithmetic operator
0:89(41): warning: `offsetY' used uninitialized
0:89(22): error: operands to arithmetic operators must be numeric
0:89(58): warning: `offsetZ' used uninitialized
0:89(53): error: could not implicitly convert operands to arithmetic operator
0:89(52): error: operands to arithmetic operators must be numeric
0:89(22): error: operands to arithmetic operators must be numeric
0:89(18): error: no matching function for call to `sin(error)'; candidates are:
0:89(18): error:    float sin(float)
0:89(18): error:    vec2 sin(vec2)
0:89(18): error:    vec3 sin(vec3)
0:89(18): error:    vec4 sin(vec4)
0:89(9): error: no matching function for call to `mix(float, error, float)'; candidates are:
0:89(9): error:    float mix(float, float, float)
0:89(9): error:    vec2 mix(vec2, vec2, float)
0:89(9): error:    vec3 mix(vec3, vec3, float)
0:89(9): error:    vec4 mix(vec4, vec4, float)
0:89(9): error:    vec2 mix(vec2, vec2, vec2)
0:89(9): error:    vec3 mix(vec3, vec3, vec3)
0:89(9): error:    vec4 mix(vec4, vec4, vec4)

#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#endif

    varying float openfl_Alphav;
        varying vec4 openfl_ColorMultiplierv;
        varying vec4 openfl_ColorOffsetv;
        varying vec2 openfl_TextureCoordv;

        uniform bool openfl_HasColorTransform;
        uniform vec2 openfl_TextureSize;
        uniform sampler2D bitmap;

        uniform bool hasTransform;
        uniform bool hasColorTransform;

        vec4 flixel_texture2D(sampler2D bitmap, vec2 coord)
        {
            vec4 color = texture2D(bitmap, coord);
            if (!hasTransform)
            {
                return color;
            }

            if (color.a == 0.0)
            {
                return vec4(0.0, 0.0, 0.0, 0.0);
            }

            if (!hasColorTransform)
            {
                return color * openfl_Alphav;
            }

            color = vec4(color.rgb / color.a, color.a);

            mat4 colorMultiplier = mat4(0);
            colorMultiplier[0][0] = openfl_ColorMultiplierv.x;
            colorMultiplier[1][1] = openfl_ColorMultiplierv.y;
            colorMultiplier[2][2] = openfl_ColorMultiplierv.z;
            colorMultiplier[3][3] = openfl_ColorMultiplierv.w;

            color = clamp(openfl_ColorOffsetv + (color * colorMultiplier), 0.0, 1.0);

            if (color.a > 0.0)
            {
                return vec4(color.rgb * color.a * openfl_Alphav, color.a * openfl_Alphav);
            }
            return vec4(0.0, 0.0, 0.0, 0.0);
        }

    uniform float uampmul;

    //modified version of the wave shader to create weird garbled corruption like messes
    uniform float uTime;

    /**
     * How fast the waves move over time
     */
    uniform float uSpeed;

    /**
     * Number of waves over time
     */
    uniform float uFrequency;

    uniform bool uEnabled;

    /**
     * How much the pixels are going to stretch over the waves
     */
    uniform float uWaveAmplitude;

    vec4 sineWave(vec4 pt, vec2 pos)
    {
        if (uampmul > 0.0)
        {
            float offsetX = sin(pt.y * uFrequency + uTime * uSpeed);
            float offsetY = sin(pt.x * (uFrequency * 2) - (uTime / 2) * uSpeed);
            float offsetZ = sin(pt.z * (uFrequency / 2) + (uTime / 3) * uSpeed);
            pt.x = mix(pt.x,sin(pt.x / 2 * pt.y + (5 * offsetX) * pt.z),uWaveAmplitude * uampmul);
            pt.y = mix(pt.y,sin(pt.y / 3 * pt.z + (2 * offsetZ) - pt.x),uWaveAmplitude * uampmul);
            pt.z = mix(pt.z,sin(pt.z / 6 * (pt.x * offsetY) - (50 * offsetZ) * (pt.z * offsetX)),uWaveAmplitude * uampmul);
        }

        return vec4(pt.x, pt.y, pt.z, pt.w);
    }

    void main()
    {
        vec2 uv = openfl_TextureCoordv;
        gl_FragColor = sineWave(texture2D(bitmap, uv),uv);
    }

Have you identified any steps to reproduce the bug? If so, please describe them below in as much detail as possible. Use images if possible.

Basically just use Linux, run the game, load a song that calls the eye sore event (or add it to the song), and the game should crash the second it reaches the eye sore event.

Are you modding a build from source or with Lua?

Lua

What is your build target?

Linux

Did you edit anything in this build? If so, mention or summarize your changes.

no

If you use 1.12.0 or earlier, did you have Optimized Chart Loading turned on?

None

Did you check for any similar issues to what you're reporting? Check, then come back here. If there is a similar issue, then do not report the issue, otherwise it will be marked as a duplicate.

Yes

TheKamboy commented 4 months ago

Logs from testing a JS Chart

~/Downloads/FNF-JS-Engine-linux
❯ ./JSEngine 
(DiscordClient) Connected to User (arrpc)
source/TitleState.hx:143: checking for update
source/TitleState.hx:156: version online: 1.28.0, your version: 1.28.0
source/TitleState.hx:163: the versions match!
source/FreeplayState.hx:610: the-guy-from-fortnite
source/FreeplayState.hx:624: CURRENT WEEK: funnyweek
source/LoadingState.hx:162: Setting asset folder to shared
source/PlayState.hx:2097: Anim speed: 1
source/Conductor.hx:156: new BPM map BUDDY []
source/Paths.hx:121: NOTE_assets
source/FunkinLua.hx:2922: initializing haxe interp for: mods/funnysongs/scripts/dyed.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/funnysongs/scripts/dyed.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/morehp.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/hrkhud.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/aleonbfCountdown.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/precacheing.lua
source/Paths.hx:733: oh no its returning null NOOOO (assets/sounds/ChartingTick.ogg)
source/Paths.hx:587: oh no its returning null NOOOO (assets/images/noteSplashes.png)
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/iconbop.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/songname.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/iconbopfix.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/fixDEtimeBar.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/strum.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/infotext.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/MoonHUD.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/scripts/Icon Bop And UI Pack.lua
source/Paths.hx:733: oh no its returning null NOOOO (assets/sounds/ChartingTick.ogg)
source/Paths.hx:587: oh no its returning null NOOOO (assets/images/noteSplashes.png)
source/PlayState.hx:1420: Loading chart...
source/PlayState.hx:3452: Done! 119258 notes were loaded in 0.564533948898315 seconds.
source/FunkinLua.hx:114: lua file loaded succesfully:mods/funnysongs/custom_events/Set Cam Zoom.lua
source/FunkinLua.hx:114: lua file loaded succesfully:mods/funnysongs/data/the-guy-from-fortnite/fadestart.lua
llua/Convert.hx:32: haxe value not supported
(x: 0 | y: 849.6 | w: 1280 | h: 27 | visible: true | velocity: (x: 0 | y: 0)) - TClass(flixel.text.FlxText)
Called from hxcpp::__hxcpp_main
Called from ApplicationMain::main ApplicationMain.hx line 26
Called from ApplicationMain::create ApplicationMain.hx line 137
Called from openfl.display.Application::exec openfl/display/Application.hx line 130
Called from lime.app.Application::exec lime/app/Application.hx line 150
Called from lime._internal.backend.native.NativeApplication::exec lime/_internal/backend/native/NativeApplication.hx line 146
Called from lime._internal.backend.native.NativeApplication::handleRenderEvent lime/_internal/backend/native/NativeApplication.hx line 375
Called from lime.app._Event_lime_graphics_RenderContext_Void::dispatch lime/_internal/macros/EventMacro.hx line 91
Called from openfl.display.Stage::__onLimeRender openfl/display/Stage.hx line 2186
Called from openfl.display.Stage::__render openfl/display/Stage.hx line 2105
Called from openfl.display.OpenGLRenderer::__render openfl/display/OpenGLRenderer.hx line 764
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 31
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 31
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 31
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 31
Called from openfl.display.OpenGLRenderer::__renderDrawable openfl/display/OpenGLRenderer.hx line 850
Called from openfl.display._internal.Context3DDisplayObjectContainer::renderDrawable openfl/display/_internal/Context3DDisplayObjectContainer.hx line 18
Called from openfl.display._internal.Context3DDisplayObject::renderDrawable openfl/display/_internal/Context3DDisplayObject.hx line 61
Called from openfl.display.DisplayObjectRenderer::__updateCacheBitmap openfl/display/DisplayObjectRenderer.hx line 664
Called from openfl.display.OpenGLRenderer::__renderFilterPass openfl/display/OpenGLRenderer.hx line 910
Called from openfl.display.OpenGLRenderer::__initShader openfl/display/OpenGLRenderer.hx line 538
Called from openfl.display.Shader::__init openfl/display/Shader.hx line 459
Called from openfl.display.Shader::__initGL openfl/display/Shader.hx line 511
Called from openfl.display.Shader::__createGLProgram openfl/display/Shader.hx line 346
Called from openfl.display.Shader::__createGLShader openfl/display/Shader.hx line 334
Called from lime.utils.Log::error lime/utils/Log.hx line 37
Error : [openfl.display.Shader] ERROR: Error compiling fragment shader
0:85(30): error: could not implicitly convert operands to arithmetic operator
0:85(22): error: operands to arithmetic operators must be numeric
0:85(49): error: could not implicitly convert operands to arithmetic operator
0:85(48): error: operands to arithmetic operators must be numeric
0:85(22): error: operands to arithmetic operators must be numeric
0:85(18): error: no matching function for call to `sin(error)'; candidates are:
0:85(18): error:    float sin(float)
0:85(18): error:    vec2 sin(vec2)
0:85(18): error:    vec3 sin(vec3)
0:85(18): error:    vec4 sin(vec4)
0:86(30): error: could not implicitly convert operands to arithmetic operator
0:86(22): error: operands to arithmetic operators must be numeric
0:86(49): error: could not implicitly convert operands to arithmetic operator
0:86(48): error: operands to arithmetic operators must be numeric
0:86(22): error: operands to arithmetic operators must be numeric
0:86(18): error: no matching function for call to `sin(error)'; candidates are:
0:86(18): error:    float sin(float)
0:86(18): error:    vec2 sin(vec2)
0:86(18): error:    vec3 sin(vec3)
0:86(18): error:    vec4 sin(vec4)
0:87(22): error: could not implicitly convert operands to arithmetic operator
0:87(22): error: operands to arithmetic operators must be numeric
0:87(41): error: could not implicitly convert operands to arithmetic operator
0:87(40): error: operands to arithmetic operators must be numeric
0:87(22): error: operands to arithmetic operators must be numeric
0:87(18): error: no matching function for call to `sin(error)'; candidates are:
0:87(18): error:    float sin(float)
0:87(18): error:    vec2 sin(vec2)
0:87(18): error:    vec3 sin(vec3)
0:87(18): error:    vec4 sin(vec4)
0:87(9): error: no matching function for call to `mix(float, error, float)'; candidates are:
0:87(9): error:    float mix(float, float, float)
0:87(9): error:    vec2 mix(vec2, vec2, float)
0:87(9): error:    vec3 mix(vec3, vec3, float)
0:87(9): error:    vec4 mix(vec4, vec4, float)
0:87(9): error:    vec2 mix(vec2, vec2, vec2)
0:87(9): error:    vec3 mix(vec3, vec3, vec3)
0:87(9): error:    vec4 mix(vec4, vec4, vec4)
0:88(22): error: could not implicitly convert operands to arithmetic operator
0:88(22): error: operands to arithmetic operators must be numeric
0:88(45): warning: `offsetZ' used uninitialized
0:88(41): error: could not implicitly convert operands to arithmetic operator
0:88(22): error: operands to arithmetic operators must be numeric
0:88(22): error: operands to arithmetic operators must be numeric
0:88(18): error: no matching function for call to `sin(error)'; candidates are:
0:88(18): error:    float sin(float)
0:88(18): error:    vec2 sin(vec2)
0:88(18): error:    vec3 sin(vec3)
0:88(18): error:    vec4 sin(vec4)
0:88(9): error: no matching function for call to `mix(float, error, float)'; candidates are:
0:88(9): error:    float mix(float, float, float)
0:88(9): error:    vec2 mix(vec2, vec2, float)
0:88(9): error:    vec3 mix(vec3, vec3, float)
0:88(9): error:    vec4 mix(vec4, vec4, float)
0:88(9): error:    vec2 mix(vec2, vec2, vec2)
0:88(9): error:    vec3 mix(vec3, vec3, vec3)
0:88(9): error:    vec4 mix(vec4, vec4, vec4)
0:89(22): error: could not implicitly convert operands to arithmetic operator
0:89(41): warning: `offsetY' used uninitialized
0:89(22): error: operands to arithmetic operators must be numeric
0:89(58): warning: `offsetZ' used uninitialized
0:89(53): error: could not implicitly convert operands to arithmetic operator
0:89(52): error: operands to arithmetic operators must be numeric
0:89(22): error: operands to arithmetic operators must be numeric
0:89(18): error: no matching function for call to `sin(error)'; candidates are:
0:89(18): error:    float sin(float)
0:89(18): error:    vec2 sin(vec2)
0:89(18): error:    vec3 sin(vec3)
0:89(18): error:    vec4 sin(vec4)
0:89(9): error: no matching function for call to `mix(float, error, float)'; candidates are:
0:89(9): error:    float mix(float, float, float)
0:89(9): error:    vec2 mix(vec2, vec2, float)
0:89(9): error:    vec3 mix(vec3, vec3, float)
0:89(9): error:    vec4 mix(vec4, vec4, float)
0:89(9): error:    vec2 mix(vec2, vec2, vec2)
0:89(9): error:    vec3 mix(vec3, vec3, vec3)
0:89(9): error:    vec4 mix(vec4, vec4, vec4)

#ifdef GL_ES
#ifdef GL_FRAGMENT_PRECISION_HIGH
precision highp float;
#else
precision mediump float;
#endif
#endif

    varying float openfl_Alphav;
        varying vec4 openfl_ColorMultiplierv;
        varying vec4 openfl_ColorOffsetv;
        varying vec2 openfl_TextureCoordv;

        uniform bool openfl_HasColorTransform;
        uniform vec2 openfl_TextureSize;
        uniform sampler2D bitmap;

        uniform bool hasTransform;
        uniform bool hasColorTransform;

        vec4 flixel_texture2D(sampler2D bitmap, vec2 coord)
        {
            vec4 color = texture2D(bitmap, coord);
            if (!hasTransform)
            {
                return color;
            }

            if (color.a == 0.0)
            {
                return vec4(0.0, 0.0, 0.0, 0.0);
            }

            if (!hasColorTransform)
            {
                return color * openfl_Alphav;
            }

            color = vec4(color.rgb / color.a, color.a);

            mat4 colorMultiplier = mat4(0);
            colorMultiplier[0][0] = openfl_ColorMultiplierv.x;
            colorMultiplier[1][1] = openfl_ColorMultiplierv.y;
            colorMultiplier[2][2] = openfl_ColorMultiplierv.z;
            colorMultiplier[3][3] = openfl_ColorMultiplierv.w;

            color = clamp(openfl_ColorOffsetv + (color * colorMultiplier), 0.0, 1.0);

            if (color.a > 0.0)
            {
                return vec4(color.rgb * color.a * openfl_Alphav, color.a * openfl_Alphav);
            }
            return vec4(0.0, 0.0, 0.0, 0.0);
        }

    uniform float uampmul;

    //modified version of the wave shader to create weird garbled corruption like messes
    uniform float uTime;

    /**
     * How fast the waves move over time
     */
    uniform float uSpeed;

    /**
     * Number of waves over time
     */
    uniform float uFrequency;

    uniform bool uEnabled;

    /**
     * How much the pixels are going to stretch over the waves
     */
    uniform float uWaveAmplitude;

    vec4 sineWave(vec4 pt, vec2 pos)
    {
        if (uampmul > 0.0)
        {
            float offsetX = sin(pt.y * uFrequency + uTime * uSpeed);
            float offsetY = sin(pt.x * (uFrequency * 2) - (uTime / 2) * uSpeed);
            float offsetZ = sin(pt.z * (uFrequency / 2) + (uTime / 3) * uSpeed);
            pt.x = mix(pt.x,sin(pt.x / 2 * pt.y + (5 * offsetX) * pt.z),uWaveAmplitude * uampmul);
            pt.y = mix(pt.y,sin(pt.y / 3 * pt.z + (2 * offsetZ) - pt.x),uWaveAmplitude * uampmul);
            pt.z = mix(pt.z,sin(pt.z / 6 * (pt.x * offsetY) - (50 * offsetZ) * (pt.z * offsetX)),uWaveAmplitude * uampmul);
        }

        return vec4(pt.x, pt.y, pt.z, pt.w);
    }

    void main()
    {
        vec2 uv = openfl_TextureCoordv;
        gl_FragColor = sineWave(texture2D(bitmap, uv),uv);
    }
moxie-coder commented 4 months ago

this I’ll try to fix soon on my Linux distro

moxie-coder commented 4 months ago

https://stackoverflow.com/questions/4727292/glsl-arithmetic-operator

TheKamboy commented 4 months ago

https://stackoverflow.com/questions/4727292/glsl-arithmetic-operator

I would have to open the source code of the game to put this in

moxie-coder commented 4 months ago

https://stackoverflow.com/questions/4727292/glsl-arithmetic-operator

I would have to open the source code of the game to put this in

yeah no shit, but this is the solution I was putting here for when I get to this

moxie-coder commented 4 months ago

btw, what is your Linux distro? and pc specs? @TheKamboy

moxie-coder commented 4 months ago

here's mine, you can use neofetch to get yours image

moxie-coder commented 4 months ago

nvm it doesn't really matter now, since I was able to reproduce it

TheKamboy commented 4 months ago

I know you probably don't need it now but just in case, I use Endeavouros. It's basically arch linux

8gb ram Intel core i5 Intel iris xe

TheKamboy commented 3 months ago

oh i feel stupid since i didnt notice you closed the issue.

moxie-coder commented 3 months ago

lol

Stefan2008Git commented 3 months ago

here's mine, you can use neofetch to get yours image

giga-chad-chad