Skip to content
RED+
Contents

RED+ guide

Changes

What changed in each RED+ build, newest first. These are the change notes that come with each package, in CHANGES.txt.

Build 57

26 September 2026

  • Levels saved by a newer Alpine Faction editor: its Sun, projection cameras and rope emitters are no longer read as a RED+ Sun and light cookies. The log window says when a level carries data RED+ does not read, and that saving it here does not keep that data.
  • RED+ settings in levels saved before 2026-09-09 are read only when the file is laid out exactly as those builds wrote it.
  • When a level carries both Alpine's level settings and RED+'s copy of them, Alpine's are used.
  • The level file records where each face with RED+ settings is (RED+ chunk version 24). When a level renumbered in another editor is opened, those settings are put back on their faces, settings whose face is gone are dropped, and the log window says how many.
  • Settings for objects no longer in the level (light cookies, follow-light links, glowing liquids, caustics, locked wiring, meshes without shadows) are dropped when the level is opened, so a new object never inherits them.
  • Face settings made on a brush that was never built (they could not be told apart) are no longer saved onto every unbuilt face.

Build 56

26 September 2026

  • Create Level Packfile packs the level's custom sound files: those of ambient sounds, Play_Sound, Music_Start and Switch events, and the start, looping, stop and close sounds of moving groups. The game's own sounds are left out. A custom sound is found in the level's folder, the folders the sound browse last used, user_maps\sounds, user_maps, red\audio, red\sounds, user_maps\projects and user_maps\textures, then in any folder under user_maps, red and mods, then inside the level's current .vpp and the other map packs. The log window lists what was packed and warns about sounds not found, names of 32 characters or more (the game cannot load them), names of 40 or more (not packed: the packfile cannot hold them), names with a folder in them or spaces around them (the game cannot find them; not packed), .OGG in capitals, copies of different sizes, and a sound name that another map pack also holds. -packsounds:off leaves sounds out as before.
  • An ambient sound's outer range sphere shows the distance the game plays it to: RED drew it at about half that. -ambientrange:stock keeps the previous size.
  • The selection colour (Preferences) now colours selected objects' icons, the bounding shape of a selected mesh object, and selected meshes, bags, notes, coronas, Suns and weather regions, as it does for brushes. It had coloured an ambient sound's Min Dist sphere, which is red again.

Build 55

26 September 2026

  • Gas regions are drawn in the Free Look view the way the game draws them (Alpine 1.4, Direct3D 11 renderer): the region's colour builds up with the distance the view travels through it, at the region's density, over the walls, floors, meshes and decals behind it. Preferences > RED+ > "Show gas regions in Free Look, as in the game" turns it off. Not drawn with the Direct3D 9 renderer.
  • A gas region hidden in the editor is not drawn; the game draws it. Nothing is drawn when levels are saved below RFL version 304, because the game reads gas regions only from 304 on.

Build 54

26 September 2026

  • A spot light whose FOV (or FOV plus dropoff) is over 180 degrees lights everything except a cone behind it, in the lighting bake and in the game. The editor drew such a light as a narrow cone pointing backwards. It now draws the light's range as a sphere and the cone it does not light in red. -spotgizmo:stock keeps the previous drawing.

Build 53

26 September 2026

  • Texture Browser: a Show filter in the RED+ box: With alpha, Animated, Small (up to 64 px), Medium (65 to 256 px), Large (over 256 px), Not power of two, and Favourites.
  • Texture Browser: Favourite marks the current texture; Show > Favourites lists them from every folder. They are kept in texture_favourites.txt beside redplus.ini.
  • Texture Browser: Sort by Type and Sort by Most used (faces in the open level).
  • Texture Browser: "Search all folders" now includes the game's own textures as well as the custom folders.
  • Texture Browser: tiles show small tags: the file type (VBM, DDS, PNG, JPG, ATX) and frame count top left, A for alpha top right, NPOT (not a power of two) bottom left.
  • Texture Browser: an animated texture plays in the Current Texture box.
  • Texture Browser: the details say how many faces in the level use the texture, and name the .vpp a packed texture comes from.
  • Texture Browser: Select faces selects every face of visible brushes that uses the current texture (Texture mode). To replace a texture everywhere, select its faces, pick the new texture, press OK, then Apply; Ctrl+Z undoes it.
  • Texture Browser: Check level textures lists the textures the level's faces use that the game will not have: missing ones, loose files (including ones in a subfolder of user_maps\textures, which the game does not read) and ones from .vpp archives other than the base game's.
  • Texture Browser: what the filters and tags read from texture files is kept in texture_info.cache beside RedPlusEditor.dll, so each file is read once.
  • Preferences > RED+ > "Texture Browser additions" turns these off too.

Build 52

26 September 2026

  • Texture Browser: a RED+ box under Show Tiled with a Type filter (TGA, VBM, animated VBM, still VBM, DDS, PNG / JPG, ATX) and "Search all folders", which makes the Name box search every folder. The Name box takes several words, all of which must appear ("brick red"), and -word to leave a word out ("brick -tf_"). The window title shows the count while one of these narrows the list.
  • Texture Browser: the RED+ box shows the selected texture's file: type, size in pixels, format (VBM 4444 / 565 / 1555, DDS compression, TGA bits and alpha), frames and frame rate for an animated VBM, file size, and whether it is a loose file (with its folder) or inside a .vpp.
  • Texture Browser: hovering a tile shows its full name and the same file details.
  • Texture Browser: textures with alpha are drawn over a grey checkerboard instead of black, in the tiles, the recent-texture row and the Current Texture box.
  • Preferences > RED+ > "Texture Browser additions" turns all of the above off.

Build 51

26 September 2026

  • Fixed: a bright line down the edges of a keyframed door and blotches around a cut-out (such as a porthole) in one. At the end of a bake, RED+ makes the lightmaps of touching faces agree along their shared edges; a door sitting just behind its frame was matched with the frame, and took its light. A moving brush's lightmap now only matches its own faces. -seammovers:blend keeps the previous behaviour.
  • Fixed: keyframed brushes without the Detail flag did not block light at all when they were lit, not even for their own faces, which gave them sharp patches of light. They now shadow their own faces, as the original editor did; they still do not shadow the rest of the level. -moveroccluders:off keeps the previous behaviour.
  • A shadow falling across a gentle bend in a surface (up to 45 degrees) now carries over it further from the edge: at high lightmap detail it stopped a few texels out, so an object's shadow could still end in a line at such a corner. -creaseband:<tenths of a texel> sets the width by hand.

Build 50

26 September 2026

  • Meshes switch to their lower-detail models at the same distances as in the game (ten times farther than before). -meshlod:stock keeps the previous distances.
  • Water waves move at the game's speed at any frame rate. -waterspeed:stock keeps the previous speed.
  • The sky room is drawn behind Show Sky faces in Render Everything too, and View > Draw Sky (Like in-game) starts on and remembers the choice. -skypass:off turns the Render Everything part off.
  • Faces with a texture mover no longer have their UVs shifted by the editor while it is open; the UVs are saved as set.

Build 49

25 September 2026

  • The editor now shows textures and lightmaps in 32-bit colour, as the game does. Lightmaps were shown with 32 levels per channel, so dark gradients broke into contour bands with green and purple tints; 24-bit textures were shown in 16-bit colour and 32-bit textures with 4 bits per channel. 16-bit textures are shown as before. The lightmap data and the saved level do not change. The editor uses more memory for 24-bit and 32-bit textures and for lightmaps (twice as much for those). -truecolor:off on the command line keeps the previous 16-bit formats.
  • Lightmaps are no longer raised to a minimum brightness when a level is loaded. Red Faction's editor did this at load only, not after a bake, and the game does not do it by default, so dark areas looked brighter after reopening a level than after baking it.
  • Lightmaps seen from a distance no longer blend with the lightmaps next to them on the same page.
  • Shadows cut out by a texture's alpha now read its alpha at 8 bits instead of 4, so the edge of such a shadow can move by a texel.

Build 48

25 September 2026

  • Fixed: a shadow falling across a corner where two faces meet at an angle (up to 45 degrees) stopped in a straight line at the corner instead of continuing onto the other face. Each face worked out its shadows at its own texels, a little way in from the corner, so the two sides disagreed there. Texels next to such a corner now take the shadow at the corner itself, the same for both faces; each face keeps its own brightness from the way it faces the light. This applies to point, spot and tube lights. -creaseshadows:off on the command line keeps the previous behaviour.

Build 47

25 September 2026

  • Calculate Lighting is faster, most on levels with many faces per lightmap. Build 45 made some bakes slower by putting more faces into one lightmap; on the level tested, a bake that took 213 s in build 46 now takes 151 s. The lightmaps are byte-identical to build 46.

Build 46

25 September 2026

  • Fixed: bright and dark patches with hard edges in the lighting, on surfaces where any face has a smoothing group. Next to very thin faces, Red Faction's own lighting code worked out a wrong position or a wrong surface direction for some texels, and those texels came out far too bright (up to white) or too dark. Which places were affected changed whenever the geometry was rebuilt. RED+ now checks each of those texels against the face it lies on and uses the face's position and direction where Red Faction's are wrong; all other texels are lit as before. -smoothfix:off on the command line keeps the previous behaviour.

Build 45

24 September 2026

  • Fixed: a hard line in the lighting where two faces meet, most visible where a shadow crosses it. Faces that lie flat against each other but not exactly in one plane, such as a brush face made of two very slightly bent triangles, each got their own lightmap, and a shadow crossing the edge between them did not line up. Faces whose corners all lie within 0.01 units of the same plane now share one lightmap; on the level tested that was about 1,000 fewer lightmaps. It takes effect when the lightmaps are laid out again, which Calculate from the Lighting dialog and the L key do before lighting. -nearcoplanar:off on the command line keeps the previous grouping.

Build 44

24 September 2026

  • The whole editor now uses the floating-point precision the original editor used, not only Rebuild Geometry (build 43). RED's own tools, such as brush and face editing and texture alignment, give the same results as in the original editor. Lighting is unchanged. D3D8TO11_FPU_PRESERVE=1 in the environment keeps the previous precision.

Build 43

24 September 2026

  • Fixed: Rebuild Geometry could report holes and leave out faces that the level's brushes should produce. RED+ ran the geometry compile at a different floating-point precision than the original editor, and the compile gives different results at that precision. On one test level a rebuild reported 11 holes and left out about 2,300 faces; it now reports none and keeps them. A level last rebuilt in an earlier RED+ build can change slightly on its next rebuild. [editor] compile_single_precision=0 in redplus.ini compiles as before.
  • Fixed: Calculate Lighting crashed on large levels at High and above (on some levels already at Good). Red Faction allows at most 32,767 lightmap surfaces for a level's geometry, and the game has the same limit. RED+ divides large flat areas into tiles at higher qualities, which could take a level past it. When a level would go past it, the tiles on large flat areas are made larger for that bake, so those areas get fewer texels per unit than the rest of the level, and a message after the bake says so.
  • Calculate Lighting is faster: shadow rays and bounce light use a second, faster ray tree, and ambient occlusion and sun rays a faster walk of the existing one. Each surface's ambient occlusion tree is built on all worker threads instead of one. On the level tested, the lightmaps came out byte-identical to build 42. -fasttree:off, -fastbounce:off, -aowide:off and -aoahead:off on the command line use the previous methods.
  • Classify Holes also lists each hole's position and diagnosis in the log.

Build 42

23 September 2026

  • Fixed: saving a level after Calculate Lighting could crash the editor, losing the unsaved level. A lighting bake replaces the lightmap pages the level was loaded with, and RED's save still read the old ones for some brushes; it now writes those brushes as before without reading the old pages.
  • Fixed: Calculate Lighting could skip the bounce light without saying so, for the same reason. The bake then finished sooner and darker.
  • If a bake ever ends without its bounce light, RED+ now says so in a message and in the log.

Build 41

23 September 2026

  • The estimated bake time in Level Properties:
    • It is there as soon as a level is open, also after closing and reopening the level or restarting RED+. It no longer needs a bake of that level in the same session.
    • It counts texels with the lightmap detail the bake really uses. It overestimated Maximum, Ultra and Extreme; Extreme by about half again.
    • Every bake is remembered with its level and RED+ build. The estimate uses your own bakes of that level first and says what it is based on. A quality you have not baked is worked out from the ones you have, and a lower quality never shows a longer time than a higher one.
    • Times measured by earlier builds are not used. Bake the level once to start.
  • The log lists the estimate for every quality after loading a level and after each bake.

Build 40

23 September 2026

  • Fixed: an emitting face's Bright and Depth (Face Properties) changed after Rebuild Geometry. Depth went back to the level default and Bright to a different value, the bake used the changed values, and the next save kept them. They now stay as set. A face whose values already changed needs them set once more in Face Properties. -emissivekeep:off on the command line leaves them as before.
  • The log reports, after loading a level and around each Rebuild Geometry, whether every emitting face still carries its Bright and Depth.

Build 39

23 September 2026

  • Fixed: light from the far side of a thin wall or board reached its back face, and an object behind the wall cast its shadow on that back face as well. RED lights a face that points away from a spot or point light with part of that light; that part is now blocked by whatever is in the way, including the wall the face belongs to. Faces of walls and boards thinner than about 0.35 units that are lit from the other side come out darker. Calculate Lighting again to update a level. -thinwalls:off on the command line bakes as before.

Build 38

23 September 2026

  • Calculate Lighting takes less time. The lightmaps come out the same, byte for byte.
    • Shadow rays walk a wider tree, testing four boxes at a time, and test a group of up to four triangles at once.
    • Bounce light rays do the same, visiting the tree in the same order as before.
    • Bounce light rays are no longer traced for texels too dark for the bounce to change.
    • The edge repair after the lighting runs on all threads.
    • The bake log's per-stage page checks take less time.

Build 37

22 September 2026

  • Rebuild Geometry takes less time again. RED searched for the predecessor of each face it took out of a list by walking the list from the start; the editor now keeps an index of them in the two places where RED empties lists face by face. It also tracks the end of each room's face list while RED fills rooms, and checks where a new lightmap fits several rows of a page at a time. The compiled level and the lightmaps are the same.
  • The log reports, for each Rebuild Geometry, how many lightmap placements were searched.

Build 36

22 September 2026

  • Rebuild Geometry takes less time, the most on large levels. RED added each face to a list by walking the whole list first. The editor now keeps track of the end of the list in the parts of the build where nothing else changes it. The compiled level is the same.
  • The Rebuild Geometry time in the log no longer counts a build that was left unfinished when its level was closed.

Build 35

22 September 2026

  • Calculate Lighting takes less time. The lightmaps come out the same, byte for byte. How much time it saves depends on the level: it skips the work listed below, so a level with many short-range point and spot lights and a black ambient light saves the most.
    • No shadow rays are traced for a texel outside a point or spot light's range or outside a spot light's cone. RED gives such a texel no light from that light.
    • A shadow ray first tests the triangle that blocked the previous ray.
    • All of a surface's lights are traced together instead of one light at a time.
    • Ambient occlusion rays are no longer traced where the ambient light is black.
    • The bounce pass shares its work out in smaller pieces, so fewer threads wait at the end.
    • Part of the edge seam blending runs on all threads.
  • Rebuild Geometry finds a place for each new lightmap with less work. The result is the same.
  • The log reports each Rebuild Geometry: how long it took, or that it was cancelled.
  • Fixed: after lighting a level that has rooms with their own ambient light, lighting another level in the same session that has none still used the first level's room ambient.

Build 34

21 September 2026

  • Light Properties and some other Properties dialogs made the editor redraw all four viewports up to 20 times a second while they were open, even when nothing changed, which made the dialog and the editor slow to respond. The viewports are now redrawn when a value in the dialog changes, and otherwise once a second.
  • The editor slowed itself to 4 frames per second whenever one of its own windows on another thread was in front. It now does that only when another program is in front, and the log says when it starts and stops.
  • The 3D view skips placed .v3m meshes that are outside it.
  • The Direct3D 11 viewport does less work per frame.

Build 33

21 September 2026

  • Fixed: a brush in a moving group with Is Detail ticked got no bounce light, so a keyframed door or panel baked darker than the wall around it. It now gets bounce like the rest of the level. Calculate Lighting again to update a level.
  • The Direct3D 11 viewport sends the graphics card only the vertices each draw uses, instead of the editor's whole vertex buffer on every draw. Redrawing the viewports takes less time.

Build 32

21 September 2026

  • The Play buttons find Alpine Faction themselves. The first time you press Play, RED+ looks where Alpine Faction is usually installed and where its installer recorded it. If it is not found, RED+ asks you to point at AlpineFactionLauncher.exe once and writes it to redplus.ini (PLAY_LAUNCHER). Play works from then on without editing the file.
  • Tools > Preferences > RED+ has two new checkboxes: Classic file browse boxes, and Render Everything if a level has no portals. Each takes effect the next time RED+ starts.

Build 31

17 September 2026

  • Calculate Maps and Light takes less time. The shadow rays test the level's boxes with the processor's vector instructions, each triangle's edges are worked out once when the level is prepared instead of on every ray, and the editor's own thread takes a share of the work instead of waiting for the others. The lightmaps come out the same, byte for byte.
  • During a bake one more processor thread is busy than before: the editor's own.
  • The ray-traced shadow line in the log no longer counts the blocks that were placed meshes; -shadowmeshattribution on the command line brings that count back. Mesh shadows are unchanged.

Build 30

17 September 2026

  • File > Mod (RF+) lists the folders in the game's mods folder. Choose one and RED+ asks "Restart Editor?": RED loads a mod's packfiles only when it starts. On Yes the editor closes the usual way (a modified level asks to be saved first, and Cancel keeps it open), starts again with that mod and opens the same level. "(No mod)" goes back to none. The running mod has the check mark and is named in the window title. The same list is in the RED+ menu.
  • The choice is kept in redplus.ini ([editor] mod=), and RedPlus.exe starts the editor with it until another is chosen. A mod whose folder has gone is left out.
  • A mod folder with a space in its name is listed greyed out. RED cannot load such a mod, and Alpine Faction's launcher does not support these names either.
  • RED warns when a level saved with another mod, or with none, is opened: with a mod loaded, that the level will be saved with it; with none loaded, that the level's mod is not loaded. These are RED's own messages; OK carries on, and File > Mod can then load the level's mod.

Build 29

17 September 2026

  • Weapon pickups open Item Properties again, like every other pickup, from a right-click or from Properties (Ctrl+P). Build 28 had turned that off; the weapon_item_properties key in redplus.ini is gone with it.

Build 28

17 September 2026

  • RED's browse boxes (File > Open, Save As, Open Dialogue Text, Export as VRML and the rest) are the current Windows file dialog, with its navigation pane, address bar and search. redplus.ini [editor] classic_file_dialogs=1 brings back the older box.
  • A weapon pickup opens no Item Properties box, from a right-click or from Properties (Ctrl+P). Ammo, health, armor and every other pickup still open it. items.tbl decides which pickups are weapons (the ones with $Gives Weapon:), so Remote Charges and grenades count as weapons too. redplus.ini [editor] weapon_item_properties=1 gives weapon pickups their box back.

Build 27

17 September 2026

  • A level can hold more than one Sun, up to eight: a sun and a moon, a key light and a fill. Place another from the object list like the first. Each Sun has its own direction, colour, strength and softness, the bake adds their light, and each gets its own light for the game ("RF+ Sun", "RF+ Sun 2" and so on). Link an event to the Sun you want to switch. Sun Properties edits the selected Sun; with several selected, OK gives them the same values. Every Sun adds a ray for every lightmap texel, so the bake takes longer.
  • A level with one Sun bakes the same lightmaps as before.
  • A level with several Suns needs this build or later. An older RED+ build opens it with the first Sun only and treats the other "RF+ Sun" lights as ordinary lights. If it is saved there, this build brings the other Suns back from those lights (direction, colour and strength; softness and the gizmo position return to their defaults).
  • Fixed: a Sun could share its id with another object of the level after a load. Events linked to that object would have been pointed at the Sun's light at the next save.

Build 26

16 September 2026

  • Fixed: weather regions (Alpine Faction 1.4) saved by RED+ were dropped by the game and by Alpine's editor. Alpine Faction 1.4.0 reads two fields at the end of every weather region record (block by geometry, column width) that RED+ kept in a chunk of its own. RED+ now writes each region the way Alpine 1.4.0 reads it. Levels saved by RED+ builds 20 to 25 still open in RED+, with those two values taken from the old chunk; save them once with this build and they work in the game.

Build 25

16 September 2026

  • Link a Light_State or Set_Light_Color event to the Sun itself to switch the sun off meshes and players in the game. RED+ points the link at the "RF+ Sun" light when it writes the file and back at the Sun when it opens it, so the wire in RED goes to the Sun and the game finds the light. A link drawn to the light directly still works.
  • Fixed: a Sun with intensity 0 kept the "RF+ Sun" light at its previous strength, so meshes stayed lit. A Sun at 0 now writes no light. The light's placement, colour and strength come from the Sun at every save; change the Sun, not the light.
  • Clutter objects cast baked shadows, like placed meshes, without converting them. Check Mesh Shadows lists them; its Fix applies to .v3m files only. RED+ > Casts Shadow On/Off for Selection (RF+) switches the shadow of the selected meshes and clutter; Mesh Properties keeps its Casts shadow checkbox for meshes.
  • Mesh Properties: the Casts shadow checkbox has its own row. It sat on the Fix Texture Alpha button.

Build 24

16 September 2026

  • The "RF+ Sun" light is now an object in the level, so events can link to it. A Light_State event (or Set_Light_Color to black) switches the sun off meshes and players mid-game; a moon light placed with Initial State Off can be switched on the same way. RED+ manages the light: created with the Sun, set from it at every save, removed when the Sun is deleted, never baked. Leave it where it is and do not rename it. Its Enabled checkbox in Light Properties works like any light's: untick it to keep the sun off meshes and players until an event turns it on.
  • Placed .v3c meshes now cast baked shadows, from the model's rest pose: the shape RED shows with no State Anim, and the resting shape of a swaying plant. An animated .v3c casts that pose, not a frame of its animation. Check Mesh Shadows lists them; its Fix applies to .v3m files only.
  • Mesh Properties has Casts shadow (RF+), on by default. Untick it and the bake leaves that mesh out of the shadows; Check Mesh Shadows lists it as switched off.
  • Wrap Across Edges on the Texture panel applies as soon as you click it: click the face that is mapped right, Ctrl-click the faces to continue onto, Wrap. The options box is gone; RED+ > Wrap Texture, Strips Along V keeps the other walk order.
  • Fixed: an .atx texture on a face or a decal was packed without the frame textures it names, so the packed level lost the animation. Alpine Faction 1.4's editor has the same gap.

Build 23

15 September 2026

  • The Sun (RF+) now reaches placed meshes, enemies and the player in the game. When a level with a Sun is saved, RED+ writes one ordinary light named "RF+ Sun" into it, far outside the level and aimed like the Sun. Alpine Faction 1.4 with Direct3D 11 lights meshes and characters from it; RED+ removes it again when it opens the level and never bakes it. In another editor it shows as a light named "RF+ Sun": delete it there before baking. For a level lit by the Sun, tick Level Properties > override the static mesh ambient light modifier and set it to 1, or the game multiplies a mesh's light by 2 (single player) or 3.2 (multiplayer), ambient included, and sun-lit meshes come out brighter than the ground. The light has no shadows: a mesh standing in a baked shadow is lit as if in the sun, because the game cannot shadow a placed mesh with the level's geometry. Convert such a prop to brushes to have it baked.
  • RED+ > Blend Selected Faces (RF+) evens out the baked lighting across the joins between the faces you selected (joins that bend up to 30 degrees), without a bake. Undo Last Blend (RF+) restores the last blend. Inspect Lightmap Seams (RF+) now lists joins whose lighting differs by more than 8 of 255; it was 16.
  • Mesh Properties has Scale... (RF+) for effects (.vfx) too: a percentage or a size, axes linked, about the effect's own origin. Writes a new .vfx into user_maps\meshes.
  • Mesh Properties has Origin... (RF+): move a static mesh's pivot to its centre, bottom centre or top centre. Keep model in place (on by default) changes the pivot while the model stays where it is. Writes a new .v3m into user_maps\meshes; the original is not changed. Skeletal and animated meshes are refused.
  • Scale Mesh output names are limited to 31 characters including .v3m, which is what the game loads. Long names keep a readable prefix and a stable identifier.
  • Mesh Properties has Convert to Brushes (RF+): a placed .v3m becomes brushes, one per mesh part, with Close planar openings on by default to cap open ends and join attached parts. Hide or move the original mesh, edit in Brush mode, then Build Geometry.
  • Brush mode > Stretch Properties has Scale each brush individually: 50 percent halves each selected brush around its own centre and 200 percent doubles it, with the brush centres left where they are. Unchecked, RED scales the selection together as before.
  • Texture Mode has Fit Texture to Face and Wrap Across Edges at the bottom of the panel. Fit sets each selected face to the repeat counts you give. Wrap continues the texture of the face you clicked first onto the Ctrl-clicked faces around an edge. Both undo.
  • Check Mesh Shadows (RF+) and the bake now use every part of a multi-part mesh where it is, so a mesh made of several pieces casts its full shadow. Fix repairs the parts that reach past their own sphere.
  • A liquid room that emits light now lights the whole surface evenly: a large surface emits from a grid of cells instead of six points.
  • Fixed: Wire Follow Lights (RF+) crashed the editor right after wiring. The geometry rebuild it asks for now goes through RED's own routine.
  • Fixed: in Face Properties, an emissive Depth typed as 15, 25, 35 and so on read back 10 higher on the next open, and a typed Angle above 200 was cut to 200.
  • Fixed: typing into the Scale Mesh percentage box came out reversed (95 read as 59). The box keeps what you type and is tidied to two decimals when you leave it.
  • Fixed: Save As and autosave checked the level you opened instead of the file being written, so a level from an older build could raise a false format warning on save.
  • RED+ says so when its own folder cannot be written to, when RF_DIR in redplus.ini points at a folder that does not exist, and which RED.exe version it found when it is not the one it needs. The log notes the loaded RedPlusFaction.vpp and the number of light cookies.
  • The readmes name the Windows and graphics requirements, the DirectX runtime the Direct3D 9 renderer needs, and the SmartScreen prompt. They say that Room Effect caustics need the RED+ game client and that liquid surfaces are drawn fullbright by the game.

Build 22

10 September 2026

  • The RED+ options on Tools > Preferences > General moved to a RED+ category of their own. The General page is back to how RED has it.
  • New in Preferences > RED+: Rebuild with hole lines on by default. Every rebuild then draws the open edges RED finds.
  • Fixed: in builds 18 to 21, OK in Level Properties turned Repair face-edge shadows off. It is now a checkbox. On a map saved in those builds, tick it in Level Properties and use Calculate Lighting.
  • Fixed: shadow slices along the shared edge of two faces that lie in the same plane. On a very large level, an area too big to correct is left as it was, and the log counts the areas it skipped. Use Calculate Lighting to update an existing map.
  • RED+ > Inspect Lightmap Seams (RF+) lists suspect baked joins between faces. Select one to highlight it in Free Look, and Go To moves the views to it. Blend Selected evens out the lighting across the selected join, and Undo Blend undoes the last blend. Save the map to keep a blend. Calculate Lighting replaces blends.
  • Mesh Properties has Scale... (RF+): type a new size or a percentage. It writes a resized copy to user_maps\meshes and puts its name in Mesh File. By default the copy keeps the model's centre in place.
  • Fixed: the Play buttons failed on an install that has only RF.exe.

Build 21

10 September 2026

  • RED+ is now the editor on its own. Double-click RedPlus.exe to start it. The launcher and the RED+ game client are no longer included.
  • To test levels with Play, set PLAY_LAUNCHER in redplus.ini to your Alpine Faction launcher. If it is not set, the Play buttons tell you.
  • If RED+ reports that RED_4gb.exe was not made by RED+, delete that file and start RED+ again. RED+ makes a new one.
  • If you set RF_DIR in redplus.ini, RED+ now uses it even when it sits inside a Red Faction folder.
  • This package does not check for updates.

Build 20

9 September 2026

  • Fixed: RED+ now finds Red Faction wherever it is installed, including GOG, Steam and custom folders. Setting RF_DIR in redplus.ini now works.
  • Fixed: if RED+ could not find the game before, it now looks again. If it still cannot, the log says how to fix it.
  • Fixed: the Light Cookie library and the mesh Shadow-Check Fix now work on a clean install. They no longer need a file that only the Alpine Faction or Dash Faction installer creates.
  • Crash reports are no longer uploaded. The report is saved next to the log, and the crash dialog tells you where.

Build 19

9 September 2026

  • Levels that use Emissive or Full Dark are now fully compatible with Alpine Faction 1.4. The faces glow and bake exactly as before, and reopening a level keeps every setting.
  • To update an existing level, open it and save it. No re-bake is needed.
  • The package now says where to get the source code for its open-source parts, and NOTICE.txt lists every component and license in the package.

Build 18

9 September 2026

  • Levels saved by RED+ are now fully compatible with Alpine Faction 1.4. RED+ writes the parts of the level format that Alpine Faction defines exactly as Alpine Faction does, and keeps its own settings in separate sections that other programs skip.
  • Levels with more than one weather region now load correctly in Alpine Faction.
  • Group files (.rfg) saved by RED+ now load their brush settings correctly in Alpine Faction.
  • To update an existing level, open it and save it, then re-pack the .vpp. No re-bake is needed.
  • Every save is now checked as it is written. The log says "saved and verified Alpine 1.4 compatible", and a message box appears if anything is wrong.

Build 17

5 September 2026

  • FIX, and it is the one that matters: lights no longer shine through floors, walls and ceilings. RED's own shading deliberately lights surfaces that are turned AWAY from a light (its facet softener gives a face at 90 degrees half strength, and tube lights have no facing test at all), and RED+ was not shadowing any of those surfaces, because it takes over the shadow mask for point, spot and tube lights and skipped every texel facing away. A spotlight above a floor therefore lit the room underneath it through solid geometry. 1.48 million texels a bake were going unshadowed on a small map. They are traced now. Expect the undersides of walkways, and rooms below a light, to be darker than your last bake. That is the correct result, not a change of taste. -nobackfaceshadows restores the old look.
  • FIX: a tube light could still light through geometry near its ends, because the range test measured to the middle of the tube while the game shades from the nearest point along it.
  • NEW: gratings, wire glass and other see-through faces cast a real shadow now, cut out of their own texture, instead of casting nothing at all. KNOWN LIMIT: a see-through face on a DETAIL brush still casts a solid shadow. The detail brush keeps a second copy of the face whose flags do not say see-through, and that copy blocks.
  • Ambient occlusion respects those cut-outs too. A palm frond or a grating used to block ambient light across its whole rectangle while casting a correct cut-out for the sun and point lights.
  • The bake log now reports what each alpha mask contains, how often the cut-out is consulted and how often it answers opaque, and how many texels each shadow decision covered. Several of the numbers it printed before were mislabelled and one asserted the opposite of what it counted.

Build 16

5 September 2026

  • Lightmap detail defaults to 4x (cap 128 on a 256 page), and the Level Properties box and redplus.ini say why: a large surface is pinned at the cap, so the file's size is set by how many cap-sized squares fit one page. 64, 128 and 255 fill their pages; the old 8x (180) and 2x (90) leave half of every page EMPTY, so 8x cost the same bytes as Maximum for half the texels. Arena Island: 369 MB at 8x, 62 MB rebuilt at 4x. 8x and 2x are still accepted from an existing redplus.ini, with a warning in the log. An existing map only shrinks after Calculate Maps + Light; a relight keeps its pages. The file format is unchanged; maps load in stock RF, Dash and Alpine as before.
  • FIX: the lightmap edge repair read past the end of a page's allocation before saving (a probe compared three bytes per texel against a one-byte-per-texel buffer). Output is unchanged; the overrun is gone.

Build 15

5 September 2026

  • FIX (editor): a brush face with more than 25 vertices, or a face whose vertex ring never closes after a bad weld, crashed the editor the moment the brush was drawn in wireframe. RED's own wire-face drawer kept its vertices in a fixed 25-slot array on the stack and wrote past it. The drawer now sizes its array to the face; a ring that never closes is drawn as far as it goes and logged.

Build 14

5 September 2026

  • FIX: a texture's .dds/.atx/.png sibling inside a packed level could be wrongly refused as a replacement for the .tga (an uninitialised value was compared), so the editor drew the .tga while the game drew the sibling. Data-dependent; came and went between sessions.
  • FIX: Fix Texture Alpha (RF+) now refuses a .tga that the editor and game do not draw because a .dds/.atx/.png/.jpg of the same name supersedes it, and names that file. It also says when the packer will ship a root copy it did not edit.
  • FIX: Browse Meshes could squash its top row when the list column was dragged narrow; OK or Enter on a list emptied by the filter could return the previously highlighted mesh.
  • FIX: Classify Holes (RF+) kept the previous map's rows after File > New; Snap Fix's confirmation could outlive a level change.
  • FIX: a cancelled bake leaked its timers into the next bake's phases line.

Build 13

5 September 2026

  • FIX: Fix Texture Alpha (RF+) edited the wrong copy of a texture when the same name existed in more than one place. It searched the mesh folders first, but the editor and the game never load textures from beside a mesh; they load the copy in user_maps\textures (or a subfolder). It now asks the editor which file it actually loads, edits that one, and lists the other copies as "nothing loads, left alone". The report also says whether the game sees the edited file, and reminds you that a level packed earlier still carries the old texture until you pack it again.

Build 12

4 September 2026

  • Browse Meshes (the mesh library) has a Sort box next to the filter: Name, Most recent, Size. Most recent and Size show the date or the file size beside each name, so the order can be read off the list; the details line also shows the selected mesh's size and date. The choice is remembered between sessions.

Build 11

4 September 2026

  • No changes to the editor.

Build 10

4 September 2026

  • FIX: Classify Holes (RF+) went deaf: Go To worked once, then Go To, Refresh and Close did nothing. RED gives keyboard focus to whichever viewport the mouse is over on every redraw, 20 times a second, without checking whether another window is on top of it. Any RED+ window floating over the viewports lost focus in the middle of your click, which cancelled the click. RED only ever exempted two of its own dialogs; it now leaves any window that is actually under the cursor alone. Every RED+ floating window benefits.
  • FIX: Classify Holes listed more places than RED's "Found N holes". RED counts connected chains of open edges; the tool grouped edges by distance only, so one wide hole came apart into several rows. Edges that share a vertex are one place now, the summary leads with RED's own count, and it says why the two numbers differ when they do.
  • Refresh always re-runs RED's check, but on the COMPILED geometry: after editing brushes, Rebuild Geometry (space bar) first, then Refresh.

Build 9

4 September 2026

  • FIX: decals and alpha-tested faces drew their transparent parts BLACK in the editor while the game showed them transparent. The editor was loading a .dds sibling of the .tga from a texture SUBFOLDER (the game never looks in subfolders, so it drew the .tga), and a .dds saved without alpha draws those parts black. A sibling in a subfolder no longer supersedes; one in the textures root or a packfile still does, exactly as in the game. The log says "editor bitmaps: 'X.tga' is NOT superseded by 'X.dds'" when it declines one. A .dds saved without alpha still draws black in the game if it is moved to the textures root or packed: save it with alpha (DXT5) or delete it.
  • File properties said Alpine Faction and Goober, and the project name read "Red Faction Plus" in a dozen places. Everything now says RED+ (RedPlus in file names), with the Alpine/Dash lineage kept in the copyright line and about\NOTICE.txt. Your settings and logs stay where they were.
  • The RED_4gb.exe copy is NOT in the zip on purpose: RED+ makes it from YOUR RED.exe on first launch (RED.exe is Volition's and cannot be redistributed). 4 GB is the ceiling for a 32-bit program; there is no higher.
  • Gobos: the gobos\ folder beside the DLL is the library the Light Cookie picker offers. Picking one copies it into user_maps\textures\Gobos, where the bake resolves it. The game never needs them; cookies are baked into the lightmaps.

Build 8

4 September 2026

  • FIX, and replace build 7 for this alone: the editor could die with "Runtime Error! abnormal program termination" after ten or so Rebuild Geometry presses (the space bar) in one session. Each rebuild leaked about 230 MB of lightmap textures. RED creates a texture per surface during the rebuild and never released them, a RED bug that on the original renderer hid in video memory and through RED+'s renderer filled the 4 GB address space instead. The textures are now released the moment their page is destroyed. Same map, same edits: memory is flat.
  • The bake log's per-phase timings were reporting the PREVIOUS bake (zeros for a single-solid map), and the leftover was captioned as RED's serial work. Fixed; the phases now add up to the total exactly. On dm-backroomsb2 RED's own serial share is 4% of the bake, not two thirds, and ray shadows are 57%. That is where bake time actually goes.

Build 7

4 September 2026

  • Baking is faster on levels with many emissive faces. The lighting step that gathers light from emissive panels used to consider every panel in the level for every texel it lit, so it got slower with each panel you added. It now only considers the panels that can actually reach that spot. On dm-backroomsb2 that stage went from 19.6 to 13.2 seconds, and the bake comes out identical to before: the same lighting, just arrived at faster.
  • Correction to build 6's note: build 6 said turning Emissive Strength down was no longer needed. That was measured badly and should not be relied on. Judge the exposure by eye.

Build 6

4 September 2026

  • FIX, and it is the one that matters: baking the same level twice could give different lighting. Emissive faces on liquid surfaces were being emitted twice, and their colour was taken from a texture RED rebuilds every time it starts, so a bake landed somewhere different each run, sometimes far too bright. If build 3 to 5 looked blown out, this was why, and you should NOT need to turn Emissive Strength down any more. Same map, same settings, four bakes, now identical every time.
  • FIX: Depth on an emissive face never worked. It shared a bit with a flag RED sets on every compiled face, so every panel was pinned to one reach and the level's Emissive Range did nothing at all. Depth now steps in 10s up to 150 and 0 means "use the level's Emissive Range", which finally applies.
  • The log records every Emissive Light field when you press OK, so if a setting does not take effect the log says which one.

Build 5

4 September 2026

  • Diagnostics only; nothing behaves differently from build 4. The log now records every field Face Properties captured when you press OK, not just the first three, and each emissive face with no lightmap surface reports the direction it decided to emit in. Both exist so that if something looks wrong, the log says which setting reached the bake.

Build 4

4 September 2026

  • FIX, and the reason build 3 should be replaced: every emissive face was throwing light BACKWARDS through its own surface. The new Angle control stores "no angle set" as a value that the back-of-the-light check mistook for the widest possible angle, so a face with no Angle (which is every face in every map made before build 3) lit a near-full sphere instead of the hemisphere in front of it. Build 2 did not do this.
  • FIX: with an Angle above 180 and a Width set, the light behind the face was bounded by the Width rather than by the Depth, so it reached only a quarter of the Width backwards.
  • The emission gizmo now draws the Length axis. It was still drawing a beam the same width in every direction while the bake was cutting a rectangle.
  • FIX: Angle and Length were silently ignored when typed with several faces selected, because the "(mixed)" cue was not cleared from those two fields. They now behave like the others.
  • FIX: the Default button in Emissive Light now clears Angle and Length too, instead of leaving a cone and a rectangle on a face you just reset.
  • Setting Length on a face with no Width now sets both axes, giving a square beam. Length on its own used to be saved and shown while the bake ignored it.

Build 3

4 September 2026

  • Face emission is now three controls that do not fight each other. Depth sets how far the light reaches, Width how wide the beam is, and a new Angle sets its spread. Width used to change the beam's brightness as well as its size, and the angle existed in the file format but nothing could set it, so it never did anything on any face.
  • NEW Length field: a beam can be rectangular instead of round. A square ceiling panel throws a square pool, a strip light throws a strip. Leave Length at 0 for the old round shape.
  • Angle can now exceed 180 degrees, which wraps the light behind its own face. Useful for a fixture that hangs in open space with a ceiling above it.
  • IMPORTANT: emissive faces marked Full Bright now emit. They never did before, because RED gives a Full Bright face no lightmap and the emitter code needed one. A level whose light panels are Full Bright was lit without them, so re-baking it will be much brighter: one test map went from 3 working emitters to 154. Lower Emissive Strength in Level Properties rather than editing the faces; the bake warns when this applies to your level.
  • The emission gizmo now draws the volume the bake actually lights. The Width box used to sit at half the Depth, so the two could never line up.
  • NEW Fix Texture Alpha (RF+) button in Mesh Properties. Clears the invisible-but-solid alpha band out of a mesh's cut-out textures, which is what makes palm fronds and gratings erase each other in game. It reports what it will do, backs each file up to <name>.bak first, and refuses textures that are genuinely see-through.
  • A draw that told the renderer to ignore its texture no longer picks up whatever texture was last used, which could stamp an unrelated image into an editor overlay.

Build 2

4 September 2026

  • FIX: geometry could be missing in the viewport on levels with few or no portals. Build 1 opened every level in Render Using Portals, and that renderer draws almost nothing without portals to walk. Such a level is switched to Render Everything again, and the log says so. An empty level is still left alone, so the editor opens like stock RED.
  • Placed meshes with see-through textures now cast the right shadow. A palm frond, a grating or an umbrella used to cast the whole rectangle of its polygon; it now casts its own silhouette. Only materials exported see-through are affected, and the log names any that have a transparent texture but were not exported that way.

Build 1

4 September 2026, the first build handed out

  • Drop-in install: the RED+ folder lives inside the Red Faction folder and replaces nothing there.
  • Calculate Lighting gives the same result every time, on any number of cores, and bakes faster on multi-core machines. Level Properties has the Lighting group (Quality tier, bounce, ambient occlusion, terrain smoothing, face-edge repair).
  • Face Properties: Full Dark, Emissive Light, per-face emissive settings; light cookies (gobos) for lights; Relight Changed Lights (RF+) under Level.
  • RF+ commands sit in RED's own menus with an (RF+) suffix (Level, View, Tools, Help); the RED+ menu mirrors all of them.
  • Classify Holes (RF+) explains exactly the holes RED's own Check for Holes finds, clears when you open another map, and Refresh re-runs the check.
  • Select Objects lists hidden objects too (tagged [hidden]) and unhides the ones you pick; names no longer read "Sun : Sun".
  • The editor opens in Render Using Portals, like stock RED.
  • Decals no longer stipple and flicker against the face under them as you move.
  • Face Properties changes show at once in Render Using Portals, on detail brushes too.
  • Texture Browser: Display Size gains 256 x 256 and 512 x 512; Sort by gains Size.
  • Help: RED+ Website, Check for RED+ Updates.