群星stellaris是一款自由度非常高的策略建造类游戏,不过自由度是相对来说的,如果对代码熟悉的话,大家可以根据自己的喜好来打造想要的游戏效果,下面是船体配件以及科技政策等等修改方法分享。
改船
游戏内自己附带了一个改船的说明文件,就在Stellaris/common下
HOW_TO_MAKE_NEW_SHIPS
不过说的比较粗糙,有些细节和注意点没讲清楚,改的时候发现了一些问题
简单总结下
注:如果是Steam默认安装的,修改文件后就拿不了成就了~~千万注意
玩过游戏的都知道了 船体由三部分组成
ship size
section template
component template
分别在common目录下有3个文件夹
打开这些文件时不要用记事本,个人喜欢notepad++,UE也可以
从头造一艘船来说明下具体怎么做吧
先在common/ship_size文件内,新建或者复制一个船型
例如
Aurora = { #船型名称
max_speed = 5.5 #战略地图最大速度
acceleration = 0.5 #加速度
rotation_speed = 0.1 #转向速度
combat_max_speed = @corvette_combat_speed #战斗内的速度和转向,影响回避率
combat_rotation_speed = @corvette_combat_rotation #“@”+名称代表直接用预定义变量,一般在文件开头
collision_radius = @corvette_collision_radius #碰撞半径
modifier = { #船型的buff,可以随便加,最好参照已有的
ship_armor_add = 2
ship_evasion_mult = 0.15
}
max_hitpoints = 400 #血量
size_multiplier = 1 #这两个参数决定了你的船看起来有多大~战列是8 4,巡洋是4 3,看着改吧
fleet_slot_size = 1
section_slots = { "mid" = { locator = "part1" } } #重点来了
#section_slots 必须和船身各部分对应,比如护卫舰只有一个part,就是mid,因此我们记得一会儿要加
#这个part
num_target_locators = 2 #同时瞄准目标数
is_space_station = no #是不是空间站
icon_frame = 2 #建造时的图标 图标文件一般在/Stellaris/gfx里,大部分是.dds格式,可以用PS编辑的
#另,各种肖像文件也在里面,都是.dds+.mesh的格式,大触们快去做头像mod啊!!
base_buildtime = 60 #建造时间
can_have_federation_design = no #不可获得盟友的设计
enable_default_design = no#yes的话,就会预先产生好一个设计好的船
class = shipclass_military #级别,影响很多情况,比如边境的军用民用进入(shipclass_civilian)
required_component_set = "ftl_components"
required_component_set = "combat_computers"
required_component_set = "thruster_components"
required_component_set = "ship_sensor_components" #必须部件,就是推进器,雷达,功能部件等等
}
在ship_size文件内还可以修改已有船型,包括空间站,采矿站再也不怕被海盗清了~~
mining_station = {
max_speed = 0.0
acceleration = 0.0
rotation_speed = 0.0
modifier = {
ship_evasion_mult = -1
ship_weapon_range_mult = 0.50
}
max_hitpoints = 2000
section_slots = { "mid" = { locator = "part1" } } #原来的sector最好不要改,否则要改一大堆东西,很麻烦
num_target_locators = 0
is_space_station = yes
build_block_radius = @build_block_radius_tiny #空间站控制区域
is_civilian = no
#cost = 90
#components_add_to_cost = no #把这两项去掉 否则加部件是没用的
enable_default_design = yes#if yes, countries will have an auto-generated design at start
prerequisites = { "tech_space_construction" }
class = shipclass_mining_station
is_designable = yes #加上可以设计
valid_target_aggressive_stance = no
}
其实想把采矿站改的和行星要塞一样也是可以的,只要你愿意。。
另外,新建了采矿站/科研站等设计之后,工程船会自己建造最高耗费的那个。。。因此请尽量只保留一个设计
还有,不推荐直接改ship_size太夸张,因为玩家之外的势力也会生效,可以保留船型不变,在sector和component上做文章,因为可以加
ai_weight = {
weight = 0
}
下面介绍重点,怎么设置sector和component
先在section_templates下新建一个文本文档Aurora.txt
文件夹内已经有一大堆现成的船体部分了,可以在里面找你想要的。
因为和entity关联的关系,最好选符合自己船型的,否则船的样子可能炸裂
这个例子中只有一个mid,也就比较简单,为了方便,直接找护卫舰内的mid抄一个过来
ship_section_template = {
key = "Aurora_MID_M1S1" #关键词,最好和原来不同
ship_size = Aurora #用于什么船型,和刚才对应
fits_on_slot = mid #用在什么位置,和刚才对应
#如果有好几个part的话,shipsize里面要用不同位置对应
#例如
#section_slots = {
#"north" = { locator = "part1" }
#"west" = { locator = "part2" }
#"east" = { locator = "part3" }
#"south" = { locator = "part4" }
#}
#然后在这个文件内,每个部件都必须加上!缺少的话你的船会变彩色箱子的。。
entity = "Aurora_M1S1_entity" #船体的形象
#如果这样写的话,程序会在gfx文件夹内找<gfx_culture>_<ship_size_name>_entity这个对应的entity
#此处<ship_size_name> = Aurora_M1S1,<gfx_culture>就是你选的种族种类
#具体的例子,以人类的船为例,打开/stellaris/gfx/models/ships/mammalian_01,里面开头的
#三个文件,以.assets为结尾的,可以用notepad++打开,例如,在_mammalian_01_ships_entities
#里面找到COMBAT SHIPS的大方框,然后把里面covertte的复制一个,改成我们的船名,然后……
#里面的内容包罗万象,可以改每个部件的scale,也就是大小,还能改动画和音效,动作等等,
#其中引用到的特效,效果,模式等等都在gfx的各个文件夹内,但来自不同船只的效果,很难调很难调
#需要反复不断尝试,我也没弄很明白
#需要用到的声效,贴图,动画文件尽量复制之后重命名使用,不要用原文件
#为了你的船不畸形,请一定不要省略这一步
#贴图文件都是.dds的,可以用PS打开。求方便的话直接复制现有船型的就好
#.mesh需要用一些3D软件去看。。大触们快去做一些炫酷的船吧
icon = "GFX_ship_part_core_mid" #图标
# Guns 武器
weapon_preferences = { weapon_type_kinetic } #偏好武器类型,只对自动设计有用
ai_weight = { #最好加这个,否则ai也会有
modifier = {
factor = 0
}
}
component_slot = { #就是武器孔喽
name = "SMALL_GUN_01"
slot_size = small
slot_type = weapon
locatorname = "small_gun_01"
}
component_slot = {
name = "MEDIUM_GUN_01"
slot_size = medium
slot_type = weapon
locatorname = "medium_gun_01"
}
small_utility_slots = 5 #用具孔
cost = 30 #建造花费
}
#就它了,一个中型一个小型的槽
有了船体,是不是还要有玩家专有的超级配件才好呢?
下面就添加components
来到Stellaris\common\component_templates
在00_utilities最后加入
utility_component_template = {
key = "Heaven_Armory_small"
size = small #对应的孔-small
icon = "GFX_ship_part_crystal_armor_1"
icon_frame = 1
power = 0 #耗电
cost = 10 #建造花费
modifier = { #效果~~随便来吧
ship_hitpoints_add = 200
}
component_set = "Heaven_Armory_1"
ai_weight = { #同理 玩家独占
weight = 0
}
}
utility_component_template = {
key = "Heaven_Armory_medium"
size = medium
icon = "GFX_ship_part_crystal_armor_2"
icon_frame = 1
power = 0
cost = 20
modifier = {
ship_hitpoints_add = 400
}
component_set = "Heaven_Armory_2"
ai_weight = {
weight = 0
}
}
utility_component_template = {
key = "Heaven_Armory_large"
size = large
icon = "GFX_ship_part_crystal_armor_2"
icon_frame = 1
power = 0
cost = 30
modifier = {
ship_hitpoints_add = 750
}
component_set = "Heaven_Armory_3"
ai_weight = {
weight = 0
}
}
参考了太空水晶那个护甲 大中小三个尺寸的~~
下面再到Stellaris\common\component_sets
依旧打开00_utilities加入
component_set = {
key = "Heaven_Armory_1"
icon = "GFX_ship_part_crystal_armor_1"
icon_frame = 1
}
component_set = {
key = "Heaven_Armory_2"
icon = "GFX_ship_part_crystal_armor_2"
icon_frame = 1
}
component_set = {
key = "Heaven_Armory_3"
icon = "GFX_ship_part_crystal_armor_2"
icon_frame = 1
}
ok了
其他同理,不过加新武器比较烦,最好也是参照已有的改
最后再多一步,找到Stellaris\common\component_templates下的一个excel文件,加上你的武器,
直接照抄好了
最后,是不是看着一堆下划线名字很刺眼?找到Stellaris\localisation在里面改吧~~必须英文
至少比Heaven_armor这种下划线好看一点。。。
修改法令 Edicts
\Stellaris\common\edicts
内,加入:
country_edict = {
name = "playerbonus" #名字
modifier = { #各种加成,随便改,直接复制我这个也行
pop_happiness = 0.10
all_technology_research_speed = 0.25 #科研速度
navy_size_add = 0.8
army_upkeep_mult = -0.75 #部队维护
fleet_upkeep_mult = -0.75 #舰队维护
planet_building_cost_mult = -0.3
building_time_mult = -0.3
tile_resource_minerals_mult = 0.2
tile_resource_energy_mult = 0.2
pop_ethic_shift = -0.25
}
influence_cost = -3 #每月加3影响力
allow = { #玩家才可以点
ai = no
}
ai_weight = {
weight = 0
}
}
进游戏之后 直接在Edicts内激活即可
简单有效的暴力改 想加什么都可以 不冲突 无副作用
自建特殊船~Aurora
实在比较丑就不上照片了
想要建一个好看的船估计是很费功夫的。。。。
改特性点数
\Stellaris\common\defines
notepad++打开,找到
MAX_TRAIT_POINTS = 12, --最大特性点数
MAX_TRAITS = 6, --最大特性个数
改完之后可以创建一个自建国,SAVE,然后再改回来
政策修改的补充
country_edict = {
name = "playerbonus"
modifier = {
pop_happiness = 0.10
all_technology_research_speed = 0.25
navy_size_add = 0.8
army_upkeep_mult = -0.75
ship_upkeep_mult = -0.75
planet_building_cost_mult = -0.3
building_time_mult = -0.3
tile_resource_minerals_mult = 0.2
tile_resource_energy_mult = 0.2
pop_ethic_shift = -0.25
country_core_sector_planet_cap = 3
}
influence_cost = -3
allow = {
is_ai = no
}
ai_weight = {
weight = 0
}
}
修改了下,
ship_upkeep_mult = -0.75 而不是fleet
is_ai = no
加了个直辖上限,全因为自己玩的时候感觉直辖领太少~~ country_core_sector_planet_cap = 3
在notepad++中,看起来应该是这个样子的:
在这里列一些其中可以修改的项目吧
all_technology_research_speed = 0.25 #全科研速度,0.01=1%,下同
navy_size_add = 20 #海军规模 (1=1个,20=20个)
army_upkeep_mult = -0.75 #陆军维护
ship_upkeep_mult = -0.75 #舰队维护
planet_building_cost_mult = -0.3 #建造花费
building_time_mult = -0.3 #建造时间
tile_resource_minerals_mult = 0.2 #矿物加成
tile_resource_energy_mult = 0.2 #能源加成
leader_age = 10 #集体续命10年
tile_resource_food_mult = 0.2 #食物加成
pop_ethic_shift = -0.25 #分化(-0.25 = -25%)
country_core_sector_planet_cap = 3 核心星球数
country_leader_cap = 2 #领导人能力 + 2
leader_influence_cost = -0.10 #买领导人(包括科学家,将军等)花费
influence_gain_add = 1 #每月影响力 1 = 1点/月
leader_skill_levels = 1 #领导人(包括科学家,将军等)等能力+1
还有一种方法就是加科技
在\Stellaris\common\technology下,任意一个文件末尾,或者新建一个txt,输入
tech_mytech = {
cost = 0
area = society
category = { statecraft }
tier = 0
start_tech = yes #是起始科技
country_leader_cap = 2 # 把想改的内容加在这里
leader_influence_cost = -0.10
influence_gain_add = 1
leader_skill_levels = 1
allow = {
is_ai = no
}
ai_weight = {
weight = 0
}
}
改科技有一定问题,不如改政策方便,比如有时奇怪势力也会有这个modifier
一种更安全的写法
tech_mytech = {
cost = 0
area = society
category = { statecraft }
tier = 0
country_leader_cap = 2
leader_influence_cost = -0.10
influence_gain_add = 1
leader_skill_levels = 1
weight_modifier = { # 这个weight就是决定你抽科技抽到什么的那个罪魁祸首!!
modifier = {
factor = 50 #改成50 第一轮一定能出,点掉就好,这样奇怪的野怪就不会也有这个buff了
}
}
allow = {
is_ai = no
}
ai_weight = {
weight = 0
}
}
顺带说下,觉得某个科技死活出不来的,可以在这些文件里看看到底需要什么条件
例如 殖民外星的科技:
weight_modifier = {
factor = 3
modifier = {
factor = 100
is_ai = yes #电脑开局就一定能点!
# factor越大,可能性越高,最后抽出哪个实在此处依照最终factor抽到
}
modifier = {
factor = 5
years_passed > 2 #两年以后,factor+5,也就是越往后越可能出
}
modifier = {
factor = 5
years_passed > 4
}
modifier = {
factor = 10
years_passed > 6 #6年以后还没出来,就+10了
}
modifier = {
factor = 10
years_passed > 9 #9年没出的话,此时factor已经33了。。抽三张牌的话“几乎”是必出
}
modifier = {
factor = 1.25
research_leader = {
area = society
has_trait = "leader_trait_expertise_new_worlds" #研究者有新世界专家特性的话 +1.25
}
}
}
所以……一般来说6年以内应该能出……吧
假设没有相关专家,一次能翻3个科技,即一般国家,6年研究完了两个科技(也就是翻了3次牌),
假设其他科技的factor差不多,且另外的科技不随时间变化,那么第三次还不出的概率
2/3 * (9+5-3-5)/(9+5) * (9+5+5-3-5-5)/(9+5+5) ~ 9.02%
所以超过90%的概率三次以内出
实际上还要更高,因为大部分tier1的科技factor比这个小~
但即使如此,还会有人就是抽不出 怎么办?
在\Stellaris\common\technology内的00_soc_tech内找出
tech_colonization_1 = {
cost = @tier1cost2
area = society
tier = 1
category = { new_worlds }
prerequisites = { "tech_spaceport_1" }
weight = @tier1weight2
prereqfor_desc = {
ship = {
title = "TECH_UNLOCK_COLONY_SHIP_CONSTRUCTION_TITLE"
desc = "TECH_UNLOCK_COLONY_SHIP_CONSTRUCTION_DESC"
}
}
weight_modifier = {
factor = 3 #将此处修改为 factor = 100 即可
modifier = {
factor = 100
is_ai = yes
}
modifier = {
factor = 5
years_passed > 2
}
modifier = {
factor = 5
years_passed > 4
}
modifier = {
factor = 10
years_passed > 6
}
modifier = {
factor = 10
years_passed > 9
}
modifier = {
factor = 1.25
research_leader = {
area = society
has_trait = "leader_trait_expertise_new_worlds"
}
}
}
ai_weight = {
weight = 10000
}
}
还有,想要ai扩张不要那么快的话,把
ai_weight = {
weight = 10000
}
改成
ai_weight = {
weight = 3
}
这样大部分ai可能不会第一个研究殖民科技
修改船体和配件科技的补充
发现确实不加prerequisit的话电脑全在用超级配件和新船。。。
那么只好这样了
在technology内加入
tech_black_tech = {
cost = 10
area = society
category = { statecraft }
tier = 1
weight = @tier1weight1
# just to add black technology for players
weight_modifier = {
modifier = {
factor = 100
}
}
allow = {
is_ai = no
}
ai_weight = {
weight = 0
}
}
然后在要改的船和黑科技部件上,加一行
prerequisites = { "tech_black_tech" }
然后电脑终于没有了
这样应该是比较稳
在Stellaris\map\内有星系地图生成的参数
于是 可以直接改这些参数来生成想要的地图样子!
首先,觉得1000个恒星系太少不够玩?
找到\Stellaris\map\setup_scenarios内的huge,打开
setup_scenario = {
name = "huge"
priority = 4#priority decides in which order the scenarios are listed
num_stars = 1000
radius = 450#should be less than 500, preferably less than ~460
num_empires = { min = 1 max = 39 }#limits player customization
num_empire_default = 29
fallen_empire_default = 5
advanced_empire_default = 8
colonizable_planet_odds = 1.0
cluster_count = {
# method = one_every_x_empire
method = constant
value = 6
max = 10
}
cluster_radius = 150
cluster_distance_from_core = 300
num_nebulas= 10
nebula_size = 60
nebula_min_dist = 200
supports_shape = elliptical
supports_shape = spiral_2
supports_shape = spiral_4
supports_shape = ring
}
将其中num_stars = 1000往上改吧~~~只要你不怕卡
另外 上面注释也提到了 星系面积不可能太大,不能超过500
因此加了星球后 地图会变密。。。
另外,星系的形状也是可以调戏的!!
比如 悬臂星系中间那块没星星的地方是不是太大了点?银心应该有很多星星才对?
打开Stellaris\map\galaxy内的spiral_2.lua
-- SPIRAL WITH 2 ARMS
core_radius_perc = 0.3-- Core radius is 30% of the galaxy radius
arms = {
tightness_winding = 1.1,-- Tightness of winding
width = 80.0,-- Arm width in degrees
fuzz = 40.0,-- Maximum outliers distance from arms
seperation = 180.0,-- Separation (in degrees) between each arm
}
注意在lua脚本中注释是--而不是#
上面都有解释了~~逐项尝试调戏吧~
比如用core_radius_perc = 0.05
银心终于比较热闹了