3DMGAME 3DM首页 新闻中心 前瞻 | 评测 游戏库 热门 | 最新 攻略中心 攻略 | 秘籍 下载中心 游戏 | 汉化 购买正版 侠客前传 | 刺客信条 论坛

注册 登录

QQ登录

只需一步,快速开始

查看: 6067|回复: 13

[心得] 【破甲心得】从-1开始用破甲——向newalbert、jewelswey致敬【更小白向】【10楼更新】

  [复制链接]

13

主题

122

帖子

216

积分

中级玩家

Rank: 3Rank: 3

贡献度
18
金元
1436
积分
216
精华
0
注册时间
2009-7-10
发表于 2012-2-5 21:36 | 显示全部楼层 |阅读模式
本帖最后由 Benlaron 于 2012-2-6 23:08 编辑

0.序
  首先声明:小弟不是高手,是伸手党一名,也在不断学习之中;这次写这个东西,只是伸手党的揭竿——不是所有的伸手党都是大爷,至少我不是~所以,这篇心得没有良好的售后服务,希望诸位能理解,就像理解T网里那些日本Modder说“My English is poor”一样……
  其次,在研究破甲脚本时,参考了newalbert和jewelswey两位大大的的教程,下面是传送门:
     jewelswey:从零开始学破甲
     newalbert:破衣框架BUFramework_v1.01解析上古4脚本学习 (2010.01.04 68楼增加第三课:mod基础概念和流控)
  而这东西是更加小白的东西,所以高手看到此可以无视我了。

  再者,各位如果希望更详细的东西,还是先请过了六级吧……国外的站点的资源真心丰富【没有任何冒犯之意】
  接下来,破甲又称BreakUndiesFramework,在T网上已经出到2.0版本。题外话一下:如果诸位真心想观赏破甲的话,PC平台请度娘 I社的BattleRaper,游戏机平台请度娘 灵魂能力;
  最后,解释一下为什么会广告其他游戏:小弟感觉上古卷轴4比起I社那些纯粹以Yellow作为话题的游戏来说,更好的是它自由的剧情、真实的世界和开放的修改系统,所以我并没有装一些纯H的Mod,譬如XLover之类的。我最YD的Mod应该是BBB、BU和触手Mod了,所以希望别向小弟伸手那些东西的相关资源~

1.使用的工具【链接就懒得发了,都是大街货】
   Iroha女仆装及其可破甲版【例子】
   BUFramework v2.0
   obse v0020
   TESConstructionSet【简称CS】

2.使用办法【以Iroha为例】
   (1)安装好以上的Mod文件,安装好obse v0020后你会看到在游戏主文件夹(X:\Program Files\Oblivion,其中X为你的盘符)下会有一个obse_loder.exe,右击之,选择【创建快捷方式】,右键点开快捷方式,如下图,在【目标】那里的最后补上个 -editor,这样就可以通过obse调用CS了
                                                                  
     (2)双击运行之,出现CS的界面,,选择第二个按钮打开
     (3)勾上主文件(Oblivion.esm),破甲框架(BreakUndies.esm),IrohaClothes.esp
                                    
                记得对蓝色显示的IrohaClothes.esp选择下方的按钮:  激活之
       (4)等待加载成功之后,会出现界面【Object Window】,在左侧的选择框(如下图所示)点开【Armor(盔甲)】左侧的+号,
               找到Iroha,点击之,此时界面应当如右图所示:  
       (5)上侧右方的图是修改过的了,若否,则在【Script】那一栏中第一项空白,第三项有IrohaBreakVar。所以现在就是关键了——
       (6)【若您希望对原版文件直接修改】,请确认您的文件夹X:\Program Files\Oblivion\Data\meshes\BaronB\Iroha(X为安装盘符)里面有以下图中所示的文件(基本上按照ReadMe.txt安装的都应该有):
        即iroha new.nif、iroha newb1.nif、iroha newb1.nif、iroha newb1.nif、Iroha_terra.nif、Iroha_testa.nif
                                                                        
       / *【题外】据我少得可怜的知识,仅知道Iroha_terra.nif是衣服扔在地上时的模型文件,对于破甲使用并无直接影响*/
         好,现在双击irohaclothes,【即第(4)步中的最后一张图右侧栏中的第一项】,出现如下图所示的东东:
                                                                             
         找到【Script】,看到【Script】那行右边的三个点【...】,点开之,出现下图
                                                                           
          点击菜单栏的【Script】,点击【New...】,出现空白画面
          然后请把下边这些东西复制进去。点击【Script】,【Save】,关闭。
  1. ; Sample of object script put on individual equipment
  2. scn aaBUIroha

  3. array_var param
  4. int ret

  5. ref rEquip
  6. array_var aEquip
  7. array_var aMesP
  8. array_var aMesA

  9. Begin gamemode
  10. let ret := Call BUCmnFnc param aEquip aMesP aMesA
  11. if (ret == 0)
  12.         return
  13. endif
  14. if (ret == 2)
  15.         let param := aEquip := aMesP := aMesA := ar_Null
  16.         return
  17. endif

  18. ; Initialization
  19. let aEquip := ar_Construct Array
  20. let aMesP := ar_Construct Array
  21. let aMesA := ar_Construct Array

  22. ; Individually needing the change : START
  23.         ; Specify EditorID of the object equipment.
  24.         ; Bundle it by "" when EditorID starts by the figure. ex) "00BUDWD"
  25.         set rEquip to "irohaclothes"

  26.         ; Specify the nif file by each destructive phase.
  27.         let aEquip[ar_Size aEquip] := "Meshes\BaronB\Iroha\iroha new.nif"
  28.         let aEquip[ar_Size aEquip] := "Meshes\BaronB\Iroha\iroha newb1.nif"
  29.         let aEquip[ar_Size aEquip] := "Meshes\BaronB\Iroha\iroha newb2.nif"
  30.         let aEquip[ar_Size aEquip] := "Meshes\BaronB\Iroha\iroha newb3.nif"

  31.         ; Set messages of a number that is less than one number of stages above.(for player)
  32.         let aMesP[ar_Size aMesP] := "Clothes tore by the furious struggle.(1st)"
  33.         let aMesP[ar_Size aMesP] := "Clothes tore by the furious struggle.(2nd)"
  34.         let aMesP[ar_Size aMesP] := "Clothes tore by the furious struggle.(3rd)"
  35.         ; Messages (for enemy)
  36.         let aMesA[ar_Size aMesA] := "Enemy's clothes tore by the furious struggle.(1st)"
  37.         let aMesA[ar_Size aMesA] := "Enemy's clothes tore by the furious struggle.(2nd)"
  38.         let aMesA[ar_Size aMesA] := "Enemy's clothes tore by the furious struggle.(3rd)"
  39. ; Individually needing the change : END

  40. let param := ar_List 0, 0, 0, (ar_Size aEquip) - 1, rEquip
  41. ; Initialization end
  42. End
复制代码
               出来点击右下角的【OK】,再在CS的主界面的工具栏中点击【保存】,这个新的IrohaClothes.esp就有了破甲功能了!
                记得在游戏中装备要是IrohaClothes而不是IrohaClothesVar(介个接下来会讲)
        (7)【如果你不想开CS,想直接调用BUFramework v2.0】,破甲框架里面的Readme.txt,小弟略略读了一遍,和v1.2有不同的地方是:
            ** Merge your ini\BreakUndies.ini to add new breakable equipment.
        也就说,比起1.2版本来说,2.0需要在ini文件里面做点手脚。ini文件一般存放在X:\Program Files\Oblivion\Data\ini里面,名称是BreakUndies.ini
        首先将原IrohaClothes的脚本文件删除,或者点开BreakUndies.ini,将里面的set aaBUData.ForceOverwrite to 0语句改成set aaBUData.ForceOverwrite to 1
       下面有一大堆东西,看不懂无所谓,我也不懂,找到
;================ When you specify the message =================
这行,然后将这行到下一个分隔符【====】之间的文字替换为下面的代码
  1. set aaBUData.DATA to sv_Construct "BaronB\Iroha\iroha new.nif"
  2. SetStage aaBUDataIni 10
  3. set aaBUData.DATA to sv_Construct "BaronB\Iroha\iroha newb1.nif"
  4. SetStage aaBUDataIni 10
  5. set aaBUData.DATA to sv_Construct "BaronB\Iroha\iroha newb2.nif"
  6. SetStage aaBUDataIni 10
  7. set aaBUData.DATA to sv_Construct "BaronB\Iroha\iroha newb3.nif"
  8. SetStage aaBUDataIni 10

  9. set aaBUData.DATA to sv_Construct "Iroha's clothes in the furious struggle shifted!"
  10. SetStage aaBUDataIni 20
  11. set aaBUData.DATA to sv_Construct "Iroha's clothes in the furious struggle tore!!"
  12. SetStage aaBUDataIni 20
  13. set aaBUData.DATA to sv_Construct "Clothes of Iroha came off by the furious struggle!!!"
  14. SetStage aaBUDataIni 20

  15. set aaBUData.ID to GetFormFromMod "IrohaClothes.esp" "0015AA"
  16. SetStage aaBUDataIni 30
复制代码
          至此,一切大功告成,可以进去穿IrohaClothesVar了
           /*记得删除前面的分号!*/

3.原理简述【无爱的话可以略过】
(1) 原版文件修改法,NewAlbert大人已经讲得很清楚了,小弟就不再狗尾续貂。   
(2)而要采用新版的破甲框架的话,按照T网上原作者的意见,IrohaClothesVar中的破甲剧本是“Very very old version”,也就是说很旧的版本,不兼容于现有的破甲框架。因此如果您强行穿之,继续游戏的话,有可能导致悲剧,例如说死机乃至CTD等。如果没有死机,证明真实运气好,那么你可以看看主文件夹X:\Program Files\Oblivion下的obse.log文件,总会找到一段话:
Error in script XXXXXXX
Invalid array access - the array was not initialized.
    File: IrohaClothes.esp Offset: 0x0617 Command: Let
Error in script XXXXXXX
Operator [ failed to evaluate to a valid result
    File: IrohaClothes.esp Offset: 0x0617 Command: Let
原作者对此给出了两个解决方法,特翻译并注解如下:
      
you should delete the v1 script in the "FSN Equipments.esp" already been given in original. Or ForceOverwrite to be 1 in the BreakUndies.ini and GetFormFromMod line to be
set aaBUData.ID to GetFormFromMod "FSN Equipments.esp" "00000F11"

你可以删除版本1的脚本,或者将BreakUndies.ini里面的set aaBUData.ForceOverwrite to 0语句改成set aaBUData.ForceOverwrite to 1,从而达到改写原脚本的目的;而且要修改set aaBUData.ID to GetFormFromMod +“要修改的esp名称” +“物品的ID”这段语句。【在本例中,可以参见上面给出的修改方式,就是set aaBUData.ID to GetFormFromMod "IrohaClothes.esp" "0015AA"】而上面给出的两种方法都是基于这两条建议而行的。
       /*【题外】从上面作者的话也可以看到,FSN Equipments.esp也不兼容,小弟也打开看过它的破甲脚本,确实和IrohaClothesVar的原本的脚本一模一样*/

4.跋
   写到这里,萦绕几天的烦恼似乎烟消云散一般。但是脚本语言如此深奥,谁也难以遑论是牛掰。所以希望能共同讨论一下。至于怎么安装啊、兼容性什么的请恕小弟无能为力了,因为小弟也是个——伸手党。祝龙年元宵节快

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

192

主题

4449

帖子

5417

积分

游戏精英

倒膜帝/色影师/私货王

Rank: 8Rank: 8

贡献度
312
金元
41690
积分
5417
精华
0
注册时间
2010-11-8
QQ
发表于 2012-2-5 22:12 | 显示全部楼层
很好的教程,虽然我已经会了

6254

主题

2万

帖子

15万

积分

3DM创意工坊 汉化组

Rank: 12Rank: 12Rank: 12

贡献度
9217
金元
1198966
积分
156765
精华
0
注册时间
2009-3-22

3DM汉化专家魔幻守护者龙裔勋章(永久)《足球经理2018》专属勋章

发表于 2012-2-5 22:13 | 显示全部楼层
支持一下楼主

6

主题

1177

帖子

1122

积分

游戏狂人

Rank: 6Rank: 6

贡献度
78
金元
8100
积分
1122
精华
0
注册时间
2008-6-29
发表于 2012-2-5 22:13 | 显示全部楼层
又一个成长起来的玩家,恭喜lz

1

主题

2906

帖子

2842

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
100
金元
24417
积分
2842
精华
0
注册时间
2005-11-6
发表于 2012-2-5 22:20 | 显示全部楼层
技术帖,支持个`留个名~~~~~~

39

主题

566

帖子

614

积分

超级玩家

Rank: 5Rank: 5

贡献度
43
金元
4419
积分
614
精华
0
注册时间
2011-5-17
QQ
发表于 2012-2-5 22:22 | 显示全部楼层
我是个不愿用功的技术白

38

主题

4085

帖子

2702

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
70
金元
24222
积分
2702
精华
0
注册时间
2010-4-22
发表于 2012-2-5 23:02 | 显示全部楼层
LZ发的好东西,还在改动作的路过

2

主题

1137

帖子

1072

积分

游戏狂人

Rank: 6Rank: 6

贡献度
3
金元
10601
积分
1072
精华
0
注册时间
2011-11-27
发表于 2012-2-6 14:40 | 显示全部楼层
看到密密麻麻的计算机语言我就头晕!
我还是更愿意看一些3D模型,或是材质什么的东西。

88

主题

3031

帖子

2359

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
61
金元
21146
积分
2359
精华
0
注册时间
2012-2-2
发表于 2012-2-6 16:20 | 显示全部楼层
很好教程受教了!

13

主题

122

帖子

216

积分

中级玩家

Rank: 3Rank: 3

贡献度
18
金元
1436
积分
216
精华
0
注册时间
2009-7-10
 楼主| 发表于 2012-2-6 23:07 | 显示全部楼层
本帖最后由 Benlaron 于 2012-2-6 23:10 编辑

教程v1.1版本更新:
1.向ostinseed大致意,这有助于进一步理解,传送门上古新技術(階段破甲)介紹貼完整版已經發布!~目前最有潛力的技術之一~為上古注入一股新活力
2.从ostinseed大处偷来一份breakundiestutorial,分流了里面的一份示例程序:该程序比起正文的程序来说更加专业【也就是jewelswey大教程中的模板】,小弟凭自己生疏的编程感觉+google翻译成全脚本中文注释,用法和原文的esp修改法一样。
3.有错漏之处敬请指正,元宵快乐!

0

主题

148

帖子

79

积分

初级玩家

Rank: 2

贡献度
0
金元
1393
积分
79
精华
0
注册时间
2011-2-9
发表于 2012-10-1 23:55 | 显示全部楼层
学习了~~膜拜啊

4

主题

359

帖子

386

积分

高级玩家

Rank: 4

贡献度
15
金元
3261
积分
386
精华
0
注册时间
2009-3-2
发表于 2013-10-7 13:44 | 显示全部楼层
学习了~~膜拜

6

主题

385

帖子

335

积分

高级玩家

Rank: 4

贡献度
-4
金元
4108
积分
335
精华
0
注册时间
2014-4-14
发表于 2014-4-19 19:24 来自手机 | 显示全部楼层
感谢分享

6

主题

385

帖子

335

积分

高级玩家

Rank: 4

贡献度
-4
金元
4108
积分
335
精华
0
注册时间
2014-4-14
发表于 2014-4-19 19:24 来自手机 | 显示全部楼层
感谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|咖绿茵|求知网|3DMGAME ( 京ICP备14006952号-1  沪公网安备 31011202006753号

GMT+8, 2020-10-25 01:09 , Processed in 0.128989 second(s), 19 queries , Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表