dpjudas / surrealengine Goto Github PK
View Code? Open in Web Editor NEWUnreal Tournament Engine Reimplementation
License: Other
Unreal Tournament Engine Reimplementation
License: Other
Code builds, but then I see this error:
[100%] Linking CXX executable UTEngine
/usr/bin/ld: CMakeFiles/UTEngine.dir/UTEngine/RenderDevice/Vulkan/VulkanSurface.cpp.o: warning: relocation against `vkCreateXlibSurfaceKHR' in read-only section `.text'
/usr/bin/ld: CMakeFiles/UTEngine.dir/UTEngine/RenderDevice/Vulkan/VulkanSurface.cpp.o: in function `VulkanSurface::VulkanSurface(std::shared_ptr<VulkanInstance>, _XDisplay*, unsigned long)':
VulkanSurface.cpp:(.text+0x94): undefined reference to `vkCreateXlibSurfaceKHR'
/usr/bin/ld: CMakeFiles/UTEngine.dir/UTEngine/Window/X11/X11Window.cpp.o: in function `X11Window::OpenWindow(int, int, bool)':
X11Window.cpp:(.text+0x627): undefined reference to `vkGetPhysicalDeviceXlibPresentationSupportKHR'
/usr/bin/ld: warning: creating DT_TEXTREL in a PIE
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/UTEngine.dir/build.make:4449: UTEngine] Error 1
make[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/UTEngine.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
System: Manjaro Linux, latest stable
Any idea what might be causing this?
/home/jpl/UTEngine/UTEngine/UTF16.cpp:38:35: error: ‘wstirng’ in namespace ‘std’ does not name a type; did you mean ‘wstring’?
38 | std::string from_utf16(const std::wstirng& str)
| ^~~~~~~
| wstring
Are there any plans to support tactical ops?
Hi @dpjudas do you have a Patreon or other ways of supporting your work on the UTEngine project?
The correct behavior is to use 'Texture' if 'Skin' is set to None, meshes should only be invisible when both are set to None
I was considering creating a game on Surreal when it gets further along. Are there any future plans to support this by the way?
it's not possible to retrieve Flak Cannon on DM-Agony, crouching doesn't seem to result in a shorter collision box? If it does, it's still not short enough for whatever reason
Walking off of an edge causes the player to drop instantly up to a certain height, needs further investigation but I believe it's related to adjusting player's Location.Z value when walking on steps.
If you walk off an edge that's too high, the drop still occurs but the player falls normally after
I don't want to sound ignorant but; Does the project use Vulkan instead of OpenGL 3.2 or 4.6?
Trying to launch the editor seems to result in the following segfault (launching the game works fine)
Not sure if this is also the case on windows, and getting the editor to launch is still WIP? The README seems to have outdated information about the status of the project, since ut99 looks much closer to playable than it would let on.
>gdb --args ./SurrealEditor ~/sata_ssd/Games/ut99_surrealengine/
...
Thread 1 "SurrealEditor" received signal SIGSEGV, Segmentation fault.
0x00005555556a6194 in UActor::UpdateBspInfo (this=0x55555a38fd40)
at SurrealEngine/SurrealEngine/UObject/UActor.cpp:1731
1731 BspNode* node = &level->Model->Nodes[0];
(gdb) p level
$1 = (ULevel *) 0x0
the following patch was used to work around a hardcoded windows path (and the exact font was installed, just in case)
diff --git a/SurrealEngine/UI/Core/Canvas.cpp b/SurrealEngine/UI/Core/Canvas.cpp
index eb93805..b837be8 100644
--- a/SurrealEngine/UI/Core/Canvas.cpp
+++ b/SurrealEngine/UI/Core/Canvas.cpp
@@ -36,7 +36,12 @@ class CanvasFont
public:
CanvasFont(const std::string& fontname, double height) : fontname(fontname), height(height)
{
+// TODO: don't hardcode this
+#ifdef WIN32
data = File::read_all_bytes("C:\\Windows\\Fonts\\segoeui.ttf");
+#else
+ data = File::read_all_bytes("/usr/share/fonts/truetype/segoeui.ttf");
+#endif
loadFont(data.data(), data.size());
try
I think a library like SDL2 (or others) will simply a lot the handling of inputs and the window creation (and it can also solve the mouse lagging you saw in Linux). It will also allow this engine to run in MacOS without adding more code. Have you consider it?
I can't seem to be able to launch UTEngine under Linux, it throws:
Segmentation fault (core dumped)
I'm running EndeavourOS with KDE
CPU - AMD Ryzen 7 3700X (16) @ 3.600G
GPU - AMD ATI Radeon RX 5600 OEM/5600
RAM - 32Gb
I previously had the same issue on Manjaro as well, perhaps UTEngine has issues on Arch based distros?
Hello. I use linux(Debian like). SurrealEngine compiles without problems. I can't figure out how to run the game. I bought "Rune Classic" on Steam and put the SurrealEngine and SurrealEngine.pk3 files in "System" folder. If I try to launch a game, I always get the answer "Unable to find a game folder". What am I doing wrong?
Unhandled exception: Script execution error:
LevelInfo.GetAddressURL not implemented
Call stack:
GameInfo.GetServerPort line 365
StatLogFile.StartLog line 32
GameInfo.InitLogging line 218
GameInfo.PostBeginPlay line 183
DeathMatchPlus.PostBeginPlay line 85
Hello @dpjudas,
will it be possible to run game on Unreal Engine, example as Deus Ex and have 100% open source, or is there still a big difference between the UTengine and Deus Ex engines?
Hi, just found out about this project and I hope you will have no problems as world really need it. I know ut2 engine is different but are there any plans to add support for ut2004 in future or maybe there is another project that tries to open ut2004?
Hey just wanted to report that right need the end of the compiling it fails, I am using Manjaro x64
[ 99%] Building CXX object CMakeFiles/SurrealDebugger.dir/SurrealEngine/MainDebugger.cpp.o
[ 99%] Building CXX object CMakeFiles/SurrealEditor.dir/SurrealEngine/MainEditor.cpp.o
[ 99%] Building CXX object CMakeFiles/SurrealEngine.dir/SurrealEngine/MainGame.cpp.o
[ 99%] Linking CXX executable SurrealEngine
[ 99%] Linking CXX executable SurrealEditor
/usr/bin/ld: cannot open output file SurrealEngine: Is a directory
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/SurrealEngine.dir/build.make:102: SurrealEngine] Error 1
make[1]: *** [CMakeFiles/Makefile2:152: CMakeFiles/SurrealEngine.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[100%] Linking CXX executable SurrealDebugger
[100%] Built target SurrealEditor
[100%] Built target SurrealDebugger
make: *** [Makefile:136: all] Error 2
Not entirely sure where to put this, so here it goes.
First of all, I just found this repo and I'm incredibly happy to see this project happening, and being in active development. Best of luck!
I'm a decade long Unity user and I desperately want to get away from it for my personal projects.
So I'm looking for a "Minimal" and limited game engine that is similar to UE1. I was wondering, when this is "Done", what kind of licensing are we looking at? Would it be possible to take this and use it for, say, commercial indie game projects?
Thanks!
armhf raspbian
(this is the eventual obligatory pi compilation thread)
Needs further investigation, seems like unimplemented physics behavior or physics isn't being set properly
First of all, I'm glad to see an UE1 reimplementation, because Epic wouldn't open source the code themselves as this isn't worth their effort. Damn you Epic.
But for some reason they decided to license the source to OldUnreal under an NDA. What the heck is wrong with you, Epic!?
In addition to Tournament, also supporting the original 1998 Unreal SP game could bring many opportunities such as enhanced graphical fidelity (akin to Quake2XP), custom game DLLs and even a possible virtual reality port (DrBeef, I'm looking at you).
There is also this project based off version 200, but I have no idea if it ever held up or if it even works.
Having another retro shooter be open sourced would be super amazing, considering we had id Softwares' code for ages, and now Croteam connected as well with their open source release of Serious Engine.
p.s. I have to add that I'm not a low-level developer nor a graphics developer, and I have no reverse engineering expertise. As much as I would want to get the project kicked off asap, I lack the knowledge necessary.
I will be nice to have demo support to be able to test this without buying the full game.
The acceleration seems to be magnified when jumping or dodging, this is most noticeable when jumping or dodging off a high ledge
In file included from SurrealEngine/Thirdparty/ZVulkan/src/vk_mem_alloc/vk_mem_alloc.cpp:8:
SurrealEngine/Thirdparty/ZVulkan/include/zvulkan/vk_mem_alloc/vk_mem_alloc.h: In function ‘void VmaUint32ToStr(char*, size_t, uint32_t)’:
SurrealEngine/Thirdparty/ZVulkan/include/zvulkan/vk_mem_alloc/vk_mem_alloc.h:2410:9: error: ‘snprintf’ was not declared in this scope
and
SurrealEngine/Thirdparty/ZVulkan/src/vulkanswapchain.cpp: In member function ‘void VulkanSwapChain::Create(int, int, int, bool, bool, bool)’:
SurrealEngine/Thirdparty/ZVulkan/src/vulkanswapchain.cpp:51:36: error: ‘runtime_error’ is not a member of ‘std’
Pretty sure I have all the dependencies installed, I was able to compile the project successfully on this same setup earlier this year.
I'd like to request that a stable branch of this repository. Right now there are errors in the master branch that I have to fix manually to get it to build properly.
Shooting ripper blades has a chance to crash the game after it hits a wall. Needs further investigation but my initial theory is this:
state Flying
, crashSo I know you described the project's goal as getting it to a point where it can run UT99 maps in a playable state, but what about beyond that?
Is there plans to reimplement the entire functionality of UT99 version 436 so that it can be used like a source port? If so, are there plans to have multiplayer cross-compatibility with the original UT99 436 (and by extension, OldUnreal Patch 469)?
Also, I've seen other issues asking about other UE1 games. Is support for those a goal as well?
Hi,
Any plans for Linux support of this neat reimplementation?
Thanks!
I think it will be cool to have at least some basic CI tests to check that this reimplementation compiles in different platforms. I can setup the Linux one if you need.
It will be nice to allow UTEngine to have a headless mode that just parses media files and scripts from a Unreal/UT installation. This will allow to run different versions of demos in the CI to ensure everything works as expected.
Dear @dpjudas ,
I compiled SurrealEngine some days ago on Debian 11 x86_64.
I can enter the game and move around the first level (Vortex Rikers) with the following command:
samuel@slimbook:~/src/surreal/SurrealEngine/build$ ./SurrealEngine --url=Vortex2 ~/.wine/drive_c/GOG\ Games/Unreal\ Gold/
Looks like I can't really interact with the environment though, lifts for instance don't appear to be working at the moment. Key mappings are also not saved.
Am I doing something wrong ?
Best regards,
Samuel
P.S: I never played Unreal back in the days (I'm more of a DooM / Quake guy), so that's a first for me :) Thank you very much for your hard work on this project, really appreciated !
Lot of weird things happening here, the main symptoms I notice are
Currently debugging carcass falling behavior in a test map
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.