Flash游戏开发

一,概述

Flash是美国着名的多媒体软件公司Macromedia开发的矢量图形编辑和交互式动画制作软件。该软件的功能十分强大,在网页设计和多媒体制作等领域得到了广泛的应用,已经成为制作网络互动游戏的标准软件。Flash从Flash 4.0到Flash Professional 8,随着Flash技术的发展,Flash的功能越来越强大,使得制作较为复杂的互动游戏成为可能。由于Flash互动游戏能够满足网络媒体的传输需要,越来越多的传统游戏开发人员转为Flash用户,广大闪客为了兴趣爱好也来制作Flash游戏娱己娱人,同时,商家把Flash互动游戏作为新产品推广和营销的重要手段。

二,Flash设计游戏的优势与弱点

优势:

1.矢量图形绘制,放大不失真

2.文件量小,适于网络传输

3.跨平台、跨设备,具有良好的富媒体客户环境

4.日益强大的ActionScript,交互性更好

5.丰富的媒体支持功能,使产品更美观

6.流式播放,下载速度快

7.图形界面,易学易用

弱点:

1.对于复杂图形,运算速度慢

2.位图、三维图像及视频播放能力弱

3.与硬件及操作系统沟通能力差

4.开发团队合作分工不方便

三、Flash互动游戏设计流程

1.制定游戏规则:

游戏的目标受众的定制决定了游戏的目的和难易程度。大部分网络游戏分为益智消遣类和产品推广类,对于前者,游戏的定制可难可简,界面也可以根据游戏题材灵活设计;对于后者,游戏规则越简单越好,讲究趣味性,在游戏过程中使玩家接触品牌、了解产品功能,界面设计应风格清新、美观,以达到产品宣传和推广的目的。

游戏中的敌我角色设计是促使玩家感兴趣的重要方面。通过对游戏主角的激励,使玩家觉得自己就是“英雄”,是“侠客”,可以经过努力增长才智、功力,战胜敌人和困难,拯救人类,带来祥和的生活。对于敌人角色的设定,初始状态既不能太难又不能太简单,太难玩家不容易上手,太简单又缺乏挑战性。随着玩家的深入,游戏适当增加难度,比如增强敌方攻击的复杂性,加快敌方进攻的速度,加强敌方的生命值等,玩家只有不断努力,提高游戏技能才能争取更好的成绩。

游戏与玩家的交互设计在游戏定制中起到举足轻重的作用。交互设计应规划和描述玩家和计算机双方面的行为方式,以及传达这种行为的有效形式和方法,从而使玩家和游戏、玩家和计算机达到最直接、最简便的交流。落实到具体的操作设计,包括:玩家使用按键或鼠标的行为设计、游戏界面中的按钮和热区设计、奖惩画面和音效设计等。

游戏的奖惩措施是游戏与玩家交互性的体现。玩家通过阶段性的努力可以获得提高的积分排名、先进的装备和增强的生命值等奖励。在Flash互动游戏设计时,需要考虑“成功”、“进阶”、“排名”、“失败”的游戏画面和音乐应对玩家有所激励。

游戏的智能主要是指“通过编写程序控制游戏环境的变化或者条件的变化,来增加游戏的难度与可玩性”。游戏的智能一般通过具体以下几个方面体现:预测玩家动作,由游戏程序响应玩家的各种鼠标、键盘输入,并及时做出各种反应;选取最短路径攻击,根据游戏主角和追踪物体的坐标,判断敌我之间的最短距离,改变追踪物体运动方向,配以不同的运动速度或曲线方程使其流畅地向游戏主角运动;设计追踪物体的运动规律,以特定时间触发,使追踪物体在一定区域内沿有规律的路径移动,玩家只有掌握了敌方的运动规律,才能避实就虚成功闯廷. .在进行敌方逃跑、追踪物体与游戏主角碰撞的设计时,都需要使用hitTest()函数,一旦敌方视线接触到游戏主角则反方向逃窜,一旦追踪物体与游戏主角发生碰撞就发生爆炸或游戏阶段结束。

游戏的初始化与重置是游戏设计流程中一个重要的部分。游戏初始,在游戏规则介绍后设置Play按钮,同时需要对游戏参数进行初始化;在Game Over或win界面中设置Replay按钮,同时需要对游戏参数进行重置,以便玩家重新开始游戏。当玩家获得阶段成功进阶以后,某些参数需要重置,某些参数需要累加,以便玩家继续游戏。

2.准备游戏素材:构思好游戏规则的同时,需要对游戏素材进行收集、整理、制作、编辑。游戏的素材主要包括图形、图像、视频、声音、程序等。

由于Flash本身就是图形制作软件,所以可在Flash中绘制大部分所需图形,但是Flash在许多图形绘制功能上不如专门的图形软件如Illustrator、Freehand、Coreldraw等强大。好在Flash有很好的兼容性,能够实现软件之间的有效配合,设计人员可以在其它软件中做好图形后导入到Flash中使用。Flash对图像的编辑非常有限,一般先在图像处理软件如Photoshop中处理好后导入。由于网络游戏是通过显示器与玩家交流的,所以图像分辨率设成72ppi,RGB色彩模式即可,使图像文件在保证良好的显示质量的前提下尽可能小。否则,大而不当的图像不仅不会明显提高玩家的视觉感受,反而降低了游戏的网络传输及下载速度。

随着Flash版本的提高,Flash对视频的导入越来越方便。Flash 6或更高版本中内建Sorenson Spark编解码器,可以对视频的图像质量、关键帧间隔、色彩、尺寸、视频音频轨迹、压缩方式等方面进行调整。也可以只把视频文件作为外部链接,使用QuickTime打开。

Flash可以实现对声音导入并进行一定程度的编辑,可以导入的声音文件有wav格式、mp3格式、aif格式、au格式等,能够实现在声音编辑面板调整声音的左右声道、声音的淡入淡出、终止一段声音等操作。在Flash Public Setting发布面板,还可以对声音进行一定程度的压缩,从而减小Flash文件量。为了控制文件量,通常把一段与游戏适合的声音循环播放,玩家通过音乐开关来控制是否停止,也可以设计多种音乐并配以按钮供玩家选择。音效则是当事件触发响起,给玩家以提醒和警示。

3.游戏的测试与发布:游戏程序编写基本完成以后,需要对程序反复调试。尽量组织多人全面地测试,查找程序中的Bug,测试游戏性能。由于键盘和鼠标是玩家控制、操作游戏的主要途径,按键及其组合是否触发方便,玩家触发后的游戏反映动作是否流畅等,都会影响玩家与游戏的交互性,影响玩家的主观感受。程序员可以编写程序使玩家自定义按键,以满足玩家使用键盘的习惯。测试游戏的播放速度也是非常重要的,在进行界面设计时,为了提高游戏的播放速度需要考虑以下几个方面:减少复杂图形的使用或把复杂图形转换为图像;减少图形中的曲线和节点、渐变色、透明色;保证导入的图像或视频文件在满足可观性的前提下尽可能小;设置声音为单声道或降低采样频率,采用Mp3压缩等。Flash游戏可以发布为swf格式、html格式、mov格式、exe格式等,以上的文件格式都能够保持良好的交互功能,并可以使用相应的Flash Player、QuickTime等播放器或浏览器进行操作。

四、Flash互动游戏制作的关键技术

1.Flash元件:图形Graphic、影片剪辑MovieClip和按钮Button。由于反复调用元件不会明显增大文件量,所以对于不止一次使用的对象应将其转换为元件存于库中。Graphic元件在ActionScript中既不能控制其它动作也不能被控制,所以经常把静态的图形或图像转换为Graphic,用于背景或二维动画中角色的拆分动作。MovieClip元件在场景中有自顾自地循环播放特性,MovieClip影片剪辑的事件可以触发或调用其它动作的执行,MovieClip影片剪辑也可以被动态地改变某些参数和属性。Button按钮有四态,前三态分别是光标不在按钮上的up状态、光标滑过按钮时的over状态以及光标在按钮上单击时的down状态,这三态为按钮的响应外观。最后一态是hit状态,即鼠标事件的响应区域,是按钮起交互作用的关键,游戏中常利用hit响应区域来设置隐形按钮。

影片剪辑MovieClip和按钮Button是Flash互动游戏开发中不可缺少的重要元件。

2.Flash组件:组件是由专业人员构建、开发和测试的包含参数的复杂的影片剪辑,其中的参数可以用来修改组件的外观和行为。每个组件还有一组属于自己的方法、属性和事件,它们被称为应用程序程接口(Application Programming Interface,API)。组件具有通用性,程序员可以使用相同的接口控制组件,通过组件检查器或ActionScript实现组件和外部信息交换数据;接收和处理键盘操作,也可以控制组件深度和外观。Flash MX 2004或Flash MX Professional 2004中包含的组件不是fla文件,而是SWC文件,SWC是用于组件的文件格式。库项目中的影片剪辑可以被预编译成swf文件,从而缩短影片测试和发布的执行时间。将SWC文件拷贝到First Run\Components目录后,该组件便会出现在“组件”面板中。使用组件进行游戏开发,可以使程序设计与软件界面设计分离,提高代码的可复用性。

3.Flash函数:“在Flash中,函数是指在动画中任何地方都可以重用的ActionScript代码块。” Flash函数包括内建函数和自定义函数。游戏中常用的内建函数有:获取和设置属性函数setProperty()和getProperty();随机函数random()和取整函数floor

();设置问隔时间函数setInterval()等。Flash中自定义的普通函数必须先定义函数再调用函数,尤其是当函数写在一个影片剪辑中却要在外部调用的时候,一定要等到影片剪辑加载完成后再调用;定义事件触发函数是Flash MX新增的功能。程序员可以在时间轴上定义影片剪辑或按钮的事件触发函数,比如:当一个影片剪辑或按钮被按下时运行此函数,而不必在影片剪辑或按钮上分别定义,给管理程序带来了很大的便利性。总之,程序员将反复使用的代码块定义为函数,不仅会提高程序的可读性、重用性,简化了代码编写工作,而且方便了脚本调试,提高了编程效率。

参见

OpenSpace|开源FLASH游戏引擎

Flash网络游戏开发入门经验共享|

http://www.codes-sources.com/gma/source/dofus 几个类Dofus MMRPG的FLASH游戏源码,可惜无法获得下载权限帐号 Yet Another Dofus Hacking Thread

ActionScript 3.0 游戏开发之打气球 PART(一) ActionScript 3.0 游戏开发之打气球 PART(二)

经典自定义主角头像游戏

Frostwinds多玩家在线角色扮演游戏

很强的FLASH 自杀RPG游戏

DOFUS职业介绍与图表 等其它游戏资料 Dofus中文网

商业化的免费MMORPG Dofus

很酷的Flash MMORPG

苹果核战ol APPLESEED THE ONLINE 已关闭

网页网游创世之光 test47571/kX7p0Z8

多玩网小游戏比赛

猫游记

XBA篮球经理

梦境家园Flex在线学校江湖

Second Life(二度人生)的学校

What About Flash? Can We Really Make Games With It?

FLASH游戏开发讲座

Flash Game MetalWarriors

Flash RPG Maker v0.1

flash RPG game:Match Quest

FLASH开发的仿雷神之锤多人在线游戏

坦克大战FLASH版

挖雷拼图贪吃蛇Flash游戏

278736_flash_rpg_creator_final.sw.swf 1255k

DayandNight.swf 1652k

Flash中游戏与动画的制作.pdf 100k

Flash互动游戏.pdf 62k

Flash互动游戏的开发与设计.pdf 213k

Flash开发益智类游戏关键技术的研究.pdf 194k

Flash游戏策划PDF_不重要的.rar 4093k

GIRL化妆DIY.swf 1826k

HIRO_RPG.swf 2507k

MU_奇迹宝宝1.2之疯狂改装备.swf 255k

MU之点石成金迷你小游戏.swf 1044k

attack.swf 463k

attack2.swf 463k

duowanxyx.exe 432k

flash-slides游戏开发及样例.rar 4913k

mmhuazhuang.swf 1826k

mu_flash.swf 2877k

piano.swf 1590k

五分钟内自杀main.swf 636k

使用Flash开发战机游戏.pdf 976k

回合制Flash游戏开发的通用框架.pdf 197k

基于Flash的网络游戏传输模式.pdf 290k

失落的奇迹之最后的法师.swf 3521k

奇迹_美女诱惑版.swf 1437k

打造自己的Flash游戏.pdf 624k

武林外传.swf 2573k

用Flash开发对战游戏.pdf 162k

用Flash设计制作教学游戏软件的技术要点.pdf 127k

答题对战ses.swf 367k

重温红白机旧梦—轻松制作Flash赛车游戏.pdf 107k