Robot Destruction entity stuff

Egan

aa
Feb 14, 2010
1,375
1,721
For reference:

] ent_info tf_robot_destruction_robot
output: OnIgnite
output: OnUser1
output: OnUser2
output: OnUser3
output: OnUser4
input: StopAndUseComputer
input: physdamagescale
input: KilledNPC
input: skin
input: SetBodyGroup
input: Ignite
input: IgniteLifetime
input: IgniteNumHitboxFires
input: IgniteHitboxFireScale
input: BecomeRagdoll
input: SetLightingOriginHack
input: SetLightingOrigin
input: fademindist
input: fademaxdist
input: SetModelScale
input: TeamNum
input: SetTeam
input: Kill
input: KillHierarchy
input: Use
input: Alpha
input: AlternativeSorting
input: Color
input: SetParent
input: SetParentAttachment
input: SetParentAttachmentMaintainOffset
input: ClearParent
input: SetDamageFilter
input: EnableDamageForces
input: DisableDamageForces
input: DispatchEffect
input: DispatchResponse
input: AddContext
input: RemoveContext
input: ClearContext
input: DisableShadow
input: EnableShadow
input: AddOutput
input: FireUser1
input: FireUser2
input: FireUser3
input: FireUser4

] ent_info tf_robot_destruction_robot_spawn
output: OnRobotKilled
output: OnUser1
output: OnUser2
output: OnUser3
output: OnUser4
input: SpawnRobot
input: TeamNum
input: SetTeam
input: Kill
input: KillHierarchy
input: Use
input: Alpha
input: AlternativeSorting
input: Color
input: SetParent
input: SetParentAttachment
input: SetParentAttachmentMaintainOffset
input: ClearParent
input: SetDamageFilter
input: EnableDamageForces
input: DisableDamageForces
input: DispatchEffect
input: DispatchResponse
input: AddContext
input: RemoveContext
input: ClearContext
input: DisableShadow
input: EnableShadow
input: AddOutput
input: FireUser1
input: FireUser2
input: FireUser3
input: FireUser4

] ent_info tf_logic_robot_destruction
output: OnRedHitZeroPoints
output: OnRedHasPoints
output: OnRedFinalePeriodEnd
output: OnBlueHitZeroPoints
output: OnBlueHasPoints
output: OnBlueFinalePeriodEnd
output: OnRedFirstFlagStolen
output: OnRedFlagStolen
output: OnRedLastFlagReturned
output: OnBlueFirstFlagStolen
output: OnBlueFlagStolen
output: OnBlueLastFlagReturned
output: OnUser1
output: OnUser2
output: OnUser3
output: OnUser4
input: RoundActivate
input: TeamNum
input: SetTeam
input: Kill
input: KillHierarchy
input: Use
input: Alpha
input: AlternativeSorting
input: Color
input: SetParent
input: SetParentAttachment
input: SetParentAttachmentMaintainOffset
input: ClearParent
input: SetDamageFilter
input: EnableDamageForces
input: DisableDamageForces
input: DispatchEffect
input: DispatchResponse
input: AddContext
input: RemoveContext
input: ClearContext
input: DisableShadow
input: EnableShadow
input: AddOutput
input: FireUser1
input: FireUser2
input: FireUser3
input: FireUser4
 
Last edited:

YM

LVL100 YM
aa
Dec 5, 2007
7,135
6,056
or can mappers in-/decrease team points via entities?
No, but I imagine that wouldn't be a big request to make now that the rest of the stuff is here.

Mentioned as a postscript in an email about some other entity requests.

I also asked for a way to manually enable/disable uber on a botgroup.
 
Last edited:

Egan

aa
Feb 14, 2010
1,375
1,721
In the past I sent an email requesting the ability to change the model that the robots use somehow, since the 0,1,2 versions have modelled A B Cs.

I've also just now emailed a request for the ability to OutRedPoints & OutBluePoints (similar to math_counter's OutValue) on the tf_logic_robot_destruction. OnRedHasPoints & OnBlueHasPoints are only if > 0, they don't currently output current value. This would be great for showing progress in the map somehow, I think.

The last six emails I've sent requesting things have gone undone though so I don't really have high hopes? Maybe I'll just get you, YM, to resend the requests in like two months.
 
Last edited:

YM

LVL100 YM
aa
Dec 5, 2007
7,135
6,056
Well I sent mine ot the eotl mailing list, so hopefully they can do them. They were really simple requests too.
 
D

Digaag Wa Riz

This doesn't have to do with the Robot Destruction mode specifically but after perusing the decompiled rd_asteroid vmf I noticed some entities that could be useful for other game modes. Specifically, a filter that detects player conditions (i.e. ubered, jarate, cloaked). I think it needs an fgd because it appears as OBSOLETE in Hammer.
 

YM

LVL100 YM
aa
Dec 5, 2007
7,135
6,056
Aaaaannd Boojum will get to it once it's all set in stone and released with a final map. Until then, it isn't much trouble to use obsolete ents (and you could always make the FGD stuff yourself by looking at the existing FGDs as a template)
 

henke37

aa
Sep 23, 2011
2,075
515
I am not sure that it is new for RD.
 

Fruity Snacks

Creator of blackholes & memes. Destroyer of forums
aa
Sep 5, 2010
6,394
5,571
I've emailed Eric Smith (who will forward it around probably) about getting the ability to fire commands based on the number of power cores a team has collected (so, OnScoreReach or something) and the ability to toggle ubers on the beepbots.

Will report back if I hear anything.


In other news, I've pseudo-prototyped a base defense game.
 

henke37

aa
Sep 23, 2011
2,075
515
Wouldn't it be better to use the normal Input providing override value system? then mappers are free to use normal entities as the see fit?
 

henke37

aa
Sep 23, 2011
2,075
515
That wording is a little confusing, but if you mean having an OutScore so you can feed it into a case, counter, compare, etc... then yes. That's definitely what it should be!

Yes, that is what I meant. I just didn't want to name it. Besides, there needs to be one output for each team.
 

Idolon

they/them
aa
Feb 7, 2008
2,107
6,116
Bringing this thread back from the dead because I've been trying to implement some sort of a/d RD gamemode and finding all sorts of fun things.

First of all, flags. If you set the flag to Robot Destruction mode, the flag will automatically disable itself if the team it belongs to has 0 points. Setting the flag to CTF mode gets around this. This may or may not break the point-stealing mechanic. Also, the point-stealing HUD will appear regardless of the flag's gamemode.

Second of all, robots. You place robots using tf_robot_destruction_robot_spawn. The robots that get spawned are of the entity type tf_robot_destruction_robot. They have the same name of their spawn, plus _robot. This is useful if you want to filter a particular robot.

Robots must be assigned to a tf_robot_destruction_spawn_group, or else they will not spawn (even when prompted by ent_fire). Having multiple robot groups will automatically prioritize one group over another - even if two groups are set to the same index, one of them will be ubered until the other is killed. To get around this, you can assign every robot to the same group, and respawn them manually (OnRobotKilled > !self > SpawnRobot, delay). The drawback to this is that the HUD's respawn timers are totally useless.

Robots have some odd pathing rules. They can't walk through playerclip, but they can walk through func_respawnroomvisualizers that should block them, and even func_doors. I'm not sure how. Source doesn't seem to understand either, as it spams the console with "Interpenetrating entities! (tf_robot_destruction_robot and func_door)."

Robots phasing through doors (and another strange bug)

I'm currently working on developing an a/d RD entity setup, and I'll share the .vmf once I'm done.
 
Last edited: