Garry's Mod

Garry's Mod

Crab Synth SNPC
DayDay 15 May, 2021 @ 1:42pm
Suggestions
- The new Crabsynth doesn't have 2 animations from HL2 which is "run01" and "walk01" which the "walk01" is functional for the walking. I hope this gets added back and there will be suggestions if it gets added back. :c

https://steamuserimages-a.akamaihd.net/ugc/1787344683432581750/011348A1A1FB59B8AD7F8B1BCA478023B35F7555/

https://steamuserimages-a.akamaihd.net/ugc/1787344683432581414/A00D8922836AAE26F2BF9A41D93CB22DB1BE97E5/

==========================
- The Crabsynth running animation should be used for them trying to get near to their target if they're far away to get a close shooting range.

https://steamuserimages-a.akamaihd.net/ugc/1787344683432549245/6DD35942E300D5B99C9C17457B98D93879B01C16/
==========================
- If the CS's (CrabSynth) weapon is deployed and they're on alert, they should play the "walk01" animation and them patrolling around. If they lose their target for a long while, then they should put their gun away.

https://steamuserimages-a.akamaihd.net/ugc/1787344683432549722/38269FC2E2D9B2BDA056EE9F56FCB35BA5FF3307/
==========================
- If the target gets too close to the CS, the CS should try to stab them, here's a example

https://steamuserimages-a.akamaihd.net/ugc/1787344683432559060/BAFB9164021F13AE51CC3B25C3D33323F1F05364/
==========================
- When the CS charges at its enemy, try to make them charge more directly its enemy like with the Antlion Guard.

https://steamuserimages-a.akamaihd.net/ugc/1787344683432559563/0BA6AB36ADAE85ECF46D7585B42F2DA545D2BCB8/

https://steamuserimages-a.akamaihd.net/ugc/1787344683432550413/833E142C8A348FC7381F3FF1B521E3669726B4DF/
==========================

That's all, sorry if this sounds too much or doesn't make that much sense. I really love your CrabSynth addon btw because I was really hoping somebody would make an addon of it. I have high hopes for the MortarSynth NPC, wish you good luck! :steamthumbsup:
< >
Showing 1-8 of 8 comments
kwaHliveD  [developer] 17 May, 2021 @ 10:39am 
thank you for your neat analysis and recommendations. i will go through each of your recommendations now.

"walk_all_2" is exactly the same as "walk01" but with move_yaw animations included, and with the gatling gun undeployed. "run01" is not included because:

this animation is listed as ACT_RUN, but also with a transition animation to reach to this activity. you'll notice my snpc will stop walking around when you replace it with the original model because it is broken, not the way, you can't use transition anims while trying to reach to a movement activity. this stops npcs with internal code from moving around and puts "illegal movement" errors into ent_text.

second, i've read the source code of this npc, it seems valve intended to make this npc charge at the target every 20 secs. since you can play animations, you'll notice charge attacks and "run01" anims are nearly identical. if you re-implement this animation, this npc will always decide to "run01" than "walk01" because it is a faster way to teach the target. it is the most prioritized way of reaching the desired navigation, it basically says "why walk, when you can run?". this makes walk anim useless. it is difficult to make the snpc request for "walk01" while it has a "run01".

third, the npc deploys and undeploys the minigun for balancing reasons. when it notices an enemy or hears any sound from the environment, it is always on "alert" state, until all enemies are off from the memory, and the game finally suggests them to go to "idle" state. a crab synth that always keeps his gun deployed would be unfair for a player that's fighting against combine right beneath the Citadel because there's no time to take cover and it will shoot as soon as it find the player.

also you recommended that those things in front of the crab synth should stab its enemies. this is a very similar request, as how it works in the other beta snpc mod aforementioned in the comments. but, are we sure those are used for stabbing? are you sure those are not antennaes or some kind of sensors? this isn't even something documented in the source code. also, the stabbing behavior should be more elaborated. should it stab anything that walks forward? should it stab only when charge attacking? or else i may decorate it with some LED lights so no one thinks those are spikes.

and at last, the crab synth charges towards its enemies just like antlion guard, but it takes aim once, doesn't update where enemy is, once it starts moving. it doesn't take new position of enemy afterwards. i can only make the crab synth ensure that the path is clear. if i do it just like the antlion guard, then it would just be an antlion guard synth. things have got to be different.

and again, thank you for a well-detailed request. i will add "run01" back but in a way that AI will never access it in normal cases.

think of the crab synth as a defensive tool utilized by the combine. it shouldn't be running around in normal situations, it is a heavy unit and has got to be slow.
DayDay 17 May, 2021 @ 6:27pm 
Originally posted by kwaHliveD:
thank you for your neat analysis and recommendations. i will go through each of your recommendations now.

"walk_all_2" is exactly the same as "walk01" but with move_yaw animations included, and with the gatling gun undeployed. "run01" is not included because:

this animation is listed as ACT_RUN, but also with a transition animation to reach to this activity. you'll notice my snpc will stop walking around when you replace it with the original model because it is broken, not the way, you can't use transition anims while trying to reach to a movement activity. this stops npcs with internal code from moving around and puts "illegal movement" errors into ent_text.

second, i've read the source code of this npc, it seems valve intended to make this npc charge at the target every 20 secs. since you can play animations, you'll notice charge attacks and "run01" anims are nearly identical. if you re-implement this animation, this npc will always decide to "run01" than "walk01" because it is a faster way to teach the target. it is the most prioritized way of reaching the desired navigation, it basically says "why walk, when you can run?". this makes walk anim useless. it is difficult to make the snpc request for "walk01" while it has a "run01".

third, the npc deploys and undeploys the minigun for balancing reasons. when it notices an enemy or hears any sound from the environment, it is always on "alert" state, until all enemies are off from the memory, and the game finally suggests them to go to "idle" state. a crab synth that always keeps his gun deployed would be unfair for a player that's fighting against combine right beneath the Citadel because there's no time to take cover and it will shoot as soon as it find the player.

also you recommended that those things in front of the crab synth should stab its enemies. this is a very similar request, as how it works in the other beta snpc mod aforementioned in the comments. but, are we sure those are used for stabbing? are you sure those are not antennaes or some kind of sensors? this isn't even something documented in the source code. also, the stabbing behavior should be more elaborated. should it stab anything that walks forward? should it stab only when charge attacking? or else i may decorate it with some LED lights so no one thinks those are spikes.

and at last, the crab synth charges towards its enemies just like antlion guard, but it takes aim once, doesn't update where enemy is, once it starts moving. it doesn't take new position of enemy afterwards. i can only make the crab synth ensure that the path is clear. if i do it just like the antlion guard, then it would just be an antlion guard synth. things have got to be different.

and again, thank you for a well-detailed request. i will add "run01" back but in a way that AI will never access it in normal cases.

think of the crab synth as a defensive tool utilized by the combine. it shouldn't be running around in normal situations, it is a heavy unit and has got to be slow.
Just asking, are you able to fix the CrabSynth's legs from clipping out like when turning around?
kwaHliveD  [developer] 18 May, 2021 @ 2:02am 
yes, i should add that to to-do list too.

i tried to implement IK on legs in the cheapest way, straight from ministrider code. i'll eventually learn how to control the range that legs turn around, or entirely remove it.
DayDay 25 May, 2021 @ 5:54pm 
Originally posted by kwaHliveD:
yes, i should add that to to-do list too.

i tried to implement IK on legs in the cheapest way, straight from ministrider code. i'll eventually learn how to control the range that legs turn around, or entirely remove it.
The reason I asked for the CrabSynth to stab its target when they're extremely close to it is because a problem like this:

https://steamuserimages-a.akamaihd.net/ugc/1796352691199609976/092E11DA3A971679D7328C3C27CFD3E6EA9ADE8D/

https://steamuserimages-a.akamaihd.net/ugc/1796352691199610149/9089EE3E451D6CC76330E2D1BAF68CFC3DED8D45/

(Seems that Headcrab Zombies aren't able to hit the hitbox of the CrabSynth
===========
(Sorry if this are nitpicks, no offense or anything)


- I don't know how to screenshot this but sometimes the CrabSynth have delay idle animations. If you don't know what I mean, I mean like whenever it plays a idle animation, sometimes it glitches a bit when it replays it. My guess on the solution for it is to make it fully play the animation before playing other ones.

Suggestion: When the CrabSynth is on low HP, it make sparks come out from it like the Striders when its extremely on low HP.
kwaHliveD  [developer] 29 May, 2021 @ 12:36am 
1-) zombies cannot attack the crabsynth because when normal npcs check for their melee attacks, they consider the distance between their center in the world origin, and their enemies' center. this does not consider their bounding boxes or nearest point of bounding box, therefore they still try to walk towards an ideal distance between enemy and themselves, even though it has already reached that. it is built like that because npcs were intended to be fought against players, not something else larger.

you can check the same with other large npcs, the zombies will not attack. this is not my problem.

2-) yes i'm aware, this is probably happening because the crabsynth has two idle anims. NPCs generally have only one. the problem here is that the NPC switches to the next idle animation very slower than intended, causing the first frame of current anim to play because it is looping, and then pass to next animation. you will notice the same issue in half life source weapon viewmodels. unfortunately, i can't control the idle animations pretty much than adding or removing existing ones, engine usually handles that mechanism itself. still, i'll try to fix it by trying different methods.

3-) emitting sparks is a good idea. my ministrider npcs do the same thing and it is quite a good visual. it can also emit smokes from the existing exhaust points, or bleed just like the antlion guard / hunter.
ItchySackJack 10 Nov, 2021 @ 6:53pm 
You should make the Crab Synth be able to shoot while walking, and maybe even add a swing attack for when something gets too close to it. Because shooting something with a machine gun at a 1 stud range is weird.
kwaHliveD  [developer] 18 Nov, 2021 @ 8:17am 
- we discussed before with other people that i will not add movement attack to this crabsynth. a moving machinegun would really be overpowered against player.

- it really requires a close range attack method but we can't because this requires us to animate the attack method via an animation software. i still don't know how to animate, especially with blender. i will try and add a close range attack method once i learn animating models.
BlueGaming 13 Feb, 2024 @ 1:48pm 
Could you possibly add an ability for combine units to ride the Crab Synth? also the idea about the LED lights is actually a pretty fun idea, maybe for a holiday themed version?
< >
Showing 1-8 of 8 comments
Per page: 1530 50