The Infinity Blade Forums Have Moved

We've launched brand new Infinity Blade forums with improved features and revamped layout. We've also included a complete archive of the previous posts. Come check out the new Infinity Blade forums.
See more
See less

This is how to put a monster in a room/cage and make him stay

  • Filter
  • Time
  • Show
Clear All
new posts

  • This is how to put a monster in a room/cage and make him stay

    I searched the forums and couldn't find an answer for how to make monsters stay where I wanted them to. I banged my head against the monitor a few times and came up with this. Really, I wasn't sure if I should post this here or in the scripting forum, but I decided to do it here. It involves re-subclassing the ScriptedController since whenever you change the MonsterController, it changes back.

    How to put a monster in a room/cage and make him stay

    1. Go to the Actor Classes Viewer
    2. Deselect Placeable classes Only?
    3. Go to Controller - AIController - ScriptedController
    4. Right Click ScriptedController and click New
    5. For the package, put in myLevel and for the Name use a name for your new monster controller class (eg. MyMonsterController)
    6. Go to Controller - AIController - ScriptedController - MonsterController
    7. Right Click MonsterController and click Edit.
    8. Select all of the unreal script starting from //AI Magic numbers to the end and hit Ctrl-C (for copy)
    9. Right click your monster controller class (eg. MyMonsterController) and hit edit
    10. Click at the bottom of the script. Then hist Ctrl-V (for paste)
    11. Find the line:

    Pawn.SetLocation(N.Location+(Pawn.CollisionHeight - N.CollisionHeight) * vect(0,0,1));

    comment it out so that it looks like this:

    // Pawn.SetLocation(N.Location+(Pawn.CollisionHeight - N.CollisionHeight) * vect(0,0,1));

    12. Compile changed scripts
    13. Place an UnrealScriptSequence and a Monster pawn in your cage/room
    14. In the script properties go to AIScript->ControllerClass. Select your controller class from the drop down menu (eg. MyMonsterController)
    15. Go to Events->Tag and give the script a name (eg. monsterscript)
    16. In the monster's properties, go to AI->AIScriptTag and put in the scipt name for the UnrealScriptSequence (eg. monsterscript)
    17. Re-build your level and test.

    There are probably more elegant ways to do this, but this suited my purposes of keeping that pesky pupae locked in his little cage protecting the rocket launcher. Tie this to one (Mr. Evil's indestructible pupae), and you have a real threat!

    I wrote this down in a hurry, but I think it is complete.

  • #2
    works a F******G TREAT!!!