smeghammer Posted April 4, 2021 (edited) I'd been playing with Eureka editor for a while and manually applying custom editor numbers when I needed a custom thing in a map. Now, whilst this works OK it's not very elegant as you see purple questionmark icons on the map and no entry at all in the thing selection menu. I recently figured out how to add nice editing icons for custom things and I thought it was worth sharing here: Some digging led me to the .UGH Eureka definition files and ultimately how to configure Eureka to display custom things correctly, both in the map and in the thing selection panel. The basic steps are: - create a standalone .ugh file that specifies your custom things for inclusion in the menu - create a .wad file containing graphics for the icons (this was fiddly to figure out) - Tell Eureka the location of these files to enable the custom entries I create a simple file structure for each of my projects (I use .PK3 rather than flat .WAD, though this procedure should work for .WAD mapfiles too) of: /compiled/ /resources/ /screenshots/ /src/ with /src/ having the PK3 folder structure, /compiled/ containing .ZIP/.PK3 files and /resources/ containing the files needed for custom sprite display in Eureka. I will use this file structure for the following description. Note that I have already extracted the custom thing sprites, sounds, DECORATE etc. from the relevant .WAD downloaded from R667 into the corresponding subfolders in the /src/ namespace. 1: The UGH file: Handily, the UGH file format for thing definition is documented within the Eureka file located at "/[Eureka deploy_root]/common/doom_things.ugh" (on Windows). Copy (not move!) this to /resources/ to use as a basis for your custom .UGH file. In this file, you need to specify the custom things you want to use. Here, I am using the impaled corpses from R667. Define a custom thing group - this shows as an extra entry in the things Category dropdown. Header comment (comments are lines prefixed with a hash): Spoiler # # Definition of thing groups # Format is : thinggroup <letter> <colour> <description> # #Custom And the thing group definition we want: thinggroup c 66C "Custom Corpses" Then we define the custom things. You need to ensure that the thing number corresponds to that defined in the DECORATE or ZSCRIPT lump(s). Comment block: Spoiler # # Definition of things # Format is : thing <number> <group> <flags> <radius> <sprite> <desc> # <sprite> should be NULL for things without any sprite # <flags> can contain these letters: # i : invisible # c : on ceiling # l : lit up # n : non-blocking # v : can exist in void-space # t : teleport dest (can overlap certain things) # DOOM/DOOM2: After the comment/description, we specify the actual Things. Each row must specify a single entry, following the above format, TAB separated. You will need to ensure the radius also corresponds to that specified in the DECORATE file so the space taken up on the map is correct. Note that the <sprite> images are located in the custom .WAD file, described in the next section: thing 15200 c - 8 CPSIA0 "Impaled Corpse #1" thing 15201 c - 8 CPSIB0 "Impaled Corpse #2" thing 15202 c - 8 CPSIC0 "Impaled Corpse #3" thing 15203 c - 8 CPSID0 "Impaled Corpse #4" thing 15204 c - 8 CPSIE0 "Impaled Corpse #5" thing 15205 c - 8 UPSCA0 "Hanging Corpse #1" thing 15206 c - 8 UPSCB0 "Hanging Corpse #2" thing 15207 c - 8 UPSCC0 "Hanging Corpse #3" thing 15208 c - 8 UPSCD0 "Hanging Corpse #4" thing 15209 c - 8 UPSCE0 "Hanging Corpse #5" 2: The sprite .WAD file Basically, this .WAD file is used to hold the images used for the custom things icons in the Eureka UI. You will need to use e.g. Slade3 to assemble a new .WAD, containing exemplar images for each Thing. >>> THIS IS KEY! <<< You need to ensure the graphic names used match those specified in the .UGH file. Save this .WAD file in the /resources/ namespace too. 3: Configure Eureka project: Once the .UGH and associated graphic .WAD files are prepared, you need to specify these as resources for your Eureka project. Open the map (here, my map is in the /maps/ namespace). Initially, there are no custom entries in the things browser (I have already added custom things to the map, so they show as questionmarks): From the File menu, select "Manage Project": And Load the .UGH and .WAD files as Resource Files (change the filetype filter appropriately in the file pick dialogue): The Eureka UI should update after a second or so to include the custom things and their associated graphics: And filtered by the new custom category: Tada!! [Thanks go to @printz for answering my queries on this] Edited April 5, 2021 by smeghammer disambiguation, clarification 0 Quote Share this post Link to post
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.