It's been quite a while since oldunreal had an overhaul, but we are moving to another server which require some updates and changes. The biggest change is the migration of our old reliable YaBB forum to phpBB. This system expects you to login with your username and old password known from YaBB.
If you experience any problems there is also the usual "password forgotten" function. Don't forget to clear your browser cache!
If you have any further concerns feel free to contact me: Smirftsch@oldunreal.com
I spent the last 2-3 years working on this rewrite making up 100k+ lines of source code and it still feels like my baby.
Rough list of what needs to be done before release:
- Making a set of hand crafted spawn points for all the countless maps and map transitions and put them in.
- Fixing inventory handling for conversations.
- Some last remaining gc crashes (probably just needs a few dropped travel keywords)
- Maybe making items reappear at the toolbelt after traveling.
- Finish the damn background of the augmentation selection window.
- Inventory tends go get crappity smacked up when traveling with 2+ players. (Can't reproduce)
In anticipation of it, i created a Mod DB page for it and uploaded some of the (older) media:
If someone wants to contribute i could make use of a 2D artist for doing some minor as window backgrounds, console background and maybe some minor hx artwork graphics for splash screen, etc. Also i would fancy to have some playtesters and folks doing ingame footage like screenshots and gameplay videos. And ultimately, as current focus of rf is not coop, and probably will take some time to catch up with the capabilities of HX, i would highly appreciate some programmer picking up or contributing to fix some more remaining issues, working towards difficulty balancing and polish it.
Recorded training mission with Jay. Setup was a dedicated server running on my machine where i joined and Jay connecting over internet from the other end of the western hemisphere. Still quite not perfect but it's playable.
However, their multiplayer just used a fraction of the features what was in the game and when you would load up a singleplayer map on a dedicated server and join as a client pretty much nothing did work out of the box.
If you kill/knock out the unatco troop in the first map who shows up to "arrest" (actually just stands around near the terrorist leader) the terrorist leader, a flag is set something like Unatcotrooper_Unconcsious or similar, it works in single player, but for whatever reason, the "U" on unconscious is lower case and thus Manderly didn't mention the "missing" unatco operative. I spent several weeks trying to fix this bug to no avail and as far as I know i'd have to hex edit the conversation to fix it
Have you encountered this issue, or anything like it? I wasn't able to figure out how to fix the issue 5~ years ago.
In any case, you should try out that flag and if it works, i'm happy about that.. that flag caused me to lose a lot of steam on making the coop mod work, since I figured if I couldn't fix one piddly optional flag what others would break as well.
Basically I'm saving the state of the map like it was done in singleplayer. A savegame is created for each map you leave (which is basically just a map package with some editor related data removed). Afterwards you can simply open the map. However that caused a lot of issues first with network roles fucked up on client, package missmatches, etc, so I came up with the idea to conform the savegames to the original maps as this engine feature works on all kinds of packages. Not only did it solve those issues, but it even removed the need for the client to download the maps. Remember, when a network client loads a map he basically deletes every actor which is not bStatic or bNoDelete.
However this triggered a heavy cascade of garbage collection related issues as Deus Ex makes heavy use of Objects instead of Actors (Windows, DeusExGoal, DeusExNote, EventManager, FlagBase. etc.). And nearly every non Actor object did cause crashes. So with a lot of cleanup code to remove Object->Actor references and vice versa, rewritting parts, killing EventManager during travel, etc. I managed to get the dedicated server stable, the client largely stable, while the listen server still remains a bit crashy. However with rewriting of some parts to remove the Objects this will likely getting stable too.
For storing non map related gamestate, like goals, flags, datavault images aquired, I use some Actor (called HXSteve) which basically stores these instead of a player and use the TravelInfo to carry it over map transitions.
Although I am surprised that conform actually works in this instance, I know in U1/UT map conforming breaks pretty badly since MyLevel is deleted.
Looks like you found the secret sauce towards getting this thing actually working.
Took me actually a few months to come up with that solution. Before I tried all kinds of stuff like checking/fixing/netroles, etc, ... just a lot of awful trial and error.Now I'm wondering why I didn't think of using conforming
However I have no special handling for MyLevel, basically just:
Code: Select all
FString SaveDir = SaveDirString( DirectoryIndex ); FString IniFile = SaveDir + TEXT("\\Save.ini"); GFileManager->MakeDirectory( *SaveDir ); FString ConformPackage, ConformFile; INT Generation = 0; GConfig->GetInt( TEXT("Generations"), *(LevelInfo->MapName), Generation, *IniFile ); ConformPackage = LevelInfo->MapName + TEXT("_OLD"); ConformFile = FString::Printf( TEXT("..\\Maps\\%s.dx"), *(LevelInfo->MapName) ); FString SaveFile = FString::Printf( TEXT("%s\\%s.s%02d"), *SaveDir, *(LevelInfo->MapName), Generation + 1 ); BeginLoad(); ULinkerLoad* OldLinker = GetPackageLinker( CreatePackage( NULL, *ConformPackage ), *ConformFile, LOAD_NoWarn | LOAD_NoVerify, NULL, NULL ); EndLoad();
However one approach could be to save it to a temporary name and move it once the new map is loaded.
- Similar Topics
- Last post