本篇教程由作者设定未经允许禁止转载。
StarMaker可以帮助你轻松地创建自己的自定义星系、行星、小行星带和卫星。当然,没有那么简单
恒星
单独的恒星
首先,你需要知道在哪里创造这些天体文件,它的具体位置是\.minecraft\config\StarMaker\resources\starsources(你会看见一个叫做Systems.json的文件)
接着,是一个恒星的例子(你可以修改Systems.json文件)
{
"systems": [
{
"name": "example_system", //星系名
"galaxy": "milky_way", //所在的星系(可支持: milky_way(银河系), andromeda(仙女星系))
"star_name": "example_star", //恒星名
"posX": 1.5, //星图的X轴,可以是负数,坐标原点位于太阳系中央位置(即太阳所在位置)
"posY": 1.5, //星图的Y轴,可以是负数
"star_size": 0.8, //在星图上的恒星大小
"star_class": 2, //星等,0=次矮星,1=矮星,2=亚巨星,3=巨星, 4=超巨星,5=特超巨星, 6=黑洞
"star_color": 6 //星色,0=棕色,1=红色,2=橘色,3=黄色,,4=白色,5=淡蓝色, 6=蓝色(恒星颜色不能自定义)
}
]
}
双,三星系统
例子:
{
"systems": [
{
"name": "example_system_binary",
"galaxy": "milky_way",
"posX": 3.5,
"posY": 1.5,
"stars": [
{
"name": "example_star_a",
"star_size": 1.8,
"star_phase": 3.14,//初始在轨位置(3.14*2* π)
"star_class": 2,
"star_color": 6
}, {
"name": "example_star_b",
"star_phase":6.2,
"star_size": 1.6,
"star_class": 2,
"star_color": 6
}, {
"name": "example_star_c",
"star_phase": 4.2,
"star_size": 0.4,
"star_class": 2,
"star_color": 4
}
]
}
]
}
例2
{
"systems": [
{
"name": "epsilon_indi",
"galaxy": "milky_way",
"star_name": "epsilon_indi_a",
"posX": 0.7,
"posY": 1.1,
"star_size": 0.7,
"star_class": 3,
"star_color": 4
},
{
"name": "new_star",
"galaxy": "milky_way",
"star_name": "custom_star",
"posX": -13.7,
"posY": 5.1,
"star_size": 0.5,
"star_class": 2,
"star_color": 7
}
]
}
恒星系
{
"systems": [
{
"name": "example_system",
"galaxy": "milky_way",
"star_name": "example_star",
"posX": 1.5,
"posY": 1.5,
"star_size": 0.8,
"star_class": 2,
"star_color": 6
},{
"name": "gliese_229",
"galaxy": "milky_way",
"star_name": "Gliese229",
"posX": 8.5,
"posY": 14.5,
"star_size": 4.8,
"star_class": 2,
"star_color": 2
}
]
}
]
}
(特性:若要创建更多恒星需添加{
{,符号以续写System文件,可参考例2进行创造)(你最多能创建30个)
下图为自制织女星(1/3)
行星
具体位置:\.minecraft\config\StarMaker\resources\starsources\bodies\planets(里面有一个example_planet.json,命名方法任意)(为行星添加贴图在杂项中)
{
"parent_system": "sol", //公转的恒星
"orbit_data": {
"phase": 3.14,
"size": 1.2, //在星图上的大小
"distance_from_center": 2.5, //半长轴(恒星到行星的平均距离)
"relative_time": 3.9, //公转时间,更长或更短
"eccentricityX": 2.0, // 偏心率轨道
"eccentricityY": 0.0
},
"gravity": 0.058, //重力(例子:0.037=63%地球重力)
"atmosphere_pressure": 0, //大气压,0-100
"temperature": [
-1.0, //最低温度
1.0 //最高温度(在温度中,1单位大约相当于33摄氏度)
],
"wind": 0.0, //行星的风力
"day_lenght": 7000, //日长,地球为24000tick
"breathable": false, //是否是有氧星球
"solar_radiation": true, //是否有恒星辐射效果
"corrosive_atmo": true, //是否有腐蚀性大气
"sun_brightness": 0.4,//天空恒星亮度
"star_brightness": 0.3,//天空星星亮度
"sky": [0, 0, 0], //天空的颜色,使用rgb来进行调色
"fog": [200, 0, 0], //雾的颜色,使用rgb来进行调色
//OPTIONAL
"cloud": [150, 1, 1, 250], //云的高度
"world_data": {
"tier": 6, //最低能前往的火箭阶数
"genCave": true, //是否生成洞穴
"genRavine": false, //是否生成峡谷
"crateProb": 200, //生成平原数量,0为不生成
"stone_block": "galacticraftplanets:mars:9", //在此星球上生成的“石块”. 格式: "modid:id:meta数值"
"mapSize": 1000.0, //地图的大小(chuck)
"water_block": "", //在此星球生成的“水”. 格式: "modid:id:meta数值"
"waterY": 0, //最低生成水的高度
"lander_type": 2, //登陆器的型号. 0=月球登陆器, 1=火星登陆气球, 2=小行星、金星发射平台
"throwMeteors": true //关闭或开启在这颗行星上产生陨石
},
"biomes": [deimos],//这颗行星或卫星使用的生态群系
"sun_size": 0.3,//在此天体上主恒星的大小
"precipitation": false,//是否降水或降雪
"unreachable": false//是否可登陆
}
(提示:建议不要一次性大幅度改动,可参考例子天体进行依次调整)
自制织女星(2/3)
卫星
位于.minecraft\config\StarMaker\resources\starsources\bodies\moons(没有就自己创造一个)
命名方法:文件名 = 卫星名
改成下列项就可以创造卫星
"parent_system": "sol" -> "parent_planet": "mars"(即从系统改为行星)
(注意修改半长轴!)
完成!你创造了月亮!
生物群落
生物群落现在位于单独的文件中,可以使用到多个天体。(一个天体最多能使用5个生物群落)
命名方法随意
位于.minecraft\config\StarMaker\resources\starsources\biomes
例子:
{
"persistance": 2.2, // 山生成的频率
"octaves": 4, //山生成的组数
"height": 130, //星球地表高度
"intquility": 10, //生物群落的逐渐替换度
"biomeSize": 0.0, //生物群落的大小
"water_color": [255, 255, 0], //水的颜色,使用rgb调色
"foliage_color": [0, 100, 0], //树叶的颜色,使用rgb调色
"grass_color": [0, 100, 100], //草的颜色,使用rgb调色
"surface_block": "minecraft:grass", //生态群落的表面方块,格式为 modid:id:meta数值
"subsurface_block": "minecraft:dirt", //生态群落的地下方块,格式为 modid:id:meta数值
"oregen": [
{
"ore_block": "minecraft:dirt", //生态群落的矿物,格式为 modid:id:meta数值
"replaced_block": "minecraft//需要替换的方块(如果输入stone,则代表替换stone生成矿物,如果替换方块在矿物生成区域不存在则不会生成矿物)
"block_count": 5,//一次生成的数量
"minY": 10,//最小生成高度
"maxY": 30,//最大生成高度
"amount_per_chunk": 10//每个区块生成次数
}
],
"lakesgen": {
"liquid_block": "minecraft:lava",//湖的流体方块,格式为 modid:id:meta数值
"quantity": 20//生成数量
},
"grassgen": [
{
"grass_block": "minecraft:waterlily",//草的方块,格式为 modid:id:meta数值
"ground_block": "minecraft:water",//可以上方生长草的方块,格式为 modid:id:meta数值
"grass_count": 5,//草的生成数量
"onWater": true//草数量
},{
"grass_block": "minecraft:tallgrass:1",
"ground_block": "minecraft:grass",
"grass_count": 32,
"onWater": false
},{
"grass_block": "minecraft:red_flower:7",
"ground_block": "minecraft:grass",
"grass_count": 4,
"onWater": false
}
],
"nbt_structures":[//nbt结构
{
"nbt_file": "palm_1",//结构名称,依据StarMaker\starsources\structures中文件名称而定。
"amount_per_chunk": 1,//每chuck生成的结构数量。
"gen_chance": 30,//每次尝试生成概率,通常填入0-100之间的任意数值。
"offsetPos": [0, 0, 0],//设定结构在Chuck中生成的大致坐标。
"ignore_air": true,//是否忽略空气。
"on_block": "minecraft:grass"//结构在什么方块中会生成。
}
]
}
小行星带和环
具体位置为.minecraft\config\StarMaker\resources\starsources\bodies\asteroids(没有就自己创造一个)
命名方法任意
"parent_system": "example_system_binary",
"orbit_data": {
"phase": 3.140000104904175,
"size": 0.2000000476837158,
"distance_from_center": 1.5,
"relative_time": 3.9000000953674316,
"eccentricityX": 0.0,
"eccentricityY": 0.0
},
"temperature": -1.0,
"solar_radiation": false,
"sun_brightness": 0.5,
"star_brightness": 0.5,
"tier": 6,
"sun_size": 5.0,
"unreachable": false,
"asteroid_blocks": //构成小行星的方块。格式为 modid:id:meta数值 。
["galacticraftplanets:asteroids_block:0",
"galacticraftplanets:asteroids_block:1",
"galacticraftplanets:asteroids_block:2"],
"oregen": [
{
"ore_block": "minecraft:dirt"
},
{
"ore_block": "minecraft:cobblestone"
},
{
"ore_block": "minecraft:stone:1"
}
]
若需要创建行星的环,只需要将"parent_system"改为"parent_planet"。
自制织女星(3/3)
“奥尔特云”
杂项
Starmaker.cfg的使用方法
具体位置:\.minecraft\config\StarMaker
# Configuration file
general {
# Enable Debug log output. NOTE: Can cause large log file sizes
B:debugLogging=true//启用debug模式(可能会导致日志文件变大)
# Enable generate example files.
B:generateExample=true//生成例子天体
# Defines the folder name StarMaker will search for assets
S:resourceDomain=starsources//读取天体文件的文件夹名称
# Start id for dimensions
I:startIDs=-1100//从……开始设置天体id(如果从1开始,则第一个星球的id是1,第二个就是2,以此类推)
}
添加星球纹理
对于你的星球纹理(将出现在gui中),你需要一个特定的文件夹路径(自己创造一个):你需要在celestialbodies文件夹(位置在textures\gui下)中创建一个带有你的恒星系统名称(与你在systems.json文件中输入的名称相同)的文件夹,将你的纹理放在该文件夹中,并将其重命名为你给星球json文件的名称。因此,如果你在一个名为“example\u system”的系统中有一个行星,其json文件名为“example\u planet”,那么你需要将你的png纹理重命名为“example\u planet”,并将其放在celestialbodies文件夹中名为“example\u system”的文件夹中。(即位于minecraft\config\StarMaker\resources\starsources\textures\gui\celestialbodies中)
例如,我要为在太阳系的鸟神星添加贴图,那就要在下图的位置里的文件夹(sol代表太阳系,若你自己创造的恒星叫做000,那就需要创造名为celestialbodies/000文件夹)中放置贴图(这取决于你的星球名称,若你的星球名为123,那么在文件夹中就需要放置名为123的方形贴图。)若是卫星则需要在/星系文件夹(例:Sol)/moons(需要自己创造)将卫星贴图放入即可。若为卫星则需要在卫星所在的星系文件夹中再添加一个名为moons的文件夹并放入贴图。
去除天体后缀
请自己创造语言并翻译天体名称。
方法如下:
若是简体中文,则需创造名为zh_cn.lang文件
然后逐个翻译你创造的天体。
例子:
Planet.makemake=鸟神星
Star.Vega=织女星
System.Vegasystem=织女星系
(你可以查看星空的zh-cn翻译文件中的CelestialBodies部分来模仿)
编辑完成后须在starsources中创造一lang文件夹并在其中投入刚刚编写的zh_cn文件。
织女星系(成品)
恭喜,您已经了解了StarMaker的全部!
开始创造您自己的星系吧!
The End
(若有问题请在下方评论区提出)
通用天体文件
可用的例子天体文件(可以复制修改)
行星
{
"parent_system": "",
"orbit_data": {
"phase": 0,
"size": 0,
"distance_from_center": 1,
"relative_time": 10,
"eccentricityX": 0.0,
"eccentricityY": 0.0
},
"gravity": 0,
"atmosphere_pressure": 0,
"temperature": [0.0,0.0],
"wind": 0.0,
"day_lenght": 0,
"breathable": false,
"solar_radiation": false,
"corrosive_atmo": false,
"sun_brightness": 0.0,
"star_brightness": 0.0,
"sky": [0,0,0],
"fog": [0,0,0],
"world_data": {
"tier": 1,
"genCave": false,
"genRavine": false,
"crateProb": 0,
"stone_block": "",
"mapSize": 2000.0,
"water_block": "",
"waterY": 64,
"lander_type": 1,
"throwMeteors": false
},
"biomes": [],
"sun_size": 1.0,
"precipitation": false,
"unreachable": true
}
卫星
{
"parent_planet": "",
"orbit_data": {
"phase": 0.55,
"size": 0.15,
"distance_from_center": 25,
"relative_time": 200,
"eccentricityX": 0.0,
"eccentricityY": 0.0
},
"gravity": 0.005,
"atmosphere_pressure": 0,
"temperature": [0,0],
"wind": 0.0,
"day_lenght": 12000,
"breathable": false,
"solar_radiation": true,
"corrosive_atmo": false,
"sun_brightness": 0.3,
"star_brightness": 0.4,
"sky": [0,0,0],
"fog": [0,0,0],
"world_data": {
"tier": 6,
"genCave": false,
"genRavine": false,
"crateProb": 0,
"stone_block": "",
"mapSize": 1000.0,
"water_block": "",
"waterY": 64,
"lander_type": 0,
"throwMeteors": true
},
"biomes": [],
"sun_size": 0.3,
"precipitation": false,
"unreachable": false
}
生态群系
{
"persistance": 2.6,
"octaves": 4,
"height": 80,
"intquility": 10,
"biomeSize": 0.8,
"water_color": [255,255,0],
"foliage_color": [0,100,0],
"grass_color": [0,100,100],
"surface_block": "",
"subsurface_block": "",
"oregen": [
{
"ore_block": "",
"replaced_block": "",
"block_count": 12,
"minY": 10,
"maxY": 50,
"amount_per_chunk": 20
},
{
"ore_block": "",
"replaced_block": "",
"block_count": 4,
"minY": 10,
"maxY": 30,
"amount_per_chunk": 10
},
{
"ore_block": "",
"replaced_block": "",
"block_count": 4,
"minY": 10,
"maxY": 30,
"amount_per_chunk": 10
}
]
}
小行星
{
"parent_system": "sol",
"orbit_data": {
"phase": 1,
"size": 0.5,
"distance_from_center": 6.4,
"relative_time": 500,
"eccentricityX": 0.0,
"eccentricityY": 0.0
},
"gravity": 0.01,
"temperature": -8.36,
"solar_radiation": true,
"sun_brightness": 0.05,
"star_brightness": 0.5,
"tier": 6,
"sun_size": 0.025,
"unreachable": false,
"oregen": [
{
"ore_block": ""
},
{
"ore_block": ""
},
{
"ore_block": ""
},
{
"ore_block": ""
},
{
"ore_block": ""
}
]
}