【盗版党勿入】Terraria1.3mod制作器



楼主 清水之火  发布于 2015-07-23 19:58:00 +0800 CST  
1l,是弄个图片痒痒眼
地址

楼主 清水之火  发布于 2015-07-23 19:59:00 +0800 CST  
首先,这个mod制作器的名字叫
tModLoader
这个mod制作器处于开发阶段,而且这个mod制作器,只支持正版。没错,只支持正版
如果你是正版党,并且有一定的mod制作基础,那么请慢慢品尝此mod制作器。
3l楼中楼别回复。以后更新会放那里,而且我只发整合包,因为独立包有些人不会用。精简了很多,只有一个terraria.exe和图片以及2个steam.dll

楼主 清水之火  发布于 2015-07-23 20:02:00 +0800 CST  


这是界面,我们首先打开
Mod Sources

楼主 清水之火  发布于 2015-07-23 20:06:00 +0800 CST  


接着我们不要管界面,先点击Open Sources
然后你就会跳转到mod制作目录
C:\Users\Administrator\Documents\My Games\Terraria\ModLoader(不同的电脑地址可能有所不同,不过目录一定是ModLoader)
顺便强调一下,这个mod的人物和存档是独立的。

楼主 清水之火  发布于 2015-07-23 20:08:00 +0800 CST  
mod目录,我们要制作mod的话,先创建一个文件夹,名字的话..随意就行...但是不能有空格

例如"Super Mod"这样就不行

楼主 清水之火  发布于 2015-07-23 20:11:00 +0800 CST  
然后我创建一个叫“FirstMod”的文件夹
之后,我们要在文件夹里创建一个
“类似MODBase的存在” ←就像1.241的tapi一样
我们叫它...FirstMod
using System;
using Microsoft.Xna.Framework;
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
using FirstMod.Items; //这个不要改,改了之后,要修改就很麻烦


namespace FirstMod
{
public class FirstMod : Mod
{
public override void SetModInfo(out string name, ref string version, ref string author)
{
name = "First Mod"; //这里是在游戏里显示的mod名
version = "v1"; //版本号
author = "CWOF"; //作者
}


public override void Load()
{
AddItem("BlackKing", new BlackKing(), "FirstMod/Items/BlackKing"); //读取新物品,并读取新物品的图片
}


public override void AddRecipes()
{
ModRecipe recipe = new ModRecipe(this);
recipe.AddIngredient(ItemID.DirtBlock, 2); //需要:泥土块2个
recipe.SetResult(null, "BlackKing", 1); //合成BlackKing
recipe.AddRecipe(); //添加合成
}
}
}
注释的地方,自己理解理解
public override void AddRecipes()这些,就像一个公式,套上去就行了。

楼主 清水之火  发布于 2015-07-23 20:15:00 +0800 CST  



成品,using FirstMod.Items中的Items就对应图片文件夹里的Items

楼主 清水之火  发布于 2015-07-23 20:19:00 +0800 CST  
之后,我们要在Items的文件夹里,创造新的武器/装备/饰品等等
不过首先,我们需要一张png和CS文件(注意,cs和png名字必须一致)


楼主 清水之火  发布于 2015-07-23 20:23:00 +0800 CST  
然后我们编辑BlackKing.cs文件(lz是用的vs,不过因为vs2G大,如果没有特殊需要并不建议去使用)
套公式
using System;
using Terraria;
using Terraria.ModLoader;
using System.Diagnostics;
using Microsoft.Xna.Framework;


namespace FirstMod.Items
{
public class BlackKing : ModItem
{
public override void SetDefaults()
{


}
}
}

楼主 清水之火  发布于 2015-07-23 20:26:00 +0800 CST  
然后我们开始定义我们的第一个物品
我们要给它一个名字
于是,我们在public override void SetDefaults()
{


}
里面写上
item.name = "Black King";
然后呢,一个item最基本的,除了名字,还有介绍,宽,高。
于是..
item.toolTip = "FIRE WITH BLACK”;
item.height = 40;
item.width = 40;
注意“;”号,你要知道印第安人是不会说中文的(←土著),别打成中文的“;”
恩,这就是一个基本的item的构成了
可是我们要的是一把武器
那么我们应该添加更多的“属性”
item.useTime = 5; //这是一个武器使用的时间间隔
item.useAnimation = 5; //这是一个武器挥动的速度,即使用动画
item.useStyle = 1; //使用方式为挥动
item.rare = 5; //物品品质
item.autoReuse = true; //是否连发
item.damage = 10; //伤害
item.value = 10000; //售价,10银币,进率就是tr的硬币进率
这就是一个基本的武器了,然后,如果这是一个近战武器的话,我们要“告诉”它,让它可以发挥特殊的作用(比如穿上幽魂套,魔法武器会吸血)
那么,我们就写
item.melee = true;
如果是远程武器就是
item.ranged = true;
如果是魔法武器
item.magic = true;
哦,对了,我们要它只能堆叠一个。因为这是把武器
item.maxStack = 1;
于是,一个武器做好了


PS:namespace FirstMod.Items中的"FirstMod是指这个mod文件夹的名字..可别直接抄了
那么,成品如下
using System;
using Terraria;
using Terraria.ModLoader;
using System.Diagnostics;
using Microsoft.Xna.Framework;


namespace FirstMod.Items
{
public class BlackKing : ModItem
{
public override void SetDefaults()
{
item.name = "Black King";
item.damage = 1;
item.melee = true;
item.width = 40;
item.height = 40;
item.toolTip = "Your First weapon.";
item.useTime = 5;
item.useAnimation = 5;
item.shoot = 451;
item.shootSpeed = 2f;
item.useStyle = 1;
item.knockBack = 6;
item.value = 10000;
item.rare = 8;
item.useSound = 1;
item.autoReuse = true;
item.maxStack = 1;
}
}}

楼主 清水之火  发布于 2015-07-23 20:38:00 +0800 CST  
mod做好了(只有一个武器的mod做好了)
我们要让它在游戏中出现,那么,打开游戏
打开MOD Sources


哦对了
这个武器的合成对应上面"FirstMod"中的
public override void AddRecipes()
{
ModRecipe recipe = new ModRecipe(this);
recipe.AddIngredient(ItemID.DirtBlock, 2); //需要:泥土块2个
recipe.SetResult(null, "BlackKing", 1); //合成BlackKing
recipe.AddRecipe(); //添加合成
}
看见了么。
当我们加载好,我们就可以去游戏里制作了。
顺便这是空气合成,在某个东西上面合成的话,用这个
public void AddTile(int tileID)

楼主 清水之火  发布于 2015-07-23 20:42:00 +0800 CST  
恩,正版不能联机,因为这个mod制作器还在完善中,我已经和作者联系了,请期待吧。


如果你能制作,并且你的武器可以使用,那么说明你的mod制作成功了,enjoy吧
哦对了,发射pro的代码是
item.shoot = 304;
item.shoot = 3f;
这只是个例子..恩...

楼主 清水之火  发布于 2015-07-23 20:46:00 +0800 CST  
如果我的mod出错了呢?
那怎么办?

楼主 清水之火  发布于 2015-07-23 20:56:00 +0800 CST  
那么此时,mod制作器会自动报错,可是为什么一堆****呢?因为tr本身不支持中文,所以我们需要打开箭头所指的地方


楼主 清水之火  发布于 2015-07-23 20:57:00 +0800 CST  
然后就是出现中文的..

楼主 清水之火  发布于 2015-07-23 20:57:00 +0800 CST  
休息一会
下一篇是:来吧昆特牌吧!

楼主 清水之火  发布于 2015-07-23 21:01:00 +0800 CST  
好的,接下来,我们开始制作饰品了对吧。
那么,我先找一张图片..恩..


管那么多,先来把昆特!
咳咳。这就是一个饰品的图片..

然后,开始制作..

楼主 清水之火  发布于 2015-07-23 23:22:00 +0800 CST  


我们先找找不同..
AddItem("MotherFucker", new MotherFucker(), "FirstMod/Items/MotherFucker");
recipe = new ModRecipe(this);
recipe.AddIngredient(ItemID.DirtBlock);
recipe.SetResult(null, "MotherFucker", 1);
recipe.AddRecipe();

楼主 清水之火  发布于 2015-07-23 23:30:00 +0800 CST  
然后我们在MotherFucker.cs里面开始写这个饰品的数据
using System;
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
using Microsoft.Xna.Framework;


namespace FirstMod.Items
{
public class MotherFucker : ModItem
{
}
}
套公式...这属于简单理解..
基本的道具属性也不用说了,直接放上
item.name = "Mother Fucker!";
item.width = 24;
item.height = 28;
item.toolTip = "Come on KunTe!.";
item.toolTip2 = "Yooooooooooo!";
item.value = 10000;
item.rare = 2;
然后,我们要知道,它是个饰品,我们要它可以“佩戴"
那么,我们就写
item.accessory = true;
它是个饰品,怎么能没用的,所以,我们要设定它的防御为5
item.defense = 5;
(ps:我还不满足,我死的快,然后我就写了 item.lifeRegen = 19; //回血速度为19)
等会,这一切都要写在
public override void SetDefaults()
{


}
里面..
那么增加角色攻击之类的呢..?

公式
public override void UpdateAccessory(Player player)
{
player.minionDamage += 19f;
}
//召唤师哭瞎
然后你的饰品就做好了
进入游戏里看看吧





附代码图


楼主 清水之火  发布于 2015-07-23 23:36:00 +0800 CST  

楼主:清水之火

字数:6669

发表时间:2015-07-24 03:58:00 +0800 CST

更新时间:2017-02-14 08:48:37 +0800 CST

评论数:631条评论

帖子来源:百度贴吧  访问原帖

 

热门帖子

随机列表

大家在看