GithubHelp home page GithubHelp logo

rsdkmodding / rsdkv5-decompilation Goto Github PK

View Code? Open in Web Editor NEW
401.0 26.0 138.0 5.6 MB

A complete decompilation of Retro Engine (v5)

License: Other

C++ 95.90% HLSL 1.26% GLSL 0.99% C 0.01% Java 1.07% Makefile 0.21% Shell 0.01% CMake 0.54% Python 0.02%

rsdkv5-decompilation's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rsdkv5-decompilation's Issues

Small screen error on Qualcomm snapdragon 400 cpu [Android]

Screenshot_2022-08-26-18-25-39

this happens in the release version and I already tried everything I have used the shaders as a mod and the error still persists.
I have this error since the first day they released their first version. ¿Does anyone know if there is a solution to this error?

And if possible, could you pass me a version that is compatible with my cpu?.

I would really appreciate it, thank you!

No rule to make target after linking RSDK

System: Archlinux
Error: Build

done dependencies/all/miniz/miniz.c
linking RSDK...
: bin/Linux/GL3/RSDKv5
done linking RSDK
make: *** No rule to make target 'bin/obj/Linux/Game/Game/Game.o', needed by 'bin/Linux/GL3/Game.so'. Stop.

The compiling of other stuff like 3DScene and what not was omitted since that all worked without errors

Also the pre-compiled version is looking for libglew.so.2.1 which it can't find

Simlinks not retained upon cloning.

This affects all symlinks, including ones other than Game and RSDKv5. The guides should be updated accordingly to specify that you need to re-create all symlinks after cloning.

[Linux][RPi]Allow GLFW to use GLES instead of core OpenGL?

Thank you for releasing this amazing decompilation!

I’ve built the binaries on 32-bit ARM Linux (Raspberry Pi OS Bullseye). When I try to run the game it fails, with log.txt showing that it successfully loaded a bunch of asset files from Data.rsdk but ultimately errored with:

ERROR: [GLFW] window creation failed

Now, I definitely have a working install of GLFW on my setup— I even built some of the example GLFW demos to convince myself of this. What I suspect is happening here is that RSDKv5 expects a core OpenGL version >= 3.0, but my low-end setup here only has OpenGL 2.1 and OpenGL ES 3.1. These lines seem to be the culprits:

https://github.com/Rubberduckycooly/RSDKv5-Decompilation/blob/82d1e1c0a8fb3e60e89784a3514504317a88e0b3/RSDKv5/RSDK/Graphics/GLFW/GLFWRenderDevice.cpp#L1

https://github.com/Rubberduckycooly/RSDKv5-Decompilation/blob/82d1e1c0a8fb3e60e89784a3514504317a88e0b3/RSDKv5/RSDK/Graphics/GLFW/GLFWRenderDevice.cpp#L56

I’ll try some workarounds such as using environment variables to enable Mesa compatibility mode when running, but it would be great if GLFW could be configured (e.g. at build time with preprocessor definitions) to use GLES on Linux if a suitably-modern core GL version isn’t available.

Thank you again

EDIT/UPDATE: Confirmed that it works if I override the GL version like this when running it;

MESA_GL_VERSION_OVERRIDE=3.3 MESA_GLSL_VERSION_OVERRIDE=330 ./RSDKv5

From what little of the game I tested so far it runs at full speed without glitches, so this is definitely a workaround. It would however still be nice to have native GLES support in Linux.

Make: No rule to make the target

Hi!

When building for Linux/Switch the process is being stopped with the following error:
make: *** No rule to make target 'bin/obj/<..>/Game/Game/Game.o'
Using Ubuntu-20.04.

Not sure what might be causing it, would be glad for some heads-ups.

Ghost Input with DualShock 4/DualSense on local builds

When building RSDKv5 locally, having a DualShock 4 or DualSense plugged in will cause constant ghost inputs to the game, only stopping when you unplug the controller. This does not happen with builds from GitHub Actions.

8mb.video-zhU-4j6B3sci.mp4

The game's himself works but something's wrong on it or pretty not?

Alrighty, i was thinking to return with mania from an while this time with this release completely but eventually.... the game it is stuck though the white screen before it was already started there's the way to figure out fixing it or otherwise it literally happens from newest builds which it's stuck around at same time the white screen highly, just let me knew on it able to decide for once!
RSDKv5U_x64_yzTntYx3pc
and also, i'm using the windows builds so, if you might to forgot it.

Black screen

please fix the issue where mediatek devices get a black screen with audio

(RSDKv5u) SFX, Music, and some visual issues

- Some Sounds in Sonic CD aren't able to be played (e.g. Ring, Skidding, Signpost, pause menu open, score total) when using audio files from the mobile port (also affects steam sfx files too?) (this doesn't seem to affect the v4 side of v5u, it's only v3)

- Music fading doesnt work correctly (known in v4, not sure about v3 but it's likely it's there too). Example: hitting the signpost in GHZ1 makes the music fade, then come back, then it changes to the Act Clear theme.

- In Sonic CD, music doesn't completely fade out upon the time travel sequence commencing.

  • visual and audio fade outs reset to zero for a brief second before the next scene/music track loads, seems to be in both v4 and v3?

edit by RMG: where did cosmic list the pause menu thingy ??

No mac?

aw theres no mac Port? eh they probably wont do anything with mac Ports as this point

(Linux) make: *** No rule to make target 'bin/obj/Linux/GL3/RSDKv5/dependencies/all/tinyxml2/tinyxml2.o', needed by 'bin/Linux/GL3/RSDKv5'. Stop.

I get this error when I try to compile this after running make

"make: *** No rule to make target 'bin/obj/Linux/GL3/RSDKv5/dependencies/all/tinyxml2/tinyxml2.o', needed by 'bin/Linux/GL3/RSDKv5'. Stop."

I have tinyxml2 installed already so I don't know what's up with that. I had a similar error where it needed stb_vorbis.c to compile audio, which wasn't in the build folder either but copying it from my own install of that worked.

Log and settings file break when compiling with -Wp,-D_FORTIFY_SOURCE=2

_FORTIFY_SOURCE (since glibc 2.3.4)
Defining this macro causes some lightweight checks to be performed to detect some buffer overflow errors when employing various string and memory manipulation functions
src

When this is enabled log.txt it's just filled with newlines, and Settings.ini it's just empty

(Android) Black screen with sounds

Trying to run on my Powkiddy X18S (Unisoc T618, Mali) and got black screen. Music seems to play just fine, and the controls too (built-in gamepad from the X18S). So, any fix for the black screen?

super sonic doesn't work

i can't turn into super sonic even though i collect all the emeralds and 50 rings.

steps: In order to turn into him, you need to collect at least 50 rings. After that, just jump and hit the jump button again while in the air to morph into him. <- It does not work

(android)

[Linux] Gamepad not recognized in v5 despite it working with v3/v4

I’m only getting keyboard input recognized in RSDKv5. Latest commit as of this writing, built from source on Linux. I have a gamepad connected which is working fine with RSDKv3 and RSDKv4 (without any configuration even), but it’s not being recognized by v5. The controller is a NSO N64 Bluetooth pad in case it matters.

Is there a way I can configure or force v5 to use SDL for input (since that’s what v3/4 use right?) I see indications of preprocessor definitions in the code, but no clear documentation on them as far as I can find.

Thanks for any help.

Mod loader file enumeration breaks in some circumstances

The code here seems flawed number of ways
https://github.com/Rubberduckycooly/RSDKv5-Decompilation/blob/master/RSDKv5/RSDK/Core/ModAPI.cpp#L258-L287

  • It can't handle file paths above 128 characters without smashing the stack (Windows paths can be up-to 260 characters, macOS and Linux can go as high as 4k)
  • If the user has Data/, Videos/ or Bytecode/ anywhere in the path to the loader, the substring code breaks

Would it be possible to use std::string for the entire process, and just remove the length of the path to the mod folder from the start of the path instead? Rather than trying to support specific directories.

(android)Black screen

I'm wondering if this problem is going to get fixed in the next update or in other future updates

Building to android results in an error

[CXX1405] error when building with cmake using C:\Sonic-Mania-Decompilation\dependencies\RSDKv5\android\app\jni\CMakeLists.txt: Build command failed.
Error while executing process C:\Users\sm64f\AppData\Local\Android\Sdk\cmake\3.18.1\bin\cmake.exe with arguments {-HC:\Sonic-Mania-Decompilation\dependencies\RSDKv5\android\app\jni -DCMAKE_SYSTEM_NAME=Android -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_SYSTEM_VERSION=19 -DANDROID_PLATFORM=android-19 -DANDROID_ABI=arm64-v8a -DCMAKE_ANDROID_ARCH_ABI=arm64-v8a -DANDROID_NDK=C:\Users\sm64f\AppData\Local\Android\Sdk\ndk\24.0.8215888 -DCMAKE_ANDROID_NDK=C:\Users\sm64f\AppData\Local\Android\Sdk\ndk\24.0.8215888 -DCMAKE_TOOLCHAIN_FILE=C:\Users\sm64f\AppData\Local\Android\Sdk\ndk\24.0.8215888\build\cmake\android.toolchain.cmake -DCMAKE_MAKE_PROGRAM=C:\Users\sm64f\AppData\Local\Android\Sdk\cmake\3.18.1\bin\ninja.exe -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\Sonic-Mania-Decompilation\dependencies\RSDKv5\android\app\build\intermediates\cxx\Debug\6m6uf1q6\obj\arm64-v8a -DCMAKE_RUNTIME_OUTPUT_DIRECTORY=C:\Sonic-Mania-Decompilation\dependencies\RSDKv5\android\app\build\intermediates\cxx\Debug\6m6uf1q6\obj\arm64-v8a -DCMAKE_BUILD_TYPE=Debug -DCMAKE_FIND_ROOT_PATH=C:\Sonic-Mania-Decompilation\dependencies\RSDKv5\android\app.cxx\Debug\6m6uf1q6\prefab\arm64-v8a\prefab -BC:\Sonic-Mania-Decompilation\dependencies\RSDKv5\android\app.cxx\Debug\6m6uf1q6\arm64-v8a -GNinja -DANDROID_STL=c++_shared -DPLATFORM=Android}

I get this error when compiling to android

Special Stage Slowdown

In the Special Stages, in open areas with Rings, spheres, etc. there is a lot of slowdown, even though this never happened to me in the original game. Am I doing something wrong?

Broken confirmButtonFlip Option

the confirmButtonFlip option does absolutely nothing, the back and confirm buttons always remain the same no matter what. However, xyButtonFlip is completely functional.

Black screen persisting on Unisoc Tiger T310 (RP2+) after fix

The Problem:

When I launch the game from the shortcut, the screen is black, it plays the classic Sega logo sound, the sound of Sonic revving up, and then it crashes. The APK was built this morning (8/23), mod folder with GLS3 shaders mod was taken directly from the Discord and modified only to add a 4:3 aspect ratio mod (the problem persists with or without the 4:3 mod).

EDIT: The same APK is confirmed working on Snapdragon and Mediatek devices.

Hardware:

  • Retroid Pocket 2+
  • Unisoc Quad-core Tiger T310
  • 2 GB LPDDR4x RAM
  • 480p Display

Software:

  • Android 9

My Mods Folder:

Screenshot_20220823

Black screen with audio (many people reported)

I have a huawei y9 2019 hisilicon kirin 710 the game runs with everything BUT without display i know its better to have a snapdragon but i want to play the game anywhere i have it on my pc so please post a fix or an update.

(RSDKv5u) CD Missing Parallax (???)

Sonic CD seems to be missing parallax in stages, most notably in Palmtree Panic 1, where the clouds in the sky just don't move, when in the mobile port (and in Origins too) the clouds move.

image

Controller support improvements for DX9/DX11 builds of RSDKv5 and RSDKv5u

Currently, the EXE crashes upon detecting specific types of controllers, notably DualShock 4 and certain Bluetooth controllers through Steam's built-in controller support (Nintendo Switch Pro Controller)

While it is likely a byproduct of Sonic Mania's controller handling, if it could at all be fixed to improve controller compatibility across all versions, it would be much appreciated! Controllers work better across the board on the GL and SDL builds currently, and DX builds are a little left behind in this regard.

Thanks!

The DLC

How to get the DLC ? Or i can't?

[Android] Game speeds up when the phone display is set past 60hz

Describe the issue
When running the decomp on a phone that has it's refresh rate set to anything higher than 60hz, the game will be sped up to the display's refresh rate instead of capping to 60 fps.

To Reproduce
Steps to reproduce the behavior:

  1. Make sure phone's refresh rate is set anywhere past 60 (some phones do 90, others do 120)
  2. Boot RSDKv5 up

Expected behavior
The game should be running at 60 fps despite the phone's display refresh rate.

Device Details:

  • Phone: Samsung Galaxy S22+
  • OS: Android 12
  • Version: 1.0.0

Log:
https://cdn.discordapp.com/attachments/563003189046018072/1008932666365726751/log.txt

"Cannot open file libogg.lib" error while building RSDK in VS

I'm unable to build any RSDKv5 version because VS is telling me it can't open the file libogg.lib. I made sure to install libogg and libtheora, but even though the .lib file has been built, VS can't seem to do anything about it right now. What am I doing wrong here?

[GL3] Window doesn't properly refresh

In OpenGL 3 compiles of the engine, the video options of Window Size and Full Screen both function incorrectly. Once the setting takes effect, they go into a completely black screen, however, it is only visual as the game itself still receives inputs and plays audio fine.

Tested on most recent commit at the time of this issue being submitted (:sob: by Chuli), with v5U.

also this is completely unrelated but the icon doesn't show up in the taskbar specifically for GL3 and that makes me irrationally angry

Building Releases

I dont have ANY idea on building those releases so please post them built then post their code at same time so people dont have to suffer i need the new build to see if it fixed the black screen error.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.