As a pawn (with at least a LambController guiding it) walks randomly around the world (with the help of pathnodes) it will pass through the radii of various interest points. These will invite/exclude pawns based on their type and their interest level. Use these to do any small task (stare at something, laugh, smoke) or chain them together for complicated events (look at store window, then walk into store, buy things). Variables
What the person does before they move on.
makes a person wait within the WaitTimeMax-WaitTimeMin time range. They stare/focus on whatever they were already.
Wait the same time range, but look at your InterestTag actor.
Laugh as by the controller at your InterestTag actor.
Applaud your InterestTag actor (see a pattern?)
Make a guy starting puking for no reason
bAllowConsecutiveReturns: Usually a pawn will not be allowed to return to the same interest point twice in a row. This makes it possible.
bExcludes:Excludes the ConcernedClasses and all their children (defaults to false, so usually the concerned classes are INCLUDED)
ConcernedClasses: All the classes and their children of this are by default ALLOWED to use this interest point. If you set it to P2Pawn by default then only people will be allowed to use this interest point. If you set it to Police (the pawn class, NOT the PoliceController) then only police can use this point. If you set it to Police and then set bExcludes to True, then everyone BUT police can use it.
ConcernedBaseClass: This just makes sure stuff like static meshes and particle effects aren’t bothering the interest points all the time. The default is P2Pawn, so that means with the above case, only P2Pawns are considered, and then Police are either included or excluded. If you wanted something else to use interest points and we had functionality for them in the action type, then you’d have to lower this to their level. Like, to make a karma static mesh use interest points, you’d have to start by setting this class to StaticMesh and the ConcernedClasses probably to P2Pawn and bExcludes to true, so you only look at static meshes and not characters.
InterestLevel: If a person of the concerned classes that’s included walks by and hits the interest point, AND the interest level is high enough for them, they’ll try to use it. If you set this to 1, every one will try to use it. If you set it to 0.1, very few people will try to use it.
InterestTag: Used in conjunction with ActionType, this what the actor usually looks at, or laughs at, or shoots at, or sits on or whatever. You must set the Events:Tag in the interest actor you want this to link to. So if you have an interest point, and you want it to link to a certain store sign, you go to the store sign and click open Events, and change Tag to something SPECIFIC/UNIQUE like StoreSign93. Then in InterestTag set it to StoreSign93, and whoever uses this interest point will use that sign for things. So this must be unique. If it’s not unique then the first actor with this tag (if you pick something generic like Pickup) will be used and you will probably get unexpected results.
LinkToTag: This is the actor this interest point links to AFTER it’s performed it’s action. It needs to use a tag of a specific actor also. So InterestPoint23 can have it’s LinkToTag be StoreEntrance12 (also an interest point, but it’s Events:Tag is set to this name). So in InterestPoint23, we have LinkToTag as StoreEntrance12, and ActionType set to StopAndWait. So the guy stops at this first point, then walks(or runs, or whatever, explained next) to StoreEntrance12.
Walks to his LinkToTag. Requires pathnodes to get there.
Runs to his LinkToTag. Requires pathnodes to get there.
MaxAllowed: At any one time, this is how many actors may use this. If it’s 1, then only person can use this thing at once. If it’s set to 3, and someone walks by it, and there’s only 2 people using it, and their interest is high enough and they’re allowed to use it, then they will.
TotalUsersLimit: Once this number is hit, the interest point is made invalid and can never be used again (till the level is loaded again, at least). Zero (0) is infinite use (Default).
WaitTimeMax, WaitTimeMin:Maximum and minimum range for the wait time. The wait time can get used by a variety of ActionTypes, such as StopAndWait and LookAt, and probably Sit, or Eat, and things like that. Tips
- CollisionHeight and CollisionRadius are used for the collision of the interest points with actors.
- If you just drop an interest point in and link it to another interest point, the way the defaults are, it will cause the pawn to hit the first one, and then simply and immediately walk to the second one, wherein he will go back to thinking. They’re good to play with, right off the bat. Don’t allow interest points to overlap/intersect.
- Don’t start things inside Interest points. If you want them to interact with the interest point, that is, don’t start them inside the interest point’s collision radius.
- If you get a person going to a point (keypoint or interestpoint) and they seem to get there but jitter, the points are either too high or too low. Usually make them about waist height for people to use them. Like pathnodes.