Content: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Background: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Pattern: Blank Waves Notes Sharp Wood Rockface Leather Honey Vertical Triangles
Welcome to Xbox Chaos: Modding Evolved

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

Sign in to follow this  
Followers 0
7ime

Retail
Changing a Player's Biped

10 posts in this topic

Please note that this tutorial is not written using the newest version of KSoft but the old repack version.

 

This tutorial is long overdue, but here it goes.

If you would like to force someone's biped to a monitor in Halo Reach, simply add the following PlayerObject and Trigger.

 

1.  Add PlayerObject0 to Objects under PlayerVariables

    <PlayerVariables>      <Objects>        <var networkState="HighPriority" name="PlayerObject0" />      </Objects>    </PlayerVariables>

2.  Add this trigger under Triggers

      <Trigger execMode="OnEachPlayer" name="TriggerMonitor">        <Elements>          <E type="Condition" name="ObjectIsSameType" unionGroupID="-2">            <Param type="ObjectReference" varRefType="Player.SlaveObject" dataType="Iterator.Player"></Param>            <Param type="ObjectTypeIndex">spartan</Param>          </E>          <E type="Condition" name="ObjectIsSameType" unionGroupID="-3">            <Param type="ObjectReference" varRefType="Player.SlaveObject" dataType="Iterator.Player"></Param>            <Param type="ObjectTypeIndex">elite</Param>          </E>          <E type="Action" name="CreateObject">            <Param type="ObjectTypeIndex">monitor</Param>            <Param type="ObjectReference" varRefType="Player.ObjectVar" dataType="Iterator.Player">PlayerObject0</Param>            <Param type="ObjectReference" varRefType="Player.SlaveObject" dataType="Iterator.Player"></Param>            <Param type="ObjectFilterIndex">NONE</Param>            <Param type="CreateObjectFlags">0</Param>            <Param type="UInt24">7</Param>            <Param type="NameIndex">NONE</Param>          </E>          <E type="Action" name="DeleteObject">            <Param type="ObjectReference" varRefType="Player.SlaveObject" dataType="Iterator.Player"></Param>          </E>          <E type="Action" name="PlayerSetUnit">            <Param type="PlayerReference" varRefType="ExplicitPlayerType" dataType="Iterator.Player"></Param>            <Param type="ObjectReference" varRefType="Player.ObjectVar" dataType="Iterator.Player">PlayerObject0</Param>          </E>        </Elements>
Edited by 7ime

Share this post


Link to post
Share on other sites

Glad you posted a tutorial on this! When I first attempted this in Reach, I spent countless hours trying to get it to work but never could.

Share this post


Link to post
Share on other sites

I would set the unit before deleting the old biped.

The way I have it set up is to use a minimum amount of variables.  In my testing there has been no noticeable difference from doing it this way compared to a more thorough way that I used in the past.  Thanks for the input, let me know if you experience something different.

Share this post


Link to post
Share on other sites

K, so the culprit is Uint24 & if I change it, no monitor., so what should I do? I was only doing this for GW thinking this tut was fully functional but I guess i was wrong, so now I'm going back to building minecraft shenanigans. ;) toodles.

Edited by Cosmic lightning

Share this post


Link to post
Share on other sites

K, so the culprit is Uint24 & if I change it, no monitor., so what should I do? I was only doing this for GW thinking this tut was fully functional but I guess i was wrong, so now I'm going back to building minecraft shenanigans. ;) toodles.

Are you using ksoft 5040? If so, replace the UInt24 with a Point3d, with the z value being 7.

7ime likes this

Share this post


Link to post
Share on other sites

The newer KSoft uses point3d instead of UInt24.


*couldn't get it to post from my tablet, but OrangeMokawk beat me to it anyways.

*after looking at his code, assuming he sent me the right code, he wasn't even using the same code that is in the tutorial, sooo... we'll see.

*problem solved; he edited in the wrong DBID's.

Edited by 7ime

Share this post


Link to post
Share on other sites

The newer KSoft uses point3d instead of UInt24.

The newer KSoft uses point3d instead of UInt24.

The newer KSoft uses Point3d instead of UInt24.

The newer KSoft uses Point3d instead of UInt24.

 

I did that and it went through, but no biped as a monitor. 

 

7Ime & I figured it out. Used wrong dbid's. lol. 

Edited by Cosmic lightning

Share this post


Link to post
Share on other sites

So i've both the newest version of KSoft and the repack but I can't get it to encode either way. Did something change on this?

Share this post


Link to post
Share on other sites
Sign in to follow this  
Followers 0