辐射4 Hello World

本文档详细介绍了如何利用CreationKit在Fallout游戏模组中创建一个对话框显示脚本,包括配置Message,编写PapyrusScript,绑定事件到场景中的物体,以及在游戏内测试交互。步骤从新建ESP文件,设置Message,编写并编译脚本,到在场景中应用并测试,为游戏模组开发提供了清晰的教程。
摘要由CSDN通过智能技术生成

最终效果

思路: 

1.使用CreationKit的Message配置对话框文本

2.写一个调用对话框显示的脚本

3.找到一个最近可交互的物体,为其添加该脚本,并将配置的Message作为参数传入该脚本

操作流程:

1.在MO2中打开CreationKit(以下简称:CK)

 如果你的图标不是这个,确定你是否配置好了CreationKit,可以参考我的该文章:http://t.csdn.cn/isOOf

2.打开CK左上角File下的Data,激活第一个本体前的选择框,然后点OK,如图

 

3.然后点击CK左上角File下的Save,这样就新建好了自己的esp文件。

4.再次打开Data窗口,单击自己的esp文件,然后点击左下角的激活,再点击ok,如图。这样就激活了自己的mod,就代表接下来的操作数据,会保存到你的esp文件里。

更多新建和加载esp的介绍,可参考:B站视频 BV1vS4y1x7ZS

5.点击ObjectWindow下Miscellaneous里的Message,然后在右边任意位置右键new一个Message,如图

 6.配置好Message,如图。

 7.打开顶部菜单栏Gameplay下的Papyrus Script Manager窗口,如图。然后在里边右键new一个脚本。

 在new脚本的窗口填好信息后,CK会在你的MO2根目录的override下生成对应的psc源码和pex二进制文件

8.打开刚才新建的psc源码,(如:MO2\overwrite\Scripts\Source\User\CandyuanMod\Candyuan_Start.psc)。

随后如下编辑:

Scriptname CandyuanMod:Candyuan_Start extends ObjectReference

;-- Properties Start--------------------------------------
Message Property messageBox Auto Const mandatory
;-- Properties End--------------------------------------


;-- Functions Start---------------------------------------
Function show_message_box(ObjectReference akActionRef)
	Actor PlayerREF = Game.GetPlayer()
	int pressedButton = messageBox.Show(0, 0, 0, 0, 0, 0, 0, 0, 0)
	If (pressedButton == 0 && akActionRef == PlayerREF as ObjectReference)
		Self.gotoState("HasBeenTriggered")
	Else
		
	EndIf
EndFunction
;-- Functions End---------------------------------------

;-- State Start-------------------------------------------
Auto State WaitingForTrigger

	Event OnOpen(ObjectReference akActionRef)
		Self.show_message_box(akActionRef)
	EndEvent

	Event OnClose(ObjectReference akActionRef)
		Self.show_message_box(akActionRef)
	EndEvent
EndState

State HasBeenTriggered

	Event OnOpen(ObjectReference akActionRef)
		; Empty function
	EndEvent

	Event OnClose(ObjectReference akActionRef)
		; Empty function
	EndEvent
EndState
;-- State End-------------------------------------------

第一句是声明脚本名称、所在命名空间、所继承的类

Properties部分是参数,到时候去CK绑定时会具体选择

Funcitons部分是方法,具体实现就在里边写

State部分可以绑定事件,如State WaitingForTrigger等待触发下的Event OnOpen就会在绑定的物品打开时触发

9.写完之后回到Papyrus Script Manager窗口,右键compile编译这个脚本,这样pex就会有psc最新的内容了

10.双击进入CellView下WorldSpace:SanctuaryHillsWorld里的PrewarPlayerHouse01场景,战前玩家房子初始场景

 11.在渲染窗口找到捏脸后面那个门,双击打开配置,然后再Scrips处添加脚本

 如果场景太杂乱,有可能你需要关闭顶部菜单栏View下的Markers

12.找到自己的脚本

13.依次点击左侧的参数,进行配置

 

 14.选中之前写好的Message

最后记得点击Reference窗口的OK

 

随后点击左上角FIle下的Save

退出CK

在MO2里选中自己的Mod,运行F4SE

然后新建游戏,捏完脸去和那扇门交互吧 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值