avatar
scuti
wears shorts for the winter
https://scuti.neocities.org/

reflex2q3 retrospect

Last Updated: 2023 October 16 (2023 February 22)

https://notabug.org/scuti/reflex2q3

reflex2q3 is a video game map converter that converts maps from Reflex Arena to Radiant (Quake Engine) map editors.

Sample usage:

reflex2q3 was originally at teknik: https://git.teknik.io/scuti/reflex2q3. As mentioned on other parts of my site, teknik.io is no longer online. teknik.io provided e-mail, file upload, git repositories, and blogs. It had a good run of ten years, but I had hoped the site gave users more time to prepare before going offline. So a lot of the nice screenshots I had taken for the project no longer exist.

Origin

The idea came from a game server administrator that had a following of players. That admin wasn’t the type that played for nostalgia. Therefore, he was not happy with a map list full of old maps. So he did all he could to encourage the creation of new content. Whenever someone made something, he started a party to celebrate its debut. However, Quake mapping wasn’t (or still isn’t) easy for beginners. In many cases, video tutorials on YouTube will have outdated interfaces that leave new users lost on where to find GUI elements. Additionally, game developers from newer games may find the workflow antiquated.

And so reflex2q3 was adopted from https://github.com/chronokun/ReflexToQ3. The original project was made for an older format of Reflex maps (v6). It did not parse maps from later versions of the game. There was also a nasty bug that made itself known when converting the maps Pocket Infinity, Sky Temples, or any other maps that would present similar cases. Now, the bugs are squashed; the converter can read the latest map format (v8) and also compiles on Linux.

Sample Result

Here is a basic map (view/download, text, 17.1 kB).

And here is “DNA stairs”.

A few notes about the output

The output might not be sealed from the void

Skyboxes are not automatically drawn for the user. The output from the converter is as-is.

An open-roof map like the basic map in sample result is valid in Reflex Arena but will leak and therefore fail to compile in Radiant. For users unfamiliar with Quake mapping, a leak can be described as a hole in the skybox or a containment breach (imagine an airlock).1

No changes to texture names

References to textures from Reflex Arena such as structural/dev/dev_black are left as-is. Thus, Radiant will render “Texture Not Found” placeholders for a freshly converted map that has no project directory.

Brush vertices are not snapped to grid

The output may look fine in Radiant. All brushes appear to have their edges aligned, but once the map compiles, there are small rips, seams or other discontinuities between brushes.

Decide on a grid size in Radiant, and use the Snap To Grid tool to snap brush vertices to grid.


  1. https://ws.q3df.org/level_design/errors/#Miscleaked↩︎

Top