Repository navigation
Releases: KENNITHHH/SourceToSoF2
Release list
SourceToSoF2 v1.1.1
Changelog
v1.1.1
Three fixes found by testing v1.1.0 on de_cbble.
Fixes
- Invisible Source volumes no longer cast shadows. A brush made of Source's
nodrawis solid but invisible, and casts no shadow in Source - the compiled
Source map has no faces for it at all. Converted, it blocked light and left
hard black patches: on de_cbble afunc_breakableover the long roof left a
640 x 240 unit band of wall and trim pitch black where CS:S has it sunlit.
Those volumes still stop players and bullets, they just let light through. - Terrain in
patchmode no longer shows the missing-texture grid. The
terrain's shader name is built from the map's material, and the four names
derived from it (_0,_1,_0to1,.vertex) ran past the 59 characters
SoF2 allows, so the shader file shortened two of them while the.mapkept
the long ones and nothing matched. The name is shortened up front now, with
room left for the suffixes.lwoterrain was never affected.
Editor
- Terrain shows its own ground texture in Radiant instead of the flat
tools/_terraintool texture, so a landscape is easier to edit by hand. The
compile is unchanged. - The slabs under displacement terrain draw solid in Radiant instead of
see-through, so they are easier to pick and move.
Notes
- Reconvert the whole map (not the compile alone) after updating: the terrain
names in the.mapand in the.shaderchange together, and new alphamap
.pcxfiles are written.
SourceToSoF2 v1.1.0
Changelog
v1.1.0
Lighting now matches the lighting Valve baked into the CS:S map. Measured
against Valve's own lightmaps, de_dust2 comes out at 1.00 in sunlight, shade
and lamp-lit areas (the B tunnels were at 0.57 in v1.0.0).
Lighting
- Texture lights. Rooms Source lights with glowing textures (fluorescent
tubes, light panels, emergency lamps: lights.rad) instead of light entities
are now lit. Those lights exist only in the map's compiled.bsp; the tool
reads them from it, and the textures glow as they do in CS:S. On de_cbble
the tube room went from black to 1.05 of CS:S. - No more cut-off light. q3map2 throws away light below a fixed threshold,
which cut every dim lamp off well before its light reached the floor. The
converted map is now set up so this no longer happens, with no change to
light that was already correct. The compile.batpasses the matching
-brightness/-vertexscale/-gridscalevalues, worked out per map. - Removed the flat ambient fill that stood in for the bounce light q3map2
used to lose; with the bounce light arriving, it only made dark corners too
bright. - Lamps inside props (lanterns, light fixtures) light the room around them
instead of being blocked by their own model, and their glass glows. - Window frames and wall details on props were too bright and are back to
normal. - The quick test
.batnow lights exactly like the full one (only
visibility is faster), so test builds show the final lighting.
Fixes
- Windows, door frames and other props near the 3D skybox no longer
disappear: the skybox area is found by the skybox's own brushes instead of a
sphere around the sky camera. - The gap in the terrain on de_cbble (and the void seen through it) is closed:
terrain edges are no longer snapped to a neighbour that would move them
sideways.
Notes
- Use NetRadiant's q3map2 (as before). It is needed for the new compile
options; the.batwarns if the one you picked does not have them. - Keep the map's own
.bspnext to the.vmf(or under the content folder)
so texture lights can be read. The GUI shows whether it was found. - Compiles take longer than before (de_dust2: 484 s -> 666 s on 16 threads);
big prop-heavy maps take longest in the bounce pass. - Reconvert maps made with v1.0.0: the lights in the
.mapand the compile
options in the.batchange together.
v1.0.0
First release.
SourceToSoF2 v1.0.0
First public build. Converts Source engine maps (.vmf) into Soldier of
Fortune II: Double Helix multiplayer maps — brushwork, displacement terrain,
props, decals and overlays, textures, shaders, collision, lighting, the 3D
skybox and the map's own ambient sounds. One window, ten steps, one button.
Tested on CS:S and CS:GO maps decompiled to .vmf (de_dust2, de_cache,
de_overpass, de_mirage, de_cbble) against SoF2 MP 1.03.
Download
SourceToSoF2.exe below is the whole tool — it carries its own Python, so
nothing else needs installing.
You also need
- A 64-bit NetRadiant q3map2. This matters: other builds (GtkRadiant 1.6.7
ships one) keep the.bspdraw lumps in fixed arrays and stop with
MAX_MAP_DRAW_INDEXESpart way through-bsp, and a 32-bit q3map2 fails in
-lightwithsafe_malloc failed on allocation. The tool checks the
q3map2.exeyou pick and warns before it runs. Editing in whichever Radiant
you prefer is fine — this is only about the build that compiles. - Your Counter-Strike: Source content, and a SoF2 install with its
basefolder. - The map as a
.vmf. For a map you only have as.bsp, decompile it with
BSPSource first.
Before you play
Set com_hunkMegs 256. SoF2 loads the whole .bsp as one block inside the
2 GB a 32-bit game can use, and a large hunk such as 1024 reserves half of
that at startup — a big map then fails with Z_Malloc(): Failed to malloc.
Known limitations
- Props: maps built mostly from props (de_cbble) cannot keep every prop at
full detail inside SoF2's limits. Expect simplified props and missing small
clutter; the step 6 log lists exactly what changed. - Prop skins: a prop placed with a skin other than the first is converted
with skin 0 — mostly visible on foliage and light fixtures. - Game logic: Source's entity I/O, bomb sites and buy zones are not converted.
- Sounds: the map's own CS soundscapes, as SoF2 speakers, capped at 32.
Reporting problems
Open an issue with the map, what you saw (a screenshot and the in-game
viewpos help a lot), and the SourceToSoF2.txt log written next to the .exe.
Add the compile window's output if it was the compile that failed.
Converted maps and their content belong to their owners; this tool is a
converter and is not affiliated with Valve, Raven Software or Activision.