Raised This Month: $12 Target: $400
 3% 

[ANY?/TF2] SourceTools - NPC Framework & SDK Tools


Post New Thread Reply   
 
Thread Tools Display Modes
Desktop
AlliedModders Donor
Join Date: Sep 2009
Location: C:\Users\Default\
Old 11-13-2021 , 20:39   Re: [ANY?/TF2] CBaseNPC - NPC Framework & SDK Tools
Reply With Quote #11

The reason behind my question was that i really would like to create NPC zombies that chase & attack players that can be hidden, tracking them correctly, nothing really complex actually, but i failed everytime i tried to make an entity chase following a route like any player would do, they just teleport having no respect for gravity, walls, etc..

I would really love if this extension (or any way to do it) makes that possible
__________________
Massive Infection:: Piu-Games
Desktop is offline
artvin_boy
Junior Member
Join Date: Sep 2020
Location: Ottoman Empire
Old 01-06-2022 , 16:20   Re: [ANY?/TF2] CBaseNPC - NPC Framework & SDK Tools
Reply With Quote #12

Does this npc framework have a more optimised pathfinder then:

https://github.com/Pelipoika/PathFollower

Or does it use the same logic?

as the only issues i have with npc's is that pathfinder is expensive, althought i am unsure if ther eis even any fix to that issue, i can run about 70~ npc's before it starts lagging, and its solely due to path finding.
__________________
Sup.
artvin_boy is offline
Benoist3012
Veteran Member
Join Date: Mar 2014
Location: CWave::ForceFinish()
Old 01-31-2022 , 17:39   Re: [ANY?/TF2] CBaseNPC - NPC Framework & SDK Tools
Reply With Quote #13

Quote:
Originally Posted by artvin_boy View Post
Does this npc framework have a more optimised pathfinder then:

https://github.com/Pelipoika/PathFollower

Or does it use the same logic?

as the only issues i have with npc's is that pathfinder is expensive, althought i am unsure if ther eis even any fix to that issue, i can run about 70~ npc's before it starts lagging, and its solely due to path finding.
It is indeed the same logic. However this extension hacks itself around server_srv.so pathfollower, and thus is prone to gamedata break, and finally it is windows only.
Our extension instead compiles Pathfollower code, so no gamedata dependence. On top of that it is compatible with both windows & linux.

Overall we also offer many, many other features. Such as CBaseEntity functions
GetAbsOrigin - NetworkProp - SetLocalAngles etc...
As well as many CBaseAnimating functions
StudioFrameAdvance - LookupSequence - SelectWeightedSequence...

I recommend you use this extension over the other, and if you think this extension should have extra features, let us know
__________________
Benoist3012 is offline
Benoist3012
Veteran Member
Join Date: Mar 2014
Location: CWave::ForceFinish()
Old 01-31-2022 , 17:42   Re: [ANY?/TF2] CBaseNPC - NPC Framework & SDK Tools
Reply With Quote #14

Quote:
Originally Posted by Desktop View Post
The reason behind my question was that i really would like to create NPC zombies that chase & attack players that can be hidden, tracking them correctly, nothing really complex actually, but i failed everytime i tried to make an entity chase following a route like any player would do, they just teleport having no respect for gravity, walls, etc..

I would really love if this extension (or any way to do it) makes that possible
Yes it does! You just need to make a plugin making use of the tools. We have a lot of example plugins on the repo.

If you need more concrete example, you can check out my sentry buster plugin.
__________________
Benoist3012 is offline
Benoist3012
Veteran Member
Join Date: Mar 2014
Location: CWave::ForceFinish()
Old 09-22-2022 , 05:53   Re: [ANY?/TF2] CBaseNPC - NPC Framework & SDK Tools
Reply With Quote #15

Hello again everyone. This is just a bump for the forum thread to inform you all we have released version 1.7.0 recently, and the main post has finally been updated to give you a small hindsight to the extension capabilities.

Furthermore, I've renamed the forum thread name from CBaseNPC to SourceTools this will eventually be the extension name, once we reach version 2.X.X.
__________________
Benoist3012 is offline
Benoist3012
Veteran Member
Join Date: Mar 2014
Location: CWave::ForceFinish()
Old 06-08-2023 , 14:10   Re: [ANY?/TF2] SourceTools - NPC Framework & SDK Tools
Reply With Quote #16

Update report post. 1.8.5 was recently released, here's the changelog of everything new since 1.7.0

HTML Code:
05/06/2023 - 1.8.5
- Fixed a crash that would occurr on SM 1.12.6998 or later

14/03/2023 - 1.8.4
- Fixed misaligned memory for entities allocated with a custom constructor (gamedata)

19/02/2023 - 1.8.3
- Fixes a case where the IsHindrance query callback fails to take into account a special CBaseEntity* value called IS_ANY_HINDRANCE_POSSIBLE.
- Fixes a case where using CBaseNPC_Locomotion.CallBaseFunction within IsEntityTraversable and ShouldCollideWith callbacks resulted in a crash.
- Reformated include guards to use #endinput and to use relative paths instead. This notably fix headers with the sourcepawn VSCode extension.
- Added examples to using CBaseNPC_Locomotion callbacks to the scout test bot.

03/12/2022 - 1.8.2
- Fixed a rare crash related to tf2 vscript update

02/12/2022 - 1.8.1
- Rebuilt the extension against our updated custom tf2 sdk

02/12/2022 - 1.8.0
- VScript gamedata update

20/11/2022 - 1.7.1
- Fix OnOtherKilled event callback not passing victim parameter
__________________
Benoist3012 is offline
Benoist3012
Veteran Member
Join Date: Mar 2014
Location: CWave::ForceFinish()
Old 08-01-2023 , 03:40   Re: [ANY?/TF2] SourceTools - NPC Framework & SDK Tools
Reply With Quote #17

We continue our release ! Announcing 1.9.0, a very useful methodmap has been added to the framework !

Here's an example of what's possible with it :
PHP Code:
CTakeDamageInfo info CTakeDamageInfo(addressOfInfoObject);
int attacker info.GetAttacker();
info.SetInflictor(attacker); 
And here's a changelog :
HTML Code:
- Added `CTakeDamageInfo` natives
CTakeDamageInfo.CTakeDamageInfo
GetInflictor
SetInflictor
GetWeapon
SetWeapon
GetAttacker
SetAttacker
GetDamage
SetDamage
GetMaxDamage
SetMaxDamage
ScaleDamage
AddDamage
SubtractDamage
GetDamageBonus
SetDamageBonus
GetDamageBonusProvider
GetBaseDamage
BaseDamageIsValid
GetDamageForce
SetDamageForce
ScaleDamageForce
GetDamageForForceCalc
SetDamageForForceCalc
GetDamagePosition
SetDamagePosition
GetReportedPosition
SetReportedPosition
GetDamageType
SetDamageType
AddDamageType
GetDamageCustom
SetDamageCustom
GetDamageStats
SetDamageStats
SetForceFriendlyFire
IsForceFriendlyFire
GetAmmoType
SetAmmoType
GetAmmoName
GetPlayerPenetrationCount
SetPlayerPenetrationCount
GetDamagedOtherPlayers
SetDamagedOtherPlayers
SetCritType
GetCritType
- Refactored natives code
- Fixed a bug where `CBaseNPC` and `CExtNPC` natives would not throw an error when using `INVALID_NPC` index
__________________
Benoist3012 is offline
Benoist3012
Veteran Member
Join Date: Mar 2014
Location: CWave::ForceFinish()
Old 09-10-2023 , 07:12   Re: [ANY?/TF2] SourceTools - NPC Framework & SDK Tools
Reply With Quote #18

And here's another release: 1.10

HTML Code:
29/08/2023 - 1.10.4
- Added missing Segment.length native

24/08/2023 - 1.10.2
- Fixed Segment natives not being registered

24/08/2023 - 1.10.1
- More background changes for the eventual TF2 64bits update
- Fixed potential risk of overwriting action event return value

03/08/2023 - 1.10.0
- Deprecated SurroundingAreasCollector in favor of AreasCollector
- Added CNavArea natives
GetAdjacent
IncomingConnectionLength
__________________
Benoist3012 is offline
MAGNAT2645
Senior Member
Join Date: Nov 2015
Location: AlliedMods.net
Old 09-26-2023 , 13:57   Re: [ANY?/TF2] SourceTools - NPC Framework & SDK Tools
Reply With Quote #19

Cool extension but it crashes my Linux server when i run "quit" command to stop the server. There are no any errors or dumps. Accelerator doesn't seem to notice this kind of crash because it happens on SDK unload, after these lines:
Code:
SDK unload
metamod SDK unload
And server crashes even if i don't use extension features in any plugin, it just need to be loaded to crash.

EDIT: It doesn't crash if i unload it via sm exts unload though.
__________________

Last edited by MAGNAT2645; 10-03-2023 at 02:41.
MAGNAT2645 is offline
Benoist3012
Veteran Member
Join Date: Mar 2014
Location: CWave::ForceFinish()
Old 10-08-2023 , 13:33   Re: [ANY?/TF2] SourceTools - NPC Framework & SDK Tools
Reply With Quote #20

Quote:
Originally Posted by MAGNAT2645 View Post
Cool extension but it crashes my Linux server when i run "quit" command to stop the server. There are no any errors or dumps. Accelerator doesn't seem to notice this kind of crash because it happens on SDK unload, after these lines:
Code:
SDK unload
metamod SDK unload
And server crashes even if i don't use extension features in any plugin, it just need to be loaded to crash.

EDIT: It doesn't crash if i unload it via sm exts unload though.
Unsure what could be the cause, but I've some ideas. Could you open an issue on the github repository please ?
__________________
Benoist3012 is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 05:26.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode