logo
Main

Forums

Downloads

Unreal-Netiquette

Donate for Oldunreal:
Donate

borderline

Links to our wiki:
Wiki

Walkthrough

Links

Tutorials

Unreal Reference

Usermaps

borderline

Contact us:
Submit News
Page Index Toggle Pages: 1 Send TopicPrint
Normal Topic [all versions]bTurret=True does not prevent Brute from moving (Read 186 times)
Player701
New Member
Betatester
*
Offline


Oldunreal member

Posts: 37
Location: Russia
Joined: Jan 31st, 2017
Gender: Male
[all versions]bTurret=True does not prevent Brute from moving
Jul 30th, 2019 at 2:28pm
Print Post  
This has existed since long before the 227 patch, so I'm not sure if it should be changed. However, this is a clear case of the code not doing what it says, so I thought I'd report it. Whether to change it or not, is of course up to the dev team to decide.

The Brute actor has a variable called bTurret, with the following definition in its script code:

Code
Select All
var() bool bTurret;			// Doesn't move 


This comment, however, is an outright lie. The Brute indeed does not move when attacking - it will not chase the player... but when it loses the line of sight to its enemy, it will start moving around.

This is easily reproducible in the third level of Unreal, Rrajigar Mine (Dig.unr). A save file is attached for easier testing. To reproduce, call the lift by pressing the button on the right (a Lesser Brute is standing on the lift). There is no need to shoot at it, and no need to dodge its shots (God mode is on). When the lift comes up again, wait for a while, and you will soon start hearing footsteps. The Brute is now walking around on the upper level, despite that it shouldn't move at all (bTurret is set to True). In my tests, this happens 100% of the time.

This appears to be less of a bug, and more of a half-implemented feature. The only time the value of bTurret is checked in Brute's code is in its Attacking state. I'm not an UnrealScript expert, but it looks like this check is used to prevent the Brute from pursuing the player. There are no checks for bTurret anywhere else, though, which means there is nothing to prevent it from falling back to default behavior when not attacking.

Upd: Forgot to attach the save file, so here it is.
  
Back to top
 
IP Logged
 
Masterkent
Developer Team
Offline



Posts: 1330
Location: Russia
Joined: Apr 5th, 2013
Gender: Male
Re: [all versions]bTurret=True does not prevent Brute from moving
Reply #1 - Jul 30th, 2019 at 3:54pm
Print Post  
Player701 wrote on Jul 30th, 2019 at 2:28pm:
The Brute actor has a variable called bTurret, with the following definition in its script code:

Code
Select All
var() bool bTurret;			// Doesn't move 


This comment, however, is an outright lie. The Brute indeed does not move when attacking - it will not chase the player...

OK, I think, we could change it to

Code
Select All
var() bool bTurret;			// Doesn't move while attacking 


:-)

Player701 wrote on Jul 30th, 2019 at 2:28pm:
but when it loses the line of sight to its enemy, it will start moving around

That depends on his Orders and OrderTag. If Orders == 'Patroling' and OrderTag does not match any PatrolPoint on the map, he won't go anywhere after stopping being mad at the enemy.
  
Back to top
 
IP Logged
 
Player701
New Member
Betatester
*
Offline


Oldunreal member

Posts: 37
Location: Russia
Joined: Jan 31st, 2017
Gender: Male
Re: [all versions]bTurret=True does not prevent Brute from moving
Reply #2 - Jul 30th, 2019 at 4:14pm
Print Post  
Well, I guess you can consider it a minor inconsistency then, and simply change the comment. A turret is, by definition, a stationary object, so the name of the variable kind of implies that there shouldn't be any exceptions to being stationary - that's why I noticed it in the first place.
  
Back to top
 
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint
Bookmarks: del.icio.us Digg Facebook Google Google+ Linked in reddit StumbleUpon Twitter Yahoo