hmm, well, to remove the prerequisites of an ability is actually easier than removing a file. You simply remove the research data from the ability file. I'll use the Vasari Stilakus Subverter's Distort Gravity ability (AbilityTeleportDisable.entity), and my modded version.
This is the default file-
TXT
entityType "Ability"
buffInstantActionType "ApplyTargettedBuffToSelf"
instantActionTriggerType "AlwaysPerform"
buffType "BuffTeleportDisableCaster"
targetFilter
numOwnerships 1
ownership "Enemy"
numObjects 2
object "Frigate"
object "PlanetModule"
numSpaces 1
space "Normal"
numConstraints 0
range
Level:0 6000.000000
Level:1 0.000000
Level:2 0.000000
effectInfo
effectAttachInfo
attachType "Above"
smallEffectName "Ability_TeleportDisableActivate"
largeEffectName "Ability_TeleportDisableActivate"
soundID ""
needsToFaceTarget TRUE
canCollideWithTarget TRUE
moveThruTarget FALSE
isUltimateAbility FALSE
maxNumLevels 1
levelSourceType "ResearchWithoutBase"
improveSourceResearchSubject "RESEARCHSUBJECT_ABILITYACCESS_TELEPORTDISABLE"
aiUseTime "Anytime"
aiUseTargetCondition "IsNotWeaponDisabled"
isAutoCastAvailable TRUE
isAutoCastOnByDefault TRUE
pickRandomPlanetToExploreForAutoCastTarget FALSE
ignoreNonCombatShipsForAutoCastTarget TRUE
onlyAutoCastWhenDamageTakenExceedsPerc 0.000000
useCostType "AntiMatter"
antiMatterCost
Level:0 150.000000
Level:1 0.000000
Level:2 0.000000
cooldownTime
Level:0 60.000000
Level:1 0.000000
Level:2 0.000000
orderAcknowledgementType "ONATTACKORDERISSUED"
researchPrerequisites
NumResearchPrerequisites 1
ResearchPrerequisite
Subject "RESEARCHSUBJECT_ABILITYACCESS_TELEPORTDISABLE"
Level 1
nameStringID "IDS_ABILITY_TELEPORTDISABLE_NAME"
descStringID "IDS_ABILITY_TELEPORTDISABLE_DESCRIPTION"
hudIcon "HUDICON_ABILITY_TELEPORTDISABLE"
smallHudIcon "HUDICON_ABILITY_TELEPORTDISABLE"
infoCardIcon ""
This is my new file-
TXT
entityType "Ability"
buffInstantActionType "ApplyTargettedBuffToSelf"
instantActionTriggerType "AlwaysPerform"
buffType "BuffTeleportDisableAACCaster"
targetFilter
numOwnerships 1
ownership "Enemy"
numObjects 2
object "Frigate"
object "PlanetModule"
numSpaces 1
space "Normal"
numConstraints 0
range
Level:0 50000.000000
Level:1 0.000000
Level:2 0.000000
effectInfo
effectAttachInfo
attachType "Above"
smallEffectName "Ability_TeleportDisableActivate"
largeEffectName "Ability_TeleportDisableActivate"
soundID ""
needsToFaceTarget TRUE
canCollideWithTarget TRUE
moveThruTarget FALSE
isUltimateAbility FALSE
maxNumLevels 1
levelSourceType "FixedLevel0"
aiUseTime "Anytime"
aiUseTargetCondition "IsNotWeaponDisabled"
isAutoCastAvailable TRUE
isAutoCastOnByDefault FALSE
pickRandomPlanetToExploreForAutoCastTarget FALSE
ignoreNonCombatShipsForAutoCastTarget TRUE
onlyAutoCastWhenDamageTakenExceedsPerc 0.000000
useCostType "AntiMatter"
antiMatterCost
Level:0 100.000000
Level:1 0.000000
Level:2 0.000000
cooldownTime
Level:0 30.000000
Level:1 0.000000
Level:2 0.000000
orderAcknowledgementType "ONATTACKORDERISSUED"
researchPrerequisites
NumResearchPrerequisites 0
nameStringID "IDS_ABILITY_TELEPORTDISABLE_NAME"
descStringID "IDS_ABILITY_TELEPORTDISABLE_DESCRIPTION"
hudIcon "HUDICON_ABILITY_TELEPORTDISABLE"
smallHudIcon "HUDICON_ABILITY_TELEPORTDISABLE"
infoCardIcon ""
Note that my modded file also calls a different buff, has longer range, shorter cooldown, and lower AM cost. That is for myself. All you need to do is make the new file have a research setup similar to my modded Subverter TeleportDisable ability.
As for indestructible Phase Stabilizers at every planet, that's a little more tricky. For that, you would need a new passive on the structure that applies the 'CannotBeDamaged' bool modifier. As for the 'all races' part, that's easy to explain. A Phase Node is usable by anyone, due to the target filter of that ability. I have actually made two custom abilities of my own, based on the Advent Revelation Battlecruiser (CAPITALSHIP_PSIPLANETPSIONIC.entity) 'Clairvoyance' ability (AbilityFarSight.entity, BuffFarSight.entity), and the Vasari Antorak Marauder (CAPITALSHIP_PHASESCOUT) 'Stabilize Phase Space' ability (AbilityPhaseGateCapital.entity, BuffPhaseGateCapitalSpawnerCaster.entity, BuffPhaseGateCapitalTarget.entity). All I did was modify it to be a 'FixedLevel0' level type (meaning good for frigates), have no research or level prerequisites. The Clairvoyance ability is useful because, by simply editing the 'BuffFarSight.entity' file to apply the 'IsPhaseGateEndPoint' bool modifier in addition to the 'ProxySensor' modifier, you get a 'Select Nav Point' ability, incidentally what I named mine of that type. The Antorak's ability is used to create a node at the planet the ship (and/or your fleet) is in orbit of.