Latest Update Killed My Mod :(

Hi, is there any detailed descriptions of what exactly was changed in the latest update?

My own mod, that ive been working for weeks, has stopped working since I updated today and I was hoping someone might know how to fix it or point me to the documentation so I can figure it out.

I have a feeling it has something to do with the “Strike-groups are referenced by Name, not Index - UI 100% dynamic.” element.

Thu Aug 13 21:17:55 2015
Version 1.29, Build Number 12, Changelist Number 1085660 
Loaded Archive: 'Homeworld2.big' 
Loaded Archive: 'UpdateHomeworld2.big' 
Loaded Archive: 'HW1Ships.big' 
Loaded Archive: 'UpdateHW1Ships.big' 
Loaded Archive: 'HW2Ships.big' 
Loaded Archive: 'UpdateHW2Ships.big' 
Loaded Archive: 'HWBackgrounds.big' 
Loaded Archive: 'UpdateHWBackgrounds.big' 
UTIL -- filepath failure, path doesn't exists 'C:\Program Files (x86)\Steam\steamapps\common\Homeworld\HomeworldRM\data\locale\English' 
Loaded Archive: 'English.big' 
Loaded Archive: 'UpdateEnglish.big' 
Loaded Archive: 'Compatibility.big' 
Failed to Load Archive 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\HWArgon.big' 
Loaded Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\HW2Campaign.big' 
Loaded DLC Campaign Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\HW2Campaign.big' 
 Loaded Archive: 'UpdateHW2Campaign.big' 
 Loaded Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\EnglishHW2Campaign.big' 
 Loaded DLC Campaign Localized Data Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\EnglishHW2Campaign.big' 
 Failed to Load Archive '..\..\DATAUPDATES\UpdateEnglishHW2Campaign.big' 
 Loaded Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\EnglishSpeechHW2Campaign.big' 
 Loaded DLC Campaign Speech Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\EnglishSpeechHW2Campaign.big' 
 Loaded Archive: 'UpdateEnglishSpeechHW2Campaign.big' 
 Loaded Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\MusicHW2Campaign.big' 
 Loaded DLC Campaign Music Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\MusicHW2Campaign.big' 
 Failed to Load Archive '..\..\DATAUPDATES\UpdateMusicHW2Campaign.big' 
 Uing ..profiles\ for profiles folder 
 GAME -- Using player profile steven2019 
 Changing from a 32 bit colour depth in winNT (6.1 build 7601), Service Pack 1 
 Display: (0, 0, 1920, 1080) - (0, 0) 
 Display: (0, 0, 1920, 1080) - (0, 0) 
 Switching to a 1920x1080 32bit mode 
 Display: (0, 0, 1920, 1080) - (0, 0) 
 GL Info: 3.3 - 3.3.13283 Core Profile Forward-Compatible Context 14.501.1003.0 
 GL Vendor: ATI Technologies Inc. 
 GL Renderer: AMD Radeon HD 6800 Series 
 GL Part ID: 6800 
 Loaded Archive: 'EnglishSpeech.big' 
 Loaded Archive: 'UpdateEnglishSpeech.big' 
 Loaded Archive: 'Music.big' 
 Loaded Archive: 'UpdateMusic.big' 
 SOUND -- created destination [ fdaudio ], handle [ 4 ] with [ 48 ] channels created 
 SOUND -- created destination [ fda streamer ], handle [ 5 ] with [ 8 ] channels created 
 SOUND -- created destination [ dxa streamer ], handle [ 0 ] with [ 8 ] channels created 
 SOUND -- created destination [ dxaudio ], handle [ 1 ] with [ 48 ] channels created 
 Build name: 
 Built by  : builduser 
 Data path : C:\Program Files (x86)\Steam\steamapps\common\Homeworld\HomeworldRM\data 
 No mapping for font 'Blender' - using 'default' 
 Resetting fp PC control word. 
 CmdLine: -luatrace -overrideBigFile -dlccampaign HW2Campaign.big -campaign Ascension -moviepath DataHW2Campaign 
 12 Races Discovered 
 Race Filtering: DEATHMATCH rules - @Deathmatch 
 Starting Level: DATA:\LevelData\Multiplayer\DeathMatchHW2\2p_hostilities_end.level 
 LUA 'data:Ship\HGN_GUNTURRET\HGN_GUNTURRET.events' -- parameter: `}' expected (to close `{' at line 2);
  last token read: `<eof>' at line 235 in string "" 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
1:  main of string "" at line 4 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 RESEARCH ERROR: target of "MothershipHealthUpgrade1" is invalid (target is "Hgn_MotherShip"), setting to no upgrade target 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 RESEARCH ERROR: target of "MothershipHealthUpgrade2" is invalid (target is "Hgn_MotherShip"), setting to no upgrade target 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 RESEARCH ERROR: target of "MothershipMAXSPEEDUpgrade1" is invalid (target is "Hgn_MotherShip"), setting to no upgrade target 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 RESEARCH ERROR: target of "MothershipMAXSPEEDUpgrade2" is invalid (target is "Hgn_MotherShip"), setting to no upgrade target 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 RESEARCH ERROR: target of "MothershipBUILDSPEEDUpgrade1" is invalid (target is "Hgn_MotherShip"), setting to no upgrade target 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 RESEARCH ERROR: target of "SensorsDowngrade1" is invalid (target is "Hgn_MotherShip"), setting to no upgrade target 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 RESEARCH ERROR: target of "SensorsDowngrade2" is invalid (target is "Hgn_MotherShip"), setting to no upgrade target 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 RESEARCH ERROR: target of "SensorsDowngrade3" is invalid (target is "Hgn_MotherShip"), setting to no upgrade target 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 RESEARCH ERROR: target of "SensorsBackToNormal1" is invalid (target is "Hgn_MotherShip"), setting to no upgrade target 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 RESEARCH ERROR: target of "SensorsBackToNormal2" is invalid (target is "Hgn_MotherShip"), setting to no upgrade target 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 RESEARCH ERROR: target of "SensorsBackToNormal3" is invalid (target is "Hgn_MotherShip"), setting to no upgrade target 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 Cannot overwrite function Create_Hgn_Carrier 
 Cannot overwrite function Update_Hgn_Carrier 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
  1:  main of string "" at line 4 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
 Trying to retrieve strike group index 9, no such strike group. 
 parameter: attempt to call global `getGameRubric' (a nil value)
stack traceback:
   1:  main of string "" at line 4 
Error: Universe::createSquadron: could not find ship type (Hgn_MotherShip) -- FATAL EXIT -- sobfactory/117:! --stack trace--                                 

Any help would be greatly appreciated!

1 Like

forums.gearboxsoftware.com/t/mod-authors-major-script-system-revisions/533931

You’ve been using the old .ship files - or your own edits. Don’t do that :wink: Convo about your specific issue is at the bottom right now…

3 Likes

Wow! Thats quite a lot of changes.

I’ll be honest not a lot of it made sense. I get the impression modding will be a lot easier BUT completely different from before?

Will there be any tutorials or examples?

The vast majority of ‘examples’ are really in the scripts now. If you start digging most of this is going to become clear very, very fast.

That said, I’ll do a ‘technical’ post this weekend with serious details, and in the process create and expand a few example cases.

1 Like

Hi @bitvenom thanks for agreeing to help me get my mod going again.

A bit of background - my mod is designed to enhance the single player campaign in two ways. Firstly it makes the Vaygr units cheaper, faster to build and increases their unit cap (it did also increase squadron size but that seems to cause major Access Violation issues so I’ve removed it). Secondly it balances this with giving the Hgns superior tech mostly after the Dreadnaught is repaired.

So I would like help with the following -

  1. My new research is added directly to def_research. Is this right?
  2. I’m still editing the SHIP files to alter stats and add special weapons. Again is this how its done since the update?
  3. In its current state my mod works for skirmish but the research isn’t added into the campaign like before. How do I edit the campaign files?

Here’s my latest HwRM.log so you can see whats happening -

Wed Aug 19 19:10:31 2015 Version 1.29, Build Number 12, Changelist Number 1085660 Loaded Archive: 'Homeworld2.big' Loaded Archive: 'UpdateHomeworld2.big' Loaded Archive: 'HW1Ships.big' Loaded Archive: 'UpdateHW1Ships.big' Loaded Archive: 'HW2Ships.big' Loaded Archive: 'UpdateHW2Ships.big' Loaded Archive: 'HWBackgrounds.big' Loaded Archive: 'UpdateHWBackgrounds.big' UTIL -- filepath failure, path doesn't exists 'C:\Program Files (x86)\Steam\steamapps\common\Homeworld\HomeworldRM\data\locale\English' Loaded Archive: 'English.big' Loaded Archive: 'UpdateEnglish.big' Loaded Archive: 'Compatibility.big' Failed to Load Archive 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\HWArgon.big' Loaded Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\HW2Campaign.big' Loaded DLC Campaign Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\HW2Campaign.big' Loaded Archive: 'UpdateHW2Campaign.big' Loaded Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\EnglishHW2Campaign.big' Loaded DLC Campaign Localized Data Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\EnglishHW2Campaign.big' Failed to Load Archive '..\..\DATAUPDATES\UpdateEnglishHW2Campaign.big' Loaded Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\EnglishSpeechHW2Campaign.big' Loaded DLC Campaign Speech Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\EnglishSpeechHW2Campaign.big' Loaded Archive: 'UpdateEnglishSpeechHW2Campaign.big' Loaded Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\MusicHW2Campaign.big' Loaded DLC Campaign Music Archive: 'C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\HOMEWORLD\HOMEWORLDRM\DATA\MusicHW2Campaign.big' Failed to Load Archive '..\..\DATAUPDATES\UpdateMusicHW2Campaign.big' Uing ..profiles\ for profiles folder GAME -- Using player profile steven2019 Changing from a 32 bit colour depth in winNT (6.1 build 7601), Service Pack 1 Display: (0, 0, 1920, 1080) - (0, 0) Display: (0, 0, 1920, 1080) - (0, 0) Switching to a 1920x1080 32bit mode Display: (0, 0, 1920, 1080) - (0, 0) GL Info: 3.3 - 3.3.13283 Core Profile Forward-Compatible Context 14.501.1003.0 GL Vendor: ATI Technologies Inc. GL Renderer: AMD Radeon HD 6800 Series GL Part ID: 6800 Loaded Archive: 'EnglishSpeech.big' Loaded Archive: 'UpdateEnglishSpeech.big' Loaded Archive: 'Music.big' Loaded Archive: 'UpdateMusic.big' SOUND -- created destination [ fdaudio ], handle [ 4 ] with [ 48 ] channels created SOUND -- created destination [ fda streamer ], handle [ 5 ] with [ 8 ] channels created SOUND -- created destination [ dxa streamer ], handle [ 0 ] with [ 8 ] channels created SOUND -- created destination [ dxaudio ], handle [ 1 ] with [ 48 ] channels created Build name: Built by : builduser Data path : C:\Program Files (x86)\Steam\steamapps\common\Homeworld\HomeworldRM\data No mapping for font 'Blender' - using 'default' Resetting fp PC control word. CmdLine: -luatrace -overrideBigFile -dlccampaign HW2Campaign.big -campaign Ascension -moviepath DataHW2Campaign Race Filtering: SINGLEPLAYER rules - @SinglePlayer 12 Races Discovered Starting Level: Data:\LevelData\Campaign\ascension\M01_Tanis\M01_Tanis.level Warning, screen with name NewResearchMenu does not exist Trying to retrieve strike group index 9, no such strike group. luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeed) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedHard) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedExpert) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateHard) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateExpert) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeed) parameter: 1 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedHard) parameter: 1 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedExpert) parameter: 1 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateHard) parameter: 1 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateExpert) parameter: 1 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeed) parameter: 2 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedHard) parameter: 2 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedExpert) parameter: 2 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateHard) parameter: 2 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateExpert) parameter: 2 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeed) parameter: 3 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedHard) parameter: 3 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedExpert) parameter: 3 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateHard) parameter: 3 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateExpert) parameter: 3 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 115 [string ""] oninit issued HGN_HSCORE is marked as salvageable in the shiptuning but has no salvage points! build available generic build available build available generic build available build available generic build available build available generic build available luaplayer 297: Player_GrantResearchOption: unable to grant (HyperspaceRecoveryTimeUpgradeSPGAME) parameter: 3 stack traceback: 1: function `PostNISInit' at line 367 [string ""] 2: function `Rule_NIS01AComplete' at line 392 [string ""] luaplayer 297: Player_GrantResearchOption: unable to grant (HyperspaceTransitionTimeUpgradeSPGAME) parameter: 3 stack traceback: 1: function `PostNISInit' at line 368 [string ""] 2: function `Rule_NIS01AComplete' at line 392 [string ""] -----RESTRICTION DATA----- The following items need to be added: -----BUILD DATA----- Player_UnrestrictBuildOption( 0, "Hgn_C_Production_Fighter" ) --Hgn_C_Production_Fighter Player_UnrestrictBuildOption( 0, "Hgn_MS_Production_Fighter" ) --Hgn_MS_Production_Fighter Player_UnrestrictBuildOption( 0, "Hgn_C_Module_Research" ) --Hgn_C_Module_Research Player_UnrestrictBuildOption( 0, "Hgn_MS_Module_Research" ) --Hgn_MS_Module_Research Player_UnrestrictBuildOption( 0, "Hgn_Scout" ) --Hgn_Scout Player_UnrestrictBuildOption( 0, "Hgn_Interceptor" ) --Hgn_Interceptor Player_UnrestrictBuildOption( 0, "Hgn_AttackBomber" ) --Hgn_AttackBomber Player_UnrestrictBuildOption( 0, "Hgn_ResourceCollector" ) --Hgn_ResourceCollector Player_UnrestrictBuildOption( 0, "Hgn_Probe" ) --Hgn_Probe -----RESEARCH DATA----- *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=HGN_MS_PRODUCTION_FIGHTER, buildType=2 build available strike craft build available HGN_INTERCEPTOR FIGHTER HGN_TARGETDRONE is marked as captureable in the shiptuning but has no capture points! *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=Hgn_Interceptor, buildType=1 *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=Hgn_Interceptor, buildType=1 ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,Hgn_TargetDrone,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,2,Interceptor ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,Hgn_TargetDrone,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,2,Interceptor ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,Hgn_TargetDrone,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,2,Interceptor *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=Hgn_Interceptor, buildType=1 *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=Hgn_Interceptor, buildType=1 interceptors at chimera: 20 ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,Vgr_Bomber,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,3,Interceptor ****** StatusUnderAttack: shipnm, enemy, attackcode = {Hgn_MotherShip,,983.4063110351563} *** StatusTakingLightDamage: name = Hgn_MotherShip Health = 0.9908676147460938 build available strike craft build available HGN_ATTACKBOMBER FIGHTER Timer 0 STARTED with period: 120 Timer 0 PAUSING now ** Battle Momentum Value: -97.18023681640625 Timer 0 RESUME called *** StatusTakingLightDamage: name = Hgn_Interceptor Health = 1 *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=Hgn_AttackBomber, buildType=1 build available generic build available *****---- StatusSubsystem : ssname=HGN_MS_PRODUCTION_FIGHTER, shipName=Hgn_MotherShip, event=1 *** StatusDamaged: Hgn_AttackBomber *** StatusTakingHeavyDamage: Hgn_AttackBomber hypergate opening hypergate opening interceptors: 25 bombers: 5 creating new bombers: 2.5 hypergate opening hypergate opening hypergate opening hypergate opening hypergate fully open hypergate fully open ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_AttackBomber,Vgr_HyperSpace_Platform,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,10,AttackBomber hypergate fully open hypergate fully open hypergate fully open hypergate fully open attack 2 issued attack 3 issued attack 1 issued ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,Vgr_HyperSpace_Platform,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,10,Interceptor *** StatusCriticallyDamaged: Hgn_AttackBomber gate 3 destroyed hypergate closing *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=Hgn_ResourceCollector, buildType=1 *** StatusDamaged: Hgn_AttackBomber *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=Hgn_AttackBomber, buildType=1 ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_AttackBomber,,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,0,AttackBomber *** StatusTakingLightDamage: name = Hgn_Interceptor Health = 1 *** StatusDamaged: Hgn_AttackBomber *** StatusTakingHeavyDamage: Hgn_AttackBomber gate 1 destroyed hypergate closing gate 2 destroyed hypergate closing **** StatusShipDestroyed: shipName =Hgn_AttackBomber, and code = -1 *** StatusTakingHeavyDamage: Hgn_AttackBomber **** StatusShipDestroyed: shipName =Hgn_AttackBomber, and code = -1 *** StatusTakingLightDamage: name = Hgn_MotherShip Health = 0.9971305131912231 **** StatusShipDestroyed: shipName =Hgn_AttackBomber, and code = -1 **** StatusShipDestroyed: shipName =Hgn_AttackBomber, and code = -1 Starting Level: Data:\LevelData\Campaign\ascension\M02_Hiigara\M02_Hiigara.level Cannot overwrite function Hgn_Interceptor_Custom0_OnSet Cannot overwrite function Hgn_Interceptor_Custom0_OnEnd Cannot overwrite function Hgn_Mine_Open_OnSet Cannot overwrite function Hgn_Mine_Close_OnSet Cannot overwrite function HGN_DEFENSEFIELDFRIGATE_DefenseFieldActivate_OnSet Cannot overwrite function HGN_DEFENSEFIELDFRIGATE_DefenseFieldActivate_OnPause Cannot overwrite function HGN_DEFENSEFIELDFRIGATE_DefenseFieldDeActivate_OnSet Cannot overwrite function HGN_RESOURCECOLLECTOR_ResourceStart_OnSet Cannot overwrite function HGN_RESOURCECOLLECTOR_ResourceStart_OnPause Cannot overwrite function HGN_RESOURCECOLLECTOR_ResourceDo_OnSet Cannot overwrite function HGN_RESOURCECOLLECTOR_ResourceEnd_OnSet Cannot overwrite function HGN_RESOURCECOLLECTOR_RepairStart_OnSet Cannot overwrite function HGN_RESOURCECOLLECTOR_RepairStart_OnPause Cannot overwrite function HGN_RESOURCECOLLECTOR_RepairDo_OnSet Cannot overwrite function HGN_RESOURCECOLLECTOR_RepairEnd_OnSet Cannot overwrite function HGN_PROBE_Open_OnSet Cannot overwrite function HGN_PROXIMITYSENSOR_Open_OnSet Cannot overwrite function HGN_PROXIMITYSENSOR_Close_OnSet Cannot overwrite function HGN_ECMPROBE_Open_OnSet Cannot overwrite function HGN_ECMPROBE_Close_OnSet Cannot overwrite function HGN_MOTHERSHIP_DockPathOpen_OnSet Cannot overwrite function HGN_MOTHERSHIP_DockPathOpen_OnPause Cannot overwrite function HGN_MOTHERSHIP_DockPathClosed_OnSet Cannot overwrite function HGN_MOTHERSHIP_DockPathClosed_OnPause Cannot overwrite function HGN_MOTHERSHIP_NIS00_OnSet Cannot overwrite function HGN_MOTHERSHIP_NIS01_OnSet Cannot overwrite function HGN_MOTHERSHIP_NIS02_OnSet Cannot overwrite function HGN_MOTHERSHIP_NIS02_OnPause Cannot overwrite function HGN_MOTHERSHIP_Normal_OnSet Cannot overwrite function KPR_ATTACKDROID_Normal_OnSet Cannot overwrite function KPR_ATTACKDROID_DoingFlightManeuver_OnSet Cannot overwrite function KPR_ATTACKDROID_Launched_OnSet Cannot overwrite function KPR_ATTACKDROID_Docked_OnSet Reinforcement data for player 1, bad ship name Vgr_Interceptor Reinforcement data for player 1, bad ship name Vgr_Bomber Reinforcement data for player 1, bad ship name Vgr_Interceptor Reinforcement data for player 1, bad ship name Vgr_Bomber Reinforcement data for player 1, bad ship name Vgr_Interceptor Reinforcement data for player 1, bad ship name Vgr_Bomber Reinforcement data for player 1, bad ship name Vgr_Interceptor Reinforcement data for player 1, bad ship name Vgr_Bomber Reinforcement data for player 1, bad ship name Vgr_Interceptor Reinforcement data for player 1, bad ship name Vgr_Bomber Reinforcement data for player 1, bad ship name Vgr_Interceptor Reinforcement data for player 1, bad ship name Vgr_Bomber Reinforcement data for player 1, bad ship name Vgr_Interceptor Reinforcement data for player 1, bad ship name Vgr_Bomber Reinforcement data for player 1, bad ship name Vgr_Interceptor Reinforcement data for player 1, bad ship name Vgr_Bomber Cannot overwrite function VGR_HEAVYMISSILEFRIGATE_CodeRed_OnSet Cannot overwrite function VGR_HEAVYMISSILEFRIGATE_CodeRed_OnPause Cannot overwrite function VGR_HEAVYMISSILEFRIGATE_CodeGreen_OnSet Cannot overwrite function Create_Hgn_Carrier Cannot overwrite function Update_Hgn_Carrier Trying to retrieve strike group index 9, no such strike group. luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeed) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedHard) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedExpert) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateHard) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateExpert) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeed) parameter: 1 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedHard) parameter: 1 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedExpert) parameter: 1 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateHard) parameter: 1 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateExpert) parameter: 1 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeed) parameter: 2 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedHard) parameter: 2 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedExpert) parameter: 2 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateHard) parameter: 2 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateExpert) parameter: 2 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeed) parameter: 3 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedHard) parameter: 3 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedExpert) parameter: 3 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateHard) parameter: 3 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateExpert) parameter: 3 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeed) parameter: 4 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedHard) parameter: 4 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (AllShipBuildSpeedExpert) parameter: 4 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateHard) parameter: 4 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (ResourceCollectionRateExpert) parameter: 4 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] -----RESTRICTION DATA----- The following items need to be added: -----BUILD DATA----- Player_UnrestrictBuildOption( 0, "Hgn_C_Production_Corvette" ) --Hgn_C_Production_Corvette Player_UnrestrictBuildOption( 0, "Hgn_MS_Production_Corvette" ) --Hgn_MS_Production_Corvette Player_UnrestrictBuildOption( 0, "Hgn_AssaultCorvette" ) --Hgn_AssaultCorvette Player_UnrestrictBuildOption( 0, "Hgn_PulsarCorvette" ) --Hgn_PulsarCorvette -----RESEARCH DATA----- Player_UnrestrictResearchOption( 0, "MothershipHealthUpgrade1" ) --MothershipHealthUpgrade1 Player_UnrestrictResearchOption( 0, "MothershipMAXSPEEDUpgrade1" ) --MothershipMAXSPEEDUpgrade1 Player_UnrestrictResearchOption( 0, "InterceptorMAXSPEEDUpgrade1" ) --InterceptorMAXSPEEDUpgrade1 Player_UnrestrictResearchOption( 0, "AttackBomberMAXSPEEDUpgrade1" ) --AttackBomberMAXSPEEDUpgrade1 Player_UnrestrictResearchOption( 0, "AssaultCorvetteHealthUpgrade1" ) --AssaultCorvetteHealthUpgrade1 Player_UnrestrictResearchOption( 0, "AssaultCorvetteMAXSPEEDUpgrade1" ) --AssaultCorvetteMAXSPEEDUpgrade1 Player_UnrestrictResearchOption( 0, "PulsarCorvetteHealthUpgrade1" ) --PulsarCorvetteHealthUpgrade1 Player_UnrestrictResearchOption( 0, "PulsarCorvetteMAXSPEEDUpgrade1" ) --PulsarCorvetteMAXSPEEDUpgrade1 Player_UnrestrictResearchOption( 0, "ResourceCollectorHealthUpgrade1" ) --ResourceCollectorHealthUpgrade1 Player_UnrestrictResearchOption( 0, "SensDisProbe" ) --SensDisProbe Player_UnrestrictResearchOption( 0, "InstaAdvancedFrigateTech" ) --InstaAdvancedFrigateTech carrier open *** StatusCriticallyDamaged: Sp_Tanker build available generic build available REACTIVE FLEET: Creating a new asteroid with 540 RU starting Init2 !!!!! !!!!!!!! !!!!!!!! !!!!!!!! !!!!!!! luasobgroupactions 1831: SobGroup_CreateSubSystem: could not create Subsystem (FighterProduction) parameter: EnemyCarrier stack traceback: 1: function `Rule_Init2' at line 362 [string ""] luasobgroupactions 1832: SobGroup_CreateSubSystem: either Ship doesn't have slots, slots are full, or trying to build a Race Specific subsystem parameter: EnemyCarrier stack traceback: 1: function `Rule_Init2' at line 362 [string ""] luaplayer 297: Player_GrantResearchOption: unable to grant (SuperCapHealthUpgradeSPGAME) parameter: 1 stack traceback: 1: function `Rule_Init2' at line 452 [string ""] luaplayer 297: Player_GrantResearchOption: unable to grant (VaygrCarrierHealthRegenDowngrade) parameter: 1 stack traceback: 1: function `Rule_Init2' at line 454 [string ""] luaplayer 297: Player_GrantResearchOption: unable to grant (HyperspaceRecoveryTimeUpgradeSPGAME) parameter: 1 stack traceback: 1: function `Rule_Init2' at line 517 [string ""] luaplayer 297: Player_GrantResearchOption: unable to grant (FrigateHealthUpgrade2) parameter: 1 stack traceback: 1: function `Rule_Init2' at line 521 [string ""] The total value of the reference fleets ships is 4150RUs The reference fleet has 1600 RU's in its initial allocation The total value of the players ships is 3600RUs The Players persistant fleet has 0 RU's on entering the level Ship value multiplier set to 1 RU multiplier set to 1 No reactive fleet slots will be filled No RUs for any of the AIs. Player is too poor Playing reinforcement event from SECOND check! Fighter Facility health is too low!! ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,Vgr_Bomber,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,3,Interceptor ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,0,Interceptor ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_AttackBomber,,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,0,AttackBomber ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_AttackBomber,,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,0,AttackBomber ****** StatusUnderAttack: shipnm, enemy, attackcode = {Sp_Tanker,,16304.599609375} *** StatusTakingLightDamage: name = Sp_Tanker Health = 0.9786111116409302 Timer AttackRemainingConvoysTIMER STARTED with period: 100 trying to play Battle music! *** StatusTakingLightDamage: name = Sp_Tanker2 Health = 0.9632666707038879 luauniverse 323: EventPointer_AddSubSystemFromSobGroup: could not find subsystem (Vgr_C_Production_Fighter) on sobgroup (EnemyCarrier) parameter: Vgr_C_Production_Fighter stack traceback: 1: function `HW2_CreateEventPointerSubSystem' at line 67 [string ""] 2: main of string "pointer_fighterFacility_id = HW2_CreateEven..." at line 1 *** StatusTakingLightDamage: name = Sp_Tanker Health = 0.9712777733802795 *** StatusTakingLightDamage: name = Sp_Tanker2 Health = 0.9370666742324829 *** StatusTakingLightDamage: name = Sp_Tanker Health = 0.9236111044883728 ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,Vgr_Bomber,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,3,Interceptor *** StatusTakingLightDamage: name = Sp_Tanker2 Health = 0.9091333150863648 *** StatusTakingLightDamage: name = Sp_Tanker Health = 0.8906111121177673 *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=Hgn_ResourceCollector, buildType=1 *** StatusTakingLightDamage: name = Sp_Tanker2 Health = 0.8818666934967041 *** StatusTakingLightDamage: name = Sp_Tanker Health = 0.8744778037071228 *** StatusTakingLightDamage: name = Sp_Tanker2 Health = 0.8693333268165588 *** StatusTakingLightDamage: name = Sp_Tanker Health = 0.8656777739524841 *** StatusTakingLightDamage: name = Sp_Tanker2 Health = 0.8521222472190857 ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,Vgr_Bomber,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,3,Interceptor *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.9472000002861023 ****** StatusUnderAttack: shipnm, enemy, attackcode = {Hgn_AttackBomber,,3884.521728515625} *** StatusTakingLightDamage: name = Sp_Tanker2 Health = 0.8052555322647095 ** Battle Momentum Value: 13.39303970336914 ** Battle Momentum Value: 792.5826416015625 *** StatusCriticallyDamaged: Hgn_AttackBomber Display: (0, 0, 0, 0) - (-32000, -32000) Display: (0, 0, 0, 0) - (-32000, -32000) Restoring video mode Display: (0, 0, 0, 0) - (-32000, -32000) Display: (0, 0, 1920, 1080) - (0, 0) Display: (0, 0, 1920, 1080) - (0, 0) Switching to a 1920x1080 32bit mode Display: (0, 0, 1920, 1080) - (0, 0) *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.8276444673538208 *** StatusTakingLightDamage: name = Sp_Tanker2 Health = 0.7168346643447876 *** StatusTakingLightDamage: name = Sp_Tanker3 Health = 0.6302666664123535 ****** StatusUnderAttack: shipnm, enemy, attackcode = {Hgn_Interceptor,,2981.934326171875} **** StatusShipDestroyed: shipName =Hgn_Interceptor, and code = -1 *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=Hgn_Interceptor, buildType=1 ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,Vgr_Interceptor,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,3,Interceptor *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.7789999842643738 *** StatusTakingLightDamage: name = Sp_Tanker5 Health = 0.8369333148002625 telling Frigates to hyperspace in next to Convoy 4!!!!!!! = = = = = in frigateAttack function = = = = = = telling Frigates to attack Convoy 4!!!!!!! Timer callInMelarnTIMER STARTED with period: 120 *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.7689333558082581 *** StatusTakingLightDamage: name = Sp_Tanker5 Health = 0.8125333189964294 *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.7375222444534302 *** StatusTakingLightDamage: name = Sp_Tanker5 Health = 0.8012999892234802 *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.7182539701461792 *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=Hgn_Interceptor, buildType=1 *** StatusTakingLightDamage: name = Sp_Tanker5 Health = 0.793233335018158 *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.690941333770752 *** StatusTakingLightDamage: name = Sp_Tanker3 Health = 0.5088666677474976 trying to bring down letterbox bars!!!!!!!!!!!!!!!!!!!!!!!!!! *** StatusDamaged: Hgn_AttackBomber playing nis!!!!! ****** StatusUnderAttack: shipnm, enemy, attackcode = {Hgn_AttackBomber,,15938.1015625} Telling Carrier to FLEE!!! !!! !!! !!! !!! Convoy 1 has docked! NIS has completed!! trying to play Battle music! Doing melarn set-up! *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.5441826581954956 going into melarnAttackWatch Trying to play event WithHelpOfMelarn!!!!!! playing event WithHelpOfMelarn!!!!!! ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,Vgr_Bomber,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,3,Interceptor Convoy 6 saved in SIXTH check ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_Interceptor,Vgr_Bomber,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,3,Interceptor ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_AttackBomber,VGR_C_ENGINE,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,9,AttackBomber build available generic build available Telling Convoy 1 to launch! *****---- CommandConstructionComplete : buildingShip=Hgn_MotherShip, builtItem=Hgn_Interceptor, buildType=1 *** StatusTakingLightDamage: name = Sp_Tanker5 Health = 0.6615555286407471 *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.252682626247406 *** StatusTakingHeavyDamage: Hgn_AttackBomber *** StatusTakingLightDamage: name = Sp_Tanker5 Health = 0.6509555578231812 *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.2305826395750046 *** StatusTakingLightDamage: name = Sp_Tanker5 Health = 0.612500011920929 *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.2038493007421494 ****** StatusUnderAttack: shipnm, enemy, attackcode = {Hgn_AttackBomber,,12464.91796875} *** StatusTakingLightDamage: name = Sp_Tanker5 Health = 0.5885111093521118 ****** StatusUnderAttack: shipnm, enemy, attackcode = {Hgn_Interceptor,,12853.5029296875} ******** COMMAND ATTACK: shipname, targetname, attackType = Hgn_AttackBomber,Vgr_Bomber,0 ******2- COMMAND ATTACK: shipType, targetShipType, genericShipName = 3,3,AttackBomber *** StatusTakingLightDamage: name = Sp_Tanker4 Health = 0.1751975119113922 trying to play staging music! *** StatusTakingLightDamage: name = Sp_Tanker5 Health = 0.5712444186210632 Convoy 2 has docked!
unlocking research now!!!
luaplayer 141: Player_UnrestrictResearchOption: unable to unrestrict (InterceptorMissiles)
parameter: 0
stack traceback:
1: function Enable_ResearchOptions’ at line 123 [string “”]
2: main of string “Enable_ResearchOptions()” at line 1
luaplayer 141: Player_UnrestrictResearchOption: unable to unrestrict (BomberTorpedoes)
parameter: 0
stack traceback:
1: function Enable_ResearchOptions’ at line 124 [string “”]
2: main of string “Enable_ResearchOptions()” at line 1

 Telling Convoy 2 to launch! 
 Convoy 3 has docked! 
 Display: (0, 0, 0, 0) - (-32000, -32000) 
 Display: (0, 0, 0, 0) - (-32000, -32000) 
 Restoring video mode 
 Display: (0, 0, 0, 0) - (-32000, -32000) 
 Telling Convoy 3 to launch! 
 Convoy 6 has docked! 
 Telling Convoy 6 to launch! 
 Display: (0, 0, 1920, 1080) - (0, 0) 
 Display: (0, 0, 1920, 1080) - (0, 0) 
 Switching to a 1920x1080 32bit mode 
 Display: (0, 0, 1920, 1080) - (0, 0) 
 Convoy 4 has docked! 
 Telling Convoy 4 to launch! 
 Convoy 5 has docked! 
 Telling Convoy 5 to launch! 
 Starting Level: Data:\LevelData\Campaign\ascension\M03_Staging\M03_Staging.level 
 Cannot overwrite function Hgn_Interceptor_Custom0_OnSet 
 Cannot overwrite function Hgn_Interceptor_Custom0_OnEnd 
 Cannot overwrite function Hgn_Mine_Open_OnSet 
 Cannot overwrite function Hgn_Mine_Close_OnSet 
 Cannot overwrite function HGN_DEFENSEFIELDFRIGATE_DefenseFieldActivate_OnSet 
 Cannot overwrite function HGN_DEFENSEFIELDFRIGATE_DefenseFieldActivate_OnPause 
 Cannot overwrite function HGN_DEFENSEFIELDFRIGATE_DefenseFieldDeActivate_OnSet 
 Cannot overwrite function HGN_RESOURCECOLLECTOR_ResourceStart_OnSet 
 Cannot overwrite function HGN_RESOURCECOLLECTOR_ResourceStart_OnPause 
 Cannot overwrite function HGN_RESOURCECOLLECTOR_ResourceDo_OnSet 
 Cannot overwrite function HGN_RESOURCECOLLECTOR_ResourceEnd_OnSet 
 Cannot overwrite function HGN_RESOURCECOLLECTOR_RepairStart_OnSet 
 Cannot overwrite function HGN_RESOURCECOLLECTOR_RepairStart_OnPause 
 Cannot overwrite function HGN_RESOURCECOLLECTOR_RepairDo_OnSet 
 Cannot overwrite function HGN_RESOURCECOLLECTOR_RepairEnd_OnSet 
 Cannot overwrite function HGN_PROBE_Open_OnSet 
 Cannot overwrite function HGN_PROXIMITYSENSOR_Open_OnSet 
 Cannot overwrite function HGN_PROXIMITYSENSOR_Close_OnSet 
 Cannot overwrite function HGN_ECMPROBE_Open_OnSet 
 Cannot overwrite function HGN_ECMPROBE_Close_OnSet 
 Cannot overwrite function HGN_MOTHERSHIP_DockPathOpen_OnSet 
 Cannot overwrite function HGN_MOTHERSHIP_DockPathOpen_OnPause 
 Cannot overwrite function HGN_MOTHERSHIP_DockPathClosed_OnSet 
 Cannot overwrite function HGN_MOTHERSHIP_DockPathClosed_OnPause 
 Cannot overwrite function HGN_MOTHERSHIP_NIS00_OnSet 
 Cannot overwrite function HGN_MOTHERSHIP_NIS01_OnSet 
 Cannot overwrite function HGN_MOTHERSHIP_NIS02_OnSet 
 Cannot overwrite function HGN_MOTHERSHIP_NIS02_OnPause 
 Cannot overwrite function HGN_MOTHERSHIP_Normal_OnSet 
 Cannot overwrite function KPR_ATTACKDROID_Normal_OnSet 
 Cannot overwrite function KPR_ATTACKDROID_DoingFlightManeuver_OnSet 
 Cannot overwrite function KPR_ATTACKDROID_Launched_OnSet 
 Cannot overwrite function KPR_ATTACKDROID_Docked_OnSet 
 Cannot overwrite function VGR_HEAVYMISSILEFRIGATE_CodeRed_OnSet 
 Cannot overwrite function VGR_HEAVYMISSILEFRIGATE_CodeRed_OnPause 
 Cannot overwrite function VGR_HEAVYMISSILEFRIGATE_CodeGreen_OnSet 
 Cannot overwrite function VGR_CARRIER_Launched_OnSet 
 Cannot overwrite function VGR_CARRIER_Docked_OnSet 
 parameter: attempt to call global `getRace' (a nil value)
stack traceback:
   1:  function `oninit' at line 13 [string ""] 
 CPUPLAYER -- error in CPUPlayer: oninit() function was not found in CPU script -- FATAL EXIT -- hw2cpuplayer/186:! --stack trace--   
 Restoring video mode 
 Display: (0, 0, 1920, 1080) - (0, 0) 
 Display: (0, 0, 100, 100) - (8, 30) 
 Display: (0, 0, 100, 100) - (8, 30) 

Alot seems to be not working but I’m guessing thats because i’m using my old level files rather than the updates but its how to “Unrestrict Research”?

Thanks for helping

So, before anything else, you understand that your Campaign associates itself with the ‘SinglePlayer’ GameRule (GR), right? So as with any other advice or guidance about GR, now you’ve got one to use as an umbrella for your edits…

ALSO - For anyone looking at Campaigns and wondering how I know that the GR is ‘SinglePlayer’… Well I wrote the code… :wink: BUT! That is the default. So yes, that means you can do additional Campaigns with completely unique GRs, add extra missions with new GRs (and related data per Race/Ship/etc) - just for them. How?

contentRules = "YourGameRuleNameHere"

I really hope this leads people to making some crazy new add-on missions! And don’t forget, it is pretty easy to make a GR that is just a modifier or addition to an existing GR, so you can create one that is 95% SinglePlayer, with a few extra files, and call it ‘SinglePlayerWIthMoreKablam’ - and only author a few extra files… if it isn’t clear how, feel free to ask.

You can - but this is one case where (as I warned) I think we realized after the patch that we could have done better. And really, now we have. There’s another thread about what we did… ugh, I’ll find it later. And that ‘new’ approach is a bit hard in the current code (I won’t go into details here, the new stuff will be visible at the next major post)…

So instead… The main idea is the def_research.lua file is loaded because the Race has a property (called path_research) which says to load it. As you know, almost any property of anything can be overridden now - in this case you can add a file like this:

data:\Scripts\Races\YourRace\SinglePlayer\Props\YourModName.lua

In that file, just like many examples already - set your priority values above the base… right now that is 1.0 for base, 2.0 for Gearbox modified values, so you can do 3.0 or higher… Highest value wins in a fight. Then, add the new string property for path_research to point at a new research lua (maybe yourmod_research.lua?). In there, make your changes.

Why?

Well, now your Mod is making changes to only SinglePlayer - which none of the Skirmish or MP games are affected by. So you are both safe, and happy if we make edits because they won’t be files you’ve edited. You added files that only you control, that don’t conflict with ours at all. Stuff could still break, but overall, the right approach.

Ship files are still where you make edits, yes. Though, expect soon that many of the properties are ‘auto loaded’ without having to hand-edit a .ship file to redirect the values from a Props lua file. Still, for now. So when you see a value in a ship you want to change that isn’t already trying to just load from an external property…

NewShipType.frontArmourDamage=0.8

Should become

NewShipType.frontArmourDamage= getShipNum(NewShipType, "frontArmourDamage", 0.8)

(Be sure to make the property name the same as the actual property being assigned… so that when the ‘auto assign’ logic is added later, it just works, instead of all falls apart for your edits.) Now, the default is still there, but you can go add it to a Property for a ship…

data:\Ship\ShipName\SinglePlayer\Props\YourMod.lua

So now, when your mod is loaded the ships get properties that are changed - but not in Skirmish/MP - and again, generally in files that you added… so you don’t stress as much about our edits or revisions.

I think the previous 2 answers cover this, right? Make edits with data for the SinglePlayer GR and it’ll prevent bad things from happening in other modes… And keep it quite tidy (well, except a ton of files…).

Well, oddly - Restrict was mostly added because people couldn’t make Research vary by game-mode (or what used to be called a Rubric) - and now that it is very easy to make different research for each GR, that’ll hopefully stop being used as a hacky (and failure-prone) patch. I know on our end you’re likely to see it go away entirely and all of the data just be given proper, GR aware, organization.

1 Like

This is GREAT!! Thank you.

I’ve removed all of my mod files and started to update them and add them back in.

Following your instructions I’ve managed to get my research into the campaign. Brilliant!
Just to clarify my enhanced_research.lua ADDS to def_research.lua rather than REPLACING it?
I ask because i’m getting lots of this type of thing in HwRM.log

luaplayer 91: Player_RestrictResearchOption: unable to restrict (cpuplayers_defensive) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""] luaplayer 91: Player_RestrictResearchOption: unable to restrict (cpuplayers_aggressive) parameter: 0 stack traceback: 1: function `SPRestrictOptions' at line 20 [string ""] 2: function `SPRestrict' at line 5 [string ""] 3: function `OnInit' at line 13 [string ""]

I’m still having trouble with ship files. Just for testing I tried something simple give the hgn interceptor 300 health instead of 30

What I did -

In
Data\scripts\races\hiigaran\singleplayer\props\enhanced.lua
I added the line
getShipNum = [[data:ship/hgn_interceptor/SinglePlayer/Props/hgn_interceptor.lua]]

In hgn_interceptor.lua
I have a single line
NewShipType.maxhealth= getShipNum(NewShipType, "maxhealth", 300)

but I’m getting

LUA ‘data:Ship\HGN_INTERCEPTOR\SinglePlayer\Props\HGN_INTERCEPTOR.LUA’ – parameter: attempt to call global `getsShipNum’ (a nil value)
stack traceback:
1: main of string “” at line 1

What am I doing wrong?

That’s not quite how that works. On my phone but change:

NewShipType.maxhealth= getShipNum(NewShipType, “maxhealth”, 300)
to
NewShipType.maxhealth= getShipNum(NewShipType, “cfg_interceptor_maxhealth”, 30)
and
delete that whole getshipnum thing, you’re going in circles there. In your LUA in the string_properties section add:
cfg_interceptor_maxhealth = 300,

The ,30 in the .ship file defines the default, the getshipnum before it queries the LUA for the string “cfg_interceptor_maxhealth” which you are defining as 300

Make sense?

You are adding a file that replaces the other. Because you changed your file in Props to assign a different value (enhanced_research.lua) for path_research…

Eh… what? Look at the format of the files in \Props… any of the ones we shipped. Your format is something else entirely… Follow the existing style.

Cole is half right (he’s used to the format when only Rules had props data). Leave your line in the .ship file as-is… the symbol to look up is ‘maxhealth’ (same symbol as is being assigned in the .ship) - but because your Prop file is so busted, you’re creating an error. It’ll be very clear when you look at the format for a file in \Prop used elsewhere.

Thanks Guys. Its starting to make sense now.

So… I use the original ship files but edit the values to be -

NewShipType.*itemiwantchanging*= getShipNum(NewShipType, "*itemiwantchanging*", the stock value)

This is so when you do some fancy techno-sorcery in the future my mods will continue to work.

I then make a folder within the Ship folder and call it “When I want the change to occur” (SinglePlayer/deathmatch)
In that folder I make one called “Props”
In that folder I make an LUA file called “MyMod” (or whatever my mod is actually called)

The format for that file is

Number_Properties_Priority = 3.0 Number_Properties = { } String_Properties_Priority = 3.0 String_Properties = { }

The priority being 3.0 so it overrides both the original files and your updates

In Number_Properties i put the variables I used in the SHIP file (itemiwantchanging) if the answer is a number like health, acceleration or accuracy.

When would I use String_Properties?
And how would I add extra weapons to the ship? Still in the SHIP file?

Sorry for asking so many questions :grin:

Yes - but to be clear, the system is not that narrow.

Check out DeathmatchHW2.lua…

Race_Paths = "Deathmatch,DeathmatchHW2"

The name (Race_Paths) made more sense when only Races had GR dependent Props\Tags. But now Ships\Resources (in the next minor patch) do.

That command says ‘Search and Load from xxx\Deathmatch\Props and then xxx\DeathmatchHW2\Props’ - in that order. So the GR for DeathmatchHW2 is actively derived from the GR for Deathmatch’s data.

In your case, if you are build on top of our SP setup, have your GR do the same:

Race_Paths = "SinglePlayer,StevensSP"

Now, when you make edits, do it inside of sub-folders called StevensSP. You’ll still have to make an over-written version of the HW1/HW2 Campaign files (to change their GR from SinglePlayer to StevensSP) - but now you be much better organized (as you know that only you created subfolders called StevensSP).

If you look at the various GR files - you can see how to make some for SP or MP, etc.

(■■■■, hold on, I just spilled a shitload of Horchata all over myself and desk/chair… doh!)

For Mod authors who are doing TCs and such - this is a VERY important pattern to be aware of; especially if your Mod has variant GRs for different modes/timelines/plots. Because now you can author the vast majority of changes in a base folder, and others per sub-GR in a 2nd folder, where likely only minor tweaks are needed to override the base Mod:

Race_Paths = "MyMod,MyMod_SubMode"

I worked very hard (and am not done) to make this a flexible and ‘hack free’ new system. I figured if we were gonna evolve the interface and break every Mod in existence, it had to be for a very good reason :wink:

1 Like