找回密码
 注册
X系列官方授权正版
搜索
查看: 2774|回复: 5

[求助] 关于自由模式

[复制链接]
发表于 2011-5-26 18:34:11 | 显示全部楼层 |阅读模式
有没有什么简单的方法使游戏变成没有结局的自由模式?比如将最后的任务文件删除或修改一下。
发表于 2011-5-26 21:59:30 | 显示全部楼层
本帖最后由 sjn1978 于 2011-5-26 22:05 编辑

简单方法有啊,你搜索游戏目录
“\Data\Scripts\Quests\” 里面的任务脚本文件。
查找 EndGame(); 找到后把他注释掉,这样 --EndGame();
不过我没测试过这样改了之后游戏会如何,个人觉得应该不会出什么问题吧~~~

我是直接把整个脚本系统都改了,新建游戏进入自己写的任务里,和原版一点关系都没有
这样可以把狼3改成类似自由枪骑兵,或者类似家园2的即时战略游戏,即时战略可以实现的,
可以改技能建造战舰,这样就类似于家园2了。
贸易系统也可以实现,比如类似自由枪骑兵那样自由的做贸易,低买高卖~~也可以新增贸易品
更换母舰,买卖母舰,新建星区,自定义任务系统基本上都搞成功了。
技术上把狼3改成RPG版的自由枪骑兵没什么难度。

不过现在移情别恋了,迷上UDK了~~~狼3扔一边去了~~~~
回复

使用道具 举报

 楼主| 发表于 2011-5-27 18:00:44 | 显示全部楼层
试了一下,有的结局有效果,但是却玩不了,在传送门那里,不传送。

我试着删了18以后的任务,目前来看效果还行,正在做星系旅游
回复

使用道具 举报

发表于 2011-6-1 17:19:05 | 显示全部楼层
星系旅行可做的事情很少啊,一个星系就那么几个空间站,到处空空荡荡的
回复

使用道具 举报

发表于 2011-6-4 03:00:02 | 显示全部楼层
貌似,确实有很多事不能做,最多打打劫
回复

使用道具 举报

发表于 2011-6-10 18:16:34 | 显示全部楼层
本帖最后由 sjn1978 于 2011-6-10 18:24 编辑
cpu1224 发表于 2011-5-27 18:00
试了一下,有的结局有效果,但是却玩不了,在传送门那里,不传送。

我试着删了18以后的任务,目前来看效果 ...


如果你想改任务,可以看看Data\Game\CustomInit.xml
还有同目录的Quests.xml

我的改法,新建了100多个任务,每个星系一个任务。
然后这些任务又同时调用一个共通的lua脚本。通过修改Data\Scripts\system.lst,这里可以自己加入自己的共通lua脚本
离开星区时,用ClearQuests();结束当前星区任务,然后在用QuestStart("XXX任务名");开启目标星区对应任务。
这样就能实现,游戏进程始终在自己掌控下。这个修改方法研究了好几天,其他许多方法都不能实现全局控制。

读档比较特殊,如果想实现读档后的控制,比如每次读档后给玩家一个问候语,需要修改星区的functions.script脚本。
如果你对脚本感兴趣,可以看一下狼3载入脚本的顺序。

100多个任务脚本,我用java自动生成的,自己写要累死,里面都很简单,每个脚本都还不到10行。
贴一个出来
------------------------------------------------------------
--               星际之狼3:内战 自由宇宙MOD               --
--                      星域任务脚本                      --
------------------------------------------------------------
-- 2011 4.23 created by sjn                                --
-- VER. 0.1                                               --
------------------------------------------------------------
function ACTION_INIT()
  return FreeWorldActionInit();
end;

function ACTION_LEAVELOCATION()
  return FreeWorldLeaveLocation();
end;

function ACTION_FINI()
  return FreeWorldActionFini();
end;

不能传送问题很多。还可能遇到存档后不传送的问题,尤其是自定义的新星区。
必须修改星区脚本里functions.script这个脚本。

这个脚本里是绑定星区大门传送触发器的。
比如Data\Scripts\Locations\Corrino\functions.script
传送相关事件都在这里。包括播放传送动画效果mothership:PlayFX("Portal Out.shfx");
打开传送确认对话框:ShowMsgBox("#M_teleport_confirm", "#M_teleport_to_taira", OnPortalStart_PORTAL_U, OnPortalCancel);
这里的修改很细致,少改了一个传送就可能失效,而且方法很散乱,好几个方法跳来跳去的~~~
想研究的可以看看。
回复

使用道具 举报

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

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|DeepTimes.NET 太空游戏站