发掘《海豚历险记》(Ecco the Dolphin)中隐藏了31年的彩蛋
Unearthing a 31 year old Easter egg in Ecco the Dolphin

原始链接: https://32bits.substack.com/p/under-the-microscope-ecco-the-dolphin-98c

虽然《海豚埃科》(Ecco the Dolphin)的 PC 版长期以来被认为缺少主机版的调试模式,但其实代码中依然隐藏着开发者留下的秘籍。 通过操作“关于 EccoWin”(About EccoWin)对话框,玩家可以解锁一个隐藏菜单。只需在关闭对话框时按住 Shift+Ctrl 键,即可进入关卡选择和无敌模式(无限生命与氧气)。 此外,还有一个更复杂的操作:按住 Shift+Ctrl+鼠标左键,并双击“关于”窗口的角落,可以将“确定”(OK)按钮变为“kO”,从而解锁更多虽然功能不太完善的调试工具。这些工具包括绕过 CD 检查、显示边框以及用于调整冲刺冷却时间的“简单”模式。这些隐藏菜单为那些苦于游戏极高难度的玩家提供了救命稻草,或许能让更多人最终达成游戏那难以企及的结局。

最近 Hacker News 上关于《海豚埃科》(*Ecco the Dolphin*)中一个 31 年前“复活节彩蛋”的讨论,引发了人们对现代游戏中隐藏功能和作弊码日渐式微的广泛探讨。 评论者指出了导致这一趋势的几个因素: * **企业责任:** 《侠盗猎车手》(*Grand Theft Auto*)中“热咖啡”事件引发的丑闻,使得隐藏内容成为了潜在的法律和公关风险,促使游戏工作室必须对所有游戏资源进行严格审查。 * **成就系统:** 平台强制实施的成就系统(如 Xbox、PlayStation 和 Steam)抑制了开发者加入内置作弊码的意愿,因为这可能会破坏奖励系统的完整性,或违反平台的认证要求。 * **货币化:** 一些人认为,传统的作弊码已被微交易和付费 DLC 所取代,原本的“无敌模式”或道具解锁已变成了营收渠道。 尽管部分用户认为这些变化削弱了经典游戏中那种探索发现的乐趣,但另一些人则指出,游戏行业向标准化、可追踪进度的转型,使得平台整合和盈利能力已然凌驾于 90 年代那种“充满秘密”的文化之上。
相关文章

原文

Today we’re examining the PC version of Ecco the Dolphin. This game is adapted from the 1993 Sega CD version of Ecco, which is an enhanced version of the 1992 Sega Genesis original.

There’s a full-featured debug mode cheat for the console editions. Among other things, it lets you skip stages and become invincible. But on PC, you have to fight your way through this notoriously difficult title the hard way.

…Or do you? There’s some strange code in the function that handles this game’s About dialog:

This is checking whether the bottom-right corner of the dialog box is off-screen as it’s being dismissed.

After that check, the code calls GetKeyState for Shift and Ctrl. If those are being held down as the dialog disappears, LoadMenuA gets called for menu ID 0x70.

What’s that do? It allows you to access a cheat menu by pressing Shift+Ctrl and right-clicking on the main window:

Stage lets you choose your starting stage, of course. Make a selection and press F2 to start playing. All of the items seem to work except for the one marked test only.

Life gives you unlimited health and air. The meters that track those stats disappear entirely when this cheat is enabled.

When the cheat menu is active, you’ll also see positioning information on the bottom of the screen. The numbers change as Ecco moves.

But wait, there’s more. That About EccoWin dialog handler function is checking for more conditions. The code asks:

  • Does the uMsg argument correspond to the WM_RBUTTONDBLCLK event?

  • Does the wParam argument have the MK_SHIFT, MK_CONTROL, and MK_LBUTTON bits set?

  • Is the cursor in one of corners of the dialog box?

Translating that into English:

  1. Open the Help > About EccoWin dialog.

  2. Hold down Shift+Ctrl+Left Mouse button, then double-Right click on the bottom-right corner of the dialog box. The OK button will change to kO.

  3. Keep holding Shift+Ctrl and dismiss the dialog box.

Now the cheat menu, still accessed with Shift+Ctrl+Right click on the main window, will have additional items: Easy, CD check, and border.

Based on the game code, Easy seems to be intended to reduce the cooldown timer associated with dashing. However, the in-game effect wasn’t terribly noticeable to me.

CD check gets rid of the This program can only be run from the original CD! nag screen.

border seems to have been intended to put some sort of resource meter around the edge of the screen. It doesn’t actually seem to be functional in the retail version of the game, though.

With the Stage and Life cheats, perhaps you will become one of the few people who have actually seen the ending of Ecco.

Many thanks to Bobblen for suggesting this game for analysis! I’ll be back soon with more Rings of Saturn.

联系我们 contact @ memedata.com