开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 14002|回复: 52
收起左侧

[易语言纯源码] 【开源】【2016.05.21】Contra Director/魂斗罗编辑器 地图编辑版

[复制链接]
结帖率:100% (11/11)
发表于 2016-5-21 17:40:34 | 显示全部楼层 |阅读模式   贵州省遵义市
分享源码
界面截图:
是否带模块: 纯源码
备注说明: -
本帖最后由 SalHe 于 2016-5-22 11:37 编辑

本次主要增加了 直接从魂斗罗中提取图形 的功能,只是此功能目前对图形的解析还不够完善
在很多论坛发的帖子都已经很冷门了,可能是我Out了,哈哈。魂斗罗是小时候玩的游戏,作为蛋蛋后的楼楼确实情有独钟的爱上这个游戏了,就花了时间去搞这个了,估计对这个有感情的多数就是80,90后的前辈们咯


第一版本已经发布很久了,是2月发布的,很垃圾,代码乱得不忍直视,到了后面更新时我都觉得难以下手了,第一个版本主要是参考零晨星光前辈的源码,
他是用VB写的,好吧,不得不说,我翻译的很累 = =,前辈的代码写的也乱。。。这也是到了后期更新存在难点的原因之一
我编写时发现敌人解析问题时向CZXInc探讨,后来前辈也是很耐心的为我讲解了缘由,还做了图纸
再者就是对CXZInc前辈表示抱歉,把他的名字打成了CZXIn,一直没发现,到后来给他截图时他自个儿发现的。抱歉抱歉了

后来偶然去了 Romhacking,发现了一篇由 Trax 大神编写的魂斗罗Hack文档,通过阅读后重新编写了Contra Director
于3.29号发布第二代编辑器,重写了编辑器解析的存储机制,比如一切数据都对象化,这些更方便第三方开发(好吧,我很难相信会有人来搞这个)
还重写地图浏览的机制,改用将地图绘制成图,放在一个用于浏览图片的组件里,这个组件是我写的 ImageViewer_Ex
又新写了一个 SRect_Ex 组件,为了适配整个 UI 的风格(尽管它还是这么丑),至少证明我用心了嘛

嗯,别以为我就只看了Trax大神的那份文档,对于一些FC/NES编程知识的无知,又参考了Steven Monaco关于FC/NES图形硬件类介绍的文章
好吧,其实我看了之后照着写了一个图形绘制的源码,但是结果和预想的有出入,于是冒昧给Steven前辈发了邮件请教,前辈很友好的回了我,并详细的为我说明了,无比感激啊
有了这些基础后我又自己上网查阅了一些资料,比如关于FC/NES调色板什么的。。。


现在的剩下的问题就是关于关卡扩展、图形解压的问题,因为NES的ROM文件是有一定大小的,大的也就256KB把
扩展涉及到很多问题的,也不得不感慨当时写个游戏真心不容易,大小限制很大


说那么多,我都觉得自己有点在炫自己查了多少多少资料,请教了多少多少前辈了
其实我在写这篇帖子的时候,几乎是编写边更新附件的,因为我发现很多东西没写在附件里,这是不行滴!

上几张图(上个版本的截图):




关于介绍什么的,我直接扒 ReadMe.txt 了。。。
  1. To read ReadMe.txt normally, please open it with Sublime Text.
  2. 为正常阅读 ReadMe.txt,请使用 Sublime Text 打开。

  3. --------------------------------------------------------------------
  4. # Contra Director
  5. Coded by SalHe
  6. SalHe@qq.com
  7. Copyright(C) SalHe, All Rights Resvered

  8. --------------------------------------------------------------------
  9. # Functions/功能
  10. V20160329:
  11. Preview level mapping/预览地图
  12. Preview enemy’s position/预览敌人位置

  13. V20160507:
  14. Edit level mapping/编辑地图

  15. V20160521
  16. Parsing graphics data/解析图形数据

  17. --------------------------------------------------------------------
  18. # Thanks/感谢
  19. Trax & CZXIn & 凌晨星光 & Ex_DirectUI & Steven Monaco

  20. --------------------------------------------------------------------
  21. # Reference/参考
  22. Trax: Contra Hacking Guide & Enemy Attributes
  23. http://www.bwass.org/romhack/contra/
  24. Steven Monaco: Console Graphics Document
  25. http://mrclick.zophar.net/TilEd/download/consolegfx.txt

  26. --------------------------------------------------------------------
  27. # QAF/问题
  28. Q: How to set language the software use?
  29. 如何设置该软件所使用语言?
  30. A: Open .\config\Appliction.ini, set value of item Location.Language to name of language.And the language file is in .\language\%LanguageName%.txt.You youself can write a language. Normally, there are two language files, are for Chinese and English.
  31. 打开 .\config\Appliction.ini, 设置 Location.Language 项的值为语言名字。语言文件位于 .\language\%LanguageName%.txt。你可以自己编写语言文件。一般软件会自带两种语言文件,中文和英文。
  32. -----------------------------------
  33. Q: I found some question and I have some advice!
  34. 我发现了些问题还有点建议!
  35. A: I'm very gald to hear it! If you've found some question or you have some advice, please let me know.
  36. 我很高兴你发现了!如果你有任何问题或者建议,请告诉我。

  37. --------------------------------------------------------------------
  38. # Using guide/使用技巧
  39. * Some basic using methods neeedn't to be mentioned. Such as open file, save file... everybody can do them. I want to tell you some skill.
  40. 一些基本的操作就没有说的必要了把,什么打开文件了,保存文件了。。。大家都会的。我想说的是一些小技巧。

  41. 1.How to fill many places with a same block fast: Keep Shift downed and move you mouse.
  42. 如何快速用一个 Block 填充多处:按住 Shift 移动鼠标。

  43. 2.How to lock mapping, because I don't want to move it: Make Lock checked, it's on the left of block selected and under Edit mode.
  44. 怎么锁定地图,因为我不想让它移来移去的:选中 锁定,它位于 选中Block 的左边,编辑模式 的下面。

  45. --------------------------------------------------------------------
  46. # History/历史

  47. -----------------------------------
  48. 2016/04/02

  49. Contra Director Preview version is completely, or nearly.
  50. It can display level's layout and enemy's position, but can't edit.
  51. Now Contra Director can adapt Contra of US version perfectly, other version may not, specially hacked rom.
  52. Japanese Contra can be adapted by Contra Director, but some trouble with graphics. And I don't know whether it's caused by problem of Contra Director-self because it's not clear to be seen.
  53. And I want to take graphics from Contra to display, but I have never learned programming about FC/NES. Although I take it, I won't how to display it correctly.
  54. So if you know how to do, could you please tell that? :)
  55. Contra Director For Editing version will came out soon, or much later, because I'm getting for my ZhongKao.
  56. Thanks for waitting! :D

  57. Contra Director 预览版本基本完成。
  58. 现在可以显示地图布局以及敌人位置,但是不可以编辑。
  59. 现在 Contra Director 可以完美适应美版魂斗罗,其他版本可能不行,特别是修改过的。
  60. 日版魂斗罗可以被 Contra Director 适应,但是在图形上有些问题。我不知道是不是 Contra Director 自身读取的问题。
  61. 我想从魂斗罗中提取图形,但是我没学习过FC/NES编程。所以即使我提取到了,我也不知道如何正确显示。
  62. 所以,如果你了解的话可以指点一下吗? :)
  63. Contra Director 编辑版将会不久发布,也可能很久,因为我在准备中考。
  64. 谢谢期待!:D

  65. --------------------------------------------------------------------
  66. 2016/05/07

  67. Contra Director Edition for Level layout is completely, or nearly.
  68. It hasn't been updated for mostly a month since last time because of my study....:D
  69. To update this function(edit level's layout) took some times yesterday, and I solved some bugs.
  70. Now it can display&edit level's layout and display enemy's position.
  71. If you want to expand Contra, I think you should use "Contra Expansion.NES". It's patched with "Contra Expansion.ips" by WinIPS. And before expanding it, you should do some works. You yourself must add section address for the level you want to expand. The function isn't implemented by me. Eh, I have too little time to do this now. So if you are interested in this, and you have ability to do it, you can ask me for source code of Contra Director(It's programmed with Easy-Language/易语言, or I will pack source code into attachment).
  72. And my troubles about taking graphics from Contra, some of them are solved. Rest of them are definition of color of cell. I don't how to connect cell with palette. I hope you can help me:)

  73. Contra Director 地图编辑版基本完成。
  74. 几乎一个月没写了,主要因为学习....:D
  75. 昨天花了些时间来更新这个功能(编辑地图布局),我还解决了一些bug。
  76. 现在可以显示&编辑地图布局,显示敌人位置。
  77. 如果你想扩展魂斗罗,我觉得你应该使用“Contra Expansion.NES”。这是用WinIPS打的补丁,补丁文件是“Contra Expansion.ips”。在扩展以前,你还要干点事儿。你必须手动为你想扩展的关卡添加关卡页(Section)地址。这个功能我没去实现。额,我时间不够,暂时就没法去做了。如果你对这个感兴趣,并且有能力完成的话,可以找我要源码的(是用 Easy-Language/易语言 写的,可能我会把源码放在附件里的)。
  78. 关于我从魂斗罗提取图形的问题,其中一些已经解决了。剩下的问题是Cell的颜色的定义。我不晓得怎么把调色板和cell联系起来。希望你能帮助我:)

  79. --------------------------------------------------------------------
  80. 2016/05/13

  81. The function updated this time is directly parsing graphics from Contra ROM file.
  82. But it's not enough perfect. The main problem is on uncompressing graphics data for PPU.
  83. And I will try to solve it. But in short time, I can't do it.
  84. Maybe some months later I can complete it, because of something...
  85. For using this function, open Contra firstly, and click my head.
  86. Eh, it's like a rabbit, isn't it?
  87. Maybe you still don't konw what it is, and now, I say it in a piece of words.
  88. It's on left-up corner of Contra Director, And there is a word "SalHe" written on the head.
  89. I think you must know where it is. If not, you are really foolish :D
  90. Hah, that is a joke, don't think more.
  91. And the result parsed is saved in .\Results.

  92. 本次更新功能是直接从魂斗罗的ROM文件中提取图形。
  93. 但是这个功能还不够完善,主要问题出在解压图形数据到PPU上。
  94. 我会去解决的,但是短时间内是不行的了。
  95. 估计数月后我可以完成,因为一些事情要忙...
  96. 使用方法是,先打开魂斗罗,然后点击我的头像。
  97. 额,看起来像只兔子,不是么?
  98. 也许你还是不晓得它是什么鬼,我就用一句话说好了。
  99. 它在 Contra Director 的左上角,有个单词“SalHe”被写在上面。
  100. 我想你肯定知道它在哪了。如果还不知道,那你真够笨的 :D
  101. 哈,开个玩笑了,别当真哈。
  102. 解析的结果存放在 .\Results 里。
复制代码







我知道你们有文字恐惧症 ==。。。

貌似很多同学都喜欢这个配色文件,嗯,这是WonderWall的配色文件
没错,就是Syser的Baby发布的哦,很赞!
WonderWall.zip (294 Bytes, 下载次数: 87)

点评

膜拜楼主   四川省成都市  发表于 2016-5-21 18:32

评分

参与人数 13好评 +10 精币 +58 收起 理由
V雪落有声V + 1 + 20 支持开源~!感谢分享
leiyh + 1 + 3 感谢分享,很给力!~
newit + 1 楼主太棒了
断网的鸽子 + 1 + 2 感谢发布原创作品,精易因你更精彩!
衰而不爱 + 1 + 2 支持开源~!感谢分享
1421170337 + 1 + 2 前排!!!!
夜的静night + 1 + 2 感谢分享,很给力!~
红颜脸庞仍娇俏 + 1 手柄没了,摇杆也没了,键盘玩的不爽
精易客服 + 1 + 5 感谢分享,很给力!~
兔子君 + 1 + 8 奉上小小红包希望笑纳
村雨 + 1 + 8 感谢发布原创作品,精易因你更精彩!
风间琉璃 + 2 感谢发布原创作品,精易因你更精彩!
Aaaur + 1 + 2 支持开源~!感谢分享

查看全部评分


本帖被以下淘专辑推荐:

结帖率:96% (24/25)
发表于 2016-6-13 10:06:39 | 显示全部楼层   广东省深圳市
感觉没任何技术含量,纯苦力活!
123.jpg

回复 支持 反对

使用道具 举报

发表于 2024-2-18 18:58:11 | 显示全部楼层   辽宁省锦州市
支持源码,虽然看不懂.......
回复 支持 反对

使用道具 举报

签到天数: 3 天

发表于 2022-8-19 09:18:18 | 显示全部楼层   广东省中山市
支持
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)
发表于 2022-5-9 01:27:14 | 显示全部楼层   广西壮族自治区玉林市
支持源码,虽然看不懂.......
回复 支持 反对

使用道具 举报

发表于 2017-11-26 20:58:11 | 显示全部楼层   江苏省泰州市
们有文字恐惧症 ==。。。们有文字恐惧症 ==。。。
回复 支持 反对

使用道具 举报

结帖率:60% (3/5)
发表于 2017-5-12 22:23:11 | 显示全部楼层   内蒙古自治区呼和浩特市
表示把别的游戏载入进去直接乱了。
回复 支持 反对

使用道具 举报

结帖率:100% (20/20)
发表于 2017-4-20 22:29:24 | 显示全部楼层   天津市天津市
是真的麻烦得很
回复 支持 反对

使用道具 举报

结帖率:67% (2/3)
发表于 2016-11-3 11:17:32 | 显示全部楼层   湖南省娄底市
支持                   6666
回复 支持 反对

使用道具 举报

结帖率:86% (31/36)
发表于 2016-10-26 23:28:28 | 显示全部楼层   广东省广州市
牛逼的人,膜拜
回复 支持 反对

使用道具 举报

发表于 2016-10-8 17:09:01 | 显示全部楼层   河南省洛阳市
支持源码,虽然看不懂........
回复 支持 反对

使用道具 举报

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

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表