异星工厂 物品/实体/创建地图数据修改方法
PART1物品
1.1 盔甲
X:\Factorio\data\base\prototypes\item\demo-armor.lua
name = "basic-armor",(基础装甲)
X:\Factorio\data\base\prototypes\item\armor.lua
name = "heavy-armor",(重甲)
name = "basic-modular-armor",(基础模块化装甲)
name = "power-armor",(能源装甲)
name = "power-armor-mk2",(能源装甲2型)
实用条目
type = "armor",(类型)
name = "power-armor-mk2",(名称)
icon = "__base__/graphics/icons/power-armor-mk2.png",(对应图标位置)
flags = {"goes-to-main-inventory"},
resistances = (抗性)
{
{
type = "physical",(物理)
decrease = 12.5,(减少数值)
percent = 50(减少百分比)
},
{
type = "acid",(酸蚀)
decrease = 12.5,
percent = 50
},
{
type = "explosion",(爆炸)
decrease = 25,
percent = 62.5
}
},
durability = 20000,(耐久度)
subgroup = "armor",(制造面板分组)
order = "e[power-armor-mk2]",(排序,E为第五位)
stack_size = 1,(堆叠大小,该物品最大叠放数量)
equipment_grid = {width = 10, height = 10}(包裹大小,能源装甲系列独有,能源装甲内含的空间大小,width为宽,height为高)
以上数值部分可以自行调节
2.3 开采设备
实体建筑,造物可以更改参数条目达到很多效果,比如加快物体动画效果的速度,比如将电能设备与热能设备相互变换,给没有模块插槽的建筑加上模块插槽,当然这需要在之前所说的模块物品项目中添加进可使用实体,具体可以自己琢磨
X:\Factorio\data\base\prototypes\entity\demo-mining-drill.lua
name = "burner-mining-drill",(热能开采器)
……
minable = {mining_time = 1, result = "burner-mining-drill"},把放置在地上的建筑捡回来的速度,捡回来是什么东西,你也可以设置成把热能开采器捡起来以后是个实验室,诸如此类
max_health = 100,(HP)
……
mining_speed = 0.35,(采矿速度)
……
type = "burner",(燃烧)
effectivity = 1,(转化损耗)
fuel_inventory_size = 1,(燃料格数)
emissions = 0.1 / 3,(排放烟的速度)
smoke =
{
{
name = "smoke",
deviation = {0.1, 0.1},(差值)
frequency = 1(频率)
……
energy_usage = "300kW",(能量消耗速度)
mining_power = 2.5,(开采强度)
……
animation_speed = 0.5,(动画速度)
……
resource_searching_radius = 0.99,(资源搜索范围,为采掘器边缘向外延展格数)
name = "basic-mining-drill",(电能采掘器)
……
module_slots = 3,(模块插槽)
……
其他条目同上
X:\Factorio\data\base\prototypes\entity\mining-drill.lua
name = "pumpjack",(油井)
……
base_area = 1,(基础开采面积为1)
……
其他条目同上
2.4杂项
未列出的文件夹内文件为无关主要修改内容的文件
X:\Factorio\data\base\prototypes\entity\demo-doodads.lua
装饰品,珊瑚,绒毛,星点等
X:\Factorio\data\base\prototypes\entity\demo-projectiles.lua
虫族的唾#液,
acceleration = 0.005,(加速度)
damage = {amount = 10, type = "acid"}(伤害数值,伤害类型)
X:\Factorio\data\base\prototypes\entity\demo-particles.lua
碎屑,挖矿时周围掉落的沫,与弹壳类似
X:\Factorio\data\base\prototypes\entity\demo-remnants.lua
残骸
time_before_removed = 60 * 60 * 15, -- 15 minutes(存在时间,修改后两个数字同步即可)
:\Factorio\data\base\prototypes\entity\demo-trees.lua
树,可以修改树的HP,开采速度,开采量,图样等等
2.5 炮塔含虫族攻击单位
X:\Factorio\data\base\prototypes\entity\demo-turrets.lua
name = "small-worm-turret",(小型虫族炮塔 NPC)
max_health = 200,(生命值)
……
healing_per_tick = 0.01,(生命恢复速度)
……
folded_speed = 0.01,(伸缩头速度1)
……
prepare_range = 25,(视野)
preparing_speed = 0.025,(开始准备时间)
preparing_animation = small_worm_preparing,(动画效果)
prepared_speed = 0.015,(准备完成时间)
……
starting_attack_speed = 0.03,(开始攻击速度)
starting_attack_animation = small_worm_starting_attack,(动画效果)
ending_attack_speed = 0.03,(结束攻击速度)
……
folding_speed = 0.015,(伸缩头速度2)
……
ammo_category = "bullet",(发射物效果)
cooldown = 15,(冷却时间)
range = 17,(射程)
projectile_creation_distance = 1.8,(子弹被发射的初始距离)
……
starting_speed = 0.5(发射物速度)
……
name = "gun-turret",(机枪炮塔)
……
max_health = 200,(HP)
……
rotation_speed = 0.015,(转速)
preparing_speed = 0.08,(准备攻击速度)
folding_speed = 0.08,(伸缩头速度)
dying_explosion = "huge-explosion",(爆炸效果)
inventory_size = 1,(弹药仓格数)
automated_ammo_count = 10,(自动装弹发数,打出多少发后装弹)
……
ammo_category = "bullet",(弹药效果)
cooldown = 6,(冷却时间)
……
name = "shell-particle",(散落在周围的弹壳数据)
direction_deviation = 0.1,
speed = 0.1,
speed_deviation = 0.03,
center = {0, 0.6},
creation_distance = 0.6,
starting_frame_speed = 0.2,
starting_frame_speed_deviation = 0.1
},
range = 17,(攻击范围)
name = "small-worm-corpse",(小型虫族尸体 可以修改动画速度,动画效果,等等)
X:\Factorio\data\base\prototypes\entity\turrets.lua
name = "medium-worm-turret",(中型虫族炮塔 NPC)
name = "big-worm-turret",(大型虫族炮塔)
大部分同小型虫族炮塔条目
特有条目
resistances =(抗性,参照前面能源装甲注释)
{
{
type = "physical",
decrease = 4,
},
{
type = "explosion",
decrease = 5,
percent = 15,
……
rotation_speed = 1,(转速)
……
ammo_category = "rocket",(发射物种类)
cooldown = 100,冷却
range = 20,(距离)
projectile_creation_distance = 1.9,(发射物起始距离)
damage_modifier = 3,(伤害倍数)
name = "laser-turret",(激光炮塔 重要)
大多同普通机枪炮塔,没有弹药仓
特有条目
energy_consumption = "1kJ",(发射炮弹的能量消耗)
……
type = "projectile",
projectile = "laser",
starting_speed = 0.28(子弹速度)
……
buffer_capacity = "200kJ",(炮塔能储存的电量)
input_flow_limit = "100kW",(充电速度)
drain = "6kW",(待机消耗)
……
ammo_category = "electric",(弹药效果)
cooldown = 20,(冷却)
damage = 2,(伤害)
damage_modifier = 2,(伤害倍数,这里是我自己添加,本身没有倍数)
projectile_center = {0, 0},
projectile_creation_distance = 0.6,
range = 100,(射程)
sound =
name = "medium-worm-corpse",(中型虫族炮塔尸体)
name = "big-worm-corpse",(大型虫族炮塔尸体)
同小型虫族炮塔尸体
1.2 弹药
X:\Factorio\data\base\prototypes\item\demo-ammo.lua
name = "basic-bullet-magazine",(标准弹夹)
X:\Factorio\data\base\prototypes\item\ammo.lua
name = "piercing-bullet-magazine",(棘轮弹夹)
name = "flame-thrower-ammo",(火焰喷射器装甲)
name = "rocket",(火箭)
name = "explosive-rocket",(爆炸火箭)
name = "shotgun-shell",(霰弹)
name = "piercing-shotgun-shell",(穿刺霰弹)
name = "railgun-dart",(激光炮塔发射出去的激光实体)
实用参数
type = "ammo",
name = "basic-bullet-magazine",
icon = "__base__/graphics/icons/basic-bullet-magazine.png",
flags = {"goes-to-main-inventory"},
ammo_type =
{
category = "bullet",
action =
{
{
type = "direct",(直接伤害)
action_delivery =
{
{
type = "instant",(弹药速度级别)
source_effects =
{
{
type = "create-entity",
entity_name = "explosion-gunshot"
}
},
target_effects =
{
{
type = "create-entity",(打出的子弹在空中的实体)
entity_name = "explosion-gunshot"(实体名称)
},
{
type = "damage",
damage = { amount = 2 , type = "physical"}(伤害数值与类别)
}
}
}
}
}
}
},
magazine_size = 10,(每个弹夹包含的弹药数)
subgroup = "ammo",
order = "a[basic-clips]-a[basic-bullet-magazine]",
stack_size = 100(堆叠大小)
}
}
)
特例 火焰喷射器装甲
type = "flame-thrower",
explosion = "flame-thrower-explosion",
direction_deviation = 0.07,(方向偏差)
speed_deviation = 0.1,(速度偏差)
starting_frame_deviation = 0.07,(喷射起始效果动画偏差)
damage = { amount = 20, type = "fire"},
projectile_starting_speed = 0.2,(喷射速度)
starting_distance = 0.6, (开始距离)
}
特例 火箭
type = "projectile",
projectile = "rocket",
starting_speed = 0.1,(启动速度)
source_effects =
特例 霰弹
action = ntimes(12,(每次喷射的子弹数量)
{
type = "direct",
action_delivery =
{
type = "projectile",
projectile = "shotgun-pellet",
starting_speed = 0.5, (启动速度)
direction_deviation = 0.36,(方向偏差)
range_deviation = 0.36,(偏差范围)
max_range = 16.5,(最大射程)
1.3 胶囊
X:\Factorio\data\base\prototypes\item\capsule.lua
name = "basic-grenade",(手雷)
name = "poison-capsule",(剧毒胶囊)
name = "slowdown-capsule",(减速胶囊)
name = "defender-capsule",(防御胶囊)
name = "distractor-capsule",(牵引胶囊)
name = "destroyer-capsule",(毁灭胶囊)
basic-electric-discharge-defense-remote(基本远程防御放电装置)
type = "throw",(投掷武器)
attack_parameters =
{
ammo_category = "capsule",
cooldown = 30,(冷却时间)
projectile_creation_distance = 0.6,(起始抛射距离)
range = 15,(投掷范围)
ammo_type =
……
starting_speed = 0.3
……
stack_size = 100
1.4 枪
X:\Factorio\data\base\prototypes\item\demo-gun.lua
name = "pistol",(手枪)
name = "submachine-gun",(冲锋枪)
name = "flame-thrower",(火焰喷射器)
name = "land-mine",(地雷)
name = "rocket-launcher",(火箭发射器)
name = "shotgun",(霰弹枪)
name = "combat-shotgun",(作战霰弹枪)
name = "railgun",(电磁炮)前面的弹药说明错误了,不是激光炮塔的子弹实体,就是电磁炮弹药
type = "gun",
name = "pistol",
……
cooldown = 10,(冷却时间)
movement_slow_down_factor = 0.7,(动作减速系数)
shell_particle =
{
name = "shell-particle",(弹壳颗粒)
direction_deviation = 0.1,(方向偏差)
speed = 0.1,(攻击速度)
speed_deviation = 0.03,(速度偏差)
center = {0, 0.6},
creation_distance = 0.6,(起始范围)
starting_frame_speed = 0.4,(攻击起始速度)
starting_frame_speed_deviation = 0.1(起始速度偏差量)
},
projectile_creation_distance = 0.6,(攻击起始范围)
range = 15,(范围)
sound =
{
{
filename = "__base__/sound/gunshot.wav",
volume = 0.3(音量,无关)
}
}
},
stack_size = 4(堆叠数量)
},
地雷
damage_radius = 5,(伤害半径)
1.5 物品
这两个文件可以快速替换stack_size = 4,8,16,32,64,128,256,100至任意想替换的物品堆叠数
特例 煤,原木,木材,木箱项皆可作为燃料
fuel_value = "4MJ",(每单位物品可以提供的能量)单位有k,M,G,
特例 鱼
……
type = "damage",
damage = {type = "physical", amount = -20}(回复的生命值)对自己造成负的伤害即为回血,负值越大回的血越多
特例 修理包
……
speed = 1,(修理速度)
durability = 100,(单位修理包可修复血量)
stack_size = 64
……
X:\Factorio\data\base\prototypes\item\demo-item.lua
name = "stone-brick",(石砖)
name = "raw-wood",(原木)
name = "coal",(煤)
name = "stone",(石头)
name = "iron-ore",(铁矿)
name = "copper-ore",(铜矿)
name = "wood",(木材)
name = "iron-plate",(铁板)
name = "copper-plate",(铜板)
name = "iron-stick",(铁棍)
name = "iron-gear-wheel",(铁齿轮)
name = "copper-cable",(铜线)
name = "electronic-circuit",(电路板)
name = "wooden-chest",(木箱)
name = "stone-furnace",(石炉)
name = "burner-mining-drill",(热能采掘机)
name = "basic-mining-drill",(电能采掘机)
name = "basic-transport-belt",(基础传送带)
name = "burner-inserter",(热能机械臂)
name = "basic-inserter",(电能机械臂)
name = "offshore-pump",(抽水泵)
name = "pipe",(管子)
name = "boiler",(锅炉)
name = "steam-engine",(蒸汽机)
name = "small-electric-pole",(小电线杆)
name = "radar",(雷达)
name = "biter-spawner",(虫族产卵者)
name = "computer",(电脑)
name = "small-plane",(小型飞机)
name = "small-lamp",(小灯)
name = "alien-artifact",(外星造物)
name = "pipe-to-ground",(地下管道)
name = "assembling-machine-1",(组装机1型)
name = "red-wire",(红色铜线)
name = "green-wire",(绿色铜线)
name = "raw-fish",(鱼)
name = "repair-pack",(修理包)
1.5.2 物品2
特例 固体燃料
fuel_value = "25MJ", 单位提供能量,单位有k,M,G
X:\Factorio\data\base\prototypes\item\item.lua
name = "iron-chest",(铁箱)
name = "steel-chest",(钢箱)
name = "smart-chest",(智能箱)
name = "fast-transport-belt",(快速传送带 红)
name = "express-transport-belt",(极速传送带 蓝)
name = "long-handed-inserter",(长臂机械臂 红)
name = "fast-inserter",(高速机械臂 蓝)
name = "smart-inserter",(智能机械臂 绿)
name = "assembling-machine-2",(组装机2型)
name = "assembling-machine-3",(组装机3型)
name = "solar-panel",(太阳能电板)
name = "diesel-locomotive",(火车头)
name = "cargo-wagon",(车厢)
name = "straight-rail",(直线轨道)
name = "curved-rail",(曲型轨道)
name = "wall",(墙)
name = "car",(车)
name = "science-pack-1",(科技包1型 红)
name = "science-pack-2",(科技包2型 绿)
name = "science-pack-3",(科技包3型 蓝)
name = "alien-science-pack",(外星科技包 紫)
name = "lab",(实验室)
name = "train-stop",(火车站)
name = "rail-signal",(铁路信号)
name = "steel-plate",(钢板)
name = "basic-transport-belt-to-ground",(基础地下传送带 黄)
name = "fast-transport-belt-to-ground",(快速地下传送带 红)
name = "express-transport-belt-to-ground",(极速地下传送带 蓝)
name = "basic-splitter",(基础分离器 黄)
name = "fast-splitter",(快速分离器 红)
name = "express-splitter",(极速分离器 蓝)
name = "advanced-circuit",(高级电路)
name = "processing-unit",(处理器)
name = "logistic-robot",(后勤机器人)
name = "construction-robot",(建造机器人)
name = "logistic-chest-passive-provider",(物流智能箱 被动供应型 红)
name = "logistic-chest-active-provider",(物流智能箱 主动供应型 紫)
name = "logistic-chest-storage",(物流智能箱 主动储存型 黄)
name = "logistic-chest-requester",(物流智能箱 被动储存型 蓝)
name = "rocket-defense",(火箭防御)
name = "roboport",(机器人指挥中心)
name = "coin",(硬币,未实装)
name = "big-electric-pole",(大型电线杆)
name = "medium-electric-pole",(中型电线杆)
name = "substation",(变电站)
name = "basic-accumulator",(基础蓄电器)
name = "steel-furnace",(钢炉)
name = "electric-furnace",(电炉)
name = "basic-beacon",(插件效果分享塔)
name = "storage-tank",(储液罐)
name = "small-pump",(小型泵)
name = "blueprint",(蓝图)
name = "deconstruction-planner",(拆除计划)
name = "pumpjack",(油井)
name = "oil-refinery",(精炼厂)
name = "chemical-plant",(化工厂)
name = "sulfur",(硫)
name = "empty-barrel",(空桶)
name = "crude-oil-barrel",(原油桶)
name = "solid-fuel",(固体燃料)
name = "plastic-bar",(塑料)
name = "engine-unit",(发动机 白)
name = "electric-engine-unit",(电能发动机 红)
name = "explosives",(炸药)
name = "battery",(电池)
name = "flying-robot-frame",(飞行机器人框架)
1.6 工具
X:\Factorio\data\base\prototypes\item\demo-mining-tools.lua
name = "iron-axe",(铁斧)
……
damage = { amount = 5 , type = "physical"}(伤害)
……
durability = 4000,(耐久度)
subgroup = "tool",
order = "a[mining]-a[iron-axe]",
speed = 2.5,(速度)
stack_size = 32(堆叠数量)
X:\Factorio\data\base\prototypes\item\mining-tools.lua
name = "steel-axe",(钢斧)
同上
1.7 能源装甲装备
X:\Factorio\data\base\prototypes\item\equipment.lua
name = "solar-panel-equipment",(太阳能电板装备
name = "fusion-reactor-equipment",(小型聚变反应堆
name = "energy-shield-equipment",(能量护盾
name = "energy-shield-mk2-equipment",(能量护盾2型
name = "battery-equipment",(储能电池
name = "battery-mk2-equipment",(储能电池2型
name = "basic-laser-defense-equipment",(个人激光防御
name = "basic-electric-discharge-defense-equipment",(基本放电防御装置
name = "basic-exoskeleton-equipment",(外骨骼装置
name = "night-vision-equipment",(夜视镜
1.8 炮塔
X:\Factorio\data\base\prototypes\item\demo-turret.lua
name = "gun-turret", 机枪炮塔
X:\Factorio\data\base\prototypes\item\turret.lua
name = "small-worm-turret",( 小虫炮 NPC
name = "medium-worm-turret",( 中虫炮 NPC
name = "laser-turret",( 激光炮塔
1.9 模块(重点)~~~
name = "speed-module",(速度模块1 ……-2",(速度模块2 ……-3",(速度模块3
……
effect = { speed = {bonus = 0.2}, consumption = {bonus = 0.5}} 速度增加比率,能量消耗增加比率,0.2即*1.2
……
name = "effectivity-module",(节能模块1……同上
……
effect = { consumption = {bonus = -0.3}},能量消耗增加比率,负值即为减少
……
name = "productivity-module",(生产力模块1……同上
……
effect = { productivity = {bonus = 0.04}, consumption = {bonus = 0.4}, pollution = {bonus = 0.3}, speed = {bonus = -0.15}}, 产量增加比例,能量消耗增加比例,速度增加比例,负值即为减少
……
function productivitymodulelimitation() 这边下边是可以运用模块的设备,可以通过调节实体参数或者添加条目给设备增加插件槽位
return {"sulfuric-acid",
……
2 实体
2.1 创建地图的资源
X:\Factorio\data\base\prototypes\entity\demo-resources.lua
name = "copper-ore",(铜矿)
name = "iron-ore",(铁矿)
name = "coal",(煤)
name = "stone",(石头)
……
hardness = 0.9,(强度)
mining_particle = "copper-ore-particle",(开采颗粒)
mining_time = 2,(开采时间)
result = "copper-ore"
……
collision_box = {{ -0.1, -0.1}, {0.1, 0.1}},(物体碰撞框架,与我们无关)
selection_box = {{ -0.5, -0.5}, {0.5, 0.5}},(选择框体,与我们无关)
autoplace =
{
control = "copper-ore",
sharpness = 1,(清晰度)
richness_multiplier = 1300000,(富饶情况下的资源倍数,越高越好)
richness_base = 3500,(富饶情况下的资源基础,越高越好,前后两者相乘效果更好)
size_control_multiplier = 0.06,(大小的倍数)
peaks = {
……
stage_counts = {1000, 600, 400, 200, 100, 50, 20, 1},(矿源处于不同阶段的图标样式)
stages = { filename = "__base__/graphics/entity/copper-ore/copper-ore.png",
priority = "extra-high",(优先级)
frame_width = 38, (图像高宽,无关)
frame_height = 38, (
frame_count = 4, (
direction_count = 8 (
},
map_color = {r=0.803, g=0.388, b=0.215}(颜色)
X:\Factorio\data\base\prototypes\entity\resources.lua
name = "crude-oil",(原油)
……
infinite = true,(是否为无限资源)
minimum = 7500,(最小值)
normal = 75000,(正常值)
minable =
{
hardness = 1,
mining_time = 1,
results =
{
{
type = "fluid",
name = "crude-oil",
amount_min = 2,(最小值的时候输出)
amount_max = 2,(最大值的时候输出)
probability = 1(概率)
……
control = "crude-oil", (同上)
sharpness = 1,
max_probability = 0.04,
richness_multiplier = 15000000,
richness_base = 50000,
size_control_multiplier = 0.06,
peaks =
2.2 能源装甲内装置
X:\Factorio\data\base\prototypes\entity\equipment\equipment.lua
name = "night-vision-equipment",(夜视镜)
name = "energy-shield-equipment",(能量护盾)
name = "energy-shield-mk2-equipment",(能量护盾2型)
name = "battery-equipment",(储能电池)
name = "battery-mk2-equipment",(储能电池2型)
name = "solar-panel-equipment",(太阳能电板装备)
name = "fusion-reactor-equipment",(小型聚变反应堆)
name = "basic-laser-defense-equipment",(个人激光防御)
name = "basic-electric-discharge-defense-equipment",(基本放电防御装置)
name = "basic-exoskeleton-equipment",(外骨骼装置)
可调试条目为
大小
shape =(占用能源护甲内的大小)
{
width = 3,(宽)
height = 2,(高)
type = "full"
},
filename = "__base__/graphics/equipment/battery-equipment.png",(图像来源与实际在游戏中图标的大小,需要配合前面调节,所有实体大小都可以如此调整)
width = 32,
height = 64,
priority = "medium"(优先级)
buffer_capacity = "120J",(电能缓冲容量)
input_flow_limit = "120W",(能量注入上限)
energy_input = "10W"(能量输入速度)
max_shield_value = 50,(能量护盾独有,护盾值)
energy_per_shield = "20J"(能量护盾独有,每单位护盾需要的能量)
output_flow_limit = "10KW",(能量输出速度 储存电池特有)
power = "10W"(能量产生速度,太阳能电板跟小型聚变装置特有)
cooldown = 20,(个人防御设备特有,冷却时间)
damage_modifier = 1,(伤害修正,个人防御设备特有)
energy_consumption = "100J",(能源消耗,个人防御设备特有,攻击时的能源消耗)
perimeter = 10,(攻击半径)
starting_speed(发动速度)
speed = 1,(攻击速度)
movement_bonus = 0.3(移动速度增加比率,外骨骼装置特有,0.3即*1.3)
相关文章
更多+热门搜索
手游排行榜
- 最新排行
- 最热排行
- 评分最高
-
动作塔防 大小:71.4 MB
-
其他游戏 大小:20M
-
卡牌策略 大小:1.2GB
-
冒险解谜 大小:39MB
-
休闲益智 大小:67.2MB