Back to Index Page generated: May 8, 2024, 6:16:03 AM

Expansion Sniper Gun Rebalancer

Content

Warnings

  1. Required Expansions mismatch between OXP Manifest and Expansion Manager at character position 0061 (DIGIT ZERO vs LATIN SMALL LETTER N)
  2. No version in dependency reference to oolite.oxp.Norby.Sniper_Gun:null
  3. Unknown key 'upload_date' at https://wiki.alioth.net/img_auth.php/8/86/Sniper_Gun_rebalancer.oxz!manifest.plist

Manifest

from Expansion Manager's OXP list from Expansion Manifest
Description Reduced a weight of roles NPC-ships from Sniper Gun OXP to 5 times lower(20% from basic), but will added ships with sniper gun from other ship OXPs. Also it's setup the lower size of sniper guns, names of ships will not contain the words 'SG'. Reduced a weight of roles NPC-ships from Sniper Gun OXP to 5 times lower(20% from basic), but will added ships with sniper gun from other ship OXPs. Also it's setup the lower size of sniper guns, names of ships will not contain the words 'SG'.
Identifier oolite.oxp.Rustem.Sniper_Gun_rebalancer oolite.oxp.Rustem.Sniper_Gun_rebalancer
Title Sniper Gun Rebalancer Sniper Gun Rebalancer
Category Ships Ships
Author Rustem&Norby Rustem&Norby
Version 1.3.11 1.3.11
Tags
Required Oolite Version
Maximum Oolite Version
Required Expansions
  • oolite.oxp.Norby.Sniper_Gun:0
  • oolite.oxp.Norby.Sniper_Gun:
  • Optional Expansions
    Conflict Expansions
    Information URL http://wiki.alioth.net/index.php/Sniper_Gun n/a
    Download URL https://wiki.alioth.net/img_auth.php/8/86/Sniper_Gun_rebalancer.oxz n/a
    License CC-BY-NC-SA 4.0 CC-BY-NC-SA 4.0
    File Size n/a
    Upload date 1610873352

    Documentation

    Also read http://wiki.alioth.net/index.php/Sniper%20Gun%20Rebalancer

    readme.txt

    Sniper Gun Rebalancer
    By Rustem and Norby
    
    Overview
    ========
    
    This OXP slightly reduced a weight of roles NPC-ships in the shipdata to 5 times lower(20% from basic), but will added ships with sniper gun from other ship's OXP as external dependency. Also it's setup the lower size of sniper guns, names of ships will not contain the words 'SG'.
    
    Very little by way of new ships has been added to the game(system tech level, government type).
    
    Required OXP's
    ==============
    The following OXP's are listed as required:
    
    - Sniper Gun (v1.3)
    
    Recommended OXP's
    =================
    The following OXP's are listed as recommended, in that additional ships will become available if they are installed.
    
    - Separated Lasers
    	Separated laser mounts option will be added to the Sniper Guns.
    
    - gsagostinho's Texture Packs
    	Added a 5 ships: Asp Mark II(v1.2, 2 textures), Cobra Mark III(2 textures), Fer-de-Lance(v1.2, 1 texture).
    
    - Griff's Retextures
            Added a 4 ships: Cobra Mark III(v1.04, 2 textures), GalCop Viper(v1.3.1, 1 ship), GalCop Viper Interceptor(v1.0.3, 1 ship).
            Some additional ships with multiply laser mounts: GalCop Viper Interceptor (links with condition script).
    	
    - wildShips's Shipset (v0.9.1)
            Added a 4 ships: Chatu, Duma(2 ships).
            Some additional ships with multiply laser mounts: tribal Duma, dog Duma, police Duma. Police Duma (links with condition script).
    
    - Laser Cannons (v1.12)
            Rebalance addition ships with laser cannons. Added a 7 ships: Asp, Boa(2 ships), Cobra Mark III(2 ships), Fer-de-Lance, Krait, Python, Python BattleCruiser, Viper.
    
    - Staer9's Shipset (v1.12)
            Added a 1 ship: Iguana.
    
    License
    =======
    This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 4.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/
    
    Discussion
    ==========
    This OXP is discussed at this forum link: http://aegidian.org/bb/viewtopic.php?f=4&t=18051
    
    Info
    ====
    Link: http://wiki.alioth.net/index.php/Sniper_Gun
    
    Summary Differents
    ==================
    
    - Reduced a weight of roles NPC-ships in the shipdata to 5 times lower(20% from basic).
    - Setup the lower size of sniper guns: "model_scale_factor = 0.75".
    - Corrected weapons position for SGs.
    - The names of ships will not contain the words 'SG'.
    - Added a snipergun-ship, snipergun-heavy-ship and interceptor-sg, interceptor-heavy-sg roles.
    - Added a ships with sniper gun from other ship OXPs as external dependency:
      * gsagostinho's Texture Packs(5 ships),
      * Griff's Retextures(4 ship - Cobra Mark III, Griff Viper, Griff Viper Interceptor),
      * Staer9's Shipset(1 ship - Iguana).
      * wildShips's Shipset(3 ships - Chatu, Duma(SG), Duma Fleet Hauler(HSG)).
      * Laser Cannons(7 ships).
    - Added a density for Griff's Viper Alternative Model for minimal ship mass req.
    - Fixed a ship mass by "model_scale_factor = 0.65" for Duma and set a "max_cargo = 125" for Duma Fleet Hauler.
    - Adjusted a pitch and roll for Duma Fleet Hauler due to the mass of Heavy Sniper Guns.
    - Simulated the EEU and NEU for police ships.
    - Set condition_script for some uber-ships(has 'dog' word) and police-patrol.
    - Updated a view positions for some ships.
    
    Version History
    ===============
    
    Beta releases:
    
    1.3.0 - 1.3.10
    - Reduced a weight of roles NPC-ships in the shipdata to 5 times lower(20% from basic).
    - Setup the lower size of sniper guns: "model_scale_factor = 0.75".
    - Corrected weapons position for SGs.
    - The names of ships will not contain the words 'SG'.
    - Added a snipergun-ship, snipergun-heavy-ship and interceptor-sg, interceptor-heavy-sg roles.
    - Added a ships with sniper gun from other ship OXPs as external dependency:
      * gsagostinho's Texture Packs(5 ships),
      * Griff's Retextures(4 ship - Cobra Mark III, Griff Viper, Griff Viper Interceptor),
      * Staer9's Shipset(1 ship - Iguana).
      * wildShips's Shipset(3 ships - Chatu, Duma(SG), Duma Fleet Hauler(HSG)).
      * Laser Cannons(7 ships).
    - Added a density for Griff's Viper Alternative Model for minimal ship mass req.
    - Fixed a ship mass by "model_scale_factor = 0.65" for Duma and set a "max_cargo = 125" for Duma Fleet Hauler.
    - Adjusted a pitch and roll for Duma Fleet Hauler due to the mass of Heavy Sniper Guns.
    - Simulated the EEU and NEU for police ships.
    - Set condition_script for some uber-ships(has 'dog' word) and police-patrol.
    - Updated a view positions for some ships.
    
    1.3.11
    - Initial public release.
    
    --------------------------------------------------------------------------------
     Help info
    --------------------------------------------------------------------------------
    
    Roles:
            //
            // POLICE & INTERCEPTOR & WINGMAN
            //
            // police : Light fighter craft without a witchdrive or particularly heavy weapons.
            // interceptor : A heavy fighter with a range of powerful equipment, only used in the highest TL systems.
            // wingman : This role is used to add escorts to other police ships.
            //
            // Creators of ships should avoid to assign both a police and interceptor role to the same ship.
            // It's better really not to use powerful ships as wingmen - use them as police instead.
            // Interceptors are generated in addition to police in high-tech systems, while wingman is used instead of escort for police ships with an escort's property.
            //
            // For oolite v1.82 - 1.86 used:
            //
            //  var role = "police";
            //  if (9+Math.random()*6 < system.info.techlevel)
            //  {
            //     role = "interceptor";
            //  }
            //
            //  var h = this._addGroup("interceptor",Math.floor(Math.random()*2)+Math.floor(Math.random()*2)+1+Math.ceil(system.info.techlevel/6),pos,2E3);
            //
    
    Subentities Templates:
    
    //Duma SG
                    subentities = ( // 1 forward Sniper Gun
                            // 1 forward Sniper Gun
                            { subentity_key = "snipergun"; position = "0.0 -3.2 59.7"; orientation = "0 0 0 1"; },
                            // 1 aft Sniper Gun
                            //{ subentity_key = "snipergun"; position = "0.0 12.5 -61.9"; orientation = "0 0 1 0"; },                       // y: 180 Degrees
                            //
                            // templates for SG: side separated, near slots
                            //
                            // 1 forward Sniper Gun
                            //{ subentity_key = "snipergun"; position = "0.0 -3.2 59.7"; orientation = "0 0 0 1"; },
                            //
                            // 2 forward Sniper Guns, near slots
                            //{ subentity_key = "snipergun-l"; position = "-25.0 3.2 46.0"; },
                            //{ subentity_key = "snipergun-r"; position = "25.0 3.2 46.0"; },
                            //
                            // 2 forward Sniper Guns, side separated (>145m)!
                            //{ subentity_key = "snipergun-l"; position = "-73.4 -2.9 9.8"; orientation = "-0.9239 0 0 0.3827"; },           // z: 315 Degrees
                            //{ subentity_key = "snipergun-r"; position =  "73.4 -2.9 9.8"; orientation = "0.9239 0 0 0.3827"; },            // z: 45 Degrees
                            //
                            // 3 forward separated Sniper Guns
                            //
                            // 1 aft Sniper Guns
                            //{ subentity_key = "snipergun"; position = "0.0 12.5 -61.9"; orientation = "0 0 1 0"; },                       // y: 180 Degrees
                            //
                            // 2 aft Sniper Guns, near slots
                            //{ subentity_key = "snipergun-r"; position = "-25.0 6.95 -57.3"; orientation = "0 0 1 0"; },                     // y: 180 Degrees
                            //{ subentity_key = "snipergun-l"; position = "25.0 6.95 -57.3";  orientation = "0 0 1 0"; }                      // y: 180 Degrees
                            //
                            // 2 aft Sniper Guns, side separated (>145m)!
                            //{ subentity_key = "snipergun-r"; position = "-73.4 -2.9 -28.5"; orientation = "0 0.3827 -0.9239 0"; },        // y: 180; z: 315 Degrees
                            //{ subentity_key = "snipergun-l"; position =  "73.4 -2.9 -28.5"; orientation = "0 0.3827 0.9239 0"; }
                            //
    
                    );
                    weapon_facings = 3;
                    weapon_position_forward = "0.0 -3.2 93.2";
                    //
    		// orig: weapon_position_aft = "0.0 12.5 -65.0";
    		// orig: weapon_position_forward = "0.0 0.0 65.0";
                    //
                    //weapon_mount_mode = "multiply";
                    //
                    // for SG z_factor:20.5, for HSG z_factor:33.5
                    //
                    // SG templates:
                    //
                    // 1 aft Sniper Gun
                    //weapon_position_aft = ("0.0 12.5 -88.9");
                    //
                    // 2 aft Sniper Guns, near slots
                    //weapon_position_aft = ("-25.0 6.95 -84.3", "25.0 6.95 -84.3");
                    //
                    // 3 aft Sniper Guns
                    //weapon_position_aft = ("0.0 12.5 -88.9", "-25.0 6.95 -84.3", "25.0 6.95 -84.3");
                    //
                    // 3 aft separated Sniper Guns, side guns
                    //weapon_position_aft = ("0.0 12.5 -88.9", "-73.4 -2.9 -55.5", "73.4 -2.9 -55.5");
                    //
                    // 1 forward Sniper Gun
                    //weapon_position_forward = ("0.0 -3.2 86.7");
                    //
                    // 2 forward Sniper Guns, near slots
                    //weapon_position_forward = ("-25.0 3.2 73.0", "25.0 3.2 73.0");
                    //
                    // 3 forward Sniper Guns, near slots
                    //weapon_position_forward = ("0.0 -3.2 86.7", "-25.0 3.2 73.0", "25.0 3.2 73.0");
                    //
                    // 3 forward separated Sniper Guns, side guns
                    //weapon_position_forward = ("0.0 -3.2 86.7", "-73.4 -2.9 36.8", "73.4 -2.9 36.8");
    
    //Duma HSG
                    subentities = ( // 1 forward Heavy Sniper Guns:
                            // 1 fw
                            { subentity_key = "snipergun-heavy2"; position = "0.0 -3.2 59.7"; },
                            // 1 aft
                            //{ subentity_key = "snipergun-heavy2"; position = "0.0 12.5 -61.9"; orientation = "0 0 1 0"; },                   // y: 180 Degrees
                            //
                            // templates for HSG: side separated, near slots
                            //
                            // 1 forward Heavy Sniper Gun
                            //{ subentity_key = "snipergun-heavy2"; position = "0.0 -3.2 59.7"; },
                            //
                            // 2 forward Heavy Sniper Guns, side separated (>145m)!
                            //{ subentity_key = "snipergun-heavy2-l"; position = "-73.4 -1.0 9.8"; orientation = "0.9936 0 0 0.1132"; },         // z: 13 Degrees
                            //{ subentity_key = "snipergun-heavy2-r"; position =  "73.4 -1.0 9.8"; orientation = "-0.9936 0 0 0.1132"; },        // z: 347 Degrees
                            //
                            // 2 forward Heavy Sniper Guns, near slots:
                            //{ subentity_key = "snipergun-heavy2-l"; position = "-25.0 3.2 46.0"; },
                            //{ subentity_key = "snipergun-heavy2-r"; position = "25.0 3.2 46.0"; },
                            //
                            // 3 forward separated Heavy Sniper Guns
                            //{ subentity_key = "snipergun-heavy2"; position = "0.0 -3.2 59.7"; },
                            //{ subentity_key = "snipergun-heavy2-l"; position = "-73.4 -1.0 9.8"; orientation = "0.9936 0 0 0.1132"; },    // z: 13 Degrees
                            //{ subentity_key = "snipergun-heavy2-r"; position =  "73.4 -1.0 9.8"; orientation = "-0.9936 0 0 0.1132"; },   // z: 347 Degrees
                            //
                            // 1 aft Heavy Sniper Gun
                            //{ subentity_key = "snipergun-heavy2"; position = "0.0 12.5 -61.9"; orientation = "0 0 1 0"; },                // y: 180 Degrees
                            //
                            // 2 aft Heavy Sniper Guns, side separated (>145m)!
                            //{ subentity_key = "snipergun-heavy2-r"; position = "-73.4 -1.0 -28.5"; orientation = "0 0.1132 0.9936 0"; },       // y: 180; z: 13 Degrees
                            //{ subentity_key = "snipergun-heavy2-l"; position =  "73.4 -1.0 -28.5"; orientation = "0 0.1132 -0.9936 0"; },
                            //
                            // 2 aft Heavy Sniper Guns, near slots:
                            //{ subentity_key = "snipergun-heavy2-r"; position = "-25.0 3.75 -54.4"; orientation = "0 0 1 0"; },                 // y: 180 Degrees
                            //{ subentity_key = "snipergun-heavy2-l"; position = "25.0 3.75 -54.4";  orientation = "0 0 1 0"; },                 // y: 180 Degrees
                            //
                            // templates for SG:
                            //
                            // 3 forward Sniper Guns, 2 aft Sniper Guns, all separated:
                            // fw, 1 and 2 side guns
                            //{ subentity_key = "snipergun"; position = "0.0 -3.2 60.8"; orientation = "0 0 0 1"; },
                            //{ subentity_key = "snipergun-l"; position = "-73.4 -2.5 9.8"; orientation = "-0.9744 0 0 0.2250"; },             // z: 334 Degrees
                            //{ subentity_key = "snipergun-r"; position =  "73.4 -2.5 9.8"; orientation = "0.9744 0 0 0.2250"; },              // z: 26 Degrees
                            // aft, 2 near slots
                            //{ subentity_key = "snipergun-r"; position = "-25.0 6.75 -57.3"; orientation = "0 0 1 0"; },                     // y: 180 Degrees
                            //{ subentity_key = "snipergun-l"; position = "25.0 6.75 -57.3";  orientation = "0 0 1 0"; },                     // y: 180 Degrees
                    );
                    weapon_facings = 3;
                    weapon_position_forward = "0.0 -3.2 93.2";
                    //
    		// orig: weapon_position_aft = "0.0 12.5 -65.0";
    		// orig: weapon_position_forward = "0.0 0.0 65.0";
                    //
                    //weapon_mount_mode = "multiply";
                    //
                    // for SG z_factor:20.5, for HSG z_factor:33.5
                    //
                    // HSG templates:
                    //
                    // 1 aft Heavy Sniper Gun
                    //weapon_position_aft = ("0.0 12.5 -95.4");
                    //
                    // 2 aft Heavy Sniper Guns, near slots
                    //weapon_position_aft = ("-25.0 3.75 -54.4", "25.0 3.75 -54.4");
                    //
                    //keep >100m distances in 3D to aft HSGs be separated with Separated Lasers OXP
                    //weapon_position_aft = ("-25.0 3.75 0.9", "25.0 3.75 -87.9");
                    //
                    //keep >100m distances in 3D to aft HSGs be separated with Separated Lasers OXP
                    //weapon_position_aft = ("-25.0 6.75 -87.5", "25.0 6.75 -0.5");
    
                    //
                    // 3 aft Heavy Sniper Guns, near slots
    
                    //
                    //keep >100m distances in 3D to aft HSGs be separated with Separated Lasers OXP
                    //weapon_position_aft = ("0.0 12.5 -95.4", "-25.0 3.75 0.9", "25.0 3.75 -87.9");
                    //
                    // 3 aft separated Heavy Sniper Guns, side guns
    
                    //
                    // 1 forward Heavy Sniper Gun
    
                    //
                    // 2 forward Heavy Sniper Guns, near slots
                    //weapon_position_forward = ("-25.0 3.2 46.0", "25.0 3.2 46.0");
                    //
                    //keep >100m distances in 3D to fw HSGs be separated with Separated Lasers OXP
                    //weapon_position_forward = ("-25.0 3.2 79.5", "25.0 3.2 -7.5");
                    //
                    // 3 forward Heavy Sniper Guns, near slots
                    //keep >100m distances in 3D to fw HSGs be separated with Separated Lasers OXP
                    //weapon_position_forward = ("0.0 -3.2 93.2", "-25.0 3.2 79.5", "25.0 3.2 -7.5");
                    //
                    // 3 forward separated Heavy Sniper Guns
                    //weapon_position_forward = ("0.0 -3.2 93.2", "-73.4 -1.0 10.0", "73.4 -1.0 10.0");
                    //
                    // SG templates:
                    //
                    // 2 aft separated Sniper Guns, near slots
                    //weapon_position_aft = ("-25.0 6.75 -77.8", "25.0 6.75 -77.8");
                    //
                    // 3 forward separated Sniper Guns
                    //weapon_position_forward = ("0.0 -3.2 80.3", "-73.4 -2.5 30.3", "73.4 -2.5 30.3");
    
    /*
    ====================================
     Shipdata for testing by player
    ====================================
    */
    
            "griff-viper-interceptor-dog-sg-player" =  // for testing the npc-sg-ships
            {
                    like_ship = "griff-viper-interceptor2-dog-sg"; // griff-viper-alt-sg / griff-viper-interceptor-alt-sg / griff-viper-interceptor-dog-sg
                    energy_recharge_rate = 3.333; // for viper-interceptors
                    roles = "player";
                    scan_class = "CLASS_NEUTRAL";
                    view_position_aft = "0.0 3.5 -53.0";
                    view_position_forward = "0.0 3.5 32.5";
                    view_position_port = "-24.0 6.0 0.0";
                    view_position_starboard = "24.0 6.0 0.0";
            };
    
    	"wildShips_duma-sg-player" = // for testing the npc-sg-ships
            {
                    like_ship = "wildShips_policeDuma-sg";
                    // wildShips_duma :           1 fw SG and 1 aft Beam
                    // wildShips_tribalDuma :     3 fw SGs and 2 aft SGs, fw separated!
                    // wildShips_policeDuma :     3 fw and 3 aft SGs, all separated!
                    condition_script = null;
                    energy_recharge_rate = 4;
                    roles = "player";
                    scan_class = "CLASS_NEUTRAL";
                    view_position_aft = "0.0 22.4 -58.0";
                    view_position_forward = "0.0 12.5 51.0";
                    view_position_port = "-53.4 12.0 9.0";
                    view_position_starboard = "53.4 12.0 9.0";
    	};
    
    	"wildShips_duma-dog-sg-player" = // for testing the npc-sg-ships
            {
                    like_ship = "wildShips_policeDuma-dog-sg";
                    // wildShips_dumaFleet-dog :  1 fw and 1 aft HSGs
                    // wildShips_blackdogDuma :   1 fw and 1 aft HSGs
                    // wildShips_blackdogDuma3 :  3 fw and 1 aft HSGs, all separated!
                    // wildShips_policeDuma-dog : 3 fw and 3 aft HSGs, all separated!
                    condition_script = null;
                    energy_recharge_rate = 4;
                    roles = "player";
                    scan_class = "CLASS_NEUTRAL";
                    view_position_aft = "0.0 22.4 -58.0";
                    view_position_forward = "0.0 12.5 51.0";
                    view_position_port = "-53.4 12.0 9.0";
                    view_position_starboard = "53.4 12.0 9.0";
    	};
    

    Equipment

    This expansion declares no equipment. This may be related to warnings.

    Ships

    Name
    Asp Mark II
    Boa
    Boa
    Cobra Mark III
    Cobra Mark III
    Fer-de-Lance
    GalCop Viper
    GalCop Viper Interceptor
    GalCop Viper Interceptor
    GalCop Viper Interceptor
    GalCop Viper Interceptor
    Cobra Mark III
    Asp Mark II
    Asp Mark II
    Cobra Mark III
    Cobra Mark III
    Fer-de-Lance
    iguana-sg
    Krait
    Python BattleCruiser
    Python
    Sniper Gun
    GalCop Viper
    Duma Fleet Hauler
    Duma Fleet Hauler
    wildShips_chatu-sg
    Duma Fleet Hauler
    wildShips_duma-sg
    Duma Fleet Hauler
    Duma Fleet Police
    wildShips_policeDuma-sg
    wildShips_tribalDuma-sg

    Models

    This expansion declares no models. This may be related to warnings.

    Scripts

    Path
    Scripts/spawn_police_shipset.js
    "use strict";
    this.name 			= "spawnPolicePatrol"; // in-system, milkrun and interstellar patrols
    this.author 		= "rustem";
    this.copyright 		= "2018 Creative Commons: attribution, non-commercial, sharealike."; // CC BY-NC-SA 4.0
    this.description	= "Conditional spawning of interceptors with sniper guns(interceptor-sg) from Rich(Corp & Democracy) systems";
    this.version 		= "0.3";
    
    // This is modification of spara's rh-boss-spawn-shipset script
    
    // this._shipSpawnOverride = false;
    
    this.logging = false; // false/true
    
    this.allowSpawnShip = function(shipKey)
    {
    	// Sanity check
    	if (!system.sun || system.sun.isGoingNova || system.sun.hasGoneNova) {
    		if (!system.isInterstellarSpace)
    			return false;
    	}
    
    	var adjacent, homeSystem; // var shipKey = dataKey;
    
    	// An corp system (G1..8), that's where the interceptor-sg get support. // Total systems : 32 (Corporate State - 0, Democracy - 64 in Galaxy 4, )
    	// economy: 0 (Rich Industrial) ... 7 (Poor Agricultural)
    	//
    		// stats:
    		// Rich Ind in the Charts(sectors): Totals(Corporate State + Democracy): [30(7),  26(10), 30(10), 24(8),  25(8),  25(8),  38(22), 20(8)]
    		// Technology Level( > 9):          Totals(Corporate State + Democracy): [81(31), 73(35), 65(29), 63(29), 84(38), 83(27), 81(43), 73(31)]
    		//
    		// replaced police to interceptor: if (9+Math.random()*6 < system.info.techlevel). / may be recalc the stats data for TL > 8 above?
    
    	//if (system.government === 0)
    	if (system.economy === 0 && system.government > 5) { // Rich Industrial //system.economy === 0 && system.government === 7
    		if (this.logging) {
    			homeSystem = system;
    			player.consoleMessage("Spawning in Rich system: " + shipKey, 8);
    			log("sniperguns_shipset_pack", "Spawning in Rich system: " + shipKey + " from this system");
    		}
    		return true;
    	}
    	// Ok, not an corp system, but maybe there is such a system close by.
    	var adjacentSystems = system.info.systemsInRange(7);
    	var safeHood = false;
    	for (var i = 0; i < adjacentSystems.length; i++) {
    		adjacent = System.infoForSystem(adjacentSystems[i].galaxyID, adjacentSystems[i].systemID);
    		if (adjacent.economy === 0 && adjacent.government > 5) { // Rich Industrial(safeHood) = Rich Corporate + Democracy //adjacent.economy === 0 && adjacent.government === 7
    			safeHood = true;
    			homeSystem = adjacent; //log("sniperguns_shipset_pack", "Found nearby Rich homeSystem");
    			break;
    		}
    	}
    
    	// This is safe hood, there is an corp system next door.
    	if (safeHood) {
    		// 1 rule: addition in the interstellar space ~ (interstellar patrol)		
    		if (system.isInterstellarSpace) {
    			if (this.logging) {
    				player.consoleMessage("Spawning in the interstellar space: " + shipKey, 8);
    				log("sniperguns_shipset_pack", "Spawning in the interstellar space.");
    			}
    			return true;
    		// 2 rule: addition in the milkrun ~ (milkrun patrol)			
    		} else if (5+Math.random()*2 < system.economy) { // system.economy > 5 // stats: [100,75]
    			if (this.logging) {
    				player.consoleMessage("Spawning in the milkrun: " + shipKey, 8);
    				log("sniperguns_shipset_pack", "Spawning in the milkrun.");
    			}
    			return true; 
    		// 3 rule: Sometimes interceptor-sg visit nearby systems. Lower the government, rarer the incident (Rich zone).
    		// v1 - test string:
    		//} else if (Math.random()*system.government/3 > 1) {                       // Corporate - Feudal     ~ [85,85,78,45,,,,]
    		//} else if (Math.random()*(system.government - 3)/4 > Math.random()) {     // Corporate - Communist  ~ [75,,44,25] // 64
    		} else if (3+Math.random()*4 < system.government) {                       // Corporate - Communist  ~ [100,95,90,45]
    		//} else if (3+Math.random()*5 < system.government) {                       // Corporate - Communist  ~ [95,,,35]
    		//} else if (3+Math.random()*3 < system.government) {                       // Corporate - Communist  ~ [100,100,90,50]
    		// v2 - added a high tech zone:
    		//} else if (3 + Math.random() * 3 < system.government || 9 + Math.random() * 6 < system.info.techlevel) { // Corporate - Communist    ~ TL(15)[100,100,100?,100?,,,],TL(14)[100,100,99?,50?,,,,],TL(13)[100,100,98,50?,,,],TL(12)[100,100,90,50,,,,],TL(11)[100,100,,,50,,,],TL(10)[100,100,,,,28,,] + TL(9)[100,100,90,50,0,0,0,0] + ... + TL(x)[...] + ... + TL(0)[100,100,90,50,0,0,0,0].
    																						// Rich Corporate & (Democracy || Corporate) = 100% prob-ty (link, avail-le).
    																						// Rich Democracy & (Corporate || Democracy) = 100% prob-ty.
    																						// Rich safeHood  & (Confederacy || Communist) = var prob-ty from TL
    			if (this.logging) {
    				player.consoleMessage("Spawning in Rich zone: " + shipKey, 8);
    				log("sniperguns_shipset_pack", "Spawning in Rich zone: " + shipKey + " from " + homeSystem.systemID); // and high tech
    			}
    			return true;
    		}		
    	}
    	return false;
    }