Jump to content
The Dark Mod Forums

Unshoulder body in tight space (possible? forcible?)


cvlw
 Share

Recommended Posts

Hello TDM crew.

Is it possible to unshoulder a body in a tight space?

For mapmaking, is it possible to prevent entry to an area if a body is shouldered?  Or maybe force an unshouldering when entering an area?

Much appreciated.

Clint

 

Link to comment
Share on other sites

14 hours ago, cvlw said:

 

  1. Is it possible to unshoulder a body in a tight space?
  2. For mapmaking, is it possible to prevent entry to an area if a body is shouldered?  Or maybe force an unshouldering when entering an area?
  1. Not, if the area is too tight. There has to be enough space for the body to fit.
  2. Yes.
  • Like 1

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

I worked on unshouldering in tight spaces a while back. In the current implementation, the unshouldering-algorithm will try to spawn the body in a small set of predefined angles. If the body does not intersect with other geometry, it will be spawned.

Link to comment
Share on other sites

Thanks for the explanations.  I didn't understand that "unshouldering" was essentially spawning a body object. 

I have a vent where the player could potentially bring a body and then basically get stuck in there.

I have basically decided to try and prevent a body (shouldered or dragged) from being brought into a tight space.  I will try and weave a good reasoning into the flow of play.

- trigger which calls script.

- script checks if body is shouldered or dragged.  If so, then teleport in a func_static entity with nodraw_solid texture in the opening of the tight space which stops both player and dragged body.  Flash a message saying the body can't be brought in.  Plays a rustling sound   If not shouldered or dragged, then teleport the func_static out and let the player pass.

Seems to overcome the problem.

Thanks again.

Clint

 

Link to comment
Share on other sites

35 minutes ago, cvlw said:

Thanks for the explanations.  I didn't understand that "unshouldering" was essentially spawning a body object. 

I have a vent where the player could potentially bring a body and then basically get stuck in there.

I have basically decided to try and prevent a body (shouldered or dragged) from being brought into a tight space.  I will try and weave a good reasoning into the flow of play.

- trigger which calls script.

- script checks if body is shouldered or dragged.  If so, then teleport in a func_static entity with nodraw_solid texture in the opening of the tight space which stops both player and dragged body.  Flash a message saying the body can't be brought in.  Plays a rustling sound   If not shouldered or dragged, then teleport the func_static out and let the player pass.

Seems to overcome the problem.

Thanks again.

Clint

 

Instead of the teleport thing you could try func_aas_obstacle, that's basically what it's designed for: https://wiki.thedarkmod.com/index.php?title=Pathfinding#Dynamic_blocking.2Fclipping_with_func_aas_obstacle

Link to comment
Share on other sites

On 8/9/2022 at 8:46 PM, cvlw said:

Thanks for the explanations.  I didn't understand that "unshouldering" was essentially spawning a body object. 

I have a vent where the player could potentially bring a body and then basically get stuck in there.

I have basically decided to try and prevent a body (shouldered or dragged) from being brought into a tight space.  I will try and weave a good reasoning into the flow of play.

- trigger which calls script.

- script checks if body is shouldered or dragged.  If so, then teleport in a func_static entity with nodraw_solid texture in the opening of the tight space which stops both player and dragged body.  Flash a message saying the body can't be brought in.  Plays a rustling sound   If not shouldered or dragged, then teleport the func_static out and let the player pass.

Seems to overcome the problem.

Thanks again.

Clint

I think a much simpler and more elegant solution would be to require the player to climb up to the vent, considering the player cannot jump or mantle while shouldering. Sidenote, it is still being discussed whether low obstacles should become mantlable while shouldering, so make sure to make the vent entry high enough.

Link to comment
Share on other sites

10 hours ago, STiFU said:

I think a much simpler and more elegant solution would be to require the player to climb up to the vent, considering the player cannot jump or mantle while shouldering. Sidenote, it is still being discussed whether low obstacles should become mantlable while shouldering, so make sure to make the vent entry high enough.

I could/may do that.  The way things are lining up at the moment, positioning the vent higher forces rework of the stuff above it to make room. I painted myself into a corner with this situation.

Thanks again.

Clint

Link to comment
Share on other sites

You don't need to prevent the player from entering the vent with a shouldered body. Just provide a "safe room" perfect for storing bodies right before the vent. Players normally unshoulder bodies as soon as they feel safe enough to do so. They really don't like to creep around unable to maneuver properly.

Link to comment
Share on other sites

  • 3 weeks later...

Yeah, I am rethinking the area with this vent or if I want a vent at all.  My layout in this area is way too tight to try and do a higher vent on the wall.  I may reposition it to the ceiling which solves the shouldered/dragged body issue.

Map growing pains, I guess.

Thanks again all.

 

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recent Status Updates

    • nbohr1more

      Anyone have any luck with light.setShader( string ) ? It seems to make whichever light you apply it to full-bright on the initial invoke?
      · 0 replies
    • thebigh

      I'm starting to think we need another mapping contest.
      · 4 replies
    • kano

      Don't you hate it when there's a quality discussion on a forum somewhere online about something, but then two disagreeing users derail and transform it into a back-and-forth poo slinging competition at one another?
      · 9 replies
    • Diego

      Oh look the status updates are back! 
      · 2 replies
    • JackFarmer

      After watching the first three and a half episodes of "The Sandman" last night, I realize once again that overly imaginative narratives are not for me. Also, the main actor looks like he has a toothache.
      Which makes me wonder, is there a Dark Mod mission with a medieval dentist?
      · 4 replies
×
×
  • Create New...