Jump to content
Ghost Recon.net Forums

Jack57

Members
  • Content Count

    2,608
  • Joined

  • Last visited

Posts posted by Jack57

  1. it is only available as a trigger, not a query.

    Put simply, you cannot use it to ask (query) each actor in turn (loop) if they are the one who activated the UI command mode. As with quite a few of the functions in Igor, it may be that it only found its way in there because one of the original programmers wanted to use it for a particular mission - and maybe he wanted it for a SinglePlayer only mission, which is why it only references the 'Player'.

    In which case I guess I'm screwed :blink:

    Jack :(

  2. Best one to use is the damage effect - since it doesn't reference any particular actor it is more natural as any actor near enough will be killed by it.

    Parameters are:

    DAMAGE(X)(Y) - X=Range (0=3m 1=6m 2=12m),Y=Delay

    A common setting is DAMAGE(2)(0.2) - the 0.2 second delay gives the actor a brief moment to experience the explosion before he dies. Evil really :devil:

    Cheers, Jack

  3. Hmmm, I'm very interested in getting to bottom of this, to see if perhaps it wasn't something else causing me hassles.

    Sure you can do what MoNkEy suggested but the thing is you really shouldn't have to in GR - the AI is normally plenty good enough to react in the correct manner.

    Don't suppose you could send me your mis file for a look see?

    Jack :unsure:

  4. Hey Ruin, do you have a cinematic in this mission? The reason I ask is that I have found that actors that are active during the cinematic can sometimes develop quite odd behaviour. This has given me no end of trouble on the IT beach resort map for example. They were doing like you said and not shooting at me until severely provoked. Hiding them during the cinematic seem to fix the problem. Go figure :( I don't know what this is about because I have other missions where the enemy appear in the intro cinematic and I don't have any problems with them. I notice RSE tend to hide the enemy company during cinematics. This may be partly the reason but also, I imagine, so there's no possibility of them reacting and interfering with the proceedings.

    Also check you haven't inadvertantly locked their Alertness to Bored - this has happened to me before :blink:

    Cheers, Jack :)

  5. Thanks Chavez.

    Unfortunately the UICommandModeActivated trigger has no variable parameters - it is locked to the 'the player'. And it is only available as a trigger, not a query.

    The first player that activates it, is a possibility - or maybe the first active human actor.

    Hopefully someone will have the definitive answer . . .

    Cheers, Jack :)

  6. speed and size are my favourite friends

    Don't tell your girlfriend that! :D (well, not the speed bit anyways :o )

    Yeah, I guess your CPU is at the low end of the scale by todays standards - compared to your GPU it's a bit like having a lawnmower engine in sportscar body :P jk!

    Anyway if you ever do decide to do the team kill thing here is a copy of the script to determine teams from a post I made a few months back:

    ------------------------------------------------------------

    Group: <Default>

    Comment:

    Trigger Event:

    The simulation is starting.

    Responses:

    Set Alpha to (The team including (The player-controlled actor)).

    Use Get Bravo to loop over all teams in (The player-controlled platoon) after this block.

    Use Get Charlie to loop over all teams in (The player-controlled platoon) after this block.

    -------------------------------------------------------------

    Group: Get Bravo

    Comment:

    Trigger Event:

    A team loop is ready to process NextTeam.

    Responses:

    Allow this block to be reactivated.

    Continue executing responses if (The inverse of ((NextTeam is equal to Alpha) or (NextTeam is equal to Charlie))).

    Prevent this block from being reactivated.

    Set Bravo to NextTeam.

    ------------------------------------------------------------

    Group: Get Charlie

    Comment:

    Trigger Event:

    A team loop is ready to process NextTeam.

    Responses:

    Allow this block to be reactivated.

    Continue executing responses if (The inverse of ((NextTeam is equal to Alpha) or (NextTeam is equal to Bravo))).

    Prevent this block from being reactivated.

    Set Charlie to NextTeam.

    If you look at some of the RSE gtf's you will see how to filter out blue on blue, self kills etc.

    Cheers, Jack :)

    ps: I have only tested that script in SP, not a Team Game. You may need to change the 'Player' and 'The player-controlled platoon' references for it to work.

  7. The best way to find out is to test it - it's called debugging :P;)

    But that's why we're all here - to help each other out eh :wub:

    For the Company kill tally I would suggest you use the CompanyScoreSet response to reference the companies, like this:

    Group: <Default>

    Trigger Event:

    1 second(s) elapsed.

    Responses:

    Allow this block to be reactivated.

    Set the score for (The player-friendly company) to (The number of kills for (The player-friendly company)).

    or use CompanyScoreIncrement depending on your exact needs.

    Do you mean increase a counter for a Team when an (opposing) Team Kill occurs? This can be done but it gets quite complex as you have to set a VariableTeamReference to each of the teams on start up (done with a series of QueueLoops), and then quite a lot of queries to filter out self kills etc.

    Clear as mud?

    Cheers, Jack :)

  8. In a Multiplayer game 'Player controlled actor' appears to refer to the host. I'm not sure if we are given a way in Igor to query each human actor name - certainly I have never found it. In this case anyway it's not a problem because a message of who killed who will displayed anyway in a MP game.

  9. This seems a bit obvious so it may not be what you are asking. You just need to place the desired effects (napalm explosion, debris, smoke, damage, explosion sound, boom, etc) and set them to trigger with whatever event you wish. You can also use sound to simulate jets flying over. Take a look at the bridge strike in mission 6 'Borderline', in my 'Saving Pilot Ryan' campaign for an example on how to I set it up. It is better this way than for me to write an essay here.

    Hope that helps,

    Cheers, Jack :)

  10. Anyone already done this in a script?

    Sure. It's actually a lot simpler than you might at first imagine. This'll do it:

    Trigger Event:

    AnyActor has been killed.

    Responses:

    Allow this block to be reactivated.

    Continue executing responses if ((The platoon including (The shooter who killed AnyActor)) is equal to (The platoon including (The player-controlled actor))).

    Display ((The owner of (The shooter who killed AnyActor)) + (" has killed " + (The owner of AnyActor))) to all players.

    There is a problem however. The game will refer to all non human actors as AI_25, etc (with a different number for each actor of course). This makes it a bit meaningless. I'm not sure why GR references the actors in this way.

    You could also filter it for the PlayerActor instead of the PlayerPlatoon as I have done in this example. This would prevent you getting the message "AI_12 has killed AI_53" which doesn't mean anything.

    You would be better to use DeathCompanyMember for the Enemy company (or Platoon or Team) rather than reference the individual actors so you could have "hero2zer0 has killed a member of the Elite Platoon", or whatever.

    I have never been able to figure out a way to get GR to return the actual actor name (apart from the Player Controlled Actor's name). It does this in Multiplayer games so the engine can obviously do it.

    Cheers Jack :)

  11. I have been messing around with different values for the combat model xml and was puzzled why it didn't seem to make much difference what settings I used - at least on the actor I was experimenting with. He would die with one or two shots to the lower leg everytime. Then I found this interesting article.

    The most interesting point was this: "The combat model generates a chance for each hit to be an incapacitation vs. a wound. There is always a base 10% chance for an incapacitation no matter where you hit. An actor in the game can take (1+stamina) wounds before going down (i.e. a 2 stamina goes down on the third wound)."

    When I upped my actors stamina to 8 I was then able to shoot him in the legs many times before he went down.

  12. Just to add a couple of points to Chavez's explanation. Don't forget to put a Block Remove after the ContinueIf in situations such as this or it will continue executing indefinately.

    Also, as my Dad always used to tell me, there's more ways of killing a cat than choking it with butter :D Nothing wrong with Chavez's method, but here's another without creating a new Group: Depending on the basis for triggering the block that you want to repeat, you may well be able to put the scripting in the same block as the ContinueIf. If you are just counting time you can put the counter increment in there as well. The Block Remove will kill it when the ContinueIf condition is met. Remember GR parses the script once a second, so if the the trigger is a Proximity trigger it will execute once a second while the condition is met.

    I haven't tried the.ronin's method yet but it sounds good :P

  13. Shouldn't make any difference if the mod is activated or not, any .mis files can be viewed in Igor regardless of activation status!!!!

    Ooh no, that's not quite right.

    If Igor was opened while the mod was active and then was deactivated, Igor will still load the maps for it because it has already loaded all the necessary files.

    Otherwise the mod needs to be activated or Igor will crash.

    Jack

  14. I know what you mean X69RZX, and I have run into it many times. This is from the Igor reference: "Use TeleportObject with only actors and vehicles. Do not use these commands to teleport between different rooms."

    Strangely some maps will let you get away with it, others won't. Take a look at the 'Ghost Rescue' mission I did for ~NkOgNiTo~'s "Nk'sGHOSTS" mod. There was only one building on the map where I couldn't get it to work.

    As far I am aware there is no 'fix' - it's just a matter of whether you can get away with it or not. On ocassion I have been able to teleport to a nearby location and have them walk to the required room. Obviously this is not always going to be suitable.

    Cheers, Jack :)

×
×
  • Create New...