pragmagic / nimue4

Nim language integration for Unreal Engine 4
Other
104 stars 6 forks source link

Cannot get NimPlatformerGame to build with new UE4 4.17. Is it outdated, or nimue4? #28

Open skunkiferous opened 7 years ago

skunkiferous commented 7 years ago

I forked both nimue4 and NimPlatformerGame. I tried to get NimPlatformerGame to build, but there was many issues, mostly with the .cs files. Eventually I resolved most of them, and then it really started. I have maybe over 20 similar errors while building:

c:\code\nimplatformergame\source\platformergame\.nimgen\private\PlatformerPlayerMovementComp.h(56): error C3668: 'UPlatformerPlayerMovementComp::StartFalling': method with override specifier 'override' did not override any base class methods

UE4 4.12 is mentioned somewhere. But we are by 4.17 now. 4.12 was released about 16 months ago...

Since UPlatformerPlayerMovementComp extends UCharacterMovementComponent, which comes for UE, does that mean that nimue4 itself is outdated, sine the error message sounds like the base class changed? And by outdated, I mean that the Nim wrapper (not sure if that is the correct term) for the UE4 API needs to be updated to use 4.17?

If so, would you tell me what is the newest version that nimue4 supports? And do you plan to update it, or have you moved to else? Is someone else trying to keep it current?

Regards, Sebastien Diot

endragor commented 6 years ago

Hi Sebastien, Sorry it took a while to reply - thought maybe I could find time to update the sample, but didn't find it in the end. nimue4 was last tested on UE 4.16 and it works there, but the platformer sample would need to be updated, it was built from an earlier version (probably somewhere around 4.12). We switched to Godot for our project, so this library is no longer actively maintained.

skunkiferous commented 6 years ago

Hi endragor, Araq thought it was still maintained; looks like I was right after all. Unfortunately for me, this (UE4+nimue4) was my main motivation for starting with Nim. Do you know of anyone who still actively uses this project, and would consider taking over that maintenance? I would consider doing that myself, but as I have actually zero experience in using UE4 with native code, and only some practice with Blueprint, I'm currently unqualified for the job. I wanted to get good at Nim before learing to use UE4 with native code. By the time I did that, nimue4 is going to be even more outdated.

endragor commented 6 years ago

I don't think it requires a lot of changes to keep it up to date. Usually with every release we only made a handful changes to adjust nimue4 to breaking changes in UE4. I'm not aware of other users of the library.

The problem that you originally quoted is that certain method (UPlatformerPlayerMovementComp::StartFalling) was removed from UE4 class - you need to find the alternative in UE4 code/documentation and use it in the platformer game. The platformer game itself was basically translated from Epic's C++ implementation, so if Epic keeps it up to date, you can find the replacement there.

skunkiferous commented 6 years ago

I'll give it a try, eventually. Atm I'm occupied with designing "core data-structures" that are independent of UE4. For the benefit of everyone, I'd like to ask if you could specify that nimue4 is currently compatible with version 4.16, and that the project needs a new mainainer? I might "take over" maintenance later, if no one else does (I don't have much of a choice, after what I invested on the UE4 Marketplace), but atm I'm not ready. I'm assuming it's also OK with you, for me to reply to my own thread regarding nimue4 on the Nim forum, confirming that the project is no longer maintained. Maybe someone there might still be using nimue4.