Project1

标题: 永夜出手机版的可能性 [打印本页]

作者: qq6928233    时间: 2013-1-31 19:15
标题: 永夜出手机版的可能性
本帖最后由 qq6928233 于 2013-1-31 19:18 编辑

永夜出手机版有两个办法

一个是官方重新开发,用flash 开发一个跟永夜很像的游戏

二是官方开发一个手机版的rpg maker,然后解析永夜的数据生成手机版

开发手机版的rpg maker很简单,因为这个工具本身就没什么技术含量。

只需要会flash builder 和数据库就行。

虽然简单,但是官方好像没有这样的人才,从彩虹文字精灵就可以看出来。

但是也不排除官方会花钱请人打造这样的引擎。

为什么不选择一呢?因为一的困难度只是二的困难度的80%。

与其这么麻烦,不如选择2,反正做出来引擎可以重复使用,还可以用以制作其他游戏。还可以给大家学习制作。

作者: 小传子    时间: 2013-1-31 19:26
本来想@夏娜镇楼但是想想还是算了。

IOS有MRUBY ANDROID有JRUBY。完全移植RM是完全可能的:)


作者: 柳柳    时间: 2013-1-31 22:55
手指挡屏幕非常严重,作为战棋来说是硬伤,根本没法玩。
倒是考虑单出ipad版,不过尚未招到cocos2d的开发人员。
作者: qq6928233    时间: 2013-2-1 14:18
传说VS天涯 发表于 2013-1-31 19:26
本来想@夏娜镇楼但是想想还是算了。

IOS有MRUBY ANDROID有JRUBY。完全移植RM是完全可能的:)

那只是支持JRUBY脚本而已

并不支持2D图形操作和数据库

所以你还需要支持解析RM的图形和界面等数据

再编写载入RM的数据库

图形引擎+数据库+脚本+IDE界面=游戏制作工具

you know? you see? untested?

windows图形引擎+RM自带数据库+RUBY脚本+RM自带IDE界面=RM

RM的技术已经过时

现在模仿RM制作一个手机游戏开发工具的话,应该使用:

flash图形引擎+SQLlite内存数据库+Lua脚本+RM的IDE界面的加强版=新RM(手机开发版)

RM的IDE界面的加强版应该支持8方向行走和字符输入以及鼠标点击,手机触摸。

为什么模仿RM的IDE的加强版?把界面做成跟RM差不多是为了使以前使用RM的用户更容易上手和接受
作者: imbff9377    时间: 2013-2-1 16:58
已入激活码,,个人不太喜欢手机上这种战旗游戏。。
作者: 鄢世阳    时间: 2013-2-1 18:33
柳柳 发表于 2013-1-31 22:55
手指挡屏幕非常严重,作为战棋来说是硬伤,根本没法玩。
倒是考虑单出ipad版,不过尚未招到cocos2d的开发人 ...

柳大,永夜能不能和雨血一样上PSV或3DS呢,打开日本市场?和SCE谈谈吧,万一成了,就载入史册了。听说多平台可以收回成本快一些。android平台最好放弃吧,相当于白做。ios最好先做个英文版,原因就不说了。祝永夜卖好!
作者: 七夕小雨    时间: 2013-2-1 19:12
qq6928233 发表于 2013-2-1 14:18
那只是支持JRUBY脚本而已

并不支持2D图形操作和数据库


那你的意思是IOS不支持2D图形和数据库?
RM的2D图像引擎也是使用MFC将图像封装完毕然后将接口回调给RUBY实现,从底层没有任何不同
而且RM何来数据库?RM明明是一堆RUBY序列化对象

再者说说你的
flash图形引擎+SQLlite内存数据库+Lua脚本+RM的IDE界面的加强版=新RM

首先要更正

多媒体引擎(图像+音乐) + 文件管理系统 + 游戏逻辑 + 交互式界面 ≈ 游戏引擎

我想你熟知FlashBuilder开发吧
那你应该知道Flash图像引擎全部都是异步处理,是完全基于网络开发的图像框架,但是用于客户端开发却会带来很多不必要的麻烦
比如 你一个Bitmap new 出来以后都是异步加载的,也就说你下一行代码都得不到宽高,也就是说上级还需要封装自己的Bitmap加载对象

再说说音乐引擎,使用flash只用播放mp3,但是map3却是需要授权的音乐播放格式,而且这让Ogg、Wav等常用格式情何以堪?

还有字体问题,Flash本身是非逻辑字体是使用px绑为单位的字体,再者字体在12pt以下时很清晰,但在比较大(大约18pt以上)时有明显的锯齿,并且无法解决,必须使用位图字体来解决这个尴尬的问题,这样就完全不可掌控开发者在开发过程中使用到的文字

再说说挂接脚本的问题,Flash和C++不能很好的兼容,最然Flash11.5已经推出了可以使用C++代码的版本,但是现在用户只有百分之40%左右使用最新版本的falsh而且这个版本的flash并没有在手机端使用,我之前就说过,要挂接脚本需要C++或其他高级语言将图像引擎封装后接口回调给脚本语言,一个60%用户都不能用底层谁敢使用?

还有SQLite……你知道RM为什么要用序列化对象而不用数据库嘛~因为如果你真的数据是保存在数据库里的,那么用户也必须要安装数据库才可以读取数据库内数据,也就说你玩家玩一个游戏就得先安装一个SQLite数据库……

所以现在也没有人用FlashBuilder作为游戏客户端游戏开发引擎使用,更何况游戏开发工具?

再说说你说彩虹的问题

彩虹·红版是我一人力开发的文字引擎,并且也成功移植安卓,橙光使用COCOS2D作为引擎,已经在IOS、Android测试通过
作者: qq6928233    时间: 2013-2-3 23:01
七夕小雨 发表于 2013-2-1 19:12
那你的意思是IOS不支持2D图形和数据库?
RM的2D图像引擎也是使用MFC将图像封装完毕然后将接口回调给RUBY ...

1、flash可以做2D,还可以做3D并且不需要插件
你想实现什么功能就能实现什么功能。就算有这些杂七杂八的异步同步也一样可以实现我们想要的功能。
现在已经有几款3D的flash页游了,flash公司也说为了不跟html5正面冲击,以后flash的方向专门转向为游戏制作提供服务了。

2、flash可以直接编译为安卓、苹果、黑莓系统这三个平台上运行的版本,并且不需要客户额外安装flash插件,程序运行后自动布置好环境并启动。

3、SQLlite是一个内存型数据库,就是数据存储在内存中的数据库。不需要启动额外的服务,不需要添加额外的文件,不需要TCP连接。更新数据库就是更新内存。也就是说根本就不用客户安装什么数据库服务什么的东东,更不用说效率的问题,操作这个数据库=读写内存。这是一个[开源]的轻量级数据库,支持嵌入任何开发环境,这个数据库存活在你的软件的内存中。可以直接嵌入你的exe程序中。安卓默认支持SQLlite,大部分安卓软件使用的数据库都是SQLlite。
作者: qq6928233    时间: 2013-2-3 23:35
七夕小雨 发表于 2013-2-1 19:12
那你的意思是IOS不支持2D图形和数据库?
RM的2D图像引擎也是使用MFC将图像封装完毕然后将接口回调给RUBY ...


使用flash只用播放mp3?

你还在用flash吗?

你早就out了

建议你用用flash吧,保证可以播放wav,ogg等


当然,此flash非彼flash,它有两个名字,另一个名字叫flex

他的由来是:

flash公司想,程序员为什么不能把它的程序搬到网页上来?

于是他们开发了flex,也就是说你exe程序可以实现的功能,flex都能实现!

播放wav,ogg等就更不在话下了。

同时flex跨越安卓,苹果,黑莓三个平台。

也就是说你不用修改你的源代码,只需要写好一份代码,就可以编译出三个平台上的程序。

flash和flex的区别是什么?

答:flash更适合做小游戏和动画。

flex更适合做应用程序和2D、3D游戏

作者: qq6928233    时间: 2013-2-3 23:55
七夕小雨 发表于 2013-2-1 19:12
那你的意思是IOS不支持2D图形和数据库?
RM的2D图像引擎也是使用MFC将图像封装完毕然后将接口回调给RUBY ...

多媒体引擎(图像+音乐) + 文件管理系统 + 游戏逻辑 + 交互式界面 ≈ 游戏引擎

文件管理系统?实在是太可笑了。数据库就是数据库,它从来没有这样的名字。更不可能会有这样的比喻。就算你找遍所有的资料和百度百科也不能发现有人把它说成文件管理系统。
交互式界面?只有给予用户的前端才用这个名字吧。可是这里说的是给予用户的代码编辑器,简称IDE。根本就没有交互。记事本也可以写代码,你让用户对着记事本交互?
作者: 七夕小雨    时间: 2013-2-4 14:29
qq6928233 发表于 2013-2-3 23:55
多媒体引擎(图像+音乐) + 文件管理系统 + 游戏逻辑 + 交互式界面 ≈ 游戏引擎

文件管理系统?实在是太 ...


…………我已经说过了!RM是序列化文件,不是数据库!

再者,我从来没有说过数据库 = 文件管理系统,你非要画等号,是在秀下限还是要自黑啊?

而且数据库是数据管理的高级阶段,它是本来就是由文件管理系统发展起来的,大学的课本你可以回去好好翻翻。

数据库具有数据共享的特点,数据库中的数据是为众多用户所共享其信息而建立的,已经摆脱了具体程序的限制和制约。不同的用户可以按各自的用法使用数据库中的数据;多个用户可以同时共享数据库中的数据资源,即不同的用户可以同时存取数据库中的同一个数据。数据共享性不仅满足了各用户对信息内容的要求,同时也满足了各用户之间信息通信的要求。

这是是序列化文件不能满足的,RM没有办法让远程的用户输入账户密码,然后登入自己游戏工程数据库;为什么说是文件管理系统,就是因为RM是管理序列化文件、图像文件、音乐文件的文件管理系统,并没有数据库。RM的数据库,充其量是个序列化文件编辑器。

另外第二点……说明了LZ确实没有认真学好功课,希望你能谦虚学习,等你真正有点学识就会发现自己现在争论笑点很多……

交互式是指,人机交互是指人与计算机之间使用某种对话语言,以一定的交互方式,为完成确定任务的人与机器之间的信息交换过程。基于此,为达到人机交互目的而为机器所编写的程序称为交互式。

所以即使是DOS界面也是拥有交互式的,你输入一条DIR指令(交给DOS),DOS系统返回给你当前路径的文件结构打印在屏幕上(电脑交给人信息),就像你说的记事本一样,你在那里敲字,如果不是交互式的(记事本完全不理你,不在窗口活动范围刷新文字),你根本就看不到电脑屏幕上的字。

另外IDE(Integrated Development Environment)是指集成开发环境,并不是LZ所说的“代码编辑器”
可详细参见百度百科 http://baike.baidu.com/view/14867.htm



你说你Flex能播放wav和ogg是吧~呵呵,那你建立一个flex工程,把下面的地址改成你自己电脑上面有的wav文件试试,看看能不能播放。
  1. var sound:Sound = new Sound();
  2. var url:URLRequest = new URLRequest("ftp://xxx:[email protected]/aaa/test.wav");
  3. sound.load(url);
  4. sound.play();
复制代码
好吧~我来告诉你要怎么播

RUBY 代码复制
  1. var sampleRate:int=0;
  2.                         if (waveReader.sampleRate == 44100)
  3.                         {
  4.                                 sampleRate=3;
  5.                         }
  6.                         else if (waveReader.sampleRate == 22050)
  7.                         {
  8.                                 sampleRate=2;
  9.                         }
  10.                         else if (waveReader.sampleRate == 11025)
  11.                         {
  12.                                 sampleRate=1;
  13.                         }
  14.  
  15.  
  16.                         // WRITE SOUNDSTREAMHEADER2 TAG
  17.                         writeRecordHeader(defineSound, 45, 4);
  18.                         writeUBits(defineSound, 4, 0);
  19.                         writeUBits(defineSound, 2, sampleRate);
  20.                         writeUBits(defineSound, 1, sampleSize);
  21.                         writeUBits(defineSound, 1, waveReader.channels - 1);
  22.                         writeUBits(defineSound, 4, 0);
  23.                         writeUBits(defineSound, 2, sampleRate);
  24.                         writeUBits(defineSound, 1, sampleSize);
  25.                         writeUBits(defineSound, 1, waveReader.channels - 1);
  26.                         defineSound.writeShort(0);
  27.  
  28.                         // Write The linkage Class
  29.                         for (var m:int=0; m < linkageClass.length; m++)
  30.                         {
  31.                                 defineSound.writeByte(linkageClass[m]);
  32.                         }
  33.  
  34.                         // WRITE DEFINESOUND TAG
  35.                         writeRecordHeader(defineSound, 14, waveReader.bytes.length - 44 + 7);
  36.                         defineSound.writeShort(1); // Sound Id
  37.  
  38.  
  39.                         var compression:int=0; // only raw sound for now
  40.                         defineSound.writeByte((compression << 4) + (sampleRate << 2) + (sampleSize << 1) + waveReader.channels - 1); //Sound Format + Sample Rate + SampleSize + Channels



呵呵为什么一句Audio.BGM_Play就可以播放的wav,为什么非要用二进制流来解码?

另外,我可以告诉你根据ADOBE官方swf文件格式对SoundRate的描述:



也就是说,只能标识5.5khz、11khz、22khz、44khz的rate速率。
也就是说~当你的音频是不是5.5khz、11khz、22khz、44khz 根本无法写入SWF,也无法生成EXE
  1. 1、flash可以做2D,还可以做3D并且不需要插件
  2. 你想实现什么功能就能实现什么功能。就算有这些杂七杂八的异步同步也一样可以实现我们想要的功能。
  3. 现在已经有几款3D的flash页游了,flash公司也说为了不跟html5正面冲击,以后flash的方向专门转向为游戏制作提供服务了。

  4. 2、flash可以直接编译为安卓、苹果、黑莓系统这三个平台上运行的版本,并且不需要客户额外安装flash插件,程序运行后自动布置好环境并启动。

  5. 3、SQLlite是一个内存型数据库,就是数据存储在内存中的数据库。不需要启动额外的服务,不需要添加额外的文件,不需要TCP连接。更新数据库就是更新内存。也就是说根本就不用客户安装什么数据库服务什么的东东,更不用说效率的问题,操作这个数据库=读写内存。这是一个[开源]的轻量级数据库,支持嵌入任何开发环境,这个数据库存活在你的软件的内存中。可以直接嵌入你的exe程序中。安卓默认支持SQLlite,大部分安卓软件使用的数据库都是SQLlite。
复制代码
1、我在给你说的IOS和RM的底层是如何实现2D图像算法与脚本交互的,并没有和你讨论具体的图像功能

2、我没有说过FLASH不能夸平台

3、window并没有默认支持的SQLite,window版本你的SQLlite部署较麻烦,即使用eclipse作为编译环境,也需要虚拟机支持,当然你想用手机做游戏我也没什么好说的。

另外,你怎么不和我扯脚本的事情了?

flash图形引擎+SQLlite内存数据库+Lua脚本+RM的IDE界面的加强版=新RM(手机开发版)

你的引擎等式还有Lua脚本呢啊,少一项就不成立了啊。


另外,我也没有和你非要争FLEX好还是不好,FLEX是针对WEB开发极其强大引擎,但是它确实不适合做单机游戏的引擎,我也对LZ说了,他到底可行不可行,你自己做做就知道了,我想有LZ想法的也不止一个人,但是却没有用FLASH作为多媒体引擎来做单机游戏开发引擎使用的例子,为什么呢?FLASH开发成本低廉,学习速度快,封装性强,但是目前也只有网页游戏和SNS社区用它来开发,为什么使命召唤、生化危机、鬼泣不使用FLASH引擎开发?因为它并不是适合,由于FLEX是针对WEB平台制作的,所以本身就没有粒子系统,3D光影追踪,雾化贴图,等高端渲染功能。手机端也是一样,高级图像渲染都是使用OpenGL渲染完成,使用NDK编码,可以将画面、图像效率优化到极致。所以为什么手机端极品飞车、地牢猎人等不适用FLASH作为游戏开发引擎呢?也一样拥有3D渲染的FLASH为什么不被选择?因为FLASH本身对手机的硬件支持也没有任何接口可以实现,比如重力感应,陀螺仪,多点触控。最后还是要说,FLASH改变了世界,几乎现在上网离不开FLASH的,但是凡事都有适合不适合的问题,就好比一只猴子,喜欢香蕉,只要给它香蕉就会开心的跳起来,但是你一直给它苹果,最后它也没跳。我相信很多人也是尝试过FLASH作为单机游戏开发引擎的,但是就和上面的例子一样,给它(单机游戏引擎)一个苹果(FLASH)发现不跳,然后就不给了,换一个香蕉试试(OpenGL或DX)咦跳了,然后就把这种事情作为解决方案保留了下来。

最后,我们只是在讨论解决方案的可行性,何必这么激动?
作者: 囧小杰    时间: 2013-2-4 14:48
纳尼,安卓!!!!!!最好弄安卓平板电脑的
作者: 幽兰戴尔    时间: 2013-2-4 16:17
本帖最后由 幽兰戴尔 于 2013-2-4 16:20 编辑

专业的讨论我肯定插不上嘴。
至少我还没掌握如何轻松甩出几千字专业术语的方法……
《永夜》来源于RM,更在其基础上进行了拓展。但是地位并不高于普通RM游戏。
煞有介事地围绕市场、产业链、高端技术的话题来讨论一款游戏,只是在拉远大家的关系。
当初这款游戏的策划启动之时,就注定会与66RPG上大多数自娱自乐的小游戏划清界限。
是规模庞大、系统繁杂?还是利润可观、市场潜力无限?
制作一款商业游戏,也并不是什么高尚的事业。
“梦想世界,在你手中”,也许没有人希望一帮高高在上的大神们引领自己实现梦想世界。
大家未必会依赖论坛,而论坛失去了人们的支持就必死无疑。
未来,靠自己开辟。每个人都有自己的RM世界。
这么一想,无论口碑还是盈利都无足轻重了。
作者: lixiaoliang7    时间: 2013-2-4 18:03
这口水仗打的…实力悬殊,好没意思。
作者: ConradG    时间: 2013-2-8 01:07
{:2_254:}曾经尝试过用Flex做桌面软件的表示就目前而言依然无比蛋疼……




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1