View Issue Details

IDProjectCategoryView StatusLast Update
0005194The Dark ModGUIpublic11.02.2024 21:39
ReporterGeep Assigned To 
Status newResolutionopen 
PlatformTDM 2.07/64OSWin 10/64 
Summary0005194: Is console "editguis" (Quake IV GUI Editor) still supported? If so, currently unusable
DescriptionJust looking into this Doom3/Quake IV tool that was provided as part of the Doom3 engine by Raven Software. Reportedly easy to crash, but still OK to generate and iterate simple 2D GUIs. It is still invocable (in TDM 2.07 Win64) from the console by "editguis", and appears as "Quake IV GUI Editor" window.

However, it is unusable from the outset because
- there's no visible mouse cursor (though menus do respond to mouseovers).
- the screen gamma is bleached, requiring reboot to correct.

In 2017, it was reported broken (not necessarily as described above) by stgatilov and freyk in

[Sorry, this got reported under Project DarkRadiant, don't know how to change Project setting]
Steps To ReproduceIn console, "editguis"
Additional InformationSource code for this editor:

  tools/edit_stub.cpp (line 1383)
  framework/common.cpp (line 50)

Descriptions of how to use this editor:
  Print-only book by Erik Guilfoyle, "Quake 4 Mods for Dummies", 2007
Tagsconsole, gui, usability




28.04.2022 16:39

reporter   ~0014817

To startup the editor with a working mouse cursor, TDM must be running in "windowed" mode (Thanks, freqk). Didn't see menu bleaching now either. Editor is still broken though. "New" does nothing, and "Open File" on existing .gui file gives popup "File Not Found" error.


03.05.2022 05:41

administrator   ~0014819

I think it would be right to say that it is not supported.
In fact, the plan was to remove ALL in-game editors after some replacement for AF editor is found (0005333).


05.06.2022 19:16

reporter   ~0014844

In an ideal world, the editGuis functionality would be in DR or standalone, but either looks to me like a heavy lift.

So I was poking around a bit in VS2022, seeing if I could restore it within TDM.
I only made a small amount of progress. Still not really working,
and my limited understanding of the code makes further progress unclear.

As noted before, as pre-req, TDM must be in windowed mode for the cursor to be visible.
Also, file I/O assumes the .gui file location of interest is not inside a .pk4

I don't know about the situation if you to sought to use editGuis for core guis. But for mapper guis, and assuming a specific <FM> is selected,
that /<FM>/ should be included in the path.

To do that, in file GEWorkspacefile.cpp in 3 places, change path as follows -

1) In NewFile(), change

ospath = fileSystem->RelativePathToOSPath ( "guis/Untitled.guiednew", "fs_basepath" );


ospath = fileSystem->RelativePathToOSPath("guis/Untitled.guiednew", "fs_modSavePath");

2,3) In SaveFile() and LoadFile(), change

ospath = fileSystem->RelativePathToOSPath ( tempfile, "fs_basepath" );


ospath = fileSystem->RelativePathToOSPath(tempfile, "fs_modSavePath");

However, if you then load a .gui associated with the <FM>, you can see in the debugger that it is being parsed. But
the background of the editGuis window, where the gui should render, instead continues to show the main TDM window (with the
console exposed too). Aargh.


25.06.2022 15:39

reporter   ~0014926

FYI, the reference material link above is obsolete; use:

- I experimented with a minor code tweak to NOT hide the main TDM game window. Just open GUIS Editor above it. Seems a bit nicer.
- I'm writing up some GUI scripting articles for the wiki. One on editguis in idTech4 games generally will point here.

Issue History

Date Modified Username Field Change
25.03.2020 20:26 Geep New Issue
25.03.2020 20:30 Geep Description Updated
26.03.2020 03:56 greebo Project DarkRadiant => The Dark Mod
28.04.2022 16:39 Geep Note Added: 0014817
03.05.2022 05:41 stgatilov Note Added: 0014819
05.06.2022 19:16 Geep Note Added: 0014844
25.06.2022 15:39 Geep Note Added: 0014926
03.01.2024 16:13 Fiver Tag Attached: console
11.02.2024 21:39 Fiver Tag Attached: gui
11.02.2024 21:39 Fiver Tag Attached: usability