XComModBridge

⭐ — (17 endorsements) 📥 386 downloads 📌 v2.0 📅 6/7/2017
⚪ Last updated 2024

By AzXeus · Utilities

⬇ Download Mod Source: Nexus Mods ↗ 📅 Updated: 8/7/2024 📅 Created: 6/7/2017

🔍 Analysis

  • 🏆 #24 of 31 Utilities mods in this game by downloads

📋 About This Mod

This is a modding utility that aims to make it easier to use the built-in Mod Loader. It's use is similar to the Mutator method created by WGhost but allows two-way traffic instead of only one way. It acts as a "Bridge" between the game

Installation:

  • []put XComModBridge.u into CookedPCConsole folder

    []use patchergui or upkutils to apply XComModBridge.txt patch

    []open DefaultGame.ini and at the bottom create new section then under that the line: ModNames=XComModBridge. ModBridge

    Usage:

    You can access ModBridge in any actor class (any class that extends actor down the line) by using the line XComGameInfo(WorldInfo. Game). Mods any class that isn't an actor will have to use XComGameInfo(class'Engine'.static. GetCurrentWorldInfo(). Game). Mods

    in hex(psuedocode) this looks like: 10 25 19 2E <Class. XComGameInfo> 19 01 <Engine. Actor. WorldInfo> [@] <Engine. WorldInfo. Game> 00 ( 01 <Engine. WorldInfo. Game> ) [@] <XComGameInfo. Mods> 00 ( 01 <XComGameInfo. Mods> )or

    10 25 19 2E <Class. XComGameInfo> 19 12 20 <Engine. Engine> [@] <Engine. Engine. GetCurrentWorldInfo. ReturnValue> 00 ( 1B <GetCurrentWorldInfo> 16 ) [@] <Engine. WorldInfo. Game> 00 ( 01 <Engine. WorldInfo. Game> ) [@] <XComGameInfo. Mods> 00 ( 01 <XComGameInfo. Mods> )

    There are functions that are built into ModBridge that act as Variables which can be written to or accessed in the base upks from the game, this works because for functions the upk only needs a 'name' (text stored in the .upk file) reference rather full knowledge of the new script file: 19 ... ... [@] <NullRef> 00 ( 1B <StrValue0> 1F <%t "Sometext"> 16 )the functions and their uses are as follows:

    • []string StrValue0(optional string str, optional bool bForce)

      []string StrValue1(optional string str, optional bool bForce)

      []string StrValue2(optional string str, optional bool bForce)

      []int IntValue0(optional int I = -1, optional bool bForce)

      []int IntValue1(optional int I = -1, optional bool bForce)

      []int IntValue2(optional int I = -1, optional bool bForce)

      []array<string> arrStrings(optional array<string> arrStr, optional bool bForce)

      []array<int> arrInts(optional array<int> arrInt, optional bool bForce)

      any function called without a parameter will return their previously stored value including the arrays which will look like arrInts(); or 10 2C 02 1B <arrInts> 1610 2C 02 19 ... ... [@] <NullRef> 00 ( 1B <arrInts> 16 )

      if you give the first parameter that will be stored to return later, the bForce option to force the first parameter to be stored (useful if you want to make sure stored value is overwritten even with default values such as -1, 0, or "")

      ModSorter:

      There is also a System to access external scripts by name that are added into the XComMod system.

      First off the Class which you want to add MUST extend XComMod.

      you can use this by adding your package to the CookedPCConsole folder and in the defaultGame.ini add under the section a line ModNames[(>0)]=. such as ModNames=MyMod. MyClass

      Note: don't use , make sure XComModBridge is always else this will break some things.

      To access your Script without knowing what number it is in ModNames list use the ModBridge function Mods:

      • []XComMod Mods(string ModName, optional string funtName, optional string paras)

        Then you have two options to access your functions, if functName is blank then the function will return your Mod and you will be able to access your functions directly, BUT the function MUST be called a 'name' that is already contained in the upk you are trying to access it from eg:

        XComGameInfo(WorldInfo. Game). Mods. Mods("MyMod. MyClass"). SoldierState("sometext", -3);

        19 19 10 25 19 2E <XComGame. XComGameInfo> 19 01 <Engine. Actor. WorldInfo> [@] <Engine. WorldInfo. Game> 00 ( 01 <Engine. WorldInfo. Game> ) [@] <XComGameinfo. Mods> 00 ( 01 <XComGameInfo. Mods> ) [@] <NullRef> 00 ( 1B <Mods> 1F <%t "MyMod. MyClass"> 16 ) [@] <NullRef> 00 ( 1B <SoldierState> 1F <%t "sometext> 1D <%i -3> 16 )If the function were called SoldierStateSort instead this would not work because the upk file doesn't know what that is.

        The other option is the specify functName which will access the StartMatch() function of your mod class while storing functName and paras, you will want to add XComModBridge to your UDK project and set your StartMatch() function up something like this:

        simulated function StartMatch()

📊 Mod Details

Game
Xcom Mods
Author
AzXeus
Version
2.0
Downloads
386
Endorsements
17
Category
Utilities
Created
6/7/2017
Updated
8/7/2024
Tags
Modder's Resource, Utilities for Modders

🔧 How to Install XCOM: Enemy Unknown Mods

Install via a mod manager (Vortex or Mod Organizer 2). Most mods drop into the game folder.

📖 Full step-by-step install guide for XCOM: Enemy Unknown →

Visit the official mod page for specific installation instructions for this mod.

🎮 Need cheat codes or console commands? Check ur gaming wiki for XCOM: Enemy Unknown commands, item IDs, and more.

Keep browsing — more XCOM: Enemy Unknown mods await

📋 All XCOM: Enemy Unknown Mods 🏆 Top 25 📂 More Utilities 👤 More by AzXeus 🔎 Similar Mods 🌐 Best Utilities (All Games) 💾 Save Files 🔀 Check Compatibility ⚖️ Compare Mods 🆕 New Mods