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.

Zone

Basic Tag Injection Tutorial

32 posts in this topic

Things you will need
- Assembly can be found here *Edit 3/6/2014: The new rawpage_tag_container Assembly build was updated which skips over sounds when injecting so...*

 

 

and how to compile here.
- Campaign, shared, and mainmenu maps for the selected Halo game you want to do tag injection in
- RGH/Dev kit/JTAG/Demo kit/Test Kit/Reviewer Kit
- Time
- Don't give up
- Time
- Patience
- Xex with checks removed
  Halo Reach
  Halo 3
  Halo 3: ODST

I'll be doing this tutorial for Halo 3 as the process is the similar for Halo Reach, and for Halo 3: ODST,
but Halo Reach is more prone to freezing so make sure you thoroughly search through the tag
to find sounds.
Also Halo Reach can get errors when injecting the tag.
In addition Halo 4 injection is not fully completed. You also can't inject Halo 3 tags into Halo reach,
Halo Reach into Halo 3; as there is little research done.
You can kind of do Halo 3: ODST into Halo 3 but be careful Halo 3: ODST has some classes that are laid out differently.

If I were you I would use the ODST so you can fallow along.

Also you can not poke any of this.

 

I hope this help aid you!
----------------------------------------------------------------------------------------
Setting up Assembly

1) Setting your Specific Resource Cache

Get the campaign, shared and mainmenu maps for the game you are doing tag injection in.
Since I'm doing Halo 3 I'll need the halo 3 campaign, shared and mainmenu maps, which you can get from the maps folder using xexmenu and putting them on a usb or
using a FTP ( File Transfer Protocol) client.

Once you have the 3 maps, make a folder, the folder can be anywhere I just have mine with my modding stuff. Just remember you can't move this folder once you have the
file path pasted in "Specific Resource Cache", if you do change it you would have to go back into the settings and change the file path to the new one.

Now that you have a folder with all 3 maps, right click on one of the maps and go to properties

019nVe6.pngOnce in properties copy the location.

HzC7bK6.png

For example mine is C:\Mods\Games\Resources cache paths\Halo 3


Now, open assembly and go into Tools>settings>Map Editor and where it says game "Specific Resource Cache" select the game you want to inject tags into.
If you're doing Halo 3 pick Halo 3 and if you are doing Halo Reach pick Halo Reach (you will need the halo reach campaign, shared, and mainmenu maps).
Now, where it says "Resource Cache Folder Path" paste the path of the folder with the campaign, shared, and mainmenu maps in it.

xZRHKQC.png

once pasted go to the end of the file path and put a backslash "\" at the end because the trailing slash shows a directory.

For me I will change:
C:\Mods\Games\Resources cache paths\Halo 3
to
C:\Mods\Games\Resources cache paths\Halo 3\

----------------------------------------------------------------------------------------
2) Nulling sounds and other things

Open the map you want to extract the tag from, I'll be opening 070_waste (Ark).
Go to the tag you want to extract I'll be extracting the ODST [bipd] - biped tag.

Open the tag up, remember that some sounds are in multiplayer maps already so you don't have to null them.
These sounds are usually in the [bipd] tag itself
Example:
"Melee Impact" is a sound, but since its already in all the maps you do not need to null it.

 

Also, sometimes the [bipd] tags have "Dialogue Variants" you will need to null.
u5fNPhZ.png
For all Halos
You will need to null sounds that are in the [jmad] - model animation graph of the object, or bipd under the "Sound" reflexive.
The ODST, I'm going to have to null sounds that have "marine" in the name, reason being the other sounds that have elite, masterchief, or a gun in the name

are already in multiplayer maps.

DV8AkKJ.png

If you are doing a brute look for the sounds that have "brute" in the name.

 

*IMPORTANT*
When I injected the Grunt tag  I did not null any sounds in the [foot] - material effect tag so I think you can skip over nulling sounds in the [foot] tag for Halo 3, but some bipeds like the hunter, and jackal you will need to null the sounds in [foot] OR change the referenced [foot] in the [bipd] tag to fx\material_effects\objects\characters\masterchief to prevent freezing when killed.

With Reach you might want to null the sounds in the [foot] tag to prevent freezes as I said Halo Reach injection is not perfect, but it has been reported that people have extracted tags without nulling any sounds (not just in the [foot] tag) and the map still loaded without any errors. As with Halo 3 ODST I'm not sure if you should null or skip over nulling sounds in the [foot] tag.

*With that being said you can skip this, but if it freezes when you die fallow*
for Halo 3, maybe Halo 3: ODST, and maybe Halo Reach.
And the [foot] (located in the [bipd] tag if it is a biped)
x5dXUxl.png

 

 

In Halo 3 in the [foot] tag the parent reflexive of the "Sounds" reflexive is called "Attachments" and in Halo Reach in the [foot] tag the parent reflexive of the "Sounds" reflexive is called "Effects". Lastly, Halo 3: ODST in the [foot] tag the parent reflexive is called "Unknown" and the sounds reflexive is not called sounds it is also called  "Unknown".

The [foot] tag for Halo 3:OepejN3.png

The [foot] tag for Halo Reach:S7J0yZi.png

The [foot] tag for Halo 3: ODST:CfMUzm8.png

Fixed foot ODST plugin

Here is a link to a plugin for ODST that has the child reflexive
"Unknown" saying "Sounds". To use 

Go into the Plugins folder>ODST drop the .xml there, it will ask you to replace click move, and replace.

 

 

For the ODST the [foot] that is used is masterchiefs so I do not need to null any sounds in it because masterchiefs [foot] is in every map.
fx\material_effects\objects\characters\masterchief

 

But if i did a hunter I could either null all the sounds in the [foot] tag OR swap the hunter [foot] for masterchiefs



*Only applies to Halo Reach!
In Halo Reach there is "Frame Events" [frms], "Frame Events" are located in the [jmad] of the object, or biped.
You can search the [jmad] tag for
frame Events
LrW0wVk.png
Once you found "Frame Events" click "Open this tag in a new tab" and under the "Unknown 0" reflexive you will find sounds to null. Like I mention last time sounds that have elite, masterchief, or a gun in the name are
already in multiplayer maps. Lastly I seen people Inject tags without nulling sounds in the [frms] tag, I would null them to prevent freezes.*



*Only applies to Halo 3: ODST!
In Halo 3: ODST in the [hlmt] - model tag of a biped
(Example: objects\characters\odst_recon\odst_recon)
There is a reflexive called "Variants" under it there is "Unknown" with referenced [udlg] - dialogue, go through each chunk and null each [udlg]
n8cgjrW.png
OR
Go through each referenced [udlg], under the "Variants" reflexive, and for each [udlg] click "Open this tag in a new tab"
and null every sound under the "Dialog Info" reflexive, don't forget to go through each chunk. (a lot more work)
db3lYUN.png
*

Applies to all Halos
If you're doing a vehicle, in the [vehi] tag, under the reflexive "Weapons", vehicles sometimes have unique weapons
Example:
The Phantom has a turret
objects\vehicles\phantom\plasma_turret\weapons\phantom_turret
You will need to null a lot of sounds for weapons.
-[proj] - projectile class has sounds
-[foot] - material effect has sounds
-[effe] - effects class  has sounds
You will be better off nulling the "Weapon" reflexive in the [vehi] class.

 

Sometimes Bipeds have there own weapons example:

The hunter

But wait! There's more
Some weapons like the elephant's turret
objects\levels\multi\shrine\behemoth\behemoth_turret
uses the warthogs machine gun sounds
So you do not need to null the "Weapons" reflexive in the [vehi] tag.

 

----------------------------------------------------------------------------------------
2a) Other things to null

Applies to all Halos
In the [mode] - render model under the "Shaders" reflexive there are sometimes [rmgh] - shader halograms (I See what you did there Bungie), go through each chunk and look for any [rmgh].
Example: objects\vehicles\longsword\longsword has a couple [rmgh]
H1hkFge.png

To sum up basic nulling (not including the game specific):

Null all sounds in [jmad] with "(insert name of the thing here)"

example for the ODST some sounds in [jmad] have "marine" in the name so null them,

and keep the other sounds that have elite, masterchief, or a gun in the name

Null [rmgh] in mode under the "Shaders".
----------------------------------------------------------------------------------------
2b) Extracting the tag
make sure you save once you nulled all the sounds!

It is time to extract the tag.

Right click on the selected tag and hit "extract"

It will take a while to extract the tag so leave Assembly alone, touching Assembly during this process can cause Assembly to crash.

----------------------------------------------------------------------------------------
2c) Injecting the tag

Open the map you want to inject the tag into
I'll be using Sandbox

Once opened go to Tags click "Import..." and find the tag you just extracted

Again It will take a while to inject the tag so leave Assembly alone, touching Assembly during this process can cause Assembly to crash.

Once done hit save and you are finished!

Place the map back onto your console

Now If you have been fallowing with me by doing the ODST you can go into [matg] globals
Using the search feature
Search for "Third Person Unit" and change the [bipd] to objects\characters\odst\odst
Or whatever biped you injected
 

----------------------------------------------------------------------------------------
4) Possible errors and solutions

"Disk Not Clean" - Then open the original map (the one you extracted the tag from, mine is 070_waste) search the tag for sounds and re-extract

If it loads and when you move it freezes - Then open the original map (the one you extracted the tag from) and re-extract the tag.
This happened to me with the brute all I did was re-extract the tag.

 

EDIT: In Halo 3 you can't add injected stuff to the spawn list, that only works for Halo Reach

 

Thanks to:

OrangeMohawk, and
The whole Assembly team

Edited by Lehvak

Share this post


Link to post
Share on other sites

Great tutorial :smile:. I hope this doesn't get buried under the megalo in 5 mins lol.

Haha thanks

 

Thanks for an updated tutorial.

No problem! I'm working on the AI one now.

Edited by Lehvak

Share this post


Link to post
Share on other sites

Might have fixed it.

I've entered the directory of where the shared, campaign and mainmenu.map files are located. Yes I've also made sure they're clean and have the "\" at the end. I've been having this problem for a while now.. 

qf5ldnX.png

Edited by The404Spartan

Share this post


Link to post
Share on other sites

Might have fixed it.

I've entered the directory of where the shared, campaign and mainmenu.map files are located. Yes I've also made sure they're clean and have the "\" at the end. I've been having this problem for a while now.. 

qf5ldnX.png

Are you using Atlas?

Edited by Lehvak

Share this post


Link to post
Share on other sites

Nope.

What does it say when you have the file path set in settings (remember you do not have to add the path manually) and you try to extract something?

Share this post


Link to post
Share on other sites

Cant wait for the AI one! :D I want to inject AI in Halo 3 so bad same with Reach! :D


Cant wait for the AI one! :D I want to inject AI in Halo 3 so bad same with Reach! :D

Share this post


Link to post
Share on other sites

What does it say when you have the file path set in settings (remember you do not have to add the path manually) and you try to extract something?

Here's what my path says: "Z:\Xbox\Injection Program\Halo Reach\Backup\"

ie) I extract the frigate and everything goes fine. Assembly only crashes when I inject it.

Share this post


Link to post
Share on other sites

Here's what my path says: "Z:\Xbox\Injection Program\Halo Reach\Backup\"

ie) I extract the frigate and everything goes fine. Assembly only crashes when I inject it.

Feel like that is an issue with Assembly.

 

Is this the error you get?

Error:

System.ArgumentNullException: Value cannot be null.

Parameter name: resource is null

at Blamite.Injection.TagContainerInjector.InjectResource(ExtractedResourceInfo resource, IStream stream)

at Blamite.Injection.TagContainerInjector.FixResourceReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectDataBlock(DataBlock block, IStream stream)

at Blamite.Injection.TagContainerInjector.FixBlockReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectTag(ExtractedTag tag, IStream stream)

at Blamite.Injection.TagContainerInjector.FixTagReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectDataBlock(DataBlock block, IStream stream)

at Blamite.Injection.TagContainerInjector.FixBlockReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectDataBlock(DataBlock block, IStream stream)

at Blamite.Injection.TagContainerInjector.FixBlockReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectTag(ExtractedTag tag, IStream stream)

at Blamite.Injection.TagContainerInjector.FixTagReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectDataBlock(DataBlock block, IStream stream)

at Blamite.Injection.TagContainerInjector.FixBlockReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectTag(ExtractedTag tag, IStream stream)

at Blamite.Injection.TagContainerInjector.FixTagReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectTag(ExtractedTag tag, IStream stream)

at Assembly.Metro.Controls.PageTemplates.Games.HaloMap.btnImport_Click(Object sender, RoutedEventArgs e)

at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)

at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)

at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)

at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)

at System.Windows.Controls.Primitives.ButtonBase.OnClick()

at System.Windows.Controls.Button.OnClick()

at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)

at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)

at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)

at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)

at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)

at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)

at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)

at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)

at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)

at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)

at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)

at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)

at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)

at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)

at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)

at System.Windows.Input.InputManager.ProcessStagingArea()

at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)

at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)

at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)

at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)

at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)

at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)

Edited by Lehvak

Share this post


Link to post
Share on other sites

Feel like that is an issue with Assembly.

 

Is this the error you get?

Error:

System.ArgumentNullException: Value cannot be null.

Parameter name: resource is null

at Blamite.Injection.TagContainerInjector.InjectResource(ExtractedResourceInfo resource, IStream stream)

at Blamite.Injection.TagContainerInjector.FixResourceReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectDataBlock(DataBlock block, IStream stream)

at Blamite.Injection.TagContainerInjector.FixBlockReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectTag(ExtractedTag tag, IStream stream)

at Blamite.Injection.TagContainerInjector.FixTagReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectDataBlock(DataBlock block, IStream stream)

at Blamite.Injection.TagContainerInjector.FixBlockReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectDataBlock(DataBlock block, IStream stream)

at Blamite.Injection.TagContainerInjector.FixBlockReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectTag(ExtractedTag tag, IStream stream)

at Blamite.Injection.TagContainerInjector.FixTagReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectDataBlock(DataBlock block, IStream stream)

at Blamite.Injection.TagContainerInjector.FixBlockReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectTag(ExtractedTag tag, IStream stream)

at Blamite.Injection.TagContainerInjector.FixTagReferences(DataBlock block, IWriter buffer, IStream stream)

at Blamite.Injection.TagContainerInjector.WriteDataBlock(DataBlock block, SegmentPointer location, IStream stream)

at Blamite.Injection.TagContainerInjector.InjectTag(ExtractedTag tag, IStream stream)

at Assembly.Metro.Controls.PageTemplates.Games.HaloMap.btnImport_Click(Object sender, RoutedEventArgs e)

at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)

at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)

at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)

at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)

at System.Windows.Controls.Primitives.ButtonBase.OnClick()

at System.Windows.Controls.Button.OnClick()

at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)

at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)

at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)

at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)

at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)

at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)

at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)

at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)

at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)

at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)

at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)

at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)

at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)

at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)

at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)

at System.Windows.Input.InputManager.ProcessStagingArea()

at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)

at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)

at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)

at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)

at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)

at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)

at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)

Yeah

Share this post


Link to post
Share on other sites

Yeah

Like I stated in the OP.

Also Halo Reach can get errors when injecting the tag.

Edited by Lehvak

Share this post


Link to post
Share on other sites

Strange because I was able to inject the entire Frigate from the first raw page build last year. Oh well.

Yeah they need to fix Halo reach injection, Halo 3s injection was the one they were mainly working on to automate the process.

Share this post


Link to post
Share on other sites

I do not understand any of this, is that someone can send me a file with the tag already installed and ready to forge files? something like this

?

Share this post


Link to post
Share on other sites

I do not understand any of this, is that someone can send me a file with the tag already installed and ready to forge files? something like this 

Tag injection is not an easy one-step process. You'll have to carefully read the tutorial and follow along with it. Lehvak spent alot of time working on this tutorial to lay out every step that you need to do for this, so you'll have to follow along with the tutorial and get something working as the end result, or download what other people have already uploaded to the site.

 

Edit: And if you're looking for getting AI in multiplayer, there are no tutorials out right now but Lehvak is working on a tutorial for that as well.

Zone likes this

Share this post


Link to post
Share on other sites

the only thing I want is to create a kind of flood survivor mode with forge mode, also seen in the video. I ask for help because I see that you are more experienced, the truth is that I have enough time for something like this ... please help .. :blush: :blush: :blush: :blush:

Share this post


Link to post
Share on other sites

the only thing I want is to create a kind of flood survivor mode with forge mode, also seen in the video. I ask for help because I see that you are more experienced, the truth is that I have enough time for something like this ... please help .. :blush: :blush: :blush: :blush:

Since you're saying you have enough time why not practice at it?

Share this post


Link to post
Share on other sites

I got this error when injecting it:

System.UnauthorizedAccessException: Access to the path 'D:\Cdrive\Documents\forge_halo.map' is denied.
   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
   at System.IO.FileInfo.Open(FileMode mode, FileAccess access)
   at Blamite.IO.FileStreamManager.OpenReadWrite()
   at Assembly.Metro.Controls.PageTemplates.Games.HaloMap.btnImport_Click(Object sender, RoutedEventArgs e)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
   at System.Windows.Controls.Primitives.ButtonBase.OnClick()
   at System.Windows.Controls.Button.OnClick()
   at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
   at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)
   at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
   at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
   at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
   at System.Windows.Input.InputManager.ProcessStagingArea()
   at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
   at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
   at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
   at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
Edited by OrangeMohawk
put exception in spoiler

Share this post


Link to post
Share on other sites

 

I got this error when injecting it:

System.UnauthorizedAccessException: Access to the path 'D:\Cdrive\Documents\forge_halo.map' is denied.
   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
   at System.IO.FileInfo.Open(FileMode mode, FileAccess access)
   at Blamite.IO.FileStreamManager.OpenReadWrite()
   at Assembly.Metro.Controls.PageTemplates.Games.HaloMap.btnImport_Click(Object sender, RoutedEventArgs e)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
   at System.Windows.Controls.Primitives.ButtonBase.OnClick()
   at System.Windows.Controls.Button.OnClick()
   at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
   at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)
   at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
   at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
   at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
   at System.Windows.Input.InputManager.ProcessStagingArea()
   at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
   at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
   at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
   at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)

 

Make sure the map isn't open in any other program and that it isn't read-only.

Share this post


Link to post
Share on other sites

Make sure the map isn't open in any other program and that it isn't read-only.

Yeah. The path has 'cdrive' in it. Copy your map to your hard drive and then make it not read-only.

Share this post


Link to post
Share on other sites

Once again! The noob`s satisfied  :tongue: Thanks!

 

Also sorry for not putting a spolier.


Make sure the map isn't open in any other program and that it isn't read-only.

 

 

Yeah. The path has 'cdrive' in it. Copy your map to your hard drive and then make it not read-only.

Once again! The noob`s satisfied   :tongue: Thanks!

 

Also sorry for not putting a spolier.

Share this post


Link to post
Share on other sites

great tutorial! it was helpful but where do you find  for example the lifts or the buildings from the campaign map New Alexandria?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now