Assaults
Assaults
Hi there!
For some reason, I can't get the assault entities to work with certain NPC Types like the houndeye, bullsquid and so on. I fiddled around with it endlessly, but they won't do anything. I set everything up right, rallypoints, assaultpoints, ai_goal_assault's, all their properties....
In order to exlude the possibility of my own mistake I used an official Valve testmap in which this assault thing is shown (there is a rebel going his way to assault some combine). Everything worked fine. Then I changed the npc_citizen to an npc_houndeye and changed its model to the houndeye model so that all properties of it would stay.
But when I started the map, the houndeye was just standing there.
So what I want is a possibility to make an NPC attack a certain location. I know scripted_sequence would be possible (or I at least i guess it, perhaps those little beasts would even refuse to do that), but it's kinda odd having them run the same route every time (and they have to do it again and again on my map).
I even thought about adding some invisible NPCs, giving them the same squad name like my houndeyes so that they share information about enemies and spawning them exactly next to the position which the houndeyes should attack (that position was full of npc's being hated by the houndeyes and the invisibles).
Well, guess if it worked.
For some reason, I can't get the assault entities to work with certain NPC Types like the houndeye, bullsquid and so on. I fiddled around with it endlessly, but they won't do anything. I set everything up right, rallypoints, assaultpoints, ai_goal_assault's, all their properties....
In order to exlude the possibility of my own mistake I used an official Valve testmap in which this assault thing is shown (there is a rebel going his way to assault some combine). Everything worked fine. Then I changed the npc_citizen to an npc_houndeye and changed its model to the houndeye model so that all properties of it would stay.
But when I started the map, the houndeye was just standing there.
So what I want is a possibility to make an NPC attack a certain location. I know scripted_sequence would be possible (or I at least i guess it, perhaps those little beasts would even refuse to do that), but it's kinda odd having them run the same route every time (and they have to do it again and again on my map).
I even thought about adding some invisible NPCs, giving them the same squad name like my houndeyes so that they share information about enemies and spawning them exactly next to the position which the houndeyes should attack (that position was full of npc's being hated by the houndeyes and the invisibles).
Well, guess if it worked.
busy at mo, but one quick suggestion is: sometimes hammer dosen't like copy pasting an npc entity then changing the classname of that to another npc class, better to add from scratch, sometimes props behave this way too, as for movement, I used a couple of scripted sequnces a few hints and nodes, but a basic setup for movement.
I think I have something like set state to combat run to goal entity hint node blah,blah interruptebility death. something like that.
I'll telll more l8a
*also you can find under prefabs /hl2 prefbas in hammer, an example 4 combine assault to load staight to hammer*
I think I have something like set state to combat run to goal entity hint node blah,blah interruptebility death. something like that.
I'll telll more l8a
*also you can find under prefabs /hl2 prefbas in hammer, an example 4 combine assault to load staight to hammer*
*push*fug4life wrote: I think I have something like set state to combat run to goal entity hint node blah,blah interruptebility death. something like that.
I'll telll more l8a
you got time now to explain that further?
Besides, i tried recreating them all from scratch, there was no change.
And Combine/Rebels work fine, but all the others wont do what I want...
Lo, sorry about err, not getting back to you. I personally would avoid using assaults for npcs like houndeye, I think AI assults really are for the likes of the more inteligent npc's like combine, rebels, maybe zombies.
Aswell as placing info_nodes, place info_node_hint's more specifically starting from the houndeye to where you want them to go, name the first info_node_hint and just copy them to where you want the the npc to go.
In the houndeyes properties, give the same name of the info_node_hint in the npc's hint group. Also on the info_node_hint make sure min state is set to idle and max state is combat.
Next add an aiscripted_schedule, name it and make your npc template maker start the schedule. with something like:
OnSpawnNPC - StartSchedule - 0.00
Now go to the aiscripted_schedule, and edit it's properties to something like this:
Name: ----------
Target: npc_houndeye
Search radius: 0
All in radius: No
Ai state to set: Set state to COMBAT
Schedult to run: Run to Goal Entity
Interruptability: General
Goal entity: (the name of the info_node _hint)
Thats about all i can say, if all else fails and your just trying to get them to approach the player from say somewhere where the houndeye can't see the player, then worst comes to worst put them on a path track and make a the path track go around the corner and finish infront of where the players should be?
Good luck!
Tbh I was lucky i din't need any of that for my houndeyes simply because they spawned infornt of the player the other side of a burning fire, so it was hard for the player to see them spawning, plus all the other action going on distracts the player, but in ai terms as soon as they spawned they saw the player and would just follow the player around using the info_nodes I placed around.
Aswell as placing info_nodes, place info_node_hint's more specifically starting from the houndeye to where you want them to go, name the first info_node_hint and just copy them to where you want the the npc to go.
In the houndeyes properties, give the same name of the info_node_hint in the npc's hint group. Also on the info_node_hint make sure min state is set to idle and max state is combat.
Next add an aiscripted_schedule, name it and make your npc template maker start the schedule. with something like:
OnSpawnNPC - StartSchedule - 0.00
Now go to the aiscripted_schedule, and edit it's properties to something like this:
Name: ----------
Target: npc_houndeye
Search radius: 0
All in radius: No
Ai state to set: Set state to COMBAT
Schedult to run: Run to Goal Entity
Interruptability: General
Goal entity: (the name of the info_node _hint)
Thats about all i can say, if all else fails and your just trying to get them to approach the player from say somewhere where the houndeye can't see the player, then worst comes to worst put them on a path track and make a the path track go around the corner and finish infront of where the players should be?
Good luck!
Tbh I was lucky i din't need any of that for my houndeyes simply because they spawned infornt of the player the other side of a burning fire, so it was hard for the player to see them spawning, plus all the other action going on distracts the player, but in ai terms as soon as they spawned they saw the player and would just follow the player around using the info_nodes I placed around.
*bump*
It can be so tiny things that mess everything up. In this case, it was my lack of knowledge of useful console commands. ai_show_connect was really useful once I got to know it... how the hell should I know that nodes dont connect properly on noisy Displacements if theyre not raised a bit?
So I got nearly all of the NPC's to attack some point with aiscripted_schedule (seems like a really useful entity to me as it doesn't disable the NPC's AI, btw).
The following ones wont move though: bullsquids, houndeyes, poison headcrabs (they react, but theyre super slow and just return sometimes without a reason) and antlionguards (might be that the route I'm sending them along is too tight for them to navigate through).
I could leave out the poisoncrabs and the antlionguards without a signifant loss, but I would really like to include attacking bullsquids and houndeyes because they make it very interesting. So if anyone has ideas left, post them.
It can be so tiny things that mess everything up. In this case, it was my lack of knowledge of useful console commands. ai_show_connect was really useful once I got to know it... how the hell should I know that nodes dont connect properly on noisy Displacements if theyre not raised a bit?
So I got nearly all of the NPC's to attack some point with aiscripted_schedule (seems like a really useful entity to me as it doesn't disable the NPC's AI, btw).
The following ones wont move though: bullsquids, houndeyes, poison headcrabs (they react, but theyre super slow and just return sometimes without a reason) and antlionguards (might be that the route I'm sending them along is too tight for them to navigate through).
I could leave out the poisoncrabs and the antlionguards without a signifant loss, but I would really like to include attacking bullsquids and houndeyes because they make it very interesting. So if anyone has ideas left, post them.
omg i love you now XD, i have this problem on broken escape part2, none of the assaults placed on displacements did work, only the assaults placed on normal brushes worked, never found out what caused it, untill now, thanks.TheMoon wrote:how the hell should I know that nodes dont connect properly on noisy Displacements if theyre not raised a bit?
This may not fit in with your map but,
The only thing I can think of is to teleport/spawn them into viewing distance with the npc's facing the player. Then just a trail of hint's leading up to the player.
The only thing I can think of is to teleport/spawn them into viewing distance with the npc's facing the player. Then just a trail of hint's leading up to the player.

'I would probably smarten up before you meet Violet'.
'She has zero tolerance for idiots'.
fug's Obsidian files
fug's Obsidian clips
Obsidian wiki
Obsidian Map Database
'She has zero tolerance for idiots'.
fug's Obsidian files
fug's Obsidian clips
Obsidian wiki
Obsidian Map Database
The ep1 core room is at 180% entdata and still works, so there should be no problem.TheMoon wrote:Ok, I'm gonna teleport them in. It's a big arena and I wanted them to rush the middle, but I guess it's not gonna destroy that feeling too much.
Besides, doing that will probably raise my entdata by 100%, but whatever.
Edit: it was 168%.
Code: Select all
Object names Objects/Maxobjs Memory / Maxmem Fullness
------------ --------------- --------------- --------
models 326/1024 15648/49152 (31.8%)
brushes 5034/8192 60408/98304 (61.5%)
brushsides 52777/65536 422216/524288 (80.5%) VERY FULL!
planes 60088/65536 1201760/1310720 (91.7%) VERY FULL!
vertexes 40783/65536 489396/786432 (62.2%)
nodes 10888/65536 348416/2097152 (16.6%)
texinfos 7005/12288 504360/884736 (57.0%)
texdata 711/2048 22752/65536 (34.7%)
dispinfos 16/0 2816/0 ( 0.0%)
disp_verts 624/0 12480/0 ( 0.0%)
disp_tris 896/0 1792/0 ( 0.0%)
disp_lmsamples 26000/0 26000/0 ( 0.0%)
faces 20912/65536 1171072/3670016 (31.9%)
hdr faces 20912/65536 1171072/3670016 (31.9%)
origfaces 14774/65536 827344/3670016 (22.5%)
leaves 11215/65536 358880/2097152 (17.1%)
leaffaces 26254/65536 52508/131072 (40.1%)
leafbrushes 13672/65536 27344/131072 (20.9%)
areas 28/256 224/2048 (10.9%)
surfedges 161411/512000 645644/2048000 (31.5%)
edges 96096/256000 384384/1024000 (37.5%)
LDR worldlights 436/8192 38368/720896 ( 5.3%)
HDR worldlights 495/8192 43560/720896 ( 6.0%)
waterstrips 1688/32768 16880/327680 ( 5.2%)
waterverts 0/65536 0/786432 ( 0.0%)
waterindices 31368/65536 62736/131072 (47.9%)
cubemapsamples 119/1024 1904/16384 (11.6%)
overlays 9/512 3168/180224 ( 1.8%)
LDR lightdata [variable] 10243844/0 ( 0.0%)
HDR lightdata [variable] 10192560/0 ( 0.0%)
visdata [variable] 584486/16777216 ( 3.5%)
entdata [variable] 663485/393216 (168.7%) VERY FULL!
LDR leaf ambient 11215/65536 269160/1572864 (17.1%)
HDR leaf ambient 11215/65536 269160/1572864 (17.1%)
occluders 5/0 200/0 ( 0.0%)
occluder polygons 10/0 120/0 ( 0.0%)
occluder vert ind 46/0 184/0 ( 0.0%)
detail props [variable] 1/12 ( 8.3%)
static props [variable] 1/16968 ( 0.0%)
pakfile [variable] 16074047/0 ( 0.0%)
Yeah I read that Valve have never changed the limit figure and it's based on a figure they set about 6 years ago just as a guide line, so it does not represent what the limit is, To tell the truth they don't know. I've had 128% and no troubles although I did optimise down to about 116%.
'I would probably smarten up before you meet Violet'.
'She has zero tolerance for idiots'.
fug's Obsidian files
fug's Obsidian clips
Obsidian wiki
Obsidian Map Database
'She has zero tolerance for idiots'.
fug's Obsidian files
fug's Obsidian clips
Obsidian wiki
Obsidian Map Database
-
- npc_combinegunship
- Posts: 782
- Joined: Tue Nov 07, 2006 12:03 am
- Location: Parent's Basement
- Contact:
Most of my Return to City 17 maps are over 120% entdata. The only main problems I've found with going over it is that sometimes hammer will load too many entities, crash, and destroy your map. This annoying thing happened on one of the beta maps I released, where I would place about 200 cubemaps, save the level, try to compile, fail compile, close hammer, go back into hammer, and the level would be corrupted. Joy!
But yea.
Huge entdata usually is no worries
But yea.
Huge entdata usually is no worries

Current projects: Return to City 17 and Rising Dead
Also, check out my Blag: http://daman-amappersworld.blogspot.com/
Also, check out my Blag: http://daman-amappersworld.blogspot.com/