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.


  • Content count

  • Joined

  • Last visited

About Akarias

Profile Information

  • Gender
  • Location
    0x3F4, 0x4A4
  • Interests

Contact Methods

  • Skype
    Use Discord ya scrub: Akarias #0213

Recent Profile Visitors

7,228 profile views
  1. Creating custom maps, the old school way. A quick overview on how custom maps were made back in the Halo 2 Xbox days, applied to Halo 3. This isn't a tutorial just a glance over. We will be going through the process of creating a custom map but in the old school way of mulling out BSP geometry and using any objects that we can salvage from the single player campaign maps. So the first thing we need is some objects to actually use. Back in the days of Halo 2 we would use machines from the campaign as custom geometry and the basis for our custom map. So image a map from Halo 3, remove all its native geometry and you suddenly have a blank canvas that you can populate. It's important to note the bounds of the BSP and use the largest possible map and also take into account the maps physics size on the disc, as I want to have quite a lot of single player assets injected, namely quite a lot of AI related tags. An example of using this method is shown in the platforms map that I showed a few months ago, the platforms are actually machines from Ditto, in engine. Note missing pieces. Something to take into account is lighting, broken lighting can be resolved by using fake light maps. Replace the existing bitmaps with blank ones, experiment for the best outcome. Plan things out. You can use a program such as 3DSMax for this along with Adjutant's import script to get all the objects you may need into a scene and pieced together. Set your unit setup to 100 inches and you will have one to one coordinates just like in engine. By far the best maps to use my opinion would be those from the DLC maps as they tend to contain all the weapons and vehicles that you may want. Don't forget about file sizes! The last thing you want is to be half way through a maps creation and run out of space from being a idiot and injecting too much garbage... Yikes. Don't forget you can always scale and object's render model and physics model to make it larger or smaller! Lots of things can be built doing this. So you have a target map and some objects to use for the basis of your maps geometry, lovely. Lets remove all the existing BSP geometry so we can get down to populating our map with new geometry. Take a look at your map's SBSP tag, before you can go about clearing it out you need to understand how the map is constructed. The bulk of a map is created from two things: Clusters and Instanced Geometry. Clusters are typically used for the displaced terrain of a map, think of the sand dunes on shrine. Instanced Geometry tends to be all the more complex and convex pieces of geometry, the multiple pieces of the tombs on shrine and the scattered parts of the crashed phantom are all instanced pieces of geometry. To give you a better idea I was working on a map called Thunderdome until I reached space issues (Hint Hint) and ended up moving away from it. Thunder dome is actually made from a single player BSP injected into sandbox and given a nice back drop with a enlarged scenery piece to fill up the backdrop. But on this BSP is a big ugly ass half of a boat that takes up a lot of space, I actually removed it from the BSP. How you ask? Instanced geometry. This ugly thing. Poof. No more ugly boat. If you extract a BSP using Adjutant and import it to 3DSMax you can see all the various pieces of Instanced Geometry and various Clusters that actually make the map. Following this information you can selectively remove the geometry from the map just by scaling it down to 0. This also removes the collisions thankfully so no need to panic about dealing with MOPPs. With clusters things are slightly different and we will talk about them later. But as a quick experiment you can find a piece of Instanced Geometry in 3DSMax and then goto its block in Assembly, make a few changes and finally poke or save. Load up the map and observe the changes you have made. So with this logic in your head you can simply set the scale of all instanced geometry in a map to 0 as a means of removing almost all of its geometry, after that you can either manually remove the clusters or just set their rmtr bitmaps to invisible ones. You will now have a big empty map. Remove any extra spawned items like vehicles from their relevant blocks in the SCNR tag. Now its starting to feel really empty indeed. Shrine with all its Instanced Geometry removed. You can now get onto the hard part, building a new map from only things that you have injected or salvaged. Machines... objects... anything that has proper collisions will work. Add in some spawn points and you are on your way. Set a custom sky dome up add some weather effects and now you have something truly unique. This is how I used to do things years ago, there was very little information on forums combined with good old dial up I had to figure most of this out on my own back in the days of Halo 2. It's kind of stuck when since then so I thought I'd write out my process here for all of you to enjoy or mock. Yikes. No one seems to really have done this for any of the modern games, so why not give it a go? make some stuff!
  2. Modding

    Experiment with them, you can add another trigger set to a different button for an alternative projectile to be fired too. You can use that to get around the lack of charge support on latch style triggers. Alternatively you can use the primary/secondary barrel fields for this.
  3. Modding

    You need to change the firing trigger to latch, look at the battle rifle for an example. Rate of fire is normally done with the recovery time. Projectile spread is done with the projectile error, error meaning spread of course. There are multiple types of error to choose from, use the dropdown to choose an enum for it.
  4. Modding

    Take a look at weapon ageing, rather than using magazine block they rely on weapon ageing instead. With each shot reducing the total age until it hits 0.
  5. Modding

    Take a look at the Triggers section, this controls how the Barrels of the weapon are used. Take a look at Barrels for both of the fired projectiles. 0 Being the single shot and 1 being the charged shot.
  6. (H2X) ScriptTools Beta

    Version Unknown

    1 download

    A script compiler/decompiler created by Soldier of Light some years ago. Original readme is below:
  7. I used to use this a few years ago, you can also use a version of entity for it too iirc.
  8. General Git clone it from here, compile and run.
  9. General

    Disclaimer: all going from memory on this, its been a while. I may be missing steps but should be something along these lines. (This is for Halo Reach, so plugin layout will be different) Not all assets are loaded at the same time due to memory constraints on the console. Easy but potentially unstable fix (depending on the amount of tags loaded): Use the "Force Load" context menu command from the Dev branch of assembly to force a tag to be always loaded regardless of the set. OR To do things correctly adjust the correct Designer Zoneset to include the tag you want loaded. You will need to add the relevant tag from a palette into the relevant Designer Zoneset so that it actually gets loaded. Take a look at your Scenario Zoneset Groups to find out what set you need to adjust. Look at the loaded BSPs to find what
  10. Support

    No... its dosent. It applies to all teams regardless of how they are spawned. Its not squad specific.
  11. Support

    Use the ai_allegiance script ops to adjust how teams are aligned. Lets you change the allegiance of teams as a whole with each other. Bonus points for using the mp version to align MP teams with AI teams, good fun.
  12. Well look what I found: What a coincidence. Jeez the forum is dead these days. But hey a whole bunch of rendered strings that we can easily high jack to do some stuff with, nice. 0x83151067 for future reference. Pretty sure zedd showed something like this years ago. So if we write a formatted string to that buffer it will just display it I guess.
  13. Support

    Use the DEV branch of Assembly, go into the scripts page, set "Enable Extra Infomation" to on (Bottom left). You will see new information in the script decompiler, goto the script responsible for applying the animation. Its now a case of finding the expression and adjusting it. you will need to adjust the expressions after `custom_animation_loop`, the stringID is just the data sections at 0x10. Group expressions represent a set of parenthesis `( *** )` Group expressions point towards two expressions, the next expression index represents the expression that will come after the group. The data is a ExpressionDatum that will point to the expression placed inside the parenthesis. A function expression represent an opcode eg: physics_set_gravity. A function expression will just point to the next expression to come after it. So the following would be: (sleep 100) would be equal to: Group ---> Function ---> Function Just scroll through them until you find the opcode for custom_animation_loop and it is a function_name. You can then arguments for it, they will be directly after it. OR <----- Rename the animation in the brutes animation so that it matches what the originals are called.
  14. Support

    There is no public script compiler, the "Gameleak GTFO" was something of an inside joke years ago. You will have to manually edit the script expression that contains the stringID for the animation. Script Expressions are in the Scenario [SCNR] tag.
  15. Node generator n stuff. Go learn Halo CE scripting. [Link] Scripting Guide by TCK [Link] Kornman's BSL Bible [Link] CE Script