Jump to content

Maybe list if Infinate Items and more


Daimond007

Recommended Posts

I have found a few interesting things in the files latly, here is one that seems to indicate Infinate items. was hoping to make smoke infinate, but since theres no refernce to what items numbers are indicating had to find. This may mean nothing though :(

So maybe some of us can figer out if this stuff accualy does something or lest in relation to others.

 

SComStrategyDame.XGStorage Intit.Funtion

function Init()
{
m_arrItems.Add(195);
m_arrItemArchives.Add(195);
m_arrClaims.Add(195);
m_arrInfiniteItems.AddItem(57);
m_arrInfiniteItems.AddItem(3);
m_arrInfiniteItems.AddItem(4);
m_arrInfiniteItems.AddItem(2);
m_arrInfiniteItems.AddItem(85);
m_arrInfiniteItems.AddItem(6);
m_arrInfiniteItems.AddItem(5);
m_arrInfiniteItems.AddItem(7);
m_arrInfiniteItems.AddItem(57);
m_arrInfiniteItems.AddItem(124);
}

 

24 39 16 55 01 49 40 00 00 03 00 - indicates the " m_arrInfiniteItems.AddItem();" changing the value 39 is whats in the brakets

4C 40 00 00 9F 1F 00 00 00 00 00 00 4C 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 17 00 00 00 9B 02 00 00 C0 00 00 00 8C 00 00 00 54 01 4C 40 00 00 2C C3 16 54 01 4B 40 00 00 2C C3 16 54 01 4A 40 00 00 2C C3 16 55 01 49 40 00 00 03 00 24 09 16 55 01 49 40 00 00 03 00 24 03 16 55 01 49 40 00 00 03 00 24 04 16 55 01 49 40 00 00 03 00 24 02 16 55 01 49 40 00 00 03 00 24 55 16 55 01 49 40 00 00 03 00 24 06 16 55 01 49 40 00 00 03 00 24 05 16 55 01 49 40 00 00 03 00 24 07 16 55 01 49 40 00 00 03 00 24 39 16 55 01 49 40 00 00 03 00 24 7C 16 04 0B 53 00 00 00 02 00 02 00 F3 12 00 00 00 00 00 00

 

Heres a list of items that some one already posted I think. XComStrategyGameXGItemTree

Also if you see at the bottom of most things listed in this file you see a Ballance somthing like "BalanceItems(); BalanceFacilities(); " witch seems to relate to the ballance settings in the .exe file but there also seems to be sometimes more listed here in this file then in the exe. so if we have a list of items related to thes numbers we maky beable to have more ballancing stuff.

 

Edit :

iCurrentCategory = 1 ; Weapons and secondary items

1-29 is Weapons, But only 2-19 on list

75-100 Items ( guess Backpack ), but only 76-82, 85,86, 88, 99 listed

 

iCurrentCategory = 2 ; Armors

56-74 is Armor, but only 57-63 on list

 

iCurrentCategory = 6 ; Alien bodies and captives

159-169 Captives, and are Eitems not iItems this time. and only 160-168 listed

 

Updated List Not 100% on all, but appears to fit. Most items seam to not count the 0 listed in some things.

function BuildItems()
{
m_iCurrentCategory = 1;
BuildItem(2, -1, -1, -1, 37); eItem_Pistol
BuildItem(3, -1, -1, -1, 16); eItem_AssaultRifle
BuildItem(4, -1, -1, -1, 54); eItem_Shotgun
BuildItem(5, -1, -1, -1, 31); eItem_LMG
BuildItem(6, -1, -1, -1, 57); eItem_SniperRifle
BuildItem(7, -1, -1, -1, 45); eItem_RocketLauncher
BuildItem(85, -1, -1, -1, 23); eItem_FragGrenade
BuildItem(86, -1, -1, -1, 56); eItem_SmokeGrenade
BuildItem(76, 25, 7, 5, 32);   eItem_Medikit,     	iCash=25, iElerium=0, iAlloys=0,  iTime=7,	iEng=5
BuildItem(88, -1, -1, -1, 2, 6); eItem_AlienGrenade
BuildItem(80, 10, 7, 5, 2, 8); eItem_ArcThrower,	iCash=35, iElerium=0, iAlloys=0,  iTime=7,	iEng=5
BuildItem(99, -1, -1, -1, 17); eItem_BattleScanner
BuildItem(81, 20, 7, 5, 9, 48);  eItem_TargetingModule,	iCash=20, iElerium=0, iAlloys=0,  iTime=7,	iEng=5
BuildItem(82, 20, 7, 5, 10, 36); eItem_ReinforcedArmor,	iCash=20, iElerium=0, iAlloys=0,  iTime=7,	iEng=5
BuildItem(79, 85, 7, 10, 47, 18); eItem_ChitinPlating, iCash=85, iElerium=0, iAlloys=10, iTime=7,	 iEng=15
BuildItem(77, 50, 7, 10, 50, 151, 19); eItem_CombatStims,	 iCash=50, iElerium=0, iAlloys=5,  iTime=7,	 iEng=15
BuildItem(78, 150, 10, 25, 55, 34); eItem_MindShield,	 iCash=150,iElerium=30,iAlloys=10, iTime=10, iEng=35
BuildItem(192, 25, 20, 20, 7, 15, 3, 55); eItem_Skeleton_Key,	 iCash=25, iElerium=10,iAlloys=10, iTime=7,  iEng=15
BuildItem(8, 10, 10, 7, 10, 19, 27);  eItem_LaserPistol,        iCash=10, iElerium=0, iAlloys=10, iTime=7,  iEng=10
BuildItem(9, 25, 15, 7, 12, 19, 28);  eItem_LaserAssaultRifle,	iCash=25, iElerium=0, iAlloys=15, iTime=7,	iEng=12
BuildItem(10, 30, 25, 7, 12, 20, 29); eItem_LaserAssaultGun,    iCash=30, iElerium=0, iAlloys=25, iTime=7,	iEng=12
BuildItem(12, 35, 25, 7, 12, 20, 30); eItem_LaserSniperRifle,	iCash=35, iElerium=0, iAlloys=25, iTime=7,	iEng=12
BuildItem(11, 30, 25, 7, 12, 21, 26); eItem_HeavyLaser,  		iCash=30, iElerium=0, iAlloys=25, iTime=7,	iEng=12
BuildItem(13, 100, 10, 20, 10, 20, 22, 40); eItem_PlasmaPistol,	        iCash=100,iElerium=10,iAlloys=20, iTime=10,	iEng=20
BuildItem(14, 125, 15, 20, 10, 20, 23, 42); eItem_PlasmaLightRifle,		iCash=125,iElerium=15,iAlloys=20, iTime=10,	iEng=20
BuildItem(15, 200, 20, 30, 10, 20, 24, 41); eItem_PlasmaAssaultRifle,	iCash=200,iElerium=20,iAlloys=30, iTime=10, iEng=20
BuildItem(16, 200, 20, 50, 12, 25, 27, 43); eItem_AlloyCannon,	        iCash=200,iElerium=20,iAlloys=50, iTime=12, iEng=25
BuildItem(17, 250, 30, 30, 10, 25, 25, 39); eItem_HeavyPlasma,	        iCash=250,iElerium=30,iAlloys=30, iTime=10,	iEng=25
BuildItem(18, 250, 25, 30, 15, 25, 26, 44); eItem_PlasmaSniperRifle,	iCash=250,iElerium=25,iAlloys=30, iTime=15, iEng=25
BuildItem(19, 275, 35, 40, 15, 40, 30, 38); eItem_BlasterLauncher,		iCash=275,iElerium=65,iAlloys=50, iTime=15, iEng=35
; 20 eItem_FlameThrower
; 21 eItem_PlaceholderWeapon0
; 22 eItem_PlaceholderWeapon1
; 23 eItem_PlaceholderWeapon2
; 24 eItem_PlaceholderWeapon3
; 25 eItem_PlaceholderWeapon4
; 26 eItem_PlaceholderWeapon5
; 27 eItem_PlaceholderWeapon6
; 28 eItem_PlaceholderWeapon7
; 89 eItem_PlaceholderGrenade0
; 90 eItem_PlaceholderGrenade1
; 91 eItem_BEGIN_ALIEN_GRENADES
; 92 eItem_SectoidGrenade
; 93 eItem_FloaterGrenade
; 94 eItem_MutonGrenade
; 95 eItem_CyberdiscGrenade
; 96 eItem_ThinManGrenade
; 97 eItem_END_ALIEN_GRENADES
; 98 eItem_PsiGrenade
m_iCurrentCategory = 2;
BuildItem(57, -1, -1, -1, 12); eItem_ArmorKevlar
BuildItem(58, 25, 15, 10, 10, 14, 10);      eItem_ArmorCarapace,  iCash=25, iElerium=0, iAlloys=15, iTime=10, iEng=10
BuildItem(59, 30, 10, 10, 15, 15, 14);      eItem_ArmorSkeleton,  iCash=30, iElerium=0, iAlloys=10, iTime=10, iEng=15
BuildItem(60, 150, 10, 35, 10, 25, 16, 15); eItem_ArmorTitan,     iCash=150,iElerium=10,iAlloys=35, iTime=10, iEng=25
BuildItem(61, 200, 16, 30, 14, 35, 18, 9);  eItem_ArmorArchAngel, iCash=200,iElerium=35,iAlloys=50, iTime=14, iEng=35
BuildItem(62, 250, 20, 25, 14, 40, 17, 11); eItem_ArmorGhost,	  iCash=250,iElerium=50,iAlloys=40, iTime=14, iEng=40
BuildItem(63, 400, 40, 20, 10, 30, 13, 13); eItem_ArmorPsi,		  iCash=400,iElerium=40,iAlloys=20, iTime=10, iEng=30
; 64 eItem_DLCArmor0
; 65 eItem_DLCArmor1
; 66 eItem_DLCArmor2
; 67 eItem_DLCArmor3
; 68 eItem_DLCArmor4
; 69 eItem_DLCArmor5
; 70 eItem_DLCArmor6
; 71 eItem_DLCArmor7
; 72 eItem_PlaceholderArmor0
; 73 eItem_PlaceholderArmor1
m_iCurrentCategory = 3;
BuildItem(102, 50, 14, 5, 1, 49); eItem_SHIV
BuildItem(103, 100, 25, 14, 10, 14, 1, 50); eItem_SHIV_Alloy
BuildItem(104, 200, 30, 30, 14, 20, 5, 1, 51); eItem_SHIV_Hover
BuildItem(105, 40, -1, -1, 25); eItem_Interceptor, iCash=40, iElerium=0, iAlloys=0,  iTime=-1,	iEng=-1
BuildItem(106, 275, 40, 60, 21, 20, 5, 21); eItem_Firestorm,	iCash=200,iElerium=20,iAlloys=40, iTime=14,	iEng=20
BuildItem(107, -1, -1, -1, 66); eItem_Skyranger
BuildItem(108, 100, 20, 5, 46); eItem_Satellite, iCash=100,iElerium=0, iAlloys=0,  iTime=20,	iEng=5
; 109 eItem_PlaceholderVehicle0
; 110 eItem_PlaceholderVehicle1
BuildItem(113, -1, -1, -1, 1, 52); eItem_ShivMinigun
; 114 eItem_ShivSentry
BuildItem(115, -1, -1, -1, 53); eItem_ShivLaser
BuildItem(116, -1, -1, -1, 65); eItem_ShivPlasma
BuildItem(117, -1, -1, -1, 1, 49); eItem_SHIVDeck_I
BuildItem(118, -1, -1, -1, 50); eItem_SHIVDeck_II
BuildItem(119, -1, -1, -1, 51); eItem_SHIVDeck_III
; 120 eItem_PlaceholderShivUpgrade0
; 121 eItem_PlaceholderShivUpgrade1
BuildItem(123, 25, 7, 5, 11, 2); eItem_IntWeap_I,	iCash=35, iElerium=0, iAlloys=0,  iTime=7,	iEng=5
BuildItem(124, -1, -1, -1, 4); eItem_IntWeap_II {Avaluanch missles i Guess as only Item left in " m_arrInfiniteItems.AddItem(124) " that has no ammo costs and fits catagory}
BuildItem(125, 35, 25, 7, 10, 21, 3); eItem_IntWeap_III,	iCash=35, iElerium=0, iAlloys=25, iTime=7,	iEng=10
BuildItem(126, 100, 20, 20, 10, 20, 28, 5); eItem_IntWeap_IV,	iCash=100,iElerium=20,iAlloys=20, iTime=10, iEng=20
BuildItem(127, 200, 20, 30, 10, 30, 33, 0); eItem_IntWeap_V,	iCash=200,iElerium=20,iAlloys=30, iTime=10, iEng=30
BuildItem(128, 150, 20, 30, 10, 35, 29, 1); eItem_IntWeap_VI,	iCash=150,iElerium=20,iAlloys=30, iTime=10, iEng=35
; 129 eItem_PlaceholderIntWeapon0
; 130 eItem_PlaceholderIntWeapon1
BuildItem(135, 10, 0, 0, 0, 5, 43, 47);  eItem_IntConsumable_Hit,	iCash=10, iElerium=0, iAlloys=0,  iTime=0,  iEng=5
BuildItem(133, 50, 0, 0, 0, 5, 44, 20);  eItem_IntConsumable_Dodge,	iCash=50, iElerium=0, iAlloys=0,  iTime=0,  iEng=10
BuildItem(134, 20, 0, 0, 0, 10, 49, 58); eItem_IntConsumable_Boost,	iCash=20, iElerium=0, iAlloys=0,  iTime=0,  iEng=10
; 136 eItem_PlaceholderIntConsumable0
; 137 eItem_PlaceholderIntConsumable1

m_iCurrentCategory = 4; posably
; 39 eItem_SectoidPlasmaPistol,
; 40 eItem_PlasmaLightRifle_ThinMan,
; 41 eItem_PlasmaLightRifle_Floater,
; 42 eItem_PlasmaLightRifle_Muton,
; 43 eItem_PlasmaAssaultRifle_Muton,
; 44 eItem_HeavyPlasma_Floater,
; 45 eItem_HeavyPlasma_Muton,
; 47 eItem_ZombieFist,
; 48 eItem_ElderWeapon,
; 49 eItem_MutonBlade,
; 50 eItem_OutsiderWeapon,
; 51 eItem_SoldierNoWeapon,
; 52 eItem_Plague,
; 53 eItem_SectopodClusterBomb,
; 193 eItem_SectopodChestCannon

m_iCurrentCategory = 5;
BuildItem(171, 3, 1, -1, -1, 14); eItem_Elerium115,           	iCash=3,  iElerium=1, iAlloys=0,  iTime=-1,	iEng=-1
BuildItem(172, 2, 1, -1, -1, 36); eItem_AlienAlloys,          	iCash=2,  iElerium=0, iAlloys=1,  iTime=-1,	iEng=-1
BuildItem(173, 1, -1, -1, 0);     eItem_WeaponFragment,       	iCash=1,  iElerium=0, iAlloys=0,  iTime=-1,	iEng=-1
BuildItem(191, -1, -1, -1, 40); eItem_Base_Shard
BuildItem(179, 75, -1, -1, 44);  eItem_UFOPowerSource,       	iCash=75, iElerium=0, iAlloys=0,  iTime=-1,	iEng=-1
BuildItem(177, 40, -1, -1, 43);  eItem_UFONavigation,       	iCash=40, iElerium=0, iAlloys=0,  iTime=-1,	iEng=-1
BuildItem(175, 10, -1, -1, 46);  eItem_AlienFood,            	iCash=10, iElerium=0, iAlloys=0,  iTime=-1,	iEng=-1
BuildItem(174, 17, -1, -1, 47);  eItem_AlienEntertainment,  	iCash=17, iElerium=0, iAlloys=0,  iTime=-1,	iEng=-1
BuildItem(176, 10, -1, -1, 48);  eItem_AlienStasisTank,      	iCash=10, iElerium=0, iAlloys=0,  iTime=-1,	iEng=-1
BuildItem(178, 25, -1, -1, 49);  eItem_AlienSurgery,         	iCash=25, iElerium=0, iAlloys=0,  iTime=-1,	iEng=-1
BuildItem(188, 125, -1, -1, 45); eItem_UFOFusionLauncher,    	iCash=125,iElerium=0, iAlloys=0,  iTime=-1,	iEng=-1
BuildItem(180, -1, -1, -1, 193); eItem_HyperwaveBeacon
BuildItem(189, -1, -1, -1, 51); eItem_PsiLink
BuildItem(186, 30, -1, -1, 163); eItem_DamagedUFOPowerSource, 	 iCash=30, iElerium=0, iAlloys=0,  iTime=-1, iEng=-1
BuildItem(184, 20, -1, -1, 199); eItem_DamagedUFONavigation,  	 iCash=20, iElerium=0, iAlloys=0,  iTime=-1, iEng=-1
BuildItem(182, 5, -1, -1, 199);  eItem_DamagedAlienFood,      	 iCash=5,  iElerium=0, iAlloys=0,  iTime=-1, iEng=-1
BuildItem(181, 5, -1, -1, 199);  eItem_DamagedAlienEntertainment,iCash=5,  iElerium=0, iAlloys=0,  iTime=-1, iEng=-1
BuildItem(183, 5, -1, -1, 199);  eItem_DamagedAlienStasisTank,	 iCash=5,  iElerium=0, iAlloys=0,  iTime=-1, iEng=-1
BuildItem(185, 10, -1, -1, 186); eItem_DamagedAlienSurgery,      iCash=10, iElerium=0, iAlloys=0,  iTime=-1, iEng=-1
BuildItem(187, 45, -1, -1, 193); eItem_DamagedHyperwaveBeacon,	 iCash=45, iElerium=0, iAlloys=0,  iTime=-1, iEng=-1
m_iCurrentCategory = 6;
; 141 eItem_CivilianCorpse
; 142 eItem_TankCorpse
; 143 eItem_SoldierCorpse
BuildItem(144, 5, -1, -1, 52);  eItem_SectoidCorpse,		 iCash=5,  iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(146, 5, -1, -1, 53);  eItem_FloaterCorpse,		 iCash=5,  iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(148, 5, -1, -1, 55);  eItem_ThinManCorpse,		 iCash=5,  iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(149, 5, -1, -1, 54);  eItem_MutonCorpse,		 iCash=5,  iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(154, 5, -1, -1, 56);  eItem_CryssalidCorpse,		 iCash=5,  iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(152, 7, -1, -1, 59);  eItem_CyberdiscCorpse,		 iCash=7,  iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(156, 10, -1, -1, 61); eItem_SectopodCorpse,		 iCash=10, iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(157, 2, -1, -1, 60);  eItem_DroneCorpse,		 iCash=2,  iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(153, 15, -1, -1, 58); eItem_EtherealCorpse,		 iCash=15, iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(145, 10, -1, -1, 65); eItem_SectoidCommanderCorpse,    iCash=10, iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(151, 5, -1, -1, 62);  eItem_BerserkerCorpse,		 iCash=5,  iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(150, 8, -1, -1, 63);  eItem_MutonEliteCorpse,		 iCash=8,  iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
BuildItem(147, 6, -1, -1, 64);  eItem_FloaterHeavyCorpse,	 iCash=6,  iElerium=0, iAlloys=0, iTime=-1,	iEng=-1
; 155 eItem_ZombieCorpse
BuildItem(160, -1, -1, -1, 52);	eTech_InterrogateSectoid
BuildItem(162, -1, -1, -1, 53); eTech_InterrogateFloater
BuildItem(164, -1, -1, -1, 55); eTech_InterrogateMuton
BuildItem(165, -1, -1, -1, 54); eTech_InterrogateThinMan
BuildItem(168, -1, -1, -1, 58); eTech_InterrogateEthereal
BuildItem(161, -1, -1, -1, 65); eTech_InterrogateBerserker
BuildItem(167, -1, -1, -1, 62); eTech_InterrogateMutonElite
BuildItem(166, -1, -1, -1, 63); eTech_InterrogateHeavyFloater
BuildItem(163, -1, -1, -1, 64); eTech_InterrogateSectoidCommander
BalanceItems();
}
function BuildFacilities()
{
BuildFacility(1, -1, 0, 0, -1, 0, -1, -5, 2, 67); eFacility_Barracks
BuildFacility(4, -1, 0, 0, -1, 0, -1, -5, 1); eFacility_Hangar
BuildFacility(2, -1, 0, 0, -1, 0, -1, -3, 2); eFacility_Research
BuildFacility(5, -1, 0, 0, -1, 0, -1, -4, 1); eFacility_MissionControl
BuildFacility(3, -1, 0, 0, -1, 0, -1, -2, 1); eFacility_Research
BuildFacility(6, 50, 0, 0, 10, 1, 7, -2, 1, 101);   eFacility_AccessLift,       iCash=50,	iElerium=0, iAlloys=0,  iMaintenance=10, iTime=5,	iPower=-2
BuildFacility(7, 125, 0, 0, 24, 1, 12, -3, 1, 110); eFacility_ScienceLab,       iCash=125,  iElerium=0, iAlloys=0,  iMaintenance=24, iTime=10,	iPower=-3
BuildFacility(8, 130, 0, 0, 26, 1, 12, -3, 1, 104); eFacility_Workshop,         iCash=130,  iElerium=0, iAlloys=0,  iMaintenance=26, iTime=10,	iPower=-3
BuildFacility(9, 150, 0, 0, 15, 1, 21, -5, 1, 107); eFacility_SmallRadar,       iCash=150,  iElerium=0, iAlloys=0,  iMaintenance=15, iTime=14,	iPower=-5
BuildFacility(10, 60, 0, 0, 11, 1, 9, class'XGTacticalGameCore'.default.POWER_NORMAL, 1, 106); eFacility_Power
BuildFacility(11, 115, 0, 0, 20, 1, 10, -3, 1, 11, 105); eFacility_Foundry,		  iCash=75,   iElerium=0, iAlloys=0,  iMaintenance=20, iTime=10,iPower=-3
BuildFacility(12, 125, 0, 0, 25, 1, 8, -2, 1, 113); eFacility_OTS,			  iCash=125,  iElerium=0, iAlloys=0,  iMaintenance=25, iTime=8,	iPower=-3
BuildFacility(13, 85, 0, 0, 18, 1, 10, -5, 1, 1, 102); eFacility_AlienContain,     iCash=85,   iElerium=0, iAlloys=0,  iMaintenance=18, iTime=7,	iPower=-5
BuildFacility(14, 300, 0, 15, 26, 2, 28, -8, 1, 31, 111); eFacility_LargeRadar,       iCash=300,  iElerium=0, iAlloys=25, iMaintenance=26, iTime=21,iPower=-8
BuildFacility(15, 225, 0, 0, 23, 3, 21, class'XGTacticalGameCore'.default.POWER_THERMAL, 1, 112); eFacility_ThermalPower
BuildFacility(16, 275, 20, 30, 29, 5, 21, class'XGTacticalGameCore'.default.POWER_ELERIUM, 1, 32, 103); eFacility_EleriumGenerator
BuildFacility(17, 325, 10, 10, 50, 5, 21, -3, 1, 4, 109); eFacility_PsiLabs,          iCash=200,  iElerium=20,iAlloys=20, iMaintenance=30, iTime=14, iPower=-3
BuildFacility(18, 250, 25, 25, 50, 5, 21, -10, 1, 7, 180, 94); eFacility_HyperwaveRadar,   iCash=175,  iElerium=0, iAlloys=10, iMaintenance=30, iTime=14, iPower=-4
BuildFacility(19, 400, 15, 10, 100, 7, 14, -3, 1, 8, 189, 116); eFacility_DeusEx,           iCash=200,  iElerium=10,iAlloys=10, iMaintenance=100,iTime=14, iPower=-5
; 20 eFacility_GreyMarket
; 21 eFacility_SitRoom	
BalanceFacilities();
}

 

a lot of lists seem to refer to lists in " XComGame.XGGameData " start #1 at first thing on list and will line up. This also sugests that all things we looking at that refer to a Number May look up in other lists in same manner, So keep your eyes open :)

 

theoredicaly we can now add or delete items from grey market or into game by changing the second value form -1 remove to a positive above 0.

Getting late so will test tomorrow unless some one beats me to it :)

Edited by Daimond007
Link to comment
Share on other sites

First off, many of the constants in XComGame.XGTacticalGameCoreNativeBase are known to be related to nothing, most notably BASE_NUM_ROCKETS = 1. It's probably sloppy coding on the part of the devs.

 

The item list in BuildItems might be somewhere as m_arrBuildItem, along with a description of the BuildItem() function itself, but I did not find it. I suspect it's native therefore hardcoded into the exe. Still it is possible to guess what's what from the argument values. Here is my guess for categories :

Category 1 = weapons

Category 2 = armors

Category 3 = secondary items

Category 4 = UFO items

Category 5 = alien bodies

The arguments of BuildItem are probably BuildItem(ItemNumber, CosttobuildinCredits, CostsinElerium/Fragments/Alloys? (3), SomeOtherArgument). Note that some lines have 5 arguments and some 6. That final argument looks interesting but I have no clear idea of what it is yet. Looks like a reference into some other array.

The first few lines have -1s on the supposed cost arguments, pointing to them being the ballistic weapons, which are free. They're also unlimited, which is consistent with InfiniteItems listing 2 3 4 5 and 6 ! (4 primary weapon types + pistol)

Item 57, the first in the supposed armor category, is free and Infinite. I'd bet money on it being the Kevlar. (btw it's twice is the InfiniteItems list. It's sloppy, but it allows us to replace one of those with some other item without breaking anything else so it's a good thing for modding !)

Item 85, also infinite, is most likely the grenade.

I'm less sure about 124 (a backpack item ?) and 195 (not in the list!?).

For the others, which may be useful to recognize it you want to add something to the infinite list, the credit cost to build is of course the biggest clue (2nd number). The armors in particular are easy to recognize, this should give you the exact composition of the BuildItem arguments (I didn't take the time to do it).

Also, if you want to give costs to ballistic weapons (maybe in a mod where they are more powerful or whatever), you can replace their number in the InfiniteItem range with another or some number corresponding to nothing in particular and then give them costs in their BuildItem arguments.

Edited by PepprmintButler
Link to comment
Share on other sites

Here is my guess for categories :

Category 1 = weapons

Category 2 = armors

Category 3 = secondary items

Category 4 = UFO items

Category 5 = alien bodies

These were my findings which I posted in another thread a few days ago:

Category 1: Weapons

Category 2: Armour

Category 3: Vehicles (SHIV, inteceptor, vehicle weapons/upgrades, satellite)

Category 4: Doesn't exist

Category 5: Alien artefacts/collectables (Allien alloys, weapon fragments, alien food, etc.)

Category 6: Alien corpses/captives

 

:)

Edited by bokauk
Link to comment
Share on other sites

I have found a few interesting things in the files latly, here is one that seems to indicate Infinate items. was hoping to make smoke infinate, but since theres no refernce to what items numbers are indicating had to find. This may mean nothing though :(

So maybe some of us can figer out if this stuff accualy does something or lest in relation to others.

 

SComStrategyDame.XGStorage Intit.Funtion

function Init()
{
m_arrItems.Add(195);
m_arrItemArchives.Add(195);
m_arrClaims.Add(195);
m_arrInfiniteItems.AddItem(57);
m_arrInfiniteItems.AddItem(3);
m_arrInfiniteItems.AddItem(4);
m_arrInfiniteItems.AddItem(2);
m_arrInfiniteItems.AddItem(85);
m_arrInfiniteItems.AddItem(6);
m_arrInfiniteItems.AddItem(5);
m_arrInfiniteItems.AddItem(7);
m_arrInfiniteItems.AddItem(57);
m_arrInfiniteItems.AddItem(124);
}

I guess these are just array indexes. They are required for linking structures, but actual items are added through functions anyway, i.e. battlescanners are added by function UpdateItemCharges() in XGUnit.uc, as well as rockets. The problem is that default battlescanners are going in 2 pieces (IntConstByte 2Cxx) and thereby easy to change and rockets/smoke grenades are both IntOne (000026) that is hard to change via hex editor.

Link to comment
Share on other sites

First off, many of the constants in XComGame.XGTacticalGameCoreNativeBase are known to be related to nothing, most notably BASE_NUM_ROCKETS = 1. It's probably sloppy coding on the part of the devs.

 

The item list in BuildItems might be somewhere as m_arrBuildItem, along with a description of the BuildItem() function itself, but I did not find it. I suspect it's native therefore hardcoded into the exe. Still it is possible to guess what's what from the argument values. Here is my guess for categories :

Category 1 = weapons

Category 2 = armors

Category 3 = secondary items

Category 4 = UFO items

Category 5 = alien bodies

The arguments of BuildItem are probably BuildItem(ItemNumber, CosttobuildinCredits, CostsinElerium/Fragments/Alloys? (3), SomeOtherArgument). Note that some lines have 5 arguments and some 6. That final argument looks interesting but I have no clear idea of what it is yet. Looks like a reference into some other array.

The first few lines have -1s on the supposed cost arguments, pointing to them being the ballistic weapons, which are free. They're also unlimited, which is consistent with InfiniteItems listing 2 3 4 5 and 6 ! (4 primary weapon types + pistol)

Item 57, the first in the supposed armor category, is free and Infinite. I'd bet money on it being the Kevlar. (btw it's twice is the InfiniteItems list. It's sloppy, but it allows us to replace one of those with some other item without breaking anything else so it's a good thing for modding !)

Item 85, also infinite, is most likely the grenade.

I'm less sure about 124 (a backpack item ?) and 195 (not in the list!?).

For the others, which may be useful to recognize it you want to add something to the infinite list, the credit cost to build is of course the biggest clue (2nd number). The armors in particular are easy to recognize, this should give you the exact composition of the BuildItem arguments (I didn't take the time to do it).

Also, if you want to give costs to ballistic weapons (maybe in a mod where they are more powerful or whatever), you can replace their number in the InfiniteItem range with another or some number corresponding to nothing in particular and then give them costs in their BuildItem arguments.

 

Ya this is what I was thinking as well, but as was trying to get it all posted before running out door for work limmited what I was posting :) I had found that changing some of these values did nothing from what I could tell. But I had also not tested these with a restart of game.

As for Item 57, that was what I was thinking as well and changed the first one, but as I did not know what I was changing it to was not sure what I was looking for or if I had resuched it yet :) Have not tested with restart yet as well. I was thinking 195 as Base key posably.

 

 

The infinite items works.. if you change all those numbers to 0 you will receive only 100 of each starting weapon and grenade

 

I did this too but didnt post resualts as wanted to see if some one els would try and get same resualts with out any imput or direstion. So lest now I know it was not just me :) So posable to change all items if wanted as we dont realy need more then 100 rifles and other guns anyway :) that we know of yet lol.

 

 

 

Lets post and keep a record of what thoughs build items numbers relate to, may help in other locations not just this later on.

A few other things I have tryied and at one time worked for a bit.

- Got smoke nades as a buildable items with proper Icon ( Can not get to show in barraks though to load on troops though )

- Got battlescanners to work as buildable items with Icon, and able to load on troops. When entering battle it would give propper Icon with 2 scanners loaded. ( stopped working few days later for some reason, can still equip but does not rejester in battle to use. )

- can not make alien Nades buildable though, although it should work.

- AS I stated some time ago just after release in the WSG forums I had found a way to get Eyefinity to render right side up in game so you can see proper in 5760x1080, problem is that it zooms the screen it to thoughs outer edges. So you lose a lot of top and bottom, but I head Haden got the FOV to work in his FlawlessWide screen program, but ran into same problems I had, and that was the cursor does not go where you want it to go, so makes it really really hard to play. That is one of the things that got me into pooking around in the UPKs in the first place.

Link to comment
Share on other sites

Found something lower in the list of XGItemsTree

It appears that acording to this below # 105 and 106 are realated to ship items most likly Friendly as it looks up " AIRANDSPACE_BONUS" and " kItem.iCash = GetItemSalePrice(byte(iItem)) "

 

 

noexport function TItem GetItem(int iItem, optional int iTransactionType)
{
local TItem kItem;

iTransactionType = 1;
kItem = m_arrItems[iItem];
// End:0xa3 Loop:False
if(iTransactionType == 2)
{
	kItem.iCash = GetItemSalePrice(byte(iItem));
	kItem.iElerium = 0;
	kItem.iAlloy = 0;
}
// End:0x21a
else
{
	// End:0x1d3 Loop:False
	if(HQ().HasBonus(2) && (iItem == 105 || (iItem == 106) || (IsShipWeapon(iItem))))
	{
		kItem.iCash *= float(class'XGTacticalGameCore'.default.CB_AIRANDSPACE_BONUS) / 100.00;
		kItem.iAlloy *= float(class'XGTacticalGameCore'.default.CB_AIRANDSPACE_BONUS) / 100.00;
		kItem.iElerium *= float(class'XGTacticalGameCore'.default.CB_AIRANDSPACE_BONUS) / 100.00;
	}
	// End:0x207 Loop:False
	if(iItem == 108 && (IsOptionEnabled(10)))
	{
		CalcEscalatingSatelliteCost(kItem);
	}
	ScaleCost(kItem);
}
kItem.strBriefSummary = GetSummary(iItem);
return kItem;
}

 

 

 

 

But also looking at this list most of it near the bottom indicates that

 

iCurrentCategory = 1 ; Weapons and secondary items

1-29 is Weapons, But only 2-19 on list

75-100 Items ( guess Backpack ), but only 76-82, 85,86, 88, 99 listed

 

iCurrentCategory = 2 ; Armors

56-74 is Armor, but only 57-63 on list

 

iCurrentCategory = 6 ; Alien bodies and captives

159-169 Captives, and are Eitems not iItems this time. and only 160-168 listed

 

function bool IsShipWeapon(int iItemType)
{
return iItemType > 122 && (iItemType < 131);
}
function bool IsArmor(int iItem)
{
return iItem > 56 && (iItem < 74);
}

function bool IsWeapon(int iItem)
{
return iItem > 1 && (iItem < 29);
}

function bool IsItem(int iItem)
{
return iItem > 75 && (iItem < 100);
}
function bool IsCaptive(XComGame.XGGameData.EItemType eItem)
{
return eItem > 159 && (eItem < 169);
}

Edited by Daimond007
Link to comment
Share on other sites

Keeping main post up to date with new info I find or Test

 

Found relavent list to relate to main list. every thing lines up and seems to line up on anot of other lists that just staite #

XComGame.XGGameData

 

eItem_BEGIN_WEAPONS,
eItem_Pistol,
eItem_AssaultRifle,
eItem_Shotgun,
eItem_LMG,
eItem_SniperRifle,
eItem_RocketLauncher,
eItem_LaserPistol,
eItem_LaserAssaultRifle,
eItem_LaserAssaultGun,
eItem_HeavyLaser,
eItem_LaserSniperRifle,
eItem_PlasmaPistol,
eItem_PlasmaLightRifle,
eItem_PlasmaAssaultRifle,
eItem_AlloyCannon,
eItem_HeavyPlasma,
eItem_PlasmaSniperRifle,
eItem_BlasterLauncher,
eItem_FlameThrower,
eItem_PlaceholderWeapon0,
eItem_PlaceholderWeapon1,
eItem_PlaceholderWeapon2,
eItem_PlaceholderWeapon3,
eItem_PlaceholderWeapon4,
eItem_PlaceholderWeapon5,
eItem_PlaceholderWeapon6,
eItem_PlaceholderWeapon7,
eItem_BEGIN_SPECIAL_WEAPONS,
eItem_SectopodArm,
eItem_SectopodCannon,
eItem_SectopodHeatRay,
eItem_ChryssalidClaw,
eItem_DroneBeam,
eItem_PsiAmp,
eItem_Grapple,
eItem_CyberdiscWeapon,
eItem_BEGIN_ALIEN_SHARED_WEAPONS,
eItem_SectoidPlasmaPistol,
eItem_PlasmaLightRifle_ThinMan,
eItem_PlasmaLightRifle_Floater,
eItem_PlasmaLightRifle_Muton,
eItem_PlasmaAssaultRifle_Muton,
eItem_HeavyPlasma_Floater,
eItem_HeavyPlasma_Muton,
eItem_END_ALIEN_SHARED_WEAPONS,
eItem_ZombieFist,
eItem_ElderWeapon,
eItem_MutonBlade,
eItem_OutsiderWeapon,
eItem_SoldierNoWeapon,
eItem_Plague,
eItem_SectopodClusterBomb,
eItem_END_SPECIAL_WEAPONS,
eItem_END_WEAPONS,
eItem_BEGIN_ARMOR,
eItem_ArmorKevlar,
eItem_ArmorCarapace,
eItem_ArmorSkeleton,
eItem_ArmorTitan,
eItem_ArmorArchangel,
eItem_ArmorGhost,
eItem_ArmorPsi,
eItem_DLCArmor0,
eItem_DLCArmor1,
eItem_DLCArmor2,
eItem_DLCArmor3,
eItem_DLCArmor4,
eItem_DLCArmor5,
eItem_DLCArmor6,
eItem_DLCArmor7,
eItem_PlaceholderArmor0,
eItem_PlaceholderArmor1,
eItem_END_ARMOR,
eItem_BEGIN_ITEMS,
eItem_Medikit,
eItem_CombatStims,
eItem_MindShield,
eItem_ChitinPlating,
eItem_ArcThrower,
eItem_TargetingModule,
eItem_ReinforcedArmor,
eItem_END_ITEMS,
eItem_BEGIN_GRENADES,
eItem_FragGrenade,
eItem_SmokeGrenade,
eItem_FlashBang,
eItem_AlienGrenade,
eItem_PlaceholderGrenade0,
eItem_PlaceholderGrenade1,
eItem_BEGIN_ALIEN_GRENADES,
eItem_SectoidGrenade,
eItem_FloaterGrenade,
eItem_MutonGrenade,
eItem_CyberdiscGrenade,
eItem_ThinManGrenade,
eItem_END_ALIEN_GRENADES,
eItem_PsiGrenade,
eItem_BattleScanner,
eItem_END_GRENADES,
eItem_BEGIN_VEHICLES,
eItem_SHIV,
eItem_SHIV_Alloy,
eItem_SHIV_Hover,
eItem_Interceptor,
eItem_Firestorm,
eItem_Skyranger,
eItem_Satellite,
eItem_PlaceholderVehicle0,
eItem_PlaceholderVehicle1,
eItem_END_VEHICLES,
eItem_BEGIN_VEHICLE_UPGRADES,
eItem_ShivMinigun,
eItem_ShivSentry,
eItem_ShivLaser,
eItem_ShivPlasma,
eItem_SHIVDeck_I,
eItem_SHIVDeck_II,
eItem_SHIVDeck_III,
eItem_PlaceholderShivUpgrade0,
eItem_PlaceholderShivUpgrade1,
eItem_BEGIN_SHIP_WEAPONS,
eItem_IntWeap_I,
eItem_IntWeap_II,
eItem_IntWeap_III,
eItem_IntWeap_IV,
eItem_IntWeap_V,
eItem_IntWeap_VI,
eItem_PlaceholderIntWeapon0,
eItem_PlaceholderIntWeapon1,
eItem_END_SHIP_WEAPONS,
eItem_BEGIN_INTERCEPTOR_CONSUMABLES,
eItem_IntConsumable_Dodge,
eItem_IntConsumable_Boost,
eItem_IntConsumable_Hit,
eItem_PlaceholderIntConsumable0,
eItem_PlaceholderIntConsumable1,
eItem_END_INTERCEPTOR_CONSUMABLES,
eItem_END_VEHICLE_UPGRADES,
eItem_BEGIN_CORPSES,
eItem_CivilianCorpse,
eItem_TankCorpse,
eItem_SoldierCorpse,
eItem_SectoidCorpse,
eItem_SectoidCommanderCorpse,
eItem_FloaterCorpse,
eItem_FloaterHeavyCorpse,
eItem_ThinManCorpse,
eItem_MutonCorpse,
eItem_MutonEliteCorpse,
eItem_BerserkerCorpse,
eItem_CyberdiscCorpse,
eItem_EtherealCorpse,
eItem_CryssalidCorpse,
eItem_ZombieCorpse,
eItem_SectopodCorpse,
eItem_DroneCorpse,
eItem_END_CORPSES,
eItem_BEGIN_CAPTIVES,
eItem_SectoidCaptive,
eItem_SectoidCommanderCaptive,
eItem_FloaterCaptive,
eItem_FloaterHeavyCaptive,
eItem_ThinManCaptive,
eItem_MutonCaptive,
eItem_MutonEliteCaptive,
eItem_BerserkerCaptive,
eItem_EtherealCaptive,
eItem_END_CAPTIVES,
eItem_BEGIN_COLLECTIBLES,
eItem_Elerium115,
eItem_AlienAlloys,
eItem_WeaponFragment,
eItem_AlienEntertainment,
eItem_AlienFood,
eItem_AlienStasisTank,
eItem_UFONavigation,
eItem_AlienSurgery,
eItem_UFOPowerSource,
eItem_HyperwaveBeacon,
eItem_DamagedAlienEntertainment,
eItem_DamagedAlienFood,
eItem_DamagedAlienStasisTank,
eItem_DamagedUFONavigation,
eItem_DamagedAlienSurgery,
eItem_DamagedUFOPowerSource,
eItem_DamagedHyperwaveBeacon,
eItem_UFOFusionLauncher,
eItem_PsiLink,
eItem_END_COLLECTIBLES,
eItem_Base_Shard,
eItem_Skeleton_Key,
eItem_SectopodChestCannon,
eItem_NullPrereq,
eItem_MAX

Edited by Daimond007
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...