Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Aurelius

Members
  • Content count

    679
  • Joined

  • Last visited

Everything posted by Aurelius

  1. The file runs fine on my end, on DSDA-Doom 0.28.0 with complevel 21. When does the crash happen, exactly?
  2. Aurelius

    A_Die in Spawn state causing weird behaviour

    Weirdly enough, the add/remove flag approach doesn't seem to work very consistently. On my first attempt, I gave the thing a dummy flag, had it jump to A_Die once and then removed the flag (as Blue Phoenix also suggested), but the monster would still, on occasion, immediately die after being resurrect. I tried removing the flag in different spots (raise state, death state, right before calling A_Die in spawn state), but the end result was always the same. On the other hand, adding a dummy flag (as suggested by -BLEEDTEA) in the raise state seemed to work without issues (on limited testing). But, depending on the flag, it might have to be removed after the monster is resurrected so it won't affect its regular behavior. There is however a fun exception in MBF and above: if you give the monster the JUSTHIT flag, it will be removed automatically as part of the internal workings of A_VileChase. From the function in MBF source code: if (demo_version >= 203) { // kilough 9/9/98 P_SetTarget(&corpsehit->lastenemy, NULL); corpsehit->flags &= ~MF_JUSTHIT; } With this in mind, the following edit seems to do the trick: thing 150 : thing 15 "Dead Cacodemon (raise)" { +JUSTHIT states { spawn: HEAD A 1 HEAD A 0 A_JumpIfFlagsSet(deathspawn, JUSTHIT) spawnloop: HEAD A 10 A_Look goto spawnloop deathspawn: HEAD A 1 A_Die goto deathspawn ... } }
  3. Aurelius

    Strange Set Line Portal problem

    While I can't give you a proper technical answer, I'll say that trying to use a line portal on a single linedef that is supposed to have two "openings" is going to cause jank like you see. Maybe there's a way to do it like you're trying to, but I suspect there isn't. This sort of a problem is usually solved by using Sector portals. Essentially, you'd want to divide the shared section into two vertical "slices", so pretty much like line portals, but for floors and ceilings. However, sector portals only work if the connected floors/ceilings are on the same height, which is not the case in your example. Line portals don't have that criterion, which means you could use a combination of a line portal and a sector portal. First use a line portal to transport the player to the shared section, then use a sector portal to match the bottom part of the shared section to the top. Here's the wad you posted earlier, with two solution options. Option 1 is the preferred way using a sector portal, but this requires the aforementioned matching floor/ceiling heights. Option 2 is the combined solution of line and sector portals that works in your specific case. Option 0 is your original problem example. EDIT: Note that when using sector portals, you don't need to have a perfectly matching set of sectors on both the top and bottom parts, as long as the portal outline matches in both sections. I left in your stair sectors on the upper part of the portal because of the untextured detail in the ceiling, but if that's unimportant then you could just merge all sectors at the top that are identical.
  4. Aurelius

    Textures not rendering properly in a specific sector

    Something's probably funky with the geometry. You can try a few things: Use the Make Sectors Mode (M) and click on each individual sector in and around the offending area. This is usually good practice to make sure sectors are properly formed when splitting geometry. Go to Mode → Map Analysis Mode (F4) and see if you find any issues. If the result box fills with irrelevant data, you can untick boxes to narrow your search. Change your nodebuilder. You can for example try DeepBSP or ZDBSP, depending on your target port.
  5. Aurelius

    Strange Set Line Portal problem

    The portal line on that side is missing its tag.
  6. Aurelius

    Strange Set Line Portal problem

    Do the sectors on both sides of the portal have the same floor and ceiling heights? If not, try adjusting them so and see if it works. Another thing you could try is using an "interactive" line portal instead of a "visual + teleport" one. Beyond that it's difficult to diagnose without having the map. Either share it directly, or at least post screenshots of the editor view above the connecting sectors, and also shots in 3D view from both sides of the portal.
  7. Aurelius

    Strange Set Line Portal problem

    In this case, you have to set the Plane Align parameter. It does what it says on the tin.
  8. Aurelius

    Can you add new sounds on a DEHEXTRA file?

    You might be running an older version of WhackEd. In the latest, both the "Doom Retro" and "DeHackEd Extended (DEHEXTRA)" options show the new sounds in the 500-699 index range, with lump names DSFRE000 - DSFRE199 respectively. So if you want to add a new sound, name the lump as one of those and include in your wad as you would any other sound. As DEHEXTRA is almost always paired with MBF21, I suggest looking into DECOHack in DoomTools for a more iterable approach to DeHackEd editing. I made a post on setting it up.
  9. Aurelius

    Doom 2 Monsters Activating Switches?

    As an aside, here's why I avoid using pass use action on linedefs (second paragraph).
  10. Aurelius

    Doom 2 Monsters Activating Switches?

    One thing to note about generalized line actions is that setting the 'model' field to 'numeric' allows monster activation. There are some caveats to this, but considering the generalized floor action 24802 in your screenshot is of the numeric kind, it's a possible culprit. You can read more about it in the HTML Boom reference (you can search for "generalized floors (8192 types)" to find the right spot, or go to Section 13 and scroll down a bit).
  11. With UDMF, you won't be hitting any practical limits any time soon, given the size and geometric simplicity of your map. This glitch happens occasionally, most often with sectors that have a complex shape. It usually helps to divide the offending sector into smaller, simpler shapes. Doesn't have to be a lot, just a few splitting lines near the problematic section will probably help.
  12. Aurelius

    Activating line specials with ACS? --- [FIXED IT!!]

    ClearLineSpecial can be used to clear the special of the line that activated the script. It can't be used on other lines though, for that you'll need to use SetLineSpecial as you mentioned. The usage is pretty simple, just follow the example on the wiki page. The first argument is the line id, second one is the special you want to give that line and the rest are arguments passed to that special. It'll override anything that was there before. However, if you're interested in activating/deactiving the line without altering the special, you can use SetLineActivation to change/remove the activation flags. They can then be returned with another script if needed, without having to redefine the special. Check the wiki examples again for proper usage.
  13. Aurelius

    Mysterious Nonexistent Secret

    In UDB, when a thing is added to the map, it retains the flag configuration of the previous thing that was added. So after you added your secret soulsphere you likely added a pinkie and two imps nearby without realizing they would also have the secret flag set. Another common way of accidentally adding secret sectors is to split a secret sector into multiple sectors without removing the "secret" property from the newly formed sectors. If you need to find all secret sectors or things in a map, you can go to Mode -> Find and Replace, then look for Sector Effect "1024" or Thing Flag "countsecret". A few sidenotes (I know it's a quick throwaway level, so if you're not in the market for mapping tips, just ignore the following):
  14. Aurelius

    Copy parts of one map into another

    While prefabs are fine, they're an unnecessary hurdle. There's also no need to have two instances of UDB open at the same time. Simply copy a section from a map, then open another map and paste it there. If you have conflicting tags, you can resolve the issue by using Paste special from the Edit dropdown menu.
  15. @TasAcri Any more details on this?
  16. Aurelius

    NOOB - Sprites not being recognized

    In the DECORATE definition, you're using sprites called KEYPA0 and KEYPB0, but you've only included one called KEYP. This means your sprite name is missing the last two characters, which contain the frame and rotation info (A and B are the frames, 0 means there's only one sprite for all angles for that frame). You can rename your KEYP to KEYPA0, and supply another sprite for KEYB0 or just remove it entirely from the DECORATE definition and use KEYPA0 for both states, depending on what you want.
  17. Aurelius

    Change a thing action from another thing?

    ACS_NamedExecute is a variant of ACS_Execute for named scripts. If you want to execute a named script (script that has a string identifier) inside another script, you need to use ACS_NamedExecute. It doesn't exist as an action special like ACS_Execute (action 80), so it doesn't have a numeric identifier (the action special 80 does allow named scripts to run too however, see the "Usage" section of the above link). SetThingSpecial can take both the name or the number of the action as an arg, so you can either write SetThingSpecial(tid, 80, 1); or SetThingSpecial(tid, ACS_Execute, 1); and they will mean the same thing. But as I previously mentioned, ACS_NamedExecute does not have a numeric identifier, so you can only write it as SetThingSpecial(tid, ACS_NamedExecute, "MyScript");
  18. Aurelius

    Change a thing action from another thing?

    You can, like so: SetThingSpecial(tid, ACS_NamedExecute, "MyScript");
  19. Aurelius

    (MBF21) Triggering Sky Transfers

    You can make a "composite" sky texture with two different skies stacked vertically, then use a displacement scroller to instantly scroll from one sky to another. This trick was used in Jumpwad MAP07. Here's an example wad using the MBF21 displacement scroller. Unfortunately this doesn't play well with GZDoom, though you might find some sky dimensions and/or offset to make it work. Alternatively you can add some GZDoom only alternative using LOADACS, but it's a bit more work.
  20. Aurelius

    Custom textures appearing improperly in Crispy Doom

    Stabbey is correct, texture width needs to be a power of two. So numbers like 8, 16, 32, 64, 128, 256, 512 and so on. Height-wise textures can be up to 128 pixels tall, but are not limited to powers of two. Note though that if you have a vertically tiling texture that is not 128 pixels tall, you'll get the Tutti-frutti effect (same happens when using transparent textures on one-sided walls, 128 pixels tall or not). For textures that are power-of-two wide, I'd check the TEXTUREx lump you define them in to make sure everything is correct there (it should be if you didn't manually edit texture dimensions after adding them to the lump). Otherwise I really don't know what the problem could be. If you scrabbled together an example wad with the offending textures and share it here, along with the version of Crispy you're running, that'd go a long way.
  21. Aurelius

    [HELP] Sector portal issue

    While you were adding other sections to your map, you most likely inadvertently connected the two sides of the portal with a physical connection. You shouldn't do this, it'll turn the interactive portals visual-only (as you've experienced). Find where the physical connections are and replace them with portals. Funny enough, this is mentioned in the pinned comment of the DarkstarArchangel tutorial video on sector portals you posted a comment on only 3 days ago.
  22. My solution is slightly different to Stabbey's. I'd use accelerative scrollers to do the pushing a voodoo doll to telefrag another voodoo doll to kill the player the door action itself to release the voodoo doll rather than have the voodoo doll open the door, so there's no delay in the door opening a walkover line to exit the map Telefragging the Romero head is an option that might in some cases be better to end the level, because a walkover exit line can theoretically be skipped. But you might want to make a custom DeHackEd thing that calls A_BrainDie on death, if you don't want the classic Romero scream on exit. Here's a quick test map showcasing both action 242 and the death exit mechanism you described. Some things to note: If the player is on top of multiple scrolling sectors at once, the effects add up. This causes some funky acceleration and deceleration near the door, which you can't really avoid without having one long contiguous sector (and therefore, no door). If the accelerative scroller behavior (action 216) feels cryptic, I recommend reading the Boom reference, using "216" as a search parameter to find the correct section. It explains how the final speed is calculated. Alternatively you could download the BOOMEDIT.wad, which has some nice examples of the different effects you can achieve in Boom format, including all the scroller stuff.
  23. Simplest way to create ambient sounds using DeHackEd is to set a thing to spawn into a single state loop that constantly calls A_Pain, then setting the desired ambient sound as the pain sound for that thing. You can use the duration of the state to determine how often to play the sound, either to create a smooth(ish) loop or a periodically playing sound. In Boom, you can create the door as you normally would, then use "fake sector" action 242 on it to make it invisible.
  24. For the software renderer, all flats need to be 64x64 in size. Yours is 124x124. However, this should not be a problem in GZDoom, and considering you have ZScript lumps and an ENDMAP marker, you're (seemingly) mapping for the GZDoom variety of UDMF. What source port are you testing with? GZDoom shouldn't have those artifacts.
  25. Aurelius

    Colored blood in Decohack?

    Blood color is currently not supported by DECOHack as an official thing property, however MTrop added the ability to define custom thing properties which allows you to do what Alaux describes in this post.
×