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

*** The "ask a miscellaneous editing question" thread ***

Recommended Posts

Thanks. But no, Won't work correctly. I'll do something else for a moment..

Share this post


Link to post

I am having a very strange issue with a Boom map I've been working on when running it in GZDoom. At the very start of the map, looking slightly to the left crashes GZDoom on the same spot every time. And not the crash with a message, but it just freezes with the midi running. Not only that, but if I move my mouse to the right and spin my character 360 degrees, the problem no longer occurs and I can play the map as normal. At that point, starting a new game and looking left no longer causes the issue. It only occurs when initially launching the map and running GZDoom. Any idea at all as to what could be causing such a bug? Happens both with 4.3.1 and after updating to 4.3.3.

 

Edit: And the culprit is 7 extra lines nearby slightly rounding out a rock wall!

Situation normal:

Spoiler

REigvTM.jpg

 

Crash on startup:

Spoiler

sGh6K5l.jpg

 

Edited by Spectre01

Share this post


Link to post

Do you know if there's a way to stop 'props' (decorative things) from being pushed around? I have a few decorations close to moving platforms, and when they move they tend to 'pick up' the object, even though the hitbox isn't touching. Not only that, but technically the object is below the platform, so when it starts moving down, the object pops up into the air in a very jarring fashion. Simply setting the position to absolute doesn't help.

Share this post


Link to post
12 hours ago, Gradius said:

Do you know if there's a way to stop 'props' (decorative things) from being pushed around? I have a few decorations close to moving platforms, and when they move they tend to 'pick up' the object, even though the hitbox isn't touching. Not only that, but technically the object is below the platform, so when it starts moving down, the object pops up into the air in a very jarring fashion. Simply setting the position to absolute doesn't help.

 

What port are you aiming to?

 

Not sure, but I would try to use some of the physics flags:

https://zdoom.org/wiki/Actor_flags#Physics

Like this one:

     -MOVEWITHSECTOR

or

   +RELATIVETOFLOOR

Share this post


Link to post
12 hours ago, Jaska said:

What port are you aiming to?

GZDoom/UDMF. Was hoping not to use decorate though, since that means they won't work normally in places where I might want ordinary behaviour.

Share this post


Link to post

I got this huge tank model.
C84oXHS.png

I've done collision with 3D-floors.

 

Now this happens. Tank is rendered:
v63jP5u.png

And now it disappears:
nawy90E.png

 

So.. Even if I modify 3d floors so, that the models center(that cube from which you can move the model in editor) is visible to player this happens.

I had same problem with a long pipe but changing the 3d-floor I got it working.

Without 3d-floors the big tank renders just fine. I tried inverting 3d-floor render rules, didn't work. So what are boundary conditions to this kind of cases?

Share this post


Link to post

I'm making breakable supply crate.

 

So I've this actor (mostly from doom enhanced)

ACTOR BreakableWood : BaseDecoModelSolid
{
    -INVULNERABLE
    deathheight 24
    health 50
    
    States
      {
      Spawn:
        AAAA A -1
        stop
      Pain:
        AAAA A 5 A_PlaySound("gibbage/xwood")
        goto Spawn
      Death:
        AAAA A 0 A_PlaySound("gibbage/xwood")
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 6)
        TNT1 A 0 A_CustomMissile ("WoodGib2", 40, 2, random(0,360), 2, 10)    
        TNT1 A 0 A_CustomMissile ("WoodGib", 12, 2, random(0,360), 2, 20)
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 15)
        TNT1 A 0 A_CustomMissile ("WoodGib2", 20, 2, random(0,360), 2, 8)    
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 6)    
        TNT1 A 0 A_CustomMissile ("WoodGib2", 40, 2, random(0,360), 2, 10)
        TNT1 A 0 A_CustomMissile ("WoodGib", 12, 2, random(0,360), 2, 20)
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 15)
        TNT1 A 0 A_CustomMissile ("WoodGib2", 20, 2, random(0,360), 2, 8)
        TNT1 A 0
        stop
      }
}

 

 

Then I have the model for it:
 

ACTOR box11_supply1 : BreakableWood
  //$Title BreakableSupplyCrate
  //$Category Models/Supply
{
    Health 70
    Radius 10
    Height 25

}

How can I spawn an item when breaking that box without need of making a new actor for every item? If I redefine states it overrides inherited states and I should copy/paste everything anyway. I'm obviously not getting something here..

 

 

Share this post


Link to post
1 hour ago, Jaska said:

I'm making breakable supply crate.

 

So I've this actor (mostly from doom enhanced)


ACTOR BreakableWood : BaseDecoModelSolid
{
    -INVULNERABLE
    deathheight 24
    health 50
    
    States
      {
      Spawn:
        AAAA A -1
        stop
      Pain:
        AAAA A 5 A_PlaySound("gibbage/xwood")
        goto Spawn
      Death:
        AAAA A 0 A_PlaySound("gibbage/xwood")
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 6)
        TNT1 A 0 A_CustomMissile ("WoodGib2", 40, 2, random(0,360), 2, 10)    
        TNT1 A 0 A_CustomMissile ("WoodGib", 12, 2, random(0,360), 2, 20)
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 15)
        TNT1 A 0 A_CustomMissile ("WoodGib2", 20, 2, random(0,360), 2, 8)    
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 6)    
        TNT1 A 0 A_CustomMissile ("WoodGib2", 40, 2, random(0,360), 2, 10)
        TNT1 A 0 A_CustomMissile ("WoodGib", 12, 2, random(0,360), 2, 20)
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 15)
        TNT1 A 0 A_CustomMissile ("WoodGib2", 20, 2, random(0,360), 2, 8)
        TNT1 A 0
        stop
      }
}

 

 

Then I have the model for it:
 


ACTOR box11_supply1 : BreakableWood
  //$Title BreakableSupplyCrate
  //$Category Models/Supply
{
    Health 70
    Radius 10
    Height 25

}

How can I spawn an item when breaking that box without need of making a new actor for every item? If I redefine states it overrides inherited states and I should copy/paste everything anyway. I'm obviously not getting something here..

 

 

 

This page should help you if you have not checked it yet:

https://zdoom.org/wiki/Classes:RandomSpawner

 

And this one too:

https://zdoom.org/wiki/A_SpawnItemEx

 

Basically it has to look like this:

 

      Death:
        AAAA A 0 A_PlaySound("gibbage/xwood")
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 6)
        TNT1 A 0 A_CustomMissile ("WoodGib2", 40, 2, random(0,360), 2, 10)    
        TNT1 A 0 A_CustomMissile ("WoodGib", 12, 2, random(0,360), 2, 20)
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 15)
        TNT1 A 0 A_CustomMissile ("WoodGib2", 20, 2, random(0,360), 2, 8)    
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 6)    
        TNT1 A 0 A_CustomMissile ("WoodGib2", 40, 2, random(0,360), 2, 10)
        TNT1 A 0 A_CustomMissile ("WoodGib", 12, 2, random(0,360), 2, 20)
        TNT1 A 0 A_CustomMissile ("WoodGib", 32, 2, random(0,360), 2, 15)
        TNT1 A 0 A_CustomMissile ("WoodGib2", 20, 2, random(0,360), 2, 8)
        TNT1 A 0 A_SpawnItemEx("CrateSpawner")
        stop
      }
}

Actor CrateSpawner : RandomSpawner
{
    DropItem "YOURITEMHERE", Chance 1 to 256 of spawn
    DropItem "YOURITEMHERE", Chance 1 to 256 of spawn
	...
}

 

Though this should be well to go on your model too, but I have never worked with them before.

You can try this, else do this on your model:
 

ACTOR box11_supply1 : BreakableWood
  //$Title BreakableSupplyCrate
  //$Category Models/Supply
{
    Health 70
    Radius 10
    Height 25
    States
    {
     TNT1 A 0 A_SpawnItemEx("CrateSpawner")
     stop
    }
}

Actor CrateSpawner : RandomSpawner
{
    DropItem "YOURITEMHERE", Chance 1 to 256 of spawn
    DropItem "YOURITEMHERE", Chance 1 to 256 of spawn
	...
}

Do not literally write "Chance x", just the number obviously :p (DropItem "HEALTHBONUS", 256 - For example)

Share this post


Link to post

Add a call to A_Fall in the death state, this will make the crate drop its DropItems. Then you can define a lot of crate variants, only having to redefine their DropItem lists rather than copy-pasting the state code.

Share this post


Link to post
ACTOR box11_supply1 : BreakableWood
  //$Title SupplyCrateSmall_empty
  //$Category Models/Supply
{
    +PUSHABLE
    Health 25
    Radius 14
    Height 25
}


ACTOR SupplyHealthS : box11_supply1
  //$Title SupplyCrateHealthSmall
  //$Category Models/Supply
{
    Dropitem "stimpack", 255
    Dropitem "stimbonus", 128
    Dropitem "healthbonus", 192
    Dropitem "healthbonus", 192
    Dropitem "healthbonus", 192
}

Hmmh, now model isn't rendered for some reason on SupplyhealthS's case. Box11_supply1 it renders.

So does this mean I have to have model definitions for all of the crates?

Edited by Jaska

Share this post


Link to post

I've seen some wads using helper dogs' slot (thing 140) for custom monsters lately, but I couldn't find its frames numbers anywhere. I want to change the duration of its pain state frame, for example. How do I do it?

Share this post


Link to post

I'm sure it's in some MBF text file somewhere, but for a quick reference you can take a look here:

 

 

https://github.com/coelckers/gzdoom/blob/master/wadsrc/static/dehsupp.txt

 

MBFHelperDog, Spawn, 27, // [MBF] S_DOGS_STND - S_DOGS_RAISE6 972-998

Tells you that dog frame numbers range from 972 to 998.

https://zdoom.org/wiki/Classes:MBFHelperDog

That puts the See state at 974, Melee at 982, Pain at 985, Death at 987, and Raise at 993.

Share this post


Link to post

I'm having this really aggravating issue with voodoo closets. I'm working on a boom compatible wad, and every time I go in to test, it plops me down in some random voodoo closet. Now I'm sure people will say "Just delete and replace the main player start," but here's the catch: I replace the main player start, and after making ANY change whatsoever to the map, it will spawn me back in the voodoo closet. even if I don't add any player 1 starts or modify the closets at all, it does this. I have to replace the player 1 start every damn time I want to test my map and it's getting on my nerves after 20 or so test runs.

 

Does this happen to everyone? Is this just something I have to deal with, or is there something internal that's causing the player start to reset that I am not aware of? Any solutions?

Share this post


Link to post

Here's a trick @Jimmy taught me like 2 years ago now. This assumes you're using modern tools like GZDB or UDB or whatever has the ability to rotate selection. I can't remember what version of DB introduced this. :P

 

  • Select both the offending voodoo doll and the intended player start.
    • (If you're not sure which voodoo it is causing the issues, texture your closets differently to make it easy to identify)
  • Next, press E.
  • Grab one of the corners, then rotate the entire selection 180 degrees.
  • Done.

Share this post


Link to post

Also, when you place the mouse pointer over a thing on DB, it shows it's number (thing 14, thing 156, etc). The player start with the highest number will be where you spawn.

Share this post


Link to post
22 hours ago, Arbys550 said:

Does this happen to everyone? Is this just something I have to deal with, or is there something internal that's causing the player start to reset that I am not aware of? Any solutions?

Yeah. It (the editor, in this case) recycles the thing numbers in a slightly annoying fashion. So just deleting and then re-adding doesn't cause the player starts to reflect the last created start.

Share this post


Link to post

I'd like to ask about colormaps; how can I replace the visibility of the invulnerability powerup to something other than the black and white visuals? Basically something similar to what Doom 4 Vanilla did with creating a green tint instead of the regular black and white. If anyone could help me out with this I'd be very thankful, as I have zero knowledge about colormaps or how they're even created.

Share this post


Link to post

@valkiriforce In SLADE, you can export the COLORMAP lump as a PNG file, edit it with your graphics editor of choice, then re-import it. The invulnerability effect is the inverted grayscale line near the bottom. You can copy the top row (the base colors) onto that row and apply effects to it as you see fit. It'll only have effect in renderers that actually refer to the COLORMAP; enhanced ports that use hardware/truecolor rendering do their own color processing and won't be affected, but that's their problem. Here's a relatively recent thread on the topic of colormaps in general, which may be useful if you're learning about that.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×