🕹️ New release: Lunar Lander Beyond

Forums > Game Forums > How to use cheats?

user avatar

Nowhere Girl (8680) on 2/20/2020 2:31 PM · edited · Permalink · Report

I need to cheat to get further and capture more screenshots. Not everybody is gifted with dexterity and good timing, some people lack those skills, but may enjoy cute platformers anyway.
According to something found on the web, the cheat goes like this:
"Goto dos and type:
DEBUG TROLLVGA.PCN
NTROLLCGA.PCN
L
E 5CB6 90 90 90 90 90
E A3BA 90 90 90 90 90
E A482 90 90 90 90 90
W
Q"

So now a serious question by someone who also uses computers without necessarily understanding everything about program functions: what does "Goto dos" mean?
I, obviously, use a DOS emulator, not DOS as such. D-Fend Reloaded, to be more precise. By comparison, in case of "Prince of Persia", I need to type "megahit" in the "program parameters" line below the line where you select the file to run the game (in a D-Fend Reloaded game profile). (When I played this game, years ago, in emulator-less DOS system, I just had to type "prince megahit" instead of pressing "enter" over the correct file - "prince.exe", if I remember well.) Is this line also where I should enter the above cheat in case of "Trolls"?
The same also applies for "Oscar", although the exact characters may be slightly different.

user avatar

Rwolf (22827) on 2/20/2020 7:05 PM · edited · Permalink · Report

It means you need to open a DOS command window to start the debug program in order to edit the hexadecimal code in the file listed.

I'm not sure if DEBUG is present in the bundled DOSBOX set of commands, but there should be a compatible version in the full Freedos package. (I checked, and I have DEBUG in by DOSBox)

It should be part of Windows still, even if there are some limitations in 64bit Windows, according to the Wiki pages.

There is a wikpedia page for it here: https://en.wikipedia.org/wiki/Debug_(command)

(I tried a more detailed explanation "mansplaining", but the site blocked my post, thinking I was hacking Moby, no doubt)

user avatar

Nowhere Girl (8680) on 2/25/2020 2:23 PM · edited · Permalink · Report

If it's about editing the hexadecimal code, maybe I can use a hex editor instead? I already used it to force some Windows games to run in windowed mode.
And if it would work, where in the game's exe file should I enter that text?

user avatar

Rwolf (22827) on 2/25/2020 4:32 PM · edited · Permalink · Report

You listed the file extension is " .PCN " - it to me implies it is not an executable, but some data file used by the main program ... however, when you load any file in DEBUG, it will still consider it as a form of executable and prepare an environment to debug the file as a binary program - initially DEBUG was made for .COM files, of up to 64kB size, but that has been extended later - regardless, the memory locations when files are loaded are also allowing for other items, e.g. filename, stack space etc. with the loaded file data offset of cs:0100h; so if you use another plain hex editor you need to subtract that from the adress in your listing.

I think any hex editor should work; the adresses in your debug list would be used minus hex 0100, now starting in three offset locations 5BB6, A2BA, A382 - just replace the 5 bytes starting at these addresses with 90, presumably they initially hold something else, but that is not in your original description - otherwise one could compare data to find the right adress, in case things have shifted around in other released versions of this file.

Anyway, always keep a backup of the original.

user avatar

Nowhere Girl (8680) on 3/3/2020 1:56 AM · Permalink · Report

Hello again. While I have used a hex editor before, I'm by no means a specialist. I use HxD program and when I try to look for these values in the trollvga.pcn file - either as hex values or as a string of signs - they are not found. Any advice how should I look for them, in what "mode"?

user avatar

Rwolf (22827) on 3/3/2020 3:43 PM · Permalink · Report

The locations are adresses, they are not explicitly seen in the data, but only every 16:th address is listed in your editor. You count the bytes from the beginning of the file you have opened, but if you listed every address on its own row the display would be 1 byte narrow and unwieldy to use (or so I think).

I looked at the HxD editor, and it works as most other such editors; every line shows the adress of the leftmost byte on the left side, with the data field separated and continuing toward the right end of the line. Each line in the file editor has 16 byte values in each line, 0-F, meaning the last nibble of the address is in the horizontal direction.

Find the line with the starting address you want, but exclude the last nibble that is the horizontal position. e.g. 5BB6 -> vertical line 000005BB , horizontal positition 6 That is the starting byte; then starting at this position change 5 bytes, going right, to the hex 90 value.

Do this for all adresses I listed in the earlier reply: 5BB6, A2BA, A382

Save the file. (You did make a backup, right?)