欢迎来到 Mario Forever 百科!编辑前请创建一个账号,或使用现有的账号登录;并认真阅读用户须知

自2020年7月14日起,未验证邮箱的用户将无法编辑页面。请前往参数设置验证邮箱,谢谢您的配合。

Geography Engine Ultimate

来自Mario Forever 百科
跳转到导航 跳转到搜索
Geography Engine Ultimate
GEU.png
引擎作者 电童·Isamo
开发环境 Clickteam Fusion 2.5+
发布时间 2022年3月6日
最新版本 2022-0518-4
下载地址 点我下载

——引擎翻新再来!

上一版本:Geography Engine Remade

用前注意:该引擎需要以下扩展:Animation Info (可在CTF自带的Extension Manager扩展管理器里安装)、Scope Control 以及 Fini (这两个可以在压缩包内名为_Key_Extensions的文件夹内找到,复制粘贴至CTF软件安装目录下即可)

简介

Geography Engine Ultimate 是 Geography Engine 引擎系列作者电童·Isamo于2022年3月6日发布的,基于Geography Engine Remade 而改进升级的全新版Geography Engine系列MF同人游戏开发引擎。GEU旨在尽可能还原MF手感的同时,带给开发者更加便捷的使用操作更加丰富、简单、有创新性的扩展内容、更加流畅的游戏性能、更加严密的事件逻辑以及更加合理的文件夹分类

Ultimate版本具有以下特点:

  • 主要的事件全部写在一个名为“主事件”的对象内,开发者可在开发期间利用CTF的全局对象工具,将其全局对象化,以实现跨场景编辑、修改主事件。
  • 完全支持玩家本体与玩家精灵耦合处理:开发者不需要进入玩家本体内部修改代码,只需要修改一个叫character_name的字符串为指定的名称,然后从别的引擎导入已做好的玩家精灵,并将其按照GEU原生的马里奥的状态(属于玩家精灵的一种)进行正确的修改,即可完成一份独特的新角色(新的玩家精灵)
  • 反重力优化:现在反重力下的玩家可以稳定地踩上运动的平台、进入水管、踩怪。
  • 支持玩家与运动实心的互动:玩家可以稳稳当当地站上运动的实心块而不会抽搐(注:由于其代码的复杂性,目前GEU的运动实心暂不支持对物理实例的位置补正)
  • 针对GER因为过于复杂而几乎无法使用的问题,GEU进行了部分精简与整理,同时对有技术却不知何从下手的开发者,GEU在Level Editor的场景主事件里特别增加了名为CODING INSTRUCTION的纯注释说明书,供开发者借鉴参考
  • 对大部分从GER搬来的物件进行了代码上的优化,也对部分搬入物件进行素材上的优化

作者的话

2022.03.06

各位开发者:

你们好!

时隔数月,Geography Engine Ultimate 终于面世了。这其中,我感到非常高兴,因为这标志着Geography Engine系列进入了一个全新的阶段;当然,我也在其中倾注了所有心血——从搬入到优化,从发现问题到解决问题再回到发现问题……我已经不知有多少个日日夜夜,熬到了12点才睡。每天都在想着怎么搞GEU,怎么把GEU搞好。尤其是到发布前几天,突然遇见了运动实心补正这一大坑,为此我又一次地请了dasasdhba帮忙编写,他跟我一起讨论,也跟我讲解这些原理,而且为了GEU的运动实心补正写到最后头脑又累又热,的确是付出了许许多多。再此,我由衷地感谢dasasdhba编写GEU的运动实心补正,您辛苦了!

最后,希望大家能够享受这款全新的引擎带给各位开发者逻辑严密却又快速舒适的开发体验!

版本信息

注:Geography Engine Ultimate 采用Year-Month_and_Date-Release_in_Month(简称Y-MD-RM)版本号形式,即第一位为年份全写,第二为更新日期,为XX(月)YY(日),第三位为引擎更新在这个月内的版序号。

例如:2022-0409-3 这个版本号的意思为:该引擎更新于2022年4月9日,为4月更新的所有GEU版本的第三版。

所有版序号均以1开始,即版序号为1的意为在这个月内首个更新的版本

Geography Engine Ultimate 更新一览
引擎版本(带发布日期) 引擎代号(如果存在) 引擎更新内容
2022-0306-1
  • GEU的第一个版本,加入了所有GER Level Editor 内所有物品(部分有删改)
2022-0310-2 漏洞修复
  • 玩家可以在下落时可以通过用脚着砖块四角来踢碎砖块
  • 无法连续通过单格缝隙,同时修复了无法连跳、无法加速跳等问题
  • 物理实例方向初始化有误
  • 食人花出屏仍可以运动
  • 多个炮台同时发炮时,炮弹位置有误
2022-0313-3 Buggy 底层
  • 加固了武器龟扔武器的算法:原先的部分扔武器算法中只筛选isInitialized为false的武器,现在改为:筛选isInitialized为false的武器的同时筛选是否与武器龟重叠。相同的加固操作包括但不限于食人花和岩浆火球发射器等对象
  • 大部分物理实例的初始方向现在均不再使用isDirected布尔变量(开关)控制
  • 玩家精灵控制内部算法改写:现在开发者完全不需要去玩家精灵内部更改代码便可切换角色精灵
  • 为兼容大部分引擎,player state = 3(以前是甜菜)现在对应绿果,player state = 4(以前是绿果)现在对应甜菜

机能

  • 优化了库巴动画的播放表现与动画控制相关的代码,同时调整了库巴扔锤子时的最大抛射高度
  • 圆周运动物件加速标记现在加速5单位角速度而非4单位
  • 提高了运动龟壳受伤容错时间。原来为10帧,现在调整为20帧

材质

  • 马里奥的各个状态的材质均进行修改(原素材由Anas Wael制作,由@绿色的糖果 进行放大),同时对部分马里奥状态的Appearing进行了修改
  • 修改了冰花的材质

漏洞修复

  • 玩家碰到屏幕边缘时可原地加速而非停下
  • 玩家在锤子状态下扔锤子后,锤子的水平速度过高
  • 封顶和封底实心最终位置有误
  • 物理实例运动不稳定而导致穿墙
  • 在某一个炮台发射炮弹后,若此时镜头发生移动导致另一个炮台出现,则这两个炮台都会发炮
  • 多个石盾在回升时有概率会在其中一个回升到起点后导致所有石盾实例全部瞬移至其各自的起点
  • 扎地花被冻结时无音效
  • Time字样莫名其妙消失
2022-0315-4 Innovated I 底层
  • 加入龟壳硬度机制,用610号变量表示龟壳硬度,低硬度的龟壳会被高硬度的龟壳所击杀,而同硬度的两个龟壳则同归于尽
  • 对玩家站在运动实心上的补正的算法进行了整合
  • 加入实例站运动实心的补正

机能

  • 取消#on_subground遍历函数

语言

  • 对象文件夹 Block - Moving 改为 Platforms,Block - Obstacle 改为 Obstacle,Block - Interaction 改为 Interactee
2022-0320-5 机能
  • 调整了红食人花的不运动范围
  • 出于部分原因,暂时禁用了实例站运动实心的功能,如有需要请慎用此功能,或规避因此功能而造成的不便

漏洞修复

  • 平台纵向运动方向反向标记导致平台水平向左运动
  • 通关门方向与预定方向相反
  • 跳乌龟动画不会转头
  • 过关后玩家不能走出屏幕
  • 悬浮的金币无法被已被玩家顶到的砖块顶掉
2022-0322-6 Recovered I 底层
  • 实例站平台已被加回,作为可选功能使用,该功能可以在主事件对象的属性的变量表内进行修改(注:点击debugger或拖动窗口时仍然会出问题)

机能

  • 加入布布鬼
  • 对玩家的跳跃手感进行优化

漏洞修复

  • 对象的玩家操作参数movement_parameter有部分功能字段失效
  • 上一版本本应修复的bug:平台反向运动标记未得到修复,本版本修正之
2022-0327-7 漏洞修复
  • 玩家用身体就可以顶到隐藏奖励块

底层

  • Mask组:引入更改动画序列后自重置动画帧序列算法,当开发者更改含该分组的对象的动画时,无需使用变量即可让其自动重置帧序列(但408号变量在某些情况下依旧需要开发者使用变量调节)
  • 玩家:引入开关ignoreGravity:启用后,玩家重力将失效(制作某些不能受重力影响状态时请启用此开关,一般情况下请勿启用!)

机能

  • 对反向食人花被冰冻所产生的冰块位置进行了微调
  • 加固了物理实例入屏激活算法,防止部分实例入屏后没有得到激活

材质

  • 相机对象材质进行了修改
  • 引擎图标优化
2022-0404-1 漏洞修复
  • 龟壳击杀多个重叠的敌人时只结算一个敌人的连击
  • 玩家在反重力情况下仍旧会被弹簧判定到
  • 被火球等非踩踏因素击杀的敌人的尸体错位
  • 反重力情况下的玩家无法跟随平台运动

材质

  • 优化了奖励砖的动画
2022-0407-2 漏洞修复
  • 玩家在大个子及以上状态下踩到平台上时,如果在一格高的缝隙中蹲下后突然站起,则会导致游戏严重掉帧而不是强制变小
  • 玩家在与掉落平台或者需要玩家踩上激活的平台碰撞时,不需要考虑其y速度就可激活这些平台

底层

  • 玩家:新增overspeedSlowDown开关,开启后,玩家X速度超过最大值时,会缓慢减少至最大X速度或更小,而非直接将当前玩家X速度的数值设为最大X速度
2022-0413-3 漏洞修复
  • 测试转向时的1up音效未删除
  • 扎地花被冰冻后仍然可以被冰球冰冻

机能

  • 优化了链条生成算法,现在链条初速度没有限制,且可以在生成器里修改创建方向

材质

  • 冰块材质优化

语言

  • 食人花所喷出的火球改名为“火球-喷吐”
  • 分组 ITA-Blocks 改名为 Interactees,同时其图标也进行了修改
2022-0503-1 漏洞修复
  • HUD图层不能纵向跟随屏幕
  • 漩涡吸力过大导致玩家无法挣脱
  • 创建游鱼或飞鱼时鱼会闪现
  • 电珊瑚判定异常

语言

  • 音乐:现在音乐文件夹名为musics而非music(注,该更新会影响作品的bgm的正常使用,请注意修改为更新后的musics而非music)

底层

  • 玩家:跳跃参数现在成为可调参数,开发者可通过变量表直接修改其数值
2022-0506-2 Performance I 漏洞修复
  • 若玩家同时触碰滚屏-自由滚屏和滚屏-切换滚屏(smoothScroll为开启的情况下),则滚屏卡死。同时修复了平滑滚屏速度在新滚屏范围的宽度(或高度)不足游戏屏幕的宽度(或高度)时,正交方向上的滚屏速度不会为0的bug
  • 链条初始方向向上
  • 暂停一次后结束暂停时全局字符串Pause为F而不是N

机能

  • 大幅度降低了实例与运动实心碰撞的开销
  • 原fastloop $event_1 和 $event_2 为降低性能开销,现在调整为:如果场景内存在组engine的对象的实例,则对该对象的所有实例依次使用#event_1及#event_2遍历循环,否则使用原$event_1和$event_2。(原因是:foreach的处理性能要比fastloop更高效一些)
  • 现在火棍可以通过半径增减幅标记来无bug实现长/短火棍了

材质

  • 平台的素材由95像素调整为96像素
  • 略微更改了圆周运动敌人-高速 标记的图像
2022-0508-3 Innovated II 漏洞修复
  • 运动实心仍然可以判定307变量或308变量为0的对象
  • Game Over音效缺失
  • 水管传送失效

结构

  • 引入主菜单(三合一),大地图,游戏大厅和Game Over界面

底层

  • 笨石:更改了其热点位置以适应运动方块
2022-0518-4 Buggy II 漏洞修复
  • 平台的实心类型默认为obstacle
  • 水管传送-入口默认可见,且部分传送有问题
  • 玩家顶隐藏砖有时会被以奇怪的方式卡下去
  • 玩家与甜菜同时顶(砸)砖时,所有砖块的都会动画上被销毁
  • 一触发库巴滚屏,库巴就开始运动,且尸体的方向不以库巴为准
  • 玩家子弹不与库巴互动
  • 库巴踩踏有问题
  • 玩家进水管仍然可以发射子弹
  • 玩家过关后若处于无敌状态,则会一直保持无敌状态
  • 多个金币顶出特效出现时,结算金币时只算做一个金币的加成
  • 玩家靠墙发射甜菜时,甜菜会直接向下卡出墙
  • 玩家死亡后,水位有误
  • 飞鱼生成器生成的飞鱼会连跳
  • 骷髅龟复活时,尸体复活动画会播放两次
  • 玩家在有相机滚动区域限制的cp出复活时会被屏幕拖死
  • 小个子状态的玩家在两个高的空隙处跳跃吃到蘑菇时会被错误地卡出方块

结构

  • 应站内新规要求,加入credit场景,用于表示引用的一些素材的作者id以示尊重

底层

  • 大体型的玩家状态的判定高度降低为54px
  • 金币加命现在有1UP提示
  • 加入景物“城堡-底部-雪盖”、“栅栏-雪”、“草-雪”和“树丛-雪”
  • 玩家:新增 leftRightScreenStop 开关,用于启用玩家碰屏幕左右边缘时被阻挡或推动,默认开启

材质

  • 应站内新规需求,现已对所有问题素材做出调整
2022-0625-1 漏洞修复
  • 在Lobby中的玩家无法穿屏
  • 为全局事件补全了指向Lobby场景的操作按键
  • 玩家跳跃进入水管时动画有误
  • 库巴血条hud跟随屏幕的问题,且boss阵亡后血条hud无法回升
  • *部分物理实例的朝向不会立即生效(如锤子龟)。该Bug为不明确修复,故随时有复发的可能,望各位开发者注意!

底层

  • 新增Timer分组,倒计时现在属于本组
  • 倒计时:现在preLevelCompleted开关开启后不会让倒计时继续读数了
  • Level场景主事件中的Debug Mode现在升级为Developer Tools,现位于全局事件中

机能

  • 现在终点门若无任何检测器与之配对,则默认以玩家与之的相对方向来决定其朝向