#Solider of Fortune
126 messages ยท Page 1 of 1 (latest)
Oh shit, this looks sick
thanks! After getting Kingpin to work, I tired the same qindiegl .ini edits and got this working as well. No culling issues either so it's working pretty flawlessly so far. Just need to keep playing through to get all the shadowmaps ignored. Only issue is character geometry is unstable so probably can't replace them but still looks much better
That's awesome. Maybe consider posting in #showcase I'm sure people would love to see it as well
how did you get it to work? i spent some time trying to get qindiegl working as well but everything kept flickering
this is how it looks to me
You have to ignore those textures (they're some kind of secondary layer texture that's meant to add more detail in the rasterized rendering) then you'll be able to see the correct texture hidden beneath. I had to do the same to get American Mcgee's Alice to work. I'll post my remix config tomorrow. You also need specific cvars in the games config file to prevent culling, ill post that as well
i cant get that far, because textures keep appearing and dissapearing so fast that the game crashes
I have a constant stop-frame if raytracing is enabled... QindieGL config didn't help. I've put in game folder near opengl32.dll. Any suggestions?
When I get home I'll send over my full config but I believe in the QindieGL .ini I made a section for sof.exe with these same commands to fix that issue as thats what happens with Kingpin as well without GL_Linear line
Already done, but it is still the same. I've put ini file in the same folder where opengl32.dll and SoF.exe are placed. Also tried with renaming it
; Soldier of Fortune
[game.sofdx]
enable_camera_detection = 1
camera_detection_mode = 1
GL_LINEAR_MIPMAP_LINEAR
; Soldier of Fortune
[game.SoF]
enable_camera_detection = 1
camera_detection_mode = 1
GL_LINEAR_MIPMAP_LINEAR
nothing changed for me either
@native valley @hexed stump here's my rtx.conf. Also here's my sof config.cfg which I had to make read-only to prevent the game from overriding (Soldier of Fortune\user folder path); the lines I added are:
set r_nocull "1"
set gl_cull "0"
set ghl_pre_cull "0"
set ghl_no_cull "1"
set gl_fogdensity "0" (this removes the fog completely but will make the limited draw distance rendering visible..so my rtx.config has legacy fog turned on to obsure this otherwise I'd have to add set r_novis "1" but this tanks my frames to single digits even on my 4080 as it renders the entire level)
Looks like I actually had a bunch of commands I forgot I put in my qindieGL.ini so give this a try (though I just tested it without this lines and it still works for me.. maybe it's just a matter of brute force as I have a 13700k and a 4080?)
[sof.exe]
RenderFrame=1
ZTrickFix=1
Multisample=1
SSAO=0
SSAOMinZ=0.0005
SSAOMaxZ=0.56
EmbossScale=0.3
SSAOScale=96.0
I also had to do captures and make emssives as the game's completely dark otherwise as no lights are captured. I've been able to light the entire tutorial and first level with just emissives though so far and it looks pretty good already
I also installed SOFplus to be able to play in 4k, which I got from this link (I'm using the latest GOG version) https://sof1.megalag.org/sofplus/
that just made everything black for me
still have frame freeze issue....
copy-pasted all the configs, same result
ok, let's do the next trick: pack and send opengl32.dll, configs and exe file (with preserving all the paths) and send here if you can. Probably there is somethin with qindie version or exe or something else....
because it's getting interesting "why"
Not sure regarding brute-force, because I also have high-end specs (ryzen 7 9800x3d + rtx 5080)
@native valley here you go
That sounds like progress as it should be complete dark until you make some captures and add emssive textures and/or lights. Though its odd your gun is showing up like that as it seems like its rasterized in ur screenshot and not pathtracing, if you turn on debug view can you see geometry hash? Can you select textures?
you were right! that appears do work
there is still alot of culling however
That helped. Mine qindie dll was without pdb file. Probably that the issue
ugh yeah I just realized that as well.. hadn't even played that far because I got so excited to start remastering haha. I just figured out the issue with second level, need to turn off remix's anti object culling and back to 120 fps for me. (I don't think the object culling even does anything in this game beside helps with captures as the cvar commands are already taking care of culling during gameplay)
Do you use my config.cfg or place these commands in your version and make the file read-only?
set r_nocull "1"
set gl_cull "0"
set ghl_pre_cull "0"
set ghl_no_cull "1"
set gl_fogdensity "0"
I used your xonfig
the game is extremely unstable like this unfortuently, cutscenes and stuff crashes the game
and annoyingly, for some reason enables "enhanced pointer precision" on every crash!
@hexed stump that's odd.. were you playing it in fullscreen? I have to play it windowed and use Borderless Gaming app to make it go fullscreen. Fullscreen was causing crashes for me too but so far stable in windowed mode
nope, windowed
i would really like to get this working well, soldier of fortune is one of my favourite games of all time, and having a rtx "remaster" of it would be awesome
What version of remix are u using?
Latest
Hmm seems to work for me on latest version but it wasnt saving any of my config changes so I went back to a slightly older version as that was driving me crazy. I'm gunna finish the train level and then can package a "demo" of my mod and upload to moddb if you wanna give that a shot. What kind of hardware you working with?
@hexed stump when you played this, did you encounter issues with the gun clipping through walls and objects? I'm trying to figure out how to fix that..
yes
Try ViewModel settings, there are two numeric settings there, set them both to 0.3. That worked for RTCW. Not on my pc atm as I would have sent a screenshot.
You're right, I was actually playing around with those settings last night and that's exactly what fixed it. Thanks so much though!
WIP
ai generated textures?
only tiles on floor. Metal grate made manually by mixing two textures together, tiles on walls were ready, but I've changed albedo map and remade from scratch normal map
Oh wow your wall tiles look much nicer than mine, I just about finished first few level already using topaz gigapixel and hand fixed some textures, and drew 30+ emissive textures.
The cvar which controls whether those 'extra overlay textures'/grainy effect on top of textures is shown, is gl_detailtexturing
The UV texture co-ordinates are computed from the surface data that is inside the map .bsp file, but mixed with the width height stored in the .m32 file header. sof_buddy fakes this width/height just before the s/t u/v texture co-ordinate are calculated.
https://github.com/d3nd3/sof_buddy/blob/691e0da2fac1892dc265742d95f17cd849eab04f/src/features/hd_textures/hooks.cpp#L59
The max width/height for the m32 in SoF is 1024 px. There is another .dll you can use instead of sof_buddy which provided the same feature.
https://drive.google.com/file/d/1B-N4Q3c3EkYTFKTBirPRyJ0TjHzV7X-X/view?usp=sharing
@Jon you can test this .dll instead of sof_buddy (since you claim it crashes)
SoF.exe +set vid_ref hd
Which tools are you using for converting between .m32 and back in your re-scale workflow?
Ah, I guess the RTX Remix is working on a lower level, and doesn't need .m32 interaction!
And its probably even handling the glTexCoord2f , u/v co-ordinates too . All q2 lighting is disabled, and the scene is lit completely by the rtx?
@Jon can I test the latest of the WIP?
this can fix some stuff like hud scaling
@frigid matrix Here's a high level explanation as I know you mentioned on the SOF discord that you don't have a powerful graphics card and haven't used RTX remix (I've only started playing around with it a few months ago myself). Yes the game is completely dark as enabling RTX remix's pathtracing causes the game's original lighting to be disabled, requiring a capture to be made while in-game using the RTX remix menu. Then using the RTX toolkit to open that capture (a capture will have the entire game scene that hasn't been culled in-game; meshes and the textures covering them), the individual textures are stored in a .dds format in the RTX remix capture folder. So the game will be completely dark until you use the remix toolkit to either manually place lights (Ideally where light meshes/textures are in the map) or by making specific texture emissive (or do both).
Here's my latest rtx.conf file (you need to place this next the the sof.exe along with the RTX remix files which you can get the latest official build from sept here (https://github.com/NVIDIAGameWorks/rtx-remix/releases/download/remix-1.2.4/remix-1.2.4-release.zip) or there's nightly release versions as well you can get with an auto downloader but I'd just give this version a shot first. You'll also need to place these qindieGL dll wrapper files (https://github.com/whisperglen/QindieGL/releases/tag/v1.1.7c) next to sof.exe to convert to DX9 as remix doesn't support opengl games (this is the reason I believe sof_buddy isn't working as qindie needs to run first; I tired using chatgpt to compile a shim to make sof buddy load after qindie but get sumcheck error and can't launch at all.) I can also package my mod but that's just going to provide my upscaled textures and light placements which are't going to help with this current issue.
Did you try running sof buddy? I can get the game to launch with it enabled but once I load into the actual game, it crashes to desktop. I have to disable sof buddy using the set_sofplus_sof.cmd to get it working again. From what I can tell from the remix log is that it's trying to inject the pathtracer but is getting interfered by the sof buddy.
Is there ever a world where it can be automated for every map on the fly? There are "light" entities eg.
but some/most of the light is also directly in the surfaces (mapper places light fields into them directly)
I have zero coding skills but there are some talented people on this channel that have done so for some specific games that require customized dx9 renderer .dll per game. For example, these games will have lights already placed throughout the game from getting remix to intercept and translate all the game's original lighting levels (but honestly it makes remastering a pain at times as there's 1000's of lights in random places that don't make sense) but can make the game instantly playable https://github.com/mmdanggg2/D3D9DrvRTX/releases/tag/v1.9.0
i think re-lighting maps is the best way for high quality, you can sometimes improve the lighting of the original mapper anyway
if they didn't do such a good job
its just in multiplayer eg. there are quite a few maps
What is the most important feature of sof_buddy for you atm, its the hud scaling for 4k?
Well the good thing with remix is once you replace a texture or make it emissive, every other instance of that texture throughout the game is also replaced but this freakin game has a lot of variation of textures..
I wonder if i download the remix and try to fix the crash for you that would be good?
yes that's really the only feature that's really needed
that would be amazing and greatly apricated!
Honestly not sure but from what I briefly saw from googling it, it may work but the toolkit to mod the game won't as it's designed for windows, though I could be wrong.
perhaps it will crash with Qindie alone, in whcih case I wont' need the remix for fixing it
I start with that
good point.. here's the qindiegl.ini I'm using as it won't launch correctly without this, at least not with rtx remix (place alongside sof.exe as well)
The only line that seems to matter is GL_LINEAR_MIPMAP_LINEAR
enable_camera_detection = 1
camera_detection_mode = 1
GL_LINEAR_MIPMAP_LINEAR
RenderFrame=1
ZTrickFix=1
Multisample=1
SSAO=0
SSAOMinZ=0.0005
SSAOMaxZ=0.56
EmbossScale=0.3
SSAOScale=96.0```
is this a typo ? the others have [game.sof] ?
; == comment, why its commented
Where can I find information on those settings/ini from QIndie?
can't get QInide to load with wine
Have you heard of gldirect ? Its another project that can translate/wrap opengl to directx that I used in the past
oops yeah that was a typo.. so I guess it wasn't even loading those specific lines as I had it commented out.. though I believe it was still using GL_LINEAR_MIPMAP_LINEAR as those sections are just to make game specific profiles vs. the master profile info at the top. I believe I've tired that as well as titaniumGL wrapper and only had luck with qindie as it seems a lot of work was done to it to specifcally work with quake 2 and 3 games
I don't have any other info on how that .ini interacts with the .dll unfortunately
I used to need it for nvidia 3d vision , when I was on windows back in the day.
and used it for SoF
just tested GLdirect and it does launch but pathtracer won't inject and the game looks insane
I tried QIndieGL in windows 10 , couldn't get SoF to load XD
windows 11*
maybe I didn't have directx9 installed?
i doubt it though
I just compiled this with all 10 sof_buddy features disabled, if it runs, we know its one of the features
@Jon if this works for you, then I will compile another one with just the scaled_ui feature enabled
_sofbuddy_hud_scale 2
_sofbuddy_font_scale 2
That first file with all features disables works. I can't even get the game to launch with that second file ๐
Interesting notice: second level (train) become heavy laggy after some time if anti-culling system is enabled on remix side... And of course, disabling it makes all lights disappear if they go out from sight... Any ideas on that issues? Or is it me and my settings?
WIP
@native valley Damn that's sexy, how are you making these, in blender?
I had to disable "Enable Bounding Box Hash for Deuplication Check" to get a decent framerate, and that's with DLSS set to performance and framegen to get a stable 120
nope, In short -- mostly combined by hand in photoshop. In long -- extracted old graffiti from textures, asked gemini AI to generate "graffiti with text **** from old example", going back to photoshop, combining everything by hand (adding silhouette to roughness to add some paint-like shine), updating albedo, and leave normal/metalness (or without it in case of tiles), height, combining everything together. And yes, initially I've took PBR textures with CC0 license somewhere in "www", and applied old textures as colors and adjusted brightness a little, also adjusted heightmap displacement settings a little.... Too much actions for single texture, but the result you can see.
Sorry for bad english, russian is my native language ๐
Interesing.... Frame generation just adds lags in my case
I'm wondering -- how to replace weapon models using remix...
oh wow, impressive skills! If that much editing went into every model and texture this game could look at the level of that HL2 mod but would take years to finish with how many different variation of textures there are in this game. (the 3rd sewer level had over 12,000 when I did a capture with r_novis 1 enabled, though a couple thousand of them are repeating texture but still..)
hmm I did notice that if I alt tab or minimize the game (even with it being windowed) it would cause framegen to break (which I could tell by the scrolling text at the bottom of the main menu looking jittery). It would only get fixed again by closing and relaunching the game.
I don't think the character models or gun models can be replaced as their geometry hash isn't stable (which you can confirm by turning on the debug mode for geometry hash and can see those hashes consistently changing so only the textures can be updated; there are also a few objects that are unstable as well (pretty much any object that has an animation that makes it move in-game). For example, those lanterns in that train car screenshot are unstable so placed lights will not stay regardless of anti-culling. So instead you have to strategically place the lights on a stable hash right near them, so in that instance, I attached the lights to the beam right above the lanterns (had this exact issue in Max Payne 2).
We would need a kind soul with coding skills to help further improve qinidiegl wrapper to make these stable (which is why I gave up on modding American Mcgee's Alice or FAKK2)
Surprisingly the helicopter flying around on the train level is stable though so I was able to attached lights to it, which looks awesome as it flys around shining a spotlight at the train looking for you.
How are you remaking textures? Ngl those looks like 3d printed thingy lol
lol it's because it's all AI slop and I'm using the original 64x64 textures and running them through various different models in topaz gigapixel, some times using 2 to 3 different models per texture to get them up to at least 1024x1024 or even 2048x2048 if it's a large enough texture. Prior to that, I was using a mix of topaz and a custom workflow I made in comfyui with SUPIR upscaler and mix of PBRfusion but was getting to much noise in the results. I probably just went a little crazy with the displacement and need to tone it back a bit.
@queen garden here's same area with displacement turned down a bit, that look any better to you?
you chose such a hard game to remix
ye thats looks better
why do you say that, because it's fairly long game with a lot of variation in textures that are super lowres?
textures are just very low res yes, ai cant give good result always anyway, from 64x texture for sure and all meshes are very low poly also
the only easy thing i find in old game like this that there not that much meshes per location, so its easy to remade them faster then in newer games that support remix too
maybe. I like to dig deeper a little. Mostly I'm trying to find/rip ready textures, then adjust them a little (or more) to make them more close to original idea and coloring, but things like duplicating textures and adding a graffiti or other small details - I laso prefer to reuse what I've done before with adding missing details, also recreating them as close to original as possible. Thanks to AIs, it helps to do some things, but in the end, mostly, I'm combining everything manually.
And yes, what is r_novis 1 for?
currently totally busy on work, so paused remastering for a while...