Dangerous Tentacles

Discussions about everything else
User avatar
Barbie
Godlike
Posts: 2423
Joined: Fri Sep 25, 2015 9:01 pm
Location: moved without proper hashing

Dangerous Tentacles

Post by Barbie » Mon Apr 25, 2022 10:23 am

Dangerous.jpg
ShellCaseMesh.jpg
You do not have the required permissions to view the files attached to this post.
"Multiple exclamation marks," he went on, shaking his head, "are a sure sign of a diseased mind." --Terry Pratchett

User avatar
sektor2111
Godlike
Posts: 5937
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: Dangerous Tentacles

Post by sektor2111 » Mon Apr 25, 2022 12:03 pm

Yep... :?

User avatar
papercoffee
Godlike
Posts: 10148
Joined: Wed Jul 15, 2009 11:36 am
Personal rank: coffee addicted !!!
Location: Cologne, the city with the big cathedral.

Re: Dangerous Tentacles

Post by papercoffee » Mon Apr 25, 2022 1:55 pm

maybe...
Shell.png
:noidea
You do not have the required permissions to view the files attached to this post.

User avatar
OjitroC
Godlike
Posts: 3026
Joined: Sat Sep 12, 2015 8:46 pm

Re: Dangerous Tentacles

Post by OjitroC » Mon Apr 25, 2022 3:52 pm

Possibly intended to be UT_Grenade which is immediately above the UT_ShellCase in the Actor->Projectile tree? Who knows really - possibly indicates that the map wasn't tested before release (so I would be wondering what other issues are there in this map?).

Of course, given the proximity of the tentacles to each other and the positioning of them, most explosive (and even other projectiles) would cause more damage to those firing the projectiles than to an opponent.

User avatar
UnrealGGecko
Godlike
Posts: 2702
Joined: Wed Feb 01, 2012 11:26 am
Personal rank: GEx the Gecko
Location: Kaunas, Lithuania

Re: Dangerous Tentacles

Post by UnrealGGecko » Tue Apr 26, 2022 12:27 pm

For the tentacles' Neutral Special, it wields a GUN! :P

User avatar
sektor2111
Godlike
Posts: 5937
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: Dangerous Tentacles

Post by sektor2111 » Tue Apr 26, 2022 12:38 pm

If this map is accidentally called NoRush I think I have a NORMAL* version.

Info___:
NORMAL means that a few things were adjusted, certain junk data removed and Bot Support available based on original MH503.
Here, for others having a hobby toward Bots and their needed "Fire Power" due to real dangerous Tentacles, I think I have some Node telling them to get some weaponry instead of racing to objectives poorly armed - requires manual paths handling/mangling due to environment... or the knowledge in how this node must be placed for Goblin's "pathing" activity.
Spoiler
Show

Code: Select all

class InvNode expands PathNode;

event int SpecialCost(Pawn Seeker)
{
	local Bot B;

	B = Bot(Seeker);
	if ( !Seeker.bIsPlayer ) //Deny Monster heading to Player Base
		return 100000000;
	if ( B == None ) //External alien support
		return 0;
	if ( B != None )
	{
		if ( B.Weapon != None && B.Weapon.AIRating >= 0.5 ) //Using weapon specific rating - crawl for a good weapon before passing through this node
			return 0;
		else
			return 100000000;
	}
	return 100000000;
}

defaultproperties
{
	bNoDelete=True
	bStatic=False
	bSpecialCost=True
	bHidden=True
}

Old UT Veteran
Experienced
Posts: 146
Joined: Sat Mar 24, 2012 1:37 am

Re: Dangerous Tentacles

Post by Old UT Veteran » Tue Apr 26, 2022 8:05 pm

sektor2111 wrote:
Tue Apr 26, 2022 12:38 pm
If this map is accidentally called NoRush I think I have a NORMAL* version.

Info___:
NORMAL means that a few things were adjusted, certain junk data removed and Bot Support available based on original MH503.
Here, for others having a hobby toward Bots and their needed "Fire Power" due to real dangerous Tentacles, I think I have some Node telling them to get some weaponry instead of racing to objectives poorly armed - requires manual paths handling/mangling due to environment... or the knowledge in how this node must be placed for Goblin's "pathing" activity.
Spoiler
Show

Code: Select all

class InvNode expands PathNode;

event int SpecialCost(Pawn Seeker)
{
	local Bot B;

	B = Bot(Seeker);
	if ( !Seeker.bIsPlayer ) //Deny Monster heading to Player Base
		return 100000000;
	if ( B == None ) //External alien support
		return 0;
	if ( B != None )
	{
		if ( B.Weapon != None && B.Weapon.AIRating >= 0.5 ) //Using weapon specific rating - crawl for a good weapon before passing through this node
			return 0;
		else
			return 100000000;
	}
	return 100000000;
}

defaultproperties
{
	bNoDelete=True
	bStatic=False
	bSpecialCost=True
	bHidden=True
}
How about status based inventory? Say for example that bot can not enter area unless it has shield or armor... or required health points.

User avatar
sektor2111
Godlike
Posts: 5937
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: Dangerous Tentacles

Post by sektor2111 » Wed Apr 27, 2022 2:54 pm

Old UT Veteran wrote:
Tue Apr 26, 2022 8:05 pm
How about status based inventory? Say for example that bot can not enter area unless it has shield or armor... or required health points.
I had this in my head but... I discarded idea right before to start working on it...
Reason - > A "happy" mutator replacing items in maps will do damage in these cases... until such a Network is capable to run a test first and detecting if current environment is suitable for toggling routes - if not, keep network "static", free to roam.

For health chapter I already had such node - it was too easy - is based on JumpSpot vs Bot deal. Bot won't ImpactJump without certain amount of health. Such a node is more easy if it does only a health check without extra calculations.
Spoiler
Show

Code: Select all

class WeakNode expands PathNode;

var() int ReqHealth;

event PostBeginPlay()
{
	if ( ReqHealth > 10 )
		bSpecialCost = True;
	else
		log("> ReqHealth is inconclusive. Node won't react.",Name);
}

event int SpecialCost(Pawn Seeker)
{
	if ( Seeker == None )
		return 100000000;

	if ( Seeker.Health < ReqHealth )
		return 100000000;
	else
		return 0;
}

defaultproperties
{
	bNoDelete=True
	bStatic=False
	bCollideWhenPlacing=False
	CollisionRadius=20.000000
	CollisionHeight=40.000000
	RemoteRole=ROLE_None
}
I agree with you here, Bots with health 2 facing some... Tentacles, might be easily killed with their default projectiles so it can be a smarty move to discard them from this route forcing them to load a bit of healing related items first...

User avatar
Barbie
Godlike
Posts: 2423
Joined: Fri Sep 25, 2015 9:01 pm
Location: moved without proper hashing

Re: Dangerous Tentacles

Post by Barbie » Sun May 01, 2022 9:44 am

Story does not end: same mapper, but other map. :loool:
DangerousWarlord.jpg
Could be a candidate for a map checker, but how to check if
ScriptedPawn(Other) .RangedProjectile is a Projectile? The following seems not to work:

Code: Select all

	foreach AllActors(class'ScriptedPawn', SP)
		if (SP.RangedProjectile != None && ! SP.RangedProjectile.IsA('Projectile'))
		{
			logger(LOG_Warning, "CheckRangedProjectile", SP $ ".RangedProjectile ==" @ SP.RangedProjectile);
			ErrCount++;
		}
You do not have the required permissions to view the files attached to this post.
"Multiple exclamation marks," he went on, shaking his head, "are a sure sign of a diseased mind." --Terry Pratchett

Buggie
Godlike
Posts: 1652
Joined: Sat Mar 21, 2020 5:32 am

Re: Dangerous Tentacles

Post by Buggie » Sun May 01, 2022 10:34 am

Code: Select all

	foreach AllActors(class'ScriptedPawn', SP)
		if (SP.RangedProjectile != None && SP.RangedProjectile.IsA('ShellCase'))
		{
			logger(LOG_Warning, "CheckRangedProjectile", SP $ ".RangedProjectile ==" @ SP.RangedProjectile);
			ErrCount++;
		}

User avatar
sektor2111
Godlike
Posts: 5937
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: Dangerous Tentacles

Post by sektor2111 » Sun May 01, 2022 1:14 pm

Barbie wrote:
Sun May 01, 2022 9:44 am
ScriptedPawn(Other) .RangedProjectile is a Projectile? The following seems not to work:

Code: Select all

	foreach AllActors(class'ScriptedPawn', SP)
		if (SP.RangedProjectile != None && ! SP.RangedProjectile.IsA('Projectile'))
		{
			logger(LOG_Warning, "CheckRangedProjectile", SP $ ".RangedProjectile ==" @ SP.RangedProjectile);
			ErrCount++;
		}
Yes, this is what I've removed recently from MapGarbage because it did not work for some (unknown to me) reasons. The check was supposed toward a non-projectile class and reverting it to default. The result was a misery, every single monster way changed to original projectile class - either way reported as being wrong configured...
Another time I'll try to figure what would be needed - perhaps trying to deal with "ClassIsChildOf"...

User avatar
Barbie
Godlike
Posts: 2423
Joined: Fri Sep 25, 2015 9:01 pm
Location: moved without proper hashing

Re: Dangerous Tentacles

Post by Barbie » Mon May 02, 2022 9:48 am

Buggie wrote:
Sun May 01, 2022 10:34 am

Code: Select all

if (SP.RangedProjectile != None && SP.RangedProjectile.IsA('ShellCase'))
Yes, but my intention was to check if the value RangedProjectile is a projectile. While I was mislead that 'ShellCase' is NOT a projectile but in fact it is. So my above code works, but didn't show up any warning because 'ShellCase' IS a projectile. :loool:
sektor2111 wrote:
Sun May 01, 2022 1:14 pm
trying to deal with "ClassIsChildOf"...
Yes, that also works fine:

Code: Select all

if (SP.RangedProjectile != None && ! ClassIsChildOf(SP.RangedProjectile, class'Projectile'))
"Multiple exclamation marks," he went on, shaking his head, "are a sure sign of a diseased mind." --Terry Pratchett

Buggie
Godlike
Posts: 1652
Joined: Sat Mar 21, 2020 5:32 am

Re: Dangerous Tentacles

Post by Buggie » Mon May 02, 2022 9:51 am

Yes. I not start pay attention to that.
You can use both check. For NOT projectile or some well-known bad projectiles.

Eternity
Experienced
Posts: 110
Joined: Sat Nov 30, 2019 10:56 pm

Re: Dangerous Tentacles

Post by Eternity » Mon May 02, 2022 11:48 am

Does "IsA()" function work properly for static objects in v451b and older builds?

Buggie
Godlike
Posts: 1652
Joined: Sat Mar 21, 2020 5:32 am

Re: Dangerous Tentacles

Post by Buggie » Mon May 02, 2022 12:54 pm

Show example of code.