Team Fortress 2 Now on Mac

Washipato

L3: Member
Jun 22, 2009
149
331
I want to know everything about everything new in tr_target right now! Thanks for the info Geitiegg!

Time to do some reverse engineering!
 

Icarus

aa
Sep 10, 2008
2,245
1,210
The new bots are amazing!

cp_vector_v10000.jpg



They're so much like us...

cp_vector_v10001.jpg


also: editing nav meshes are fun!
 

Geit

💜 I probably broke it 💜
aa
May 28, 2009
598
1,161
I want to know everything about everything new in tr_target right now! Thanks for the info Geitiegg!

Time to do some reverse engineering!


I can get the data maps for the other entities if you need them. - bot_generator, bot_action_point, bot_roster_red(?) and any more I might have forgotten.
 

Icarus

aa
Sep 10, 2008
2,245
1,210
Not much work at all!

Smoothed out navs for Vector and Coldfront. Bots run very smoothly.
 

Nineaxis

Quack Doctor
aa
May 19, 2008
1,767
2,820
I guess bots just like running into walls and props in furnace.

(Also, how do you create a nav area on top of a prop?)
 

Washipato

L3: Member
Jun 22, 2009
149
331
I can get the data maps for the other entities if you need them. - bot_generator, bot_action_point, bot_roster_red(?) and any more I might have forgotten.
I'm currently digging into all the new entities and such. So expect an FGD update in the next couple days.
That would be great. I really want to know which flags use each entity, I'm having problems removing the class restriction from the tf_logic_training_mode.

Also, I want to know if the text appearing from tf_logic_training_mode can be configured to be displayed only for one player
 

Geit

💜 I probably broke it 💜
aa
May 28, 2009
598
1,161
That would be great. I really want to know which flags use each entity, I'm having problems removing the class restriction from the tf_logic_training_mode.

Also, I want to know if the text appearing from tf_logic_training_mode can be configured to be displayed only for one player

CBaseEntity - bot_roster
- m_teamName (Save|Key)(4 Bytes) - team
- m_bAllowClassChanges (Save|Key)(1 Bytes) - allowClassChanges
- m_bAllowedClasses[TF_CLASS_SCOUT] (Save|Key)(1 Bytes) - allowScout
- m_bAllowedClasses[TF_CLASS_SNIPER] (Save|Key)(1 Bytes) - allowSniper
- m_bAllowedClasses[TF_CLASS_SOLDIER] (Save|Key)(1 Bytes) - allowSoldier
- m_bAllowedClasses[TF_CLASS_DEMOMAN] (Save|Key)(1 Bytes) - allowDemoman
- m_bAllowedClasses[TF_CLASS_MEDIC] (Save|Key)(1 Bytes) - allowMedic
- m_bAllowedClasses[TF_CLASS_HEAVYWEAPONS] (Save|Key)(1 Bytes) - allowHeavy
- m_bAllowedClasses[TF_CLASS_PYRO] (Save|Key)(1 Bytes) - allowPyro
- m_bAllowedClasses[TF_CLASS_SPY] (Save|Key)(1 Bytes) - allowSpy
- m_bAllowedClasses[TF_CLASS_ENGINEER] (Save|Key)(1 Bytes) - allowEngineer
- InputSetTeam (Input)(0 Bytes) - SetTeam
- InputSetAllowScout (Input)(0 Bytes) - SetAllowScout
- InputSetAllowSniper (Input)(0 Bytes) - SetAllowSniper
- InputSetAllowSoldier (Input)(0 Bytes) - SetAllowSoldier
- InputSetAllowDemoman (Input)(0 Bytes) - SetAllowDemoman
- InputSetAllowMedic (Input)(0 Bytes) - SetAllowMedic
- InputSetAllowHeavy (Input)(0 Bytes) - SetAllowHeavy
- InputSetAllowPyro (Input)(0 Bytes) - SetAllowPyro
- InputSetAllowSpy (Input)(0 Bytes) - SetAllowSpy
- InputSetAllowEngineer (Input)(0 Bytes) - SetAllowEngineer
- m_iClassname (Save|Key)(4 Bytes) - classname
- m_iGlobalname (Global|Save|Key)(4 Bytes) - globalname
- m_iParent (Save|Key)(4 Bytes) - parentname
- m_iHammerID (Save|Key)(4 Bytes) - hammerid
- m_flSpeed (Save|Key)(4 Bytes) - speed
- m_nRenderFX (Save|Key)(1 Bytes) - renderfx
- m_nRenderMode (Save|Key)(1 Bytes) - rendermode
- m_nNextThinkTick (Save|Key)(4 Bytes) - nextthink
- m_fEffects (Save|Key)(4 Bytes) - effects
- m_clrRender (Save|Key)(4 Bytes) - rendercolor
- m_nModelIndex (Global|Save|Key)(2 Bytes) - modelindex
- m_iszResponseContext (Save|Key)(4 Bytes) - ResponseContext
- m_iMaxHealth (Save|Key)(4 Bytes) - max_health
- m_iHealth (Save|Key)(4 Bytes) - health
- m_target (Save|Key)(4 Bytes) - target
- m_iszDamageFilterName (Save|Key)(4 Bytes) - damagefilter


CBaseEntity - bot_generator
- m_spawnCount (Save|Key)(4 Bytes) - count
- m_maxActiveCount (Save|Key)(4 Bytes) - maxActive
- m_spawnInterval (Save|Key)(4 Bytes) - interval
- m_className (Save|Key)(4 Bytes) - class
- m_teamName (Save|Key)(4 Bytes) - team
- m_actionPointName (Save|Key)(4 Bytes) - action_point
- m_initialCommand (Save|Key)(4 Bytes) - initial_command
- m_bSuppressFire (Save|Key)(1 Bytes) - suppressFire
- m_bDisableDodge (Save|Key)(1 Bytes) - disableDodge
- m_iOnDeathAction (Save|Key)(4 Bytes) - actionOnDeath
- m_bUseTeamSpawnpoint (Save|Key)(1 Bytes) - useTeamSpawnPoint
- m_difficulty (Save|Key)(4 Bytes) - difficulty
- InputEnable (Input)(0 Bytes) - Enable
- InputDisable (Input)(0 Bytes) - Disable
- InputSetSuppressFire (Input)(0 Bytes) - SetSuppressFire
- InputSetDisableDodge (Input)(0 Bytes) - SetDisableDodge
- InputSetDifficulty (Input)(0 Bytes) - SetDifficulty
- m_onSpawned (Save|Key|Output)(0 Bytes) - OnSpawned
- m_onExpended (Save|Key|Output)(0 Bytes) - OnExpended
- CTFBotGeneratorGeneratorThink (FunctionTable)(0 Bytes)
- m_iClassname (Save|Key)(4 Bytes) - classname
- m_iGlobalname (Global|Save|Key)(4 Bytes) - globalname
- m_iParent (Save|Key)(4 Bytes) - parentname
- m_iHammerID (Save|Key)(4 Bytes) - hammerid
- m_flSpeed (Save|Key)(4 Bytes) - speed
- m_nRenderFX (Save|Key)(1 Bytes) - renderfx
- m_nRenderMode (Save|Key)(1 Bytes) - rendermode
- m_nNextThinkTick (Save|Key)(4 Bytes) - nextthink
- m_fEffects (Save|Key)(4 Bytes) - effects
- m_clrRender (Save|Key)(4 Bytes) - rendercolor
- m_nModelIndex (Global|Save|Key)(2 Bytes) - modelindex
- m_iszResponseContext (Save|Key)(4 Bytes) - ResponseContext
- m_iMaxHealth (Save|Key)(4 Bytes) - max_health
- m_iHealth (Save|Key)(4 Bytes) - health
- m_target (Save|Key)(4 Bytes) - target
- m_iszDamageFilterName (Save|Key)(4 Bytes) - damagefilter

CBaseEntity - bot_action_point

- m_stayTime (Save|Key)(4 Bytes) - stay_time
- m_desiredDistance (Save|Key)(4 Bytes) - desired_distance
- m_nextActionPointName (Save|Key)(4 Bytes) - target
- m_command (Save|Key)(4 Bytes) - command
- m_iClassname (Save|Key)(4 Bytes) - classname
- m_iGlobalname (Global|Save|Key)(4 Bytes) - globalname
- m_iParent (Save|Key)(4 Bytes) - parentname
- m_iHammerID (Save|Key)(4 Bytes) - hammerid
- m_flSpeed (Save|Key)(4 Bytes) - speed
- m_nRenderFX (Save|Key)(1 Bytes) - renderfx
- m_nRenderMode (Save|Key)(1 Bytes) - rendermode
- m_nNextThinkTick (Save|Key)(4 Bytes) - nextthink
- m_fEffects (Save|Key)(4 Bytes) - effects
- m_clrRender (Save|Key)(4 Bytes) - rendercolor
- m_nModelIndex (Global|Save|Key)(2 Bytes) - modelindex
- m_iszResponseContext (Save|Key)(4 Bytes) - ResponseContext
- m_iMaxHealth (Save|Key)(4 Bytes) - max_health
- m_iHealth (Save|Key)(4 Bytes) - health
- m_target (Save|Key)(4 Bytes) - target
- m_iszDamageFilterName (Save|Key)(4 Bytes) - damagefilter


I think those are all the new entities, if I've missed one, let me know.

Also, there doesn't appear to be a way to disable the class forcing yet.
 
Last edited:

Neoviper

L1: Registered
Jun 11, 2010
1
0
I have the training map figured out enough that I could make one given enough effort, but I can't get around that class limiting for the life of me. It doesn't seem to be defined anywhere in the map, I'm looking for where it brings up the text this class is unavailable, at a glance it appears to have been hard coded in somewhere. Nowhere is it bringing up the text that this class is unavailable. I'm not the best of mappers, I don't know how this could be done, but I remember something about being able to embed custom files into bsp file, could they have done that with a script or something?

oh and nineaxis I do remember something in the l4d2 mapping documention about that, you can manually raise or lower your nav areas, the command is: nav_corner_raise and nav_corner_lower. The article I got that from is here: http://developer.valvesoftware.com/wiki/L4D_Level_Design/Advanced_Nav_Editing

Not sure if it will work the same as in l4d, but don't see any reason why it shouldn't.
 
Last edited: