NoCollideActor/Group Properties

Moderator: GZDoom Developers

Post Reply
User avatar
Major Cooke
Posts: 8218
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: GZBoomer Town
Contact:

NoCollideActor/Group Properties

Post by Major Cooke »

Pull Request

New Properties:
  • NoCollideActor - Sets the actor to never collide with. This means neither actor will collide with the other, allowing for chain anti-collision exceptions and interloping actors of various kinds. An imp can walk through a zombie + vice versa while a zombie can walk through a cyberdemon + vice versa.
  • NoCollideGroup - Sets the actor's 'group name' to never collide with. Any actors sharing the same group name will never collide with one another.
New Functions:
  • A_SetNoCollideActor(ncname, ptr = AAPTR_DEFAULT)
  • A_SetNoCollideGroup(ncgroup, ptr = AAPTR_DEFAULT)
New Flag:
  • NOCOLLIDECHILD - Any actor inheriting from the actor specified in NoCollideActor is also excluded.
This came as a response to Graf's response with the original Collision Group.

The positives:
  • Can be changed on the fly
  • Inheritable
The negatives:
  • No more than one actor/group per entity*
  • No definable global group spaces. (I tried that with ThrustFactor -- making it non-static and global -- it was rejected.)
    *-Could be changed, but that means increasing the total amount of properties available which means more overhead.
    Or if there are other methods, I'd be more than happy to try them out as long as they can maintain their flexibility.
I was thinking about maybe upping it to two, maybe three per actor, but I'll wait to hear the devs thoughts first.

Also, this is STRICTLY for movement ONLY. This does not cover rails, telefragging, bullet puffs or anything else. Remember, this isn't species.
Attachments
nocollide.pk3
Summon MCD. Or two of them if you'd like. At first, they collide with the player until they first attack, and then they are passable by SpecMarine (you).
(8 KiB) Downloaded 77 times
Last edited by Major Cooke on Mon May 16, 2016 9:44 am, edited 2 times in total.
User avatar
Major Cooke
Posts: 8218
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: GZBoomer Town
Contact:

Re: NoCollideActor/Group Properties

Post by Major Cooke »

Added a new flag, NOCOLLIDECHILD. Actors inheriting from the specified actor will also be excluded from collision.
User avatar
Ghastly
... in rememberance ...
Posts: 6109
Joined: Fri Jul 06, 2007 2:34 pm

Re: NoCollideActor/Group Properties

Post by Ghastly »

Major Cooke wrote:Added a new flag, NOCOLLIDECHILD. Actors inheriting from the specified actor will also be excluded from collision.
The name is a little confusing. A lot of things referred to as "children" specifically refer to the master pointer.
User avatar
Major Cooke
Posts: 8218
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: GZBoomer Town
Contact:

Re: NoCollideActor/Group Properties

Post by Major Cooke »

To be fair, actors inherited from are called parents.
User avatar
Ryan Cordell
Posts: 4349
Joined: Sun Feb 06, 2005 6:39 am
Preferred Pronouns: No Preference
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia (Modern GZDoom)
Location: Capital of Explodistan

Re: NoCollideActor/Group Properties

Post by Ryan Cordell »

I thought the nomenclature, especially in zdoom's case, was ancestor-descendant?
User avatar
Major Cooke
Posts: 8218
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: GZBoomer Town
Contact:

Re: NoCollideActor/Group Properties

Post by Major Cooke »

I've seen people refer to it as one way or another.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49252
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: NoCollideActor/Group Properties

Post by Graf Zahl »

Correct but with actors, the term 'children' is indeed misleading.
User avatar
Major Cooke
Posts: 8218
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: GZBoomer Town
Contact:

Re: NoCollideActor/Group Properties

Post by Major Cooke »

How about NOCOLLIDEHEIR?
Gez
 
 
Posts: 17946
Joined: Fri Jul 06, 2007 3:22 pm

Re: NoCollideActor/Group Properties

Post by Gez »

Subclasses.
User avatar
Major Cooke
Posts: 8218
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: GZBoomer Town
Contact:

Re: NoCollideActor/Group Properties

Post by Major Cooke »

NOCOLLIDESUBCLASS change complete.
D2JK
Posts: 545
Joined: Sat Aug 30, 2014 8:21 am

Re: NoCollideActor/Group Properties

Post by D2JK »

I'm wondering if I should wait for this feature, or suggest a new +THRUMASTER - flag for me to use meanwhile. The last post here is from February, so can I ask if this is going to be worked on in the near future?
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49252
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: NoCollideActor/Group Properties

Post by Graf Zahl »

This feature is waiting for Randi's approval so I cannot give you any advice.
D2JK
Posts: 545
Joined: Sat Aug 30, 2014 8:21 am

Re: NoCollideActor/Group Properties

Post by D2JK »

Okay. Well, I'm going to give it a little time and wait until 12th October before I proceed with my flag suggestion. That is, unless you already think there's a very high chance for it to be rejected.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49252
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: NoCollideActor/Group Properties

Post by Graf Zahl »

I think this is no longer needed.
User avatar
Major Cooke
Posts: 8218
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: GZBoomer Town
Contact:

Re: NoCollideActor/Group Properties

Post by Major Cooke »

Indeed. That new virtual function seems to be working perfectly for my needs.
Post Reply

Return to “Closed Feature Suggestions [GZDoom]”