Hi Kenneth,
I will add some more collision volumes around the map boundaries and tidy up collision meshes in the next build.
Thanks for the tip!
The code is based on a Course by Uisco / Unreal Dev:
Available Here: https://www.unreal-university.com/courses/retrofpscourse?affiliateId=Zlel6rp15Qy...
I took this course at the start of the jam and got my prototype up and running and then started to add and tweak logic and features to match my goals.
I also deliberately chose to start with Unreal because I plan to rewrite each of the core systems from scratch for Unity / Godot in the future.
An advantage of Unreal5 is that I can really quickly prototype ideas using code blueprints and then polish, refactor and port the core logic to any target platform.
Unreal5 has a great userbase and community generating easy-to-digest tutorials and documentation.
I find the visual blueprint system a bit unwieldy at times but it's a good way to "mentally map out" basic logic.
I am also looking to learn a bit more C++ and highlight gaps in my general programming knowledge.
Again, it's a slightly odd way to learn but I find working across each of the major engines helps me get a better grasp of core programming concepts as I often have to adapt what I am learning to fit a new platform.
I tend to seek out programming content in different languages depending on what topic I am most interested in learning about.Unreal seemed like a good place to start whilst leaving me scope to eventually port and rewrite my own completely custom implementations for Unity / Godot in my next projects.
I am also taking the time to study SourceCode for Doom, GzDoom, Quake and some other popular open-source projects to get an insight into how old-school devs approach issues and how modern engines handle things differently.
In all honesty, the Linux build was a bit rushed and I am beginning to suspect it may be slightly out of sync with the Windows build so I'll be sure to update them and sync my bug fixes on the next iteration.
When testing during development on SteamDeck I stuck to using Windows with the latest version of Proton.
Other than some minor hiccups installing prerequisite packages and adding the .exe as a non-steam game this was the fastest and easiest way for me to playtest on deck.
The native Linux build cooks and packages the content differently and I have yet to fully profile performance gain/loss between native Linux and Proton builds on the handheld.
It's something I'm very curious about moving forward.
One of the main hurdles I encountered when prototyping my maps in UDB is that building multi-storey maps is a bit of a nuisance.
Some of the ideas I have for level design studies require and utilize multiple z-axis levels.
I also decided to pursue Unreal5 to build as my previous (unpublished) games have been made using Unity (C#) and I have been further developing my Python skills to help augment my blender workflow.
I am working on an addOn for Blender that allows me to build levels procedurally using procGen algorithms, geometry nodes and traditional modelling techniques.
Long term, I will be building different versions of the "retroShooter" in Unreal 5, Unity & Godot to hammer out import/export and editor compatibility issues between my Blender addOn and the major game engines.
With a focus on adding more advanced AI, Behaviour trees & procedural generation systems.
I am very interested in how viable Godot will be for a project of this nature moving forward. I will be sure to test out Trenchbroom when I move onto my Godot build.
I am a big fan of open-source projects and would prefer to open-source as much of my work as possible moving forward.
I have been waiting for Quake to go on Sale to replay it and gather some thoughts and research notes.
I've also been playing PRODEUS recently, and that has a nifty little level editor built right in and is a good idea of where I hope to move my project moving forward (graphically, at least)
If you're a fan of Trenchbroom and Doom and haven't already tried out Prodeus I'd say your missing out!
Thanks again for the feedback - I'll be sure to let you know when I squash those pesky bugs.
Happy Gaming