Shapeshifting symbols

Second part of the best game ever made.
Post Reply
User avatar
Alberto
Beylerbey
Beylerbey
Posts: 50
Joined: February 13th, 2019, 6:55 am
Contact:

Shapeshifting symbols

Post by Alberto »

First time I played I got the snake, but in another run I got a sun. After a quick research I found some others encountered a skull... is it completely random or are there triggers to get a certain symbol? How many are there? What do they mean? Are there more shapeshifting sprites on other parts of the game?
PoP2_Snake.PNG
PoP2_Sun.PNG
PoP2_Skull.PNG
David
The Prince of Persia
The Prince of Persia
Posts: 2850
Joined: December 11th, 2008, 9:48 pm
Location: Hungary

Re: Shapeshifting symbols

Post by David »

Alberto wrote: January 6th, 2024, 8:41 am is it completely random or are there triggers to get a certain symbol?
I think both the symbol and its position are random.

According to when_are_overlays_loaded.txt in the disassembly, functions specific to level 2 ("desert") are in overlay 0005.
(You can find the overlays in the 2014-06-12 version of the disassembly.)

The following part of overlay 0005 seems to be the selection of the symbol of the position, though I haven't verified it.
(This code is not in PRINCE_ingame.lst or PRINCE_ingame.asm! I disassembled the file overlays\0005 right now, using BIEW instead of IDA. That's why it's in a different style.)

Code: Select all

00000394:i803E0C16FF                     cmp       [+160C],FF ; symbol?
00000399:i751A                           jne       file:000003B5

0000039B:iB80200                         mov       ax,0002 ; 0 to 2 (3 choices)
0000039E:i50                             push      ax
0000039F:i9A9000611F                     callf     1F61:0090 ; random
000003A4:iA20C16                         mov       [+160C],al ; symbol?

000003A7:iB80400                         mov       ax,0004 ; 0 to 4 (5 choices)
000003AA:i50                             push      ax
000003AB:i9A9000611F                     callf     1F61:0090 ; random
000003B0:iFEC0                           inc       al
000003B2:iA2D02C                         mov       [+2CD0],al ; position?
Alberto wrote: January 6th, 2024, 8:41 am How many are there?
Only these three.

You can export DESERT.DAT with PR to see them.
shap04015.bmp = skull on door
shap04016.bmp = snake on door
shap04017.bmp = sun on door
shap04018.bmp = skull on floor
shap04019.bmp = snake on floor
shap04020.bmp = sun on floor
Alberto wrote: January 6th, 2024, 8:41 am What do they mean?
I don't think they mean anything.

However, according to Mechner's PoP2 Design Bible (pages 47-50), level 2 was originally meant as a copy protection level.
The game would have displayed symbols on 5 floors out of the 6, and the player would have had to step on the symbols which appeared on a certain page of the manual.
The current level 2 seems to be a remnant of this, with the copy protection moved to a separate screen after it.
User avatar
Alberto
Beylerbey
Beylerbey
Posts: 50
Joined: February 13th, 2019, 6:55 am
Contact:

Re: Shapeshifting symbols

Post by Alberto »

Ah, that makes a lot of sense now. It sure feels like an intermediate level of sorts, too short and not much happens when you go the other way. The puzzle is nice as is, not too complicated because it's the beginning of the game, but it definitely would have been way cooler if that ended up being the copy protection screen.
David wrote: January 6th, 2024, 6:10 pm ...I think both the symbol and its position are random...
...However, according to Mechner's PoP2 Design Bible (pages 47-50), level 2 was originally meant as a copy protection level...
Oddly enough, I felt it might have been related to copy protection but in another kind of way. The skull meaning you have a pirated version, the sun being an okay file, and the snake a 'hard mode' since it's related to the witch. But that sounds too convoluted now that I think it through.
Post Reply