注册 | 登录

游侠NETSHOW论坛





游侠NETSHOW论坛 游侠NETSHOW论坛 太阁立志传5·绯红之章·人间五十年 剧本编辑突破再告捷!数字输入算盘框的出现!(完整版) ...
查看: 9949|回复: 32
打印 上一主题 下一主题

[教程] 剧本编辑突破再告捷!数字输入算盘框的出现!(完整版) [复制链接]

帖子
62
精华
3
积分
1031
金钱
618
荣誉
40
人气
0
评议
0
跳转到指定楼层
楼主
发表于 2009-3-9 14:45:04 |只看该作者 |倒序浏览
(本功能完整了, 申请加)

数字输入算盘框也就是我们买入兵粮啊军马啊的时候所出现的要求你输入购买数的那个算盘框.

如果你对于EVM文件指令代码还不熟悉的话, 请参详下帖的1楼和12楼:
http://game.ali213.net/thread-2621026-1-1.html

------------------------------------------------------------------------------------------------------
3月11日的更新:
1.解决了标题和单位输入字符串的问题.
2.允许最大值和初始值代入变量.

具体实现如下:

太閤立志伝5イベントソース
//此脚本说明
チャプター:{//脚本开始
    イベント:事件1{//事件1 开始
        属性:何度でも
        発生契機:室内画面表示後(無効,無効)
        発生条件:{
        }//条件结束
        スクリプト:{ //执行开始
            代入x:(0)//用作存放算盘的输出结果
            代入y:(1000)//用作存放代入初始值的数据
            代入z:(10000)//用作存放代入最大值的数据
            武将死亡:(青山忠成)//原代码30 00 00 00, 将变为48 1D 03 00, 1D表示变量x
            武将死亡:(青山忠成)//原代码30 00 00 00, 将改作算盘输入的最小值, (需要用户自行设定, 不能代为变量)
            武将死亡:(青山忠成)//原代码30 00 00 00, 将改作1E 00 00 00, 即变量y, 表示初始值
            ひとりごと:[[這裏是標題\n這裏是標題第二行\n單位]]
           //这句话原代码以12 00 00 00打头, 将这四位改作1F 00 00 00, 即变量z, 表示最大值
           //从后面表示内容的代码中找到0A, 这个表示换行符\n, 找到第二个0A, 将其改为00.
           //如果你的标题只含一行, 则源代码中这句话应该写为
           //ひとりごと:[[這裏是標題\n\n單位]]
           //evm文件处理方法仍然是将第二个0A改为00
           //字符串中不能含有诸如(主人公), {二人称名前}, <年>之类的不确定的东西
            ひとりごと:[[我輸入的是<x>]]//这句不用变化
        }//执行结束
    }//事件1 结束
}//脚本结束

先编译运行源代码, 可以得到这样的EVM结果:

更改之后的EVM代码为:

重新编译, 生成剧本, 进入游戏, 一切都完成了.
运行结果:


修正后的剧本:

------------------------------------------------------------------------------------------------------


另外, 强烈希望版上的工具大牛为这个功能开发一个辅助性工具, 因为本功能需要向EVM文件中插入(还不是覆盖)两个BIG5码的字符串, 而且对字符串还有进一步的要求.

数字对话框的指令代码是48, 参数有6个, 分别是:
1.对话框输出值(变量a)
2.数据最大值
3.数据最小值
4.初期值
5.数据单位(字符串型)
6.数字对话框标题(字符串型)

先举一个例子, 源代码如下:

太閤立志伝5イベントソース
//此脚本说明
チャプター:{//脚本开始
    イベント:事件1{//事件1 开始
        属性:何度でも
        発生契機:室内画面表示後(無効,無効)
        発生条件:{
        }//条件结束
        スクリプト:{ //执行开始
            代入a:(0)
            武将死亡:(青山忠成)
            武将死亡:(青山忠成)
            武将死亡:(青山忠成)
            武将死亡:(青山忠成)
            武将死亡:(青山忠成)
            武将死亡:(青山忠成)
            ひとりごと:[[我輸入的是<>]]
        }//执行结束
    }//事件1 结束
}//脚本结束
由于本功能至少需要二十四个字节来存放, 所以例子中用了六条武将死亡:(青山忠成)语句用作修改.
将本段编译后结果如下:

注意到由于执行六次让青山忠成死亡的代码, 文件中出现了六次30 00 00 00, 将其换为:
48 06 00 00 00 00 00 00 00 00 00 00 10 00 00 00 A4 40 00 00 A4 41 00 00
保存后编译EVM文件, 输出剧本文件, 进入新游戏, 任意进入一个设施, 大家就可以看到结果.

下面将对这行代码作出解释:
48:指令代号, 表示输入数字框.
06:对话框输出值, 变量a,  执行这条语句之后, 用户输入的数据将被赋给先前代入的a, 此处可能可以改为07, 08等等以更新变量b, c, 但是我没有试过.
00 00: 此处不能改变
00 00 00 00:这四个字节用来表示输入数字的最小值, 此处设为0, 如果想设为3000的话, 3000的16进制是0BB8, 将这四个00改作 B8 0B 00 00就可以了, 注意是要倒着来的. 可以用变量代入, 但方法现在还没有搞清楚.
00 00 00 00:这四个字节表示输入数字的初始值, 此处设为0, 想设为其它的话, 方法同上.
10 00 00 00:这四个字节表示输入数字的最大值, 此处设为16.
最麻烦的地方来了, 就是字符串的输入, 所以强烈要求为本功能写一个工具.
首先字符串的字节数, 必须能被4整除, 而且必须以00结尾, 如果不足的话, 应以00补全.
其次剧本中用的字符串必须是BIG5码的, 否则显示为乱码.
为了简单起见, 本例中字符串我都只设为一个字.
A4 40 00 00:表示数字的单位, 如"贯", "石", "匹"等, 此处设为汉字"一".
A4 41 00 00:表示数字框的说明, 也就是显示在数字框左上角的"要给多少呢?"之类的字样, 注意字符最好不要超过25个字, 否则样子很难看. 允许换行, 也就是说本字符串中允许加入0D 0A表示的换行符. 此处设为汉字"乙".

(八楼的版友说的很有道理, 后两个参数, 可以直接改EVM文件中会话的代码来实现, 出于识别的考虑, 用"自语"的命令最好.)

好了解释完了, 欢迎大家试验.

附件为例子剧本, 数据有所不同.

本作未解决的问题: 如何让最小值, 初使值, 最大值能够代入变量的值? 而不用亲自给定?
欢迎大家继续研究.

我的QQ:249476488
E-mail:nklinan@163.com

[ 本帖最后由 nklinan 于 2010-9-12 11:51 编辑 ]
附件: 你需要登录才可以下载或查看附件。没有帐号?注册
已有 1 人评分金钱 收起 理由
Sare + 90 + 5 感谢发表精华文章!

总评分: 金钱 + 90  + 5   查看全部评分

使用道具 举报

捐館通山源公大居士
游侠元勋版主
【太阁&三国志专区】
游侠剑阁工作组【美工】
河內源氏当主 正三位大納言

★★★★★★★

游侠元勋版主元老版主勋章版主勋章资深版主勋章大头像勋章特色头衔勋章剑阁工作组资深组员勋章youki贡献勋章

帖子
4184
精华
5
积分
4498
金钱
31778
荣誉
139
人气
158
评议
5

沙发
发表于 2009-3-9 14:51:46 |只看该作者
沙发!   LZ的出现给太阁区带来了活力,历史性的突破,没想到我竟然见证到了

使用道具 举报

游侠剑阁工作组【制作】

帖子
789
精华
2
积分
1418
金钱
5826
荣誉
62
人气
32
评议
0

板凳
发表于 2009-3-9 15:54:20 |只看该作者
呵呵,一定要坚持探索下去亚!坚决支持楼主所做的工作!

使用道具 举报

游侠剑阁工作组【制作】

帖子
789
精华
2
积分
1418
金钱
5826
荣誉
62
人气
32
评议
0

地板
发表于 2009-3-9 17:57:43 |只看该作者
NB的人总是高处不胜寒,呵呵,支持楼主,再顶一下!
盼望楼主能发布数字输入的技术!!

使用道具 举报

游侠光荣游戏工作组【剧本】
斋藤家当主 军师
冥界引路人·馬爾基諾

帖子
1158
精华
0
积分
1015
金钱
7151
荣誉
43
人气
55
评议
0

5#
发表于 2009-3-9 18:00:44 |只看该作者
樓主再接再厲

另外~最好把那種紅色“停止”按鈕打頭的選擇菜單給研究出來.....

多謝多謝~

使用道具 举报

帖子
1009
精华
0
积分
545
金钱
1902
荣誉
4
人气
1
评议
0
6#
发表于 2009-3-9 18:07:24 |只看该作者
牛人果然牛人啊,四大难题刷刷干掉两个!膜拜!

使用道具 举报

帖子
62
精华
3
积分
1031
金钱
618
荣誉
40
人气
0
评议
0
7#
发表于 2009-3-10 07:33:17 |只看该作者
版主怎么也不加个亮啊 呕心沥血的东西呀!

使用道具 举报

游侠剑阁工作组【制作】

帖子
789
精华
2
积分
1418
金钱
5826
荣誉
62
人气
32
评议
0

8#
发表于 2009-3-10 08:04:08 |只看该作者

回复 #1 nklinan 的帖子

支持楼主,不知道楼主是否尝试过用4-5个武将死亡指令加上一个旁白指令来尝试一下,因为旁白的字符串也是这样处理的,就可以不用输入字符串了。

使用道具 举报

帖子
62
精华
3
积分
1031
金钱
618
荣誉
40
人气
0
评议
0
9#
发表于 2009-3-10 08:49:47 |只看该作者

回复 #8 rockymei2k 的帖子

嗯! 说的很有道理! 不过我相信如果文章看懂的话, 读者自己也就能够那样处理了!

使用道具 举报

游侠剑阁工作组【制作】

剑阁工作组资深组员勋章

帖子
539
精华
1
积分
680
金钱
3349
荣誉
21
人气
3
评议
0
10#
发表于 2009-3-10 09:07:59 |只看该作者
……不错,又是新发现,但是……我觉得这个对剧本作用不大吧?完全可以用旁白金钱给予、用掉多少钱的形式啊?
太阁6不会出现……还是玩我的独立游戏吧

使用道具 举报

帖子
62
精华
3
积分
1031
金钱
618
荣誉
40
人气
0
评议
0
11#
发表于 2009-3-10 09:21:13 |只看该作者

回复 #10 bigmojin 的帖子

看样子你没懂数字对话框的意思, 那是游戏中买入军马兵粮指定日数要求输入数据的时候弹出来的一个有算盘的对话框,

使用道具 举报

游侠光荣游戏工作组【剧本】
斋藤家当主 军师
冥界引路人·馬爾基諾

帖子
1158
精华
0
积分
1015
金钱
7151
荣誉
43
人气
55
评议
0

12#
发表于 2009-3-10 10:05:15 |只看该作者
原帖由 bigmojin 于 2009-3-10 09:07 发表
……不错,又是新发现,但是……我觉得这个对剧本作用不大吧?完全可以用旁白金钱给予、用掉多少钱的形式啊?



怎么可能用處不大呢!
沒有這個的話 如果想要輸入複雜的數字(譬如劇本的自編軍團的軍糧、鐵炮、軍資等物資),
就只能使用呆板的具體數,亦或者是顯示0~9 這十個數字同時出現的複雜選擇框。

但是現在有了這個,不但這些步驟可以省略掉,而且很多功能都可以有進一步的提升。

另外……樓主能不能把"贯", "石", "匹"等已之代碼告訴我們呢?

多謝多謝!!

[ 本帖最后由 two001 于 2009-3-10 10:34 编辑 ]
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

使用道具 举报

游侠剑阁工作组 副组长
源氏长者 從一位 左大臣

精华勋章写手之证剑阁工作组资深组员勋章

帖子
2400
精华
13
积分
6153
金钱
25918
荣誉
235
人气
32
评议
0

13#
发表于 2009-3-10 15:53:13 |只看该作者
军团编制支持变量么?
一直没尝试过。问问LS的。

使用道具 举报

游侠光荣游戏工作组【剧本】
斋藤家当主 军师
冥界引路人·馬爾基諾

帖子
1158
精华
0
积分
1015
金钱
7151
荣誉
43
人气
55
评议
0

14#
发表于 2009-3-10 16:25:55 |只看该作者
恩 支持
只要是填入具體數字的都支持

会話:(人物A,主人公)[[請選擇軍備的數量:]]
選択:[[全部清除]][[軍馬:<a>匹]][[鐵炮:<b>挺]][[大筒:<c>筒]][[確定]]
分岐:(0){
    代入a:(0)
    代入b:(0)
    代入c:(0)
}
分岐:(1){
    場合別:(a){
        場合分岐:(0){
            調査:(城::城B.軍馬)>=(4000)
            分岐:(真){
                代入a:(4000)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(4000){
            調査:(城::城B.軍馬)>=(8000)
            分岐:(真){
                代入a:(8000)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(8000){
            調査:(城::城B.軍馬)>=(12000)
            分岐:(真){
                代入a:(12000)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(12000){
            調査:(城::城B.軍馬)>=(16000)
            分岐:(真){
                代入a:(16000)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(16000){
            調査:(城::城B.軍馬)>=(20000)
            分岐:(真){
                代入a:(20000)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(20000){
            代入a:(0)
        }
    }
}
分岐:(2){
    場合別:(b){
        場合分岐:(0){
            調査:(城::城B.鉄砲)>=(4000)
            分岐:(真){
                代入b:(4000)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(4000){
            調査:(城::城B.鉄砲)>=(8000)
            分岐:(真){
                代入b:(8000)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(8000){
            調査:(城::城B.鉄砲)>=(12000)
            分岐:(真){
                代入b:(12000)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(12000){
            調査:(城::城B.鉄砲)>=(16000)
            分岐:(真){
                代入b:(16000)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(16000){
            調査:(城::城B.鉄砲)>=(20000)
            分岐:(真){
                代入b:(20000)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(20000){
            代入b:(0)
        }
    }
}
分岐:(3){
    場合別:(c){
        場合分岐:(0){
            調査:(城::城B.大筒)>=(400)
            分岐:(真){
                代入c:(400)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(400){
            調査:(城::城B.大筒)>=(800)
            分岐:(真){
                代入c:(800)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(800){
            調査:(城::城B.大筒)>=(1200)
            分岐:(真){
                代入c:(1200)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(1200){
            調査:(城::城B.大筒)>=(1600)
            分岐:(真){
                代入c:(1600)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(1600){
            調査:(城::城B.大筒)>=(2000)
            分岐:(真){
                代入c:(2000)
            }
            分岐:(偽){
                会話:(人物A,主人公)[[主公,庫存不足。]]
            }
        }
        場合分岐:(2000){
            代入c:(0)
        }
    }
}
軍団編成:(主人公軍団,主人公拠点,拠点攻撃,城A,無効,主人公拠点,主人公,人物C,人物C,人物C,人物C,10000,20000,a,b,c,20000,0)



終於可以把這種狗血的設計給剔除掉了..........

[ 本帖最后由 two001 于 2009-3-10 16:33 编辑 ]

使用道具 举报

游侠剑阁工作组 副组长
源氏长者 從一位 左大臣

精华勋章写手之证剑阁工作组资深组员勋章

帖子
2400
精华
13
积分
6153
金钱
25918
荣誉
235
人气
32
评议
0

15#
发表于 2009-3-10 16:37:13 |只看该作者
很好很好。这下完美了。
哈哈哈哈哈哈哈哈哈哈

使用道具 举报

游侠光荣游戏工作组【剧本】
斋藤家当主 军师
冥界引路人·馬爾基諾

帖子
1158
精华
0
积分
1015
金钱
7151
荣誉
43
人气
55
评议
0

16#
发表于 2009-3-10 16:41:43 |只看该作者

突然想起來,可以用這個算盤弄個新一代的驗證密碼

使用道具 举报

游侠剑阁工作组【制作】

剑阁工作组资深组员勋章

帖子
2695
精华
4
积分
3816
金钱
10551
荣誉
166
人气
77
评议
0

17#
发表于 2009-3-10 18:55:40 |只看该作者
昨天我还说起这个,今天就已经解决了嘛?

nklinan 到底是何妨神圣,真神人也,顶礼膜拜。

使用道具 举报

帖子
62
精华
3
积分
1031
金钱
618
荣誉
40
人气
0
评议
0
18#
发表于 2009-3-10 20:01:43 |只看该作者

回复 #17 zhuoludian 的帖子

我昨天在你说起之前就已经解决了, 哈哈, 只是你没看到而已

使用道具 举报

游侠剑阁工作组 副组长
源氏长者 從一位 左大臣

精华勋章写手之证剑阁工作组资深组员勋章

帖子
2400
精华
13
积分
6153
金钱
25918
荣誉
235
人气
32
评议
0

19#
发表于 2009-3-10 20:04:22 |只看该作者
LS的快去更新发卡 [汗水]

使用道具 举报

~§出羽の妖狐§~
游侠光荣游戏工作组【问答】
巫女 剑美玉・百合 修罗

活跃勋章荣誉勋章白金会员勋章

帖子
12066
精华
1
积分
8065
金钱
1771
荣誉
181
人气
223
评议
0

20#
发表于 2009-3-10 21:10:56 |只看该作者
原来LZ真的潜得很深很深,占楼支持……

FORZA MILAN !!!

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

手机版|Archiver|游侠NETSHOW论坛 ( 苏ICP备2023007791号 )

GMT+8, 2025-9-1 09:34 , Processed in 0.351171 second(s), 12 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

分享到