2631
GAME -> Adventure
© Amstrad Adventure PD Library (1987)
10.00 / 20.00
 
 
12 Lost Souls
cpc
 
 

Last Update : Saturday 30 April 2022 at 21 h 41
 
screenshot
screenshot
screenshot
screenshot
screenshot
 
 

screenshot
CTM644 Colour Monitor
screenshot
GT65 Green Monitor
 

Keywords

INFOS

- CATEGORIES -
GAME -> Adventure               
- NUMBER OF PLAYERS -
1 player
- DESCRIPTION -

Vous devez retrouver 12 âmes perdues pour les restituer à leur véritable propriétaires.

- STAFF -
- BUGS -

Bug fixes by Alex DIJKSTRA

I've made below changes with a hex editor in the dsk file.

Old:
High priority condition 1: IF (RES? (6)) SET (6) STRE (200) END
Fixed:
High priority condition 1: IF (RES? (6)) SET (6) STRE (201) END
Hex:
62E4 C8>C9


Old:
Low priority condition 3: IF (VERB (VERB 104:"NONE")) MESS (MESSAGE 198:"Your doing the adventuring.") WAIT END
Fixed:
Low priority condition 3: IF (VERB (VERB 105:"FIND")) MESS (MESSAGE 198:"Your doing the adventuring.") WAIT END
Hex:
688f 68>69
Reason:
Just a typo.


Old:
Low priority condition 37: IF ((((VERB (VERB 34:"CAST") OR VERB (VERB 33:"NONE")) OR VERB (VERB 24:"INSERT")) AND NOUN (NOUN 40:"ROPE")) ) MESS (MESSAGE 155:"It keeps breaking.") WAIT END
I didn't fix this.
Reason:
Verb 33 does not exist. I don't know what verb it was meant to be, but it does not influence gameplay.


Old:
Room condition 68 for room 108: IF (VERB (VERB 7:"GET")) MESS (MESSAGE 83:"An unholy squeal erupts as the three hags explode and their souls merge as one.") MESS (MESSAGE 81:"A spell has been cast.") MESS (MESSAGE 116:"You're smitten by the evil incantation. You are DEAD.") HOLD (50) EXIT END
Fixed:
Room condition 68 for room 108: IF ((VERB (VERB 7:"GET") AND RES? (31)) ) MESS (MESSAGE 116:"You're smitten by the evil incantation. You are DEAD.") HOLD (50) EXIT END
Reason:
It was not possible to get something even if you already killed the hags.
Old:
Room condition 74 for room 108: IF (((((((NO2 = 64) AND VERB (VERB 18:"THROW")) AND ADVE (ADVERB 18:"AT")) AND NOUN (NOUN 36:"HAND")) AND SET? (30)) AND RES? (31)) ) SET (31) MESS (MESSAGE 83:"An unholy squeal erupts as the three hags explode and their souls merge as one.") END
Room condition 76 for room 108: IF (SET? (31)) (9 TO 108) END
Fixed:
Room condition 74 for room 108: IF (((((((NO2 = 64) AND VERB (VERB 18:"THROW")) AND ADVE (ADVERB 18:"AT")) AND NOUN (NOUN 36:"HAND")) AND SET? (30)) AND RES? (31)) ) SET (31) (9 TO 108) MESS (MESSAGE 83:"An unholy squeal erupts as the three hags explode and their souls merge as one.") END
Room condition 76 for room 108: IF (SET? (61)) LF LF END
Reason:
If you tried to get the soul, it was automatically placed again in the room. The new room condition 76 has no meaning. flag 61 does not exist inside the game, but I had to put something in place of the old code. In order to have sufficient space to make the changes I had to move some chunks of code by 2 bytes.
Hex:
6EEF
3E 80 53 16 80 51 16 80 74 16 80 32 05 2D 3F 80 25
changed to:
80 1F 0E 01 3E 80 74 16 80 32 05 2D 3F 80 25 30 80
and I also had to change 7100 to 71a7 to make these changes.


Old:
Room condition 75 for room 108: IF ((((((((NO2 = 64) AND VERB (VERB 18:"THROW")) AND ADVE (ADVERB 198:"NONE")) AND NO1 ) > 0) AND NOT (SET? (30))) AND CARR (OBJECT NO1 :"")) ) MESS (MESSAGE 84:"The witches are enraged at your gesture and you flee in panic.") HOLD (100) GOTO (ROOM 77:"You are on a long dusty road, which stretchs north to south. East the land looks harsh, while west the grass is greener. ") END
Fixed:
Room condition 75 for room 108: IF ((((((((NO2 = 64) AND VERB (VERB 18:"THROW")) AND ADVE (ADVERB 18:"AT")) AND NO1 ) > 0) AND NOT (SET? (30))) AND CARR (OBJECT NO1 :"")) ) MESS (MESSAGE 84:"The witches are enraged at your gesture and you flee in panic.") HOLD (100) GOTO (ROOM 77:"You are on a long dusty road, which stretchs north to south. East the land looks harsh, while west the grass is greener. ") END
Hex:
716b c6>12
Reason:
Another typo.


Old:
Room condition 79 for room 109: IF (NOT (SET? (32))) MESS (MESSAGE 38:"He's moaning.") WAIT END
Room condition 80 for room 109: IF ((((((NO2 = 38) AND VERB (VERB 23:"GIVE")) AND ADVE (ADVERB 1:"NONE")) AND NOUN (NOUN 47:"OBJECT")) AND RES? (32)) ) SET (32) MESS (MESSAGE 85:"The farmer thanks you for your gift and advises you to dig.") WAIT END
Fixed:
Room condition 79 for room 109: IF ((((((NO2 = 38) AND VERB (VERB 23:"GIVE")) AND ADVE (ADVERB 17:"THE")) AND NOUN (NOUN 47:"OBJECT")) AND RES? (32)) ) SET (32) MESS (MESSAGE 85:"The farmer thanks you for your gift and advises you to dig.") WAIT END
Room condition 80 for room 109: IF (NOT (SET? (32))) MESS (MESSAGE 38:"He's moaning.") WAIT END
Hex:
71C0
80 20 0d 03 3E 80 26 16 2B 3F
34 80 26 1B 80 17 30 01 80 01 31 01 80 2F 2F 01 80 20 0E 01 3E 80 20 0B 80 55 16 2B 3F
To:
34 80 26 1B 80 17 30 01 80 11 31 01 80 2F 2F 01 80 20 0E 01 3E 80 20 0B 80 55 16 2B 3F
80 20 0D 03 3E 80 26 16 2B 3F
Note 71D6 also from 01 to 11
Reason:
The order of the code had to be swapped because you first must have the opportunity to give the object before the farmer starts moaning. Furthermore the adverb was a typo and had to be 17.

Note: The object should disappear from your possession "DROP (OBJECT 47:"object") (47 TO 0)" but unfortunately in the hex editor I can’t add this piece of code. The solution is just to DROP OBJECT after giving it.


Old:
Noun 4: SHOVEL
Room condition 81 for room 109: IF ((((VERB (VERB 36:"DIG") AND NOUN (NOUN 65:"NONE")) AND CARR (OBJECT 4:"a spade")) AND RES? (40)) ) SET (40) MESS (MESSAGE 86:"The spade strikes something.") (52 TO 109) WAIT END
Fixed:
Noun 4: GROUND
Room condition 81 for room 109: IF ((((VERB (VERB 36:"DIG") AND NOUN (NOUN 4:"GROUND")) AND CARR (OBJECT 4:"a spade")) AND RES? (40)) ) SET (40) MESS (MESSAGE 86:"The spade strikes something.") (52 TO 109) WAIT END
Hex:
9DBB 53 48 4f 56 45 cc > 47 52 4f 55 4E C4
71f8 41>04
Reason:
Noun 65 did not exist and the word shovel was just a synonym of spade.


Old:
Room condition 84 for room 109: IF (((VERB (VERB 20:"READ") AND NOUN (NOUN 53:"NONE")) AND CARR (OBJECT 53:"a scroll.")) ) MESS (MESSAGE 89:"It is blank.") WAIT END
I did not fix this.
Reason:
Unfortunately the noun scroll is missing and I can't add a new noun to the code with a hex editor.


Old:
Noun 12: PAPER
Verb 44: CLAIM
Room condition 85 for room 109: IF (((((((NO2 = 67) AND NOUN (NOUN 66:"I")) AND VERB (VERB 44:"CLAIM")) AND ADVE (ADVERB 19:"MY")) AND SET? (41)) AND RES? (42)) ) MESS (MESSAGE 90:"The air is deathly still.") HOLD (80) MESS (MESSAGE 91:"Suddenly the chest sinks and the scroll crystallizes in your hand.") SET (42) (52 TO 0) (53 TO 0) (9 TO 109) WAIT END
Fixed:
Noun 12: CLAIM
Verb 44: CCAIM
Room condition 85 for room 109: IF (((((((NO2 = 67) AND NOUN (NOUN 12:"NEWSPAPER")) AND VERB (VERB 37:"ENTER")) AND ADVE (ADVERB 19:"MY")) AND SET? (41)) AND RES? (42)) ) MESS (MESSAGE 90:"The air is deathly still.") HOLD (80) MESS (MESSAGE 91:"Suddenly the chest sinks and the scroll crystallizes in your hand.") SET (42) (52 TO 0) (53 TO 0) (9 TO 109) WAIT END
Hex:
7251 42>0c
7255 2c>25
96DA 4c>43
8A20 50 41 50 45 D2> 43 4C 41 49 CD
Reason:
The command had to be I CLAIM MY RIGHT. Problem was I wasn't recognised as a noun because GAC saw it as the verb IN. I used this to solve the bug. PAPER was only a synonym for NEWSPAPER and CLAIM as a verb had to be removed so I made it CCAIM. A bit different but the result is the same: I CLAIM MY RIGHT.


Old:
Room condition 102 for room 50: IF (((((VERB (VERB 42:"ROW") AND ADVE (ADVERB 17:"THE")) AND NOUN (NOUN 70:"ISLAND")) AND SET? (50)) AND CARR (OBJECT 43:"an oar")) ) MESS (MESSAGE 100:"With short, strong strokes, you quickly row across and disembark.") HOLD (50) (42 TO 53) (43 TO 53) GOTO (ROOM 53:"You are on riverbank. The water laps against the bank.") RESE (50) WAIT END
Fixed:
Room condition 102 for room 50: IF (((((VERB (VERB 42:"ROW") AND ADVE (ADVERB 17:"THE")) AND NOUN (NOUN 70:"ISLAND")) AND SET? (50)) AND CARR (OBJECT 43:"an oar")) ) MESS (MESSAGE 100:"With short, strong strokes, you quickly row across and disembark.") HOLD (50) (42 TO 53) GOTO (ROOM 53:"You are on riverbank. The water laps against the bank.") DROP (OBJECT 43:"an oar") LF LF RESE (50) WAIT END
Hex:
63E4
80 2B 80 35 09 80 35 32 >80 35 32 80 2B 07 3D 3D
Reason:
After you rowed the boat the oar was dropped incorrectly (The weight of the oar wasn't removed).


Old:
Room condition 113 for room 56: IF (VERB (VERB 33:"NONE")) MESS (MESSAGE 76:"Something mystic stops you.") END
Fixed:
Room condition 113 for room 56: IF (VERB (VERB 32:"BREAK")) MESS (MESSAGE 76:"Something mystic stops you.") END
Hex:
64ac 21>20
Reason:
Just a typo


Old:
Room condition 116 for room 53: IF (((((VERB (VERB 42:"ROW") AND ADVE (ADVERB 5:"BACK")) AND NOUN (NOUN 91:"ACROSS")) AND CARR (OBJECT 43:"an oar")) AND SET? (50)) ) MESS (MESSAGE 100:"With short, strong strokes, you quickly row across and disembark.") (42 TO 50) (43 TO 50) RESE (50) GOTO (ROOM 50:"You are on a riverbank. Across the waters is an island.") END
Fixed:
Room condition 116 for room 53: IF (((((VERB (VERB 42:"ROW") AND ADVE (ADVERB 5:"BACK")) AND NOUN (NOUN 91:"ACROSS")) AND CARR (OBJECT 43:"an oar")) AND SET? (50)) ) MESS (MESSAGE 100:"With short, strong strokes, you quickly row across and disembark.") (42 TO 50) GOTO (ROOM 50:"You are on a riverbank. Across the waters is an island.") DROP (OBJECT 43:"an oar") RESE (50) LF LF END
Hex:
6704
80 2B 80 32 09 80 32 0C 80 32 32 >80 32 32 80 2B 07 80 32 0c 3D 3D
Reason:
After you rowed the boat the oar was dropped incorrectly (The weight of the oar wasn't removed).


Old:
Room condition 126 for room 47: IF ((((VERB (VERB 18:"THROW") AND NOUN (NOUN 23:"PEBBLES")) AND CARR (OBJECT 23:"some pebbles")) AND RES? (231)) ) MESS (MESSAGE 164:"The stones crack the ice wall and collapses.") SET (231) WAIT END
The pebbles should disappear from your possession "DROP (OBJECT 23:"pebbles") (23 TO 0)" but unfortunately in the hex editor I can’t add this piece of code. The solution is just to DROP PEBBLES after throwing them.


Old:
Room condition 130 for room 7: IF ((VERB (VERB 58:"CLIMB") AND NOUN (NOUN 73:"DUNES")) ) MESS (MESSAGE 80:"A Greemon appears, takes up your offering & runs off.") GOTO (ROOM 101:"You are in the Red Desert, beware, something is here also.") WAIT END
Fixed:
Room condition 130 for room 7: IF ((VERB (VERB 58:"CLIMB") AND NOUN (NOUN 73:"DUNES")) ) MESS (MESSAGE 60:"The way is rough, but you soldier on.") GOTO (ROOM 101:"You are in the Red Desert, beware, something is here also.") WAIT END
Hex:
67DA 50>3C
Reason:
Typo.


Two changes which make more sense and make the game solvable:

I've noticed two strange things and if I change them the game becomes fully playable, but it will be a guess.

First, if you leave the room with the broken mirrors you enter the university (room 98) this is strange because the old man opens a secret panel for you so you can get inside the university and why should there be another entrance? Furthermore there are some rooms inside the game that are currently not accessible. One is a Ferris wheel site (room 48). It would make sense to go from a mirror room to a Ferris wheel site I guess. From the Ferris wheel site you can reach the locations with the cochineal, which takes me to the second thing I noticed. So instead of going to room 98 you would go to room 48 which could be a typo like there exist many inside the code.

Second: The old man gives a hint on where to find the souls:
“Find where mythical creatures dwell" replies the man rises & bids you good day.”

Most mystical creatures ask for something and they give you a soul, but the fairy doesn’t. Assuming I am right with the above mentioned bug, why should she take you to the location of the Cochineal if it already can be reached? It would make sense if you get a soul like you get from the others. Only thing which makes this theory less certain is it is a different code so it can’t be a typo like the other bugs.

However we probable will never learn how it was meant to be and with making these two small changes it is the only way to make the game solvable. So I guess I’ll just do it like that. For the ones who don’t like this solution, just ignore my fixed game :).


Old:
Room condition 111 for room 56: IF ((VERB (VERB 38:"LEAVE") AND SET? (100)) ) GOTO (ROOM 98:"You are inside the university, all is tranquil.") RESE (100) WAIT END
Fixed:
Room condition 111 for room 56: IF ((VERB (VERB 38:"LEAVE") AND SET? (100)) ) GOTO (ROOM 48:"This is a Ferris Wheel site. The big wheel spins slowly.") RESE (100) WAIT END
Hex :
6497 62>30


Old:
Room condition 134 for room 42: IF ((((VERB (VERB 23:"GIVE") AND NOUN (NOUN 31:"CLOTH")) AND CARR (OBJECT 31:"a piece of cloth")) AND NOT (CARR (OBJECT 17:"a Cochineal"))) ) MESS (MESSAGE 90:"The air is deathly still.") MESS (MESSAGE 81:"A spell has been cast.") FIND (17) WAIT END
Fixed:
Room condition 134 for room 42: IF (((VERB (VERB 23:"GIVE") AND NOUN (NOUN 31:"CLOTH")) AND CARR (OBJECT 31:"a piece of cloth")) ) (9 TO 42) DROP (OBJECT 31:"a piece of cloth") (31 TO 0) LOOK WAIT END
Hex:
680C
80 17 30 80 1f 2f 01 80 1f 20 01 80 11 20 03 01 3e 80 5a 16 80 51 16 80 11 26 2b 3f
To:
80 17 30 80 1f 2f 01 80 1f 20 01 3e 80 09 80 2a 09 80 1f 07 80 1f 80 00 09 15 2b 3f
- LINKS -
COMPILATION -> Official Adventure PD - AMS 10 © Amstrad Adventure PD Library (19??)

 

Goto Top
CPC-POWER/CPCSOFTS, programming by Kukulcan © 2007-2022 all rights reserved.
Reproduction forbidden without any express authorization. All the game titles used belong to their respective owners.
Hébergement Web, Mail et serveurs de jeux haute performance