制作fc游戏的gg码的教程?

FC标题修改教程小超超编辑
我们都掌握了一点点修改的小技巧,但是却不会修改标题,看着高手们都把游戏改成自己的名字,很羡慕吧,其实修改不是很难的我们需要一个模拟器FCEUX(去百度搜)有了这个,我们就可以开始改标题了用模拟器打开游戏(拿松鼠大战2为例)在适当的地方(要修改的)按下暂停(pause)接下来我们调试中的ppu查看器我们会看到一堆乱码吧!但是不要着急,我们一起来找规律
& 果果文库所有资源均来源于互联网,仅供网友学习交流,若侵犯了您的权益,请联系我们予以删除。
6970&&人浏览
9332&&人浏览
1984&&人浏览
11302&&人浏览
10137&&人浏览
3515&&人浏览
4746&&人浏览
9242&&人浏览
12922&&人浏览
15033&&人浏览
11616&&人浏览
10264&&人浏览
10566&&人浏览
5090&&人浏览
12496&&人浏览
本文标题:FC标题修改教程小超超编辑 链接地址:
copyright@ 2013- Inc. All Rights Reserved 果果文库 版权所有 联系站长: ; 经营许可证编号:浙ICP备号终于考完期末了,以后就开始假期了,闲暇的时间也估;本来之前就写了部分的,可惜电脑中毒,重弄系统,忘;昨天看到好友SHZkkqq说我太谦虚,其实感觉太;好吧,开始吧,说的这章要给大家一个完整的NES游;下面你看到的是一个创建游戏的整个过程,我将会从C;一下所讲到的所有工具包括代码和资源都可以在我的网;首先安装CC65(官网http://www.cc;安装完CC
终于考完期末了,以后就开始假期了,闲暇的时间也估计多了,可以写东西的时间估计也多了,当然只是估计而已,也可能不上课期间忙。管它呢,离搬迁还有一两天,先写完这这最后一章再说了。
本来之前就写了部分的,可惜电脑中毒,重弄系统,忘了备份,损失啊,那多少个日日夜夜积累下的代码,全部重写吧。在此也给看到这篇教程的朋友们一个提醒,小心防毒、小心备份。
昨天看到好友SHZkkqq说我太谦虚,其实感觉太谦虚很不恰当,因为知道自己懂的太少了,所以好多地方都不敢妄加评论,我怕误人子弟,希望大家在看到我的教程中的错误是可以给我提出,有错误才有进步嘛,错不可怕,就怕不知道自己错了,不是吗?
好吧,开始吧,说的这章要给大家一个完整的NES游戏创建,这游戏没有大家想象的那么刺激,好像只能够证明CC65还能写游戏,希望大家不要抛砖。
下面你看到的是一个创建游戏的整个过程,我将会从CC65的安装开始讲。
一下所讲到的所有工具包括代码和资源都可以在我的网盘/?trbbadboy下载到,当然有些东西你可以去官网或者工具编写者的空间下载最新版本。
首先安装CC65(官网http://www.cc65.org/ FTP下载目录ftp://ftp.musoftware.de/pub/uz/cc65/),由于我们只是用来编译成NES的文件,所以安装选项中只选对NES的支持就够了。如图:
安装完CC65就可以编译C文件了。假设我们自己写了一个C代码文件,文件名为“helloworld.c”,代码为:
#include &conio.h&
void main()
cprintf(&OK!&);
我们的编译命令可以这样写:
cl65 -t nes -o helloworld.nes helloworld.c
意思是编译helloworld.c文件,使用的编译模式为nes模式,最终生成的文件名为helloworld.nes。
用模拟器打开它就可以看到屏幕上显示“OK!”,更详细的可以看我前面的教程。 好吧,开始我们的游戏吧。
首先要大郅的构思一下我们的游戏的大致界面,我们想要的大致是可以移动一个主人公,他拥有推箱子、放炸弹的能力,他的任务是摧毁箱子获得通往下一关的钥匙,仅此而已。如果你还想更多一点的话,可以让他在某一关开始会遇到敌人,或者炸开箱子后遇到敌人,或者很有诗意的最后救出了公主等等。鉴于时间和能力,再说也要给大家修改的空间,我就不打算实现那么多功能了,其实也不知道CC65所支持的40k的NES允不允许我们再去弄那么多了,这也是一个问题。
要有主人公,当然要先让主人公有个人样(哦,当然主人公也可以是动物,当至少也要先有个样子),所以先画主人公和周围场景吧。
打开 yychr,导入我之前提过的“标准ascii.chr”这个是维京猎人给我的,觉得里面的字体好看就定为自己的标准了,我不强求大家遵守,只是为了表述方便,我一直在以它为例。先把它另存为一下,以免之后的修改破坏了“标准ascii.chr”,我们另存为“mg.chr”吧(migong的缩写,英文不好),记得把它存到待会我们要保存代码的文件夹下面。画面如下:
然后发挥自己的想象力画一下我们的主人公及其他相关的图块吧,顺便感谢一下风竹丽影,因为我的图片全是她抽空帮我画的。(主人公是打算使用8*8,这样易于实现,其他的地图也是由8*8的图块拼接成的)
最终的画面:
补充一下:
你可能会遇到导入chr文件后画面上也不显示任何东西,那可能是调色没弄对,你自己再配一下色就可以了。
Yychr的调色不会使用保存,希望知道的朋友可以给我提示,谢过。
更详细的使用见我前面的教程。
有了图块,我们需要还需要制作游戏开始的界面,也就是我们的logo,游戏时的框架(用来组织游戏在屏幕上的显示),以及游戏结束时的GAME OVER画面等等。于是我们需要用到另一个工具了,维京猎人的“FC专用地图编辑器”,目前的最新版本是v2.5,在此谢过猎人。 先弄我们的logo吧,打开“FC专用地图编辑器”,在菜单――字模――导入字模中导入“mg.chr”,设置一下配色,拼成你想要的logo之后保存为“mglogo.nmr”如图:
用同样的方法创建出游戏框架“mgframe.nmr”,如图:
暂停时的画面“mgpause.nmr”,如图:
游戏结束画面“mgover.nmr”,如图:
完成这些资源后,我们开始写代码吧,我写这个游戏的时候是一部分代码一部分资源的完成的,但是我我希望大家在写游戏的时候先整体构思后,准备好相关的资源在开始写代码,细心的朋友可能会发现我的字模文件很没有连贯性,就是因为想到一部分弄一部分的后果,希望大家吸取经验教训。
给游戏想一个拉风的名字吧,原本想写的是迷宫,后了又改了,改的迷宫不像迷宫,泡泡堂不像泡泡堂,随便想一个名字吧,叫“迷宫不迷”,也希望FC对于大家不是迷,希望大家精通FC,本人的小小愿望,呵呵。
代码部分我已经很详细的写了注释了。大部分都可以看懂了,又因为百度空间的文章长度限制,我不可能一一讲述了。我挑几个地方讲讲吧。不懂的欢迎E-Mail我。
1、 头文件包含
你可能会看到如下的预处理命令:
#include &mylib.c&
//包含我的库
#include &mglogo_dat.h& //包含logo名字表信息
#include &mglogo_col.h& //包含logo调色板信息
#include &mgframe_dat.h& //包含框架名字表信息
#include &mgframe_col.h& //包含框架调色板信息
#include &mgpause_dat.h& //包含暂停名字表信息
#include &mgsp_col.h&
//包含精灵调色板
#include &mglogosp_col.h& //包含logo时精灵调色板
#include &mgover_dat.h& //包含game over名字表信息
#include &mgover_col.h& //包含game over调色板信息
三亿文库包含各类专业文献、高等教育、生活休闲娱乐、专业论文、外语学习资料、中学教育、幼儿教育、小学教育、10FCNES游戏开发教程(CC65版本)(十)(一起FC)10等内容。 
 1FCNES游戏开发教程(CC65版本)(二)(系统库函数) 该系列教程从0开始,只有你掌握了C语言基础知识就可以编写NES小游戏。该系列教程从0开始,只有你掌握了C语言基础...  FC(NES)游戏修改基础教程 14 号拐角 一、序言在童年时期,很多人或许对于 FC ...NES之 CC65开发 65页 免费
NES修改教程 10页 免费
任天堂NES模拟器如何...  用iPhone玩NES游戏图文教程_计算机软件及应用_IT/计算机_专业资料。用 iPhone 玩 NES 游戏图文教程用 iPhone 玩 NES 模拟器游戏,回味经典。许多用户在使用过程中发...  fc nes 游戏 西游记1 最后一个迷宫攻略_计算机软件及应用_IT/计算机_专业资料...9.直左走 10.进门,老大出现。。。这个老大很傻 b,很好打,打死一个又出来一...FC游戏编程教程
FC游戏编程教程
作者:维京猎人
FC就是任天堂出产的红白机的别称。在欧美的机型是灰白两色的,所以欧美称之为灰机或NES。
本教程目标:
弄明白FC编程的基础。
弄明白学FC编程的步骤,参考书有哪些。
弄明白FC编程用什么编程语言和工具。
弄明白FC游戏有什么要素。
弄明白FC游戏的流程如何。
弄明白一些简单的FC游戏是如何运行的。
弄明白一些简单的FC游戏是如何构成的。
***********************************************************************************************
*******************&&&&&&&&&&&&&&
开始&&&&&&&&&&&
&&&&&&&&&&
*******************
***********************************************************************************************
说明一下,过了第一关和第二关之后,就可以开始学习FC的相关知识了。不用要逐关通过的。可以跳跃式过关。
第一关,数制,进制:
对于半路出家的人来说,电脑编程基本会了,进制当然也是早就会了,可以跳过,学下面的。
对于纯正的菜鸟,只会用QQ聊天,只会打字,或者会搞点图片这些与编程无关的功夫,进制是必修的。
要学哪几种进制呢?电脑编程就用到了2进制和16进制。
在分析程序,分析端口的时候就会用到2进制。
其实可以全部用2进制,但是非常麻烦,于是在编程上我们用更容易明白,更方便的16进制。
每4位2进制码就是1位16进制码。等于是缩短版。
参考书:这个太好找了,到处都有,自己找吧。
《数字逻辑》(第一章 基础知识),欧阳星明 著,华中科技大学出版社。
《数字电子技术》(第一章 数制与编码),江晓安
著,西安电子科技大学出版社。
名词,概念
2进制码,16进制码
过关标准:会用笔算互换10进制,2进制,16进制。会用与运算,并运算。习惯用16进制思考。
***********************************************************************************************
第二关,简单的电脑编程:
现在,很多中学开始教学生BASIC了。甚至小学也会让优秀的学生学BASIC。我中学时,学校让优秀的学生去学电脑,当时学的是LOGO和BASIC(我猜的)。我不是优秀学生,不能去学。
不管学什么编程语言,只要知道三个类型的命令就行了。1赋值,即”=”;2判断条件,即”if”;3跳转,即”goto”或”return”
这个要会变通的,会活学活用。不同的编程语言,文字上会有不同,现有的程序语言都是用这3种方式组合而成的。
初学者我建议用在电脑的DOS模式下编程,原因是这样比较纯粹。
DOS(或者说MSDOS)我推荐用Q-Basic。参考书《跟我学Quick
BASIC》陈宗周,刘秉刚 著,云南大学出版社。
名词,概念
编程,命令,赋值,判断条件,跳转
学会了编程的朋友,我建议大家多用子程序,不要用goto。这对可读性有帮助,整个程序的结构会更好,方便以后修改。
如何来理解编程呢,我认为就是给电脑一序列的命令,电脑按步执行。
除非是写错了;电脑会一直执行下去。另一种情况是命令在文字上没错,可是编写不合理,造成电脑内部的硬件出错。
当然现在很多人学VB,拿VB作为入门也是可以的。只是个人认为在完全没有基础的情况下,接触视窗系统会令人沉迷于控件,而忘记了编程的核心-“算法”。
VB的参考书,非常的多,不用列举了,可是全部是入门级别的书,天下一大抄。不多说了,买两三本互补不足就是。
VB参考书《(译林)VisualBasic 6.0程序设计》[美]Scott
Warner著,人民邮电出版社。
另外,很多人已经学会了C,(在学会basic的基础上学C,是比较快学懂的。C的精髓就是指针,会了指针,C也就会了。)那可以跳过本关了。
C语言的书,不光多,同时好多旧书写得非常深入。新版的C都不行。同时现在到了C这个级别,就有VC,VC++,JAVA等等了。
C参考书《C语言高级实用教程》尹彦芝 著,清华大学出版社。
高级语言学多了,对FC也不会有帮助的。因为FC更多的是用低级语言编写的。FC局限性非常大。
过关标准:会灵活使用嵌套循环和嵌套条件语句。了解递归算法。看代码能跟踪变量值。能用黑箱测试调试代码。
***********************************************************************************************
第三关,算法,数据结构
很多人会卡在这里,只有精通数学和编程的人才能过关。到达这关的人,在网络上已经不能算是菜的了。
在学习编程的时候就会接触到算法。简单来说,就是计算的方法。不要看轻了计算,这里所说的计算是包括了集合论,代数系统,图论,逻辑命题理论在内的方法论。我的贪吃蛇就是用算法将一个得分的百,十,个位分离出来,一个一个显示。
《离散数学导论》徐洁磐 著 高等教育出版社。
深入研究算法的书:
《编译原理》,《形式语言、自动机和语法分析》
在学习编程的时候会接触到数组,数组就是数据结构的基础。在C语言里还会有结构类型。那就完全可以实现多种数据结构。包括队,栈,树,堆,这些等等。算法总是依靠数据结构来实现的。我的贪吃蛇的蛇身就是用了“队”这个数据结构。
《数据结构》
**以下是更新**
说起算法让我想起两件事。
一件是程序的可读性和整体流程。
另一件是局部的核心算法。
1程序的可读性和整体流程,我们要用抽象的方法。将整个程序分成几个互不调用的有单独功能的部分。
例如一个计算生肖的程序可以分成:输入,计算,输出。这三个部分。
重点在这里:将它们各写成子程序。主程序上只有调用这些子程序的语句。这样在程序代码的管理上和阅读上都非常方便。到了汇编里面即便是一个简单的功能,例如输入,也得写上几十行。这样的做法是为了以后方便。
2局部的核心算法。我推荐“程序推导”方法。就是以断言保证代码的正确性。同时以断言推导出程序,然后为提高运行效率,进行程序变换。这个方法要先学会逻辑运算和《离散数学》的谓词演算。
程序推导可以参考:
《程序设计方法学引论》陶葆兰 李庆华编著
华中理工大学出版社(这本估计有钱也买不到了)
《程序设计方法学》这个网上有好多不同的版本出售。
这关的参考书开始变得深奥和让人挠头了。你可以自己找书看,我只是给点参考,不一定看这几本,看同等的书就行了。
先看看这个视频
过关标准:能灵活使用队,链,栈,这些基本的数据结构。
***********************************************************************************************
第四关,硬件知识
前面说过FC是用低级语言编写的。那么就说我们要直接给硬件传数据,也就等于是操纵硬件了。
在BASIC语言和C语言里面,我们通过print指令来显示文字。可是用低级指令就是给一些特殊端口发送屏幕地址,再发送图形块的代号才能显示图形或文字。
呵呵,不要告诉我,你还想用C语言来写FC,也不是因为没有工具,工具可以用CC65,可是C用在FC里面实在是非常的有限。学下来你就知道什么了。
我们要知道有关FC的硬件的大部分。
《》,《》
程序的入口--《》。
Mapper和MMC是什么
如果有门电路和单片机的基础就最好了。
**以下是更新**
门电路的参考书:
《数字罗辑》欧阳星 主编 华中科技大学出版社
《数字电子技术》江晓安 编 西安电子科技出版社
关于FC的硬件
请留意“王让定”教授的文章和书。
还有90年代的任天堂游戏机维修书。这个就真难找了。
过关标准:了解VBlank,中断,Mapper,FC控制端口的用法。
***********************************************************************************************
第五关,CPU和CPU的寄存器,CPU的汇编指令及对应的机器码
FC用的CPU是6502,
那么6502里面有什么寄存器呢,又有什么用呢。
CPU里面是必然有寄存器的,一般都会有几个寄存器的。
6502的寄存器,可以用来记录数据的有3个,就是A,X,Y。当然还有标志位等等。
6502的汇编指令用法(寻址)
汇编是最低级的语言了。汇编的指令分几类,
1传送数据指令,将数据在内存与寄存器之间传送。这个可以达到赋值的作用。
2比较指令、位检测跳转指令和无条件跳转指令。这个可以达到条件判断和跳转的作用。(循环是用条件判断和跳转来实现的)
3数据进栈出栈指令,和子程序跳转指令,这是在高级语言看到的子程序方法,(子程序跳转和返回也就是程序地址的进栈和出栈)。同时还有C里面见不到的中断。
4计算和移位运算指令。这个计算只有加减法,只能算0~255的整数。其它运算要靠自己编程实现。
汇编是不能不提寻址的。
寻址:就是得到数据所在的地址。寻址在FC中总共有十多种。传送数据可对应多达八个寻址方式。也就是对应8个机器码。一半的汇编指令只是一到两种寻址方式的。
C语言的指针就是靠多种的寻址来实现的。
6502的机器码
机器码:就是CPU直接读取并识别的代码。
有的汇编指令对应N个寻址,那么就有N个机器码与之对应;有的汇编指令只有一种寻址方式,那就只对应一个机器码。
另外某汇指令后机要带若干个操作数。识别出机器码之后,CPU就会知道后面有多少个操作数,那就接着读多少个数,读完之后,下一个读的码就会被认为是机器码了。
过关标准:完全学会FC的CPU6502的汇编指令,还了解寄存器和标签位。
***********************************************************************************************
第六关,游戏的流程
如何才能达到游戏的效果?
流程大致分成两种:
1是好像BASIC或者C的编写方法。流水线式,一个工作到一个工作的做。
清屏-&显示图形-&接收手柄信号-&判断手柄操作-&实现操作显示某图形-&发出声效-&然后判断结果-&作出反应-&又回到接手柄信号。
我的贪吃蛇就是用这个流程的,但我没有加声效。由于游戏简单,在手柄操作上不会的不适。
商业的游戏,正规的游戏都不是这样写的。可是如果游戏极简单,同时不带音乐。可以考虑用这个方式。作为练习也是可以的。
2是中断式。FC每隔约2毫秒调用一次中断。(这个间隔的时间由电视信号的制式而定。它跟vblank相关。
FC是电视游戏机,那自然与电视有关。很特技都是因此实现的。)在中断的程序里,实现音乐、读手柄、显示图形。在主程中要与中断的程序交流,协同运行。中断的开头和结尾我们会用到现场保护和现场恢复。在主程序和中断之间要建立公共变量,实现互锁,才能协同远行。参考书《计算机组成原理》(中断部分)
过关标准:能为自己的程序写出流程序图。
***********************************************************************************************
第七关,实施
嘴巴上说得动听不如真刀真枪干一番!
关于游戏里的一些操作的实现方式,这个才真正接触到游戏的本身。
要了解ROM的“文件头”。
你可以用汇编(ASM)或N-BASIC
N-BASIC并不是完全用BASIC语言的。我建议嵌入汇编语言。而日后能力提高了,尽量使用汇编。
过关标准:编译成功一个ROM。
***********************************************************************************************
第八关,音乐引擎
制作完美音效和背景音乐。
别说原创音乐,就是移值人家的音乐也是不容易的。要了解硬件音频发生器,要了解这些硬件的端口用法。
过关标准:能为自己的游戏写出音效。
***********************************************************************************************
第九关,容量不足,
切页,有程序切页和字模切页两种。
Mapper主要就是扩容用的。就是切页。应用Mapper。Mapper总共有256个不同的号,就有256种方式。但常用的就是几种。每个游戏只挑一个mapper用。没有mapper功能就是0号。
程序要配合切页而要改写大部分地址。
过关标准:学会Mapper 76的用法。
***********************************************************************************************
第十关,游戏的构思,
提示:多看一些不同的理论,不同领域的,不同题材的。
例如多种操作变换的实现用上了最早出现的“图灵机”模式,或离散数学里叫同步时序,编译原理里面叫有穷自动机或有限状态机,硬件的书里面叫移位寄存器。
例如一个字符串的识别,用到了编译原理来实现,用上了硬件的优化方法来简化算法。
例如迷宫的AI,用到了数学上的迷宫解题的经典方法,右手贴墙法。或者用水漫迷城的方法来解。
以上说的方法就真的要靠创造力了。
我介绍几本古老的游戏书。我这有,可是以后都找不到了。
《IBM个人计算机的智力游戏》[美]罗伯特J。乔斯特 著 新时代出版社
这本书是讲通用baisc上的,用ASCII码作为图形,设计游戏的书。这个趣味性好强。
《BASIC游戏程序选集》周正明 编 电子工业了版社 1985
这本书也是讲通用basic上的,用ASCII码作为图形,设计游戏的书。这本书的程序虽然是BASIC,可是后面的程序用上了AI。
《趣味电脑游戏程序》王颂赞 费德宝 著 科学技术文献出版社 1992
这本书是讲在中华机或AppleII上用basic编游戏的书。这本书不光说BASIC,还调用了机器码。
我看90年代的电脑杂志,国内的牛人都是basic和机器码混用的。FC听说也是那个年代的。呵呵。
过关标准:写出一个受欢迎的原创游戏。
***********************************************************************************************
&&&&&&&&&&&&&&&&&&&&&&&
本教程不断补充,扩展。待续……
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。}

我要回帖

更多关于 fc封神榜gg作弊码 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信