Forum posts

Forum: Might and Magic VIII: Day of the Destroyer

Thread: New findings

Started by: mugg1991mugg1991

4) Other Keyboard Information

Full screen/Windowed Toggle: F4

Quicksave feature: F11

You can pause Might and Magic VIII by pressing the Esc key to bring up
the options menu or by pressing the Enter key to enter turn base mode.

1.0 Readme

 

Forum: Might and Magic VIII: Day of the Destroyer

Thread: New findings

Started by: mugg1991mugg1991

These warps on death can be faster but overall due to fixed delay when the game is loading and time needed to set them up felt overall not much faster. Spawning on top of Ravenshore means no Earth Prison save, would be cool to find a different spot for that.

There was an idea to speed up killing party with Death Blossom spell. Vampire character from the inn at Daggerwound misses 1 personality stat to cast it. Being able to cast it would make the run much more consistent. However as for now, no idea how to get that 1 stat consistently since barrels spawn randomly.
There is a cleric character at Daggerwound who can cast it but at this point getting him would be too slow.

Another idea was to warp from the boat at Ravenshore to the Plane of Earth gates. It seems to work if using target spells (like Mind Blast) in controlls > video settings and then traveling to Daggerwound but it looks like its not very consistent and 80% attempts result in a crash.

For now the steps for map corruption (Ravenshore only) are:
Only works in hardware mode
- Save in front of any dungeon entrance / map edge / boat / stables
- Restart the game
- Load the save
- Fire aura in the Controls menu
- Enter / cross / travel
- Load the autosave (crash)
- Confirm the autosave
This pulls some map data from the map you are traveling to (monsters, NPCs, some sprite-based objects), what's interesting is that the events attached to the sprite-based objects are from the referenced map, not from Ravenshore, no idea how they are being loaded. Only maps adjacent to Ravenshore seemed to work.
Sometimes it was consistent sometimes not. It's not a new thing, the similar results can be achieved in 6 and 7 but in a bit different way. There are some more info in the guide sections of these games.

 

Forum: Anachronox

Thread: Let’s Start

Started by: WheezyDaWeezerWheezyDaWeezer

Multiplied damage by mystech if selecting options from 5 to 0 (using keyboard).

 

Forum: Anachronox

Thread: Let’s Start

Started by: WheezyDaWeezerWheezyDaWeezer

Some new stuff:

Allows to get past the sock check so you can get a weapon upgrade for Boots earlier or complete Eddie's quest right away:

Dupe of pick-ups. There was a way to dupe equipment prior to that, but that one allows to duplicate all pick-ups (collectibles, cobalt crawlers, quest items) as well as equipment. But it's limited to one copy I think. So 2 for 1 once.

Worldskill Clip

We noclip all the way in direction where the worldskill is taking place, pretty neat stuff.

 

Forum: Might and Magic VI: The Mandate of Heaven

Thread: Quest Events

Started by: AlpacaNoxAlpacaNox

Contents

[Hide]  

QUESTS

[Hide]  

Hive ending

Here's the last event from the game:

Quote


event 60
Hint = str[27] -- "Exit"
0: Cmp {"QBits", Value = 202, jump = 3} -- NPC
1: StatusText {Str = 25} -- "The door is locked"
2: Exit {}

3: ForPlayer ("All")
4: Cmp {"Inventory", Value = 544, jump = 7} -- "Ritual of the Void"
5: EnterHouse {Id = 601} -- Lose
6: Exit {}

7: Set {"QBits", Value = 237} -- NPC
8: Subtract {"QBits", Value = 198} -- Quest item bits for seer
9: Subtract {"Inventory", Value = 544} -- "Ritual of the Void"
10: Set {"Awards", Value = 36} -- "Destroyed the Hive and Saved Enroth"
11: EnterHouse {Id = 600} -- Win
end


QBits is a sort of array of quest triggers. The value can be set or not (?)

There is no map event at Hive that sets the 237 value, because it is handled by the death state of the Queen and Reactor.
Using telekinesis for killing Reactor or Queen won't do anything because the death state doesn't happen.
If there is a way to summon Reactor anywhere else you'd still be able to complete the game by destroying it.
Visiting houses 600 & 601 completes the game

[Hide]  

Admission to the Oracle

The game checks if that quest is completed not only at High Council but after each council quest as well

Awards

Quote


event 375 -- "Admission to the Oracle"
0: ForPlayer ("All")
1: Cmp {"Awards", Value = 4, jump = 4} -- "Destroyed the Devil's Post"
2: SetMessage {Str = 122} -- "I am only allowed to vote on the issues that Lord Temper specifically instructs me on. Garner his approval, and on his recommendation, I will vote in your favor."
3: Exit {}

4: SetMessage {Str = 123} -- "Osric has instructed me to vote for your cause. I give you my full support in his name."
end

event 376 -- "Admission to the Oracle"
0: ForPlayer ("All")
1: Cmp {"Awards", Value = 6, jump = 4} -- "Fixed the Stable Prices"
2: SetMessage {Str = 124} -- "Lady Fleise could not possibly care less about your problems and I will therefore not even consider your request."
3: Exit {}

4: SetMessage {Str = 125} -- "You have my vote, in Loretta’s name, to visit the Oracle."
end

event 377 -- "Admission to the Oracle"
0: ForPlayer ("All")
1: Cmp {"Awards", Value = 5, jump = 4} -- "Captured the Prince of Thieves"
2: SetMessage {Str = 126} -- "Lord Stone has not authorized me to vote in your behalf. You will need to take this matter up with him."
3: Exit {}

4: SetMessage {Str = 127} -- "Anthony backs your request to visit the Oracle, and I give you my vote on his behalf."
end

event 378 -- "Admission to the Oracle"
0: ForPlayer ("All")
1: Cmp {"Awards", Value = 7, jump = 4} -- "Ended Winter"
2: SetMessage {Str = 128} -- "I cannot vote on matters that do not concern Lord Stromgard. Until you have his backing, I cannot vote for you."
3: Exit {}

4: SetMessage {Str = 129} -- "I vote for you to visit the Oracle, as instructed by Eric von Stromgard himself."
end

event 379 -- "Admission to the Oracle"
0: ForPlayer ("All")
1: Cmp {"Awards", Value = 3, jump = 4} -- "Retrieved the Hourglass of Time"
2: SetMessage {Str = 130} -- "Until I receive favorable word from Lord Newton on your request, I cannot give you my backing."
3: Exit {}

4: SetMessage {Str = 131} -- "Albert has given me permission to back your request to visit the Oracle. "
end

Quest

Quote


event 380 -- "Admission to the Oracle"
0: ForPlayer ("All")
1: Cmp {"Inventory", Value = 502, jump = 3} -- "Letter from Zenofex"
2: GoTo {jump = 30}

3: MoveNPC {NPC = 304, HouseId = 0} -- "Slicker Silvertongue"
4: Subtract {"Inventory", Value = 502} -- "Letter from Zenofex"
5: SetMessage {Str = 134} -- "Do not believe you have won! Soon the Iron Fist will lose its grip, and I will be your king! And you can be sure I won't forget you…"
6: Add {"ReputationIs", Value = 200}
7: Set {"QBits", Value = 168} -- NPC
8: ForPlayer ("All")
9: Add {"Awards", Value = 32} -- "Exposed the Traitor on the High Council"
10: Subtract {"QBits", Value = 190} -- Quest item bits for seer
11: Subtract {"QBits", Value = 201} -- "Bring the the letter detailing Silvertongue's treason to the High Council in Free Haven."
12: Cmp {"QBits", Value = 200, jump = 14} -- "Find a cure for Slicker Silvertongue in the Superior Temple of Baa east of Castle Kriegspire and return to Wilbur Humphrey with the good news."
13: GoTo {jump = 15}

14: Subtract {"QBits", Value = 200} -- "Find a cure for Slicker Silvertongue in the Superior Temple of Baa east of Castle Kriegspire and return to Wilbur Humphrey with the good news."
15: SetNPCTopic {NPC = 4, Index = 0, Event = 103} -- "Wilbur Humphrey" : "Service to the Crown"
16: Cmp {"Awards", Value = 2, jump = 18} -- "Retrieved Lord Kilburn's Shield"
17: Exit {}

18: Cmp {"Awards", Value = 3, jump = 20} -- "Retrieved the Hourglass of Time"
19: Exit {}

20: Cmp {"Awards", Value = 4, jump = 22} -- "Destroyed the Devil's Post"
21: Exit {}

22: Cmp {"Awards", Value = 5, jump = 24} -- "Captured the Prince of Thieves"
23: Exit {}

24: Cmp {"Awards", Value = 6, jump = 26} -- "Fixed the Stable Prices"
25: Exit {}

26: Cmp {"Awards", Value = 7, jump = 28} -- "Ended Winter"
27: Exit {}

28: Set {"QBits", Value = 167} -- NPC
29: Exit {}

30: Cmp {"Awards", Value = 2, jump = 33} -- "Retrieved Lord Kilburn's Shield"
31: SetMessage {Str = 132} -- "You have not adequately demonstrated your loyalty to my liege, Lord Humphrey, and I cannot give you my vote."
32: Exit {}

33: SetMessage {Str = 133} -- "As long as I am a member of this council, you will not be permitted to visit the Oracle. I am not convinced of your sincerity and will not grant your request."
34: SetNPCTopic {NPC = 4, Index = 0, Event = 101} -- "Wilbur Humphrey" : "Silvertongue's Refusal"
end

[Hide]  

The Third Eye

The King's Library

Quote


event 42
Hint = str[168]
0: Cmp {"QBits", Value = 177, jump = 3} -- NPC
1: EnterHouse {Id = 168} -- "King's Library"
2: Exit {}

3: EnterHouse {Id = 554} -- "King's Library"
end

Well

Quote


event 231
Hint = str[11] -- "Well"
0: Cmp {"QBits", Value = 305, jump = 2} -- NPC
1: Cmp {"QBits", Value = 96, jump = 3} -- "Find the Third Eye and bring it to Prince Nicolai in Castle Ironfist."
2: Exit {}

3: Add {"Inventory", Value = 446} -- "The Third Eye"
4: Set {"QBits", Value = 305} -- NPC
5: Set {"QBits", Value = 196} -- Quest item bits for seer
end

Events

Quote


event 26 -- "The Third Eye"
0: SetMessage {Str = 34} -- "You want to free Archibald?! If the Oracle told you to do it, I guess we should, but he’ll be trouble once he’s loose, that’s for sure. I know where the bell is that turned him to stone, but I can’t open the family vault that it’s in without the Third Eye. It’s one of three gems you need to put into the door of the vault in order to open it. I’ve got two of them– one in my father’s crown and one in his scepter, but my father hid the third one, and he didn’t tell me where it is. If you could find it, I could open the vault and get the bell."
1: Add {"QBits", Value = 96} -- "Find the Third Eye and bring it to Prince Nicolai in Castle Ironfist."
2: SetNPCTopic {NPC = 13, Index = 1, Event = 27} -- "Nicolai Ironfist" : "Uncle Archibald"
3: SetNPCTopic {NPC = 8, Index = 1, Event = 0} -- "Oracle"
end

event 27 -- "Uncle Archibald"
0: ForPlayer ("All")
1: Cmp {"Inventory", Value = 446, jump = 4} -- "The Third Eye"
2: SetMessage {Str = 35} -- "Without the Third Eye, I can’t get into the vault to get you the bell that will release Archibald. He must have hidden it near the castle, because he used to just go right outside and fetch it whenever he needed to open the vault."
3: Exit {}

4: SetMessage {Str = 36} -- "You found the Third Eye! All right, wait here– the bell should be in the vault. <Nicolai runs out of the throne room, returning a short while later> Ok, here it is! "
5: Subtract {"Inventory", Value = 446} -- "The Third Eye"
6: Subtract {"QBits", Value = 196} -- Quest item bits for seer
7: Subtract {"QBits", Value = 96} -- "Find the Third Eye and bring it to Prince Nicolai in Castle Ironfist."
8: ForPlayer ("Current")
9: Add {"Inventory", Value = 461} -- "Tanir's Bell"
10: Set {"QBits", Value = 197} -- Quest item bits for seer
11: SetNPCTopic {NPC = 13, Index = 1, Event = 28} -- "Nicolai Ironfist" : "Uncle Archibald"
end

event 28 -- "Uncle Archibald"
0: SetMessage {Str = 37} -- "I hope you know what you're doing. Everyone says my uncle is quite treacherous."
end

event 30 -- "Release Archibald"
0: Cmp {"QBits", Value = 177, jump = 12} -- NPC
1: SetMessage {Str = 39} -- "Now wait just a minute Tanir, and I’ll make it worth your while to let me…Oh. <Archibald is silent for a long while> I guess I have you people to thank for releasing me from my prison of stone. Thank you! You say you need a spell that I've created? <reaching to the shelves and removing a library scroll> Well, as a reward, I’ll give you the Ritual of the Void. Use it in good health. Now, I’m sure you’re very busy, as am I…<Archibald waves his arms and fades away>"
2: Add {"Inventory", Value = 544} -- "Ritual of the Void"
3: Subtract {"QBits", Value = 197} -- Quest item bits for seer
4: Add {"QBits", Value = 177} -- NPC
5: Subtract {"QBits", Value = 97} -- Walt
6: Subtract {"QBits", Value = 235} -- "Obtain Arcane Magic from Archibald in the Royal Library in Castle Ironfist"
7: Add {"QBits", Value = 198} -- Quest item bits for seer
8: ForPlayer ("All")
9: Subtract {"ReputationIs", Value = 1000}
10: Add {"Experience", Value = 50000}
11: MoveNPC {NPC = 12, HouseId = 0} -- "Archibald Ironfist"
12: Exit {}
end

[Hide]  

Superior Temple of Baa entrance

Quote


event 90
0: ForPlayer ("All")
1: Cmp {"Inventory", Value = 485, jump = 4} -- "Cloak of Baa"
2: StatusText {Str = 12} -- "You are not a follower of Baa. Begone!"
3: Exit {}

4: MoveToMap {X = 2094, Y = -19, Z = 177, Direction = 337, LookAngle = 0, SpeedZ = 0, HouseId = 197, Icon = 5, Name = "T7.Blv"} -- "Superior Temple of Baa"
5: Exit {}

6: EnterHouse {Id = 197} -- "Superior Temple of Baa"
end

[Hide]  

Dragon Towers

Quote


event 210
Timer(<function>, 5*const.Minute)
1: Cmp {"QBits", Value = 157, jump = 3} -- NPC
2: Cmp {"Flying", Value = 0, jump = 4}
3: Exit {}

4: CastSpell {Spell = 6, Mastery = const.Master, Skill = 5, FromX = 3039, FromY = -9201, FromZ = 2818, ToX = 0, ToY = 0, ToZ = 0} -- "Fireball"
end

event 211
0: ForPlayer ("All")
1: Cmp {"QBits", Value = 157, jump = 3} -- NPC
2: Cmp {"Inventory", Value = 486, jump = 4} -- "Dragon Tower Keys"
3: Exit {}

4: Set {"QBits", Value = 157} -- NPC
5: SetTextureOutdoors {Model = 53, Facet = 42, Name = "T1swBu"}
end

[Hide]  

Memory Crystals

As item

copy-pasted several times just with different ids for the other crystals

Quote


event 62
Hint = str[38]
0: ForPlayer ("All")
1: Cmp {"QBits", Value = 104, jump = 8} -- CD3
2: Cmp {"Inventory", Value = 553, jump = 8} -- "Memory Crystal Epsilon"
3: SetSprite {SpriteId = 290, Visible = 1, Name = "crysdisc"}
4: ForPlayer ("Current")
5: Add {"Inventory", Value = 553} -- "Memory Crystal Epsilon"
6: Set {"QBits", Value = 104} -- CD3
7: Set {"QBits", Value = 194} -- Quest item bits for seer
8: Exit {}
end

event 63
function events.LoadMap()
1: ForPlayer ("All")
2: Cmp {"QBits", Value = 104, jump = 5} -- CD3
3: Cmp {"Inventory", Value = 553, jump = 5} -- "Memory Crystal Epsilon"
4: Exit {}

5: SetSprite {SpriteId = 290, Visible = 1, Name = "crysdisc"}
end

Placement event

copy-pasted several times just with different ids for the other crystals

Quote


event 5
0: Cmp {"MapVar6", Value = 1, jump = 2}
1: Exit {}

2: Cmp {"QBits", Value = 280, jump = 10} -- NPC
3: ForPlayer ("All")
4: Cmp {"Inventory", Value = 550, jump = 12} -- "Memory Crystal Alpha"
5: Cmp {"Inventory", Value = 551, jump = 18} -- "Memory Crystal Beta"
6: Cmp {"Inventory", Value = 552, jump = 24} -- "Memory Crystal Delta"
7: Cmp {"Inventory", Value = 553, jump = 30} -- "Memory Crystal Epsilon"
8: StatusText {Str = 9} -- "Insert Memory module to activate Melian."
9: Exit {}

10: StatusText {Str = 10} -- "Memory module restored."
11: Exit {}

12: Cmp {"QBits", Value = 100, jump = 5} -- Oracle
13: Subtract {"Inventory", Value = 550} -- "Memory Crystal Alpha"
14: Set {"QBits", Value = 100} -- Oracle
15: Subtract {"QBits", Value = 191} -- Quest item bits for seer
16: Set {"QBits", Value = 280} -- NPC
17: GoTo {jump = 36}

18: Cmp {"QBits", Value = 101, jump = 6} -- Oracle
19: Subtract {"Inventory", Value = 551} -- "Memory Crystal Beta"
20: Set {"QBits", Value = 101} -- Oracle
21: Subtract {"QBits", Value = 192} -- Quest item bits for seer
22: Set {"QBits", Value = 280} -- NPC
23: GoTo {jump = 36}

24: Cmp {"QBits", Value = 102, jump = 7} -- Oracle
25: Subtract {"Inventory", Value = 552} -- "Memory Crystal Delta"
26: Set {"QBits", Value = 102} -- Oracle
27: Subtract {"QBits", Value = 193} -- Quest item bits for seer
28: Set {"QBits", Value = 280} -- NPC
29: GoTo {jump = 36}

30: Cmp {"QBits", Value = 103, jump = 10} -- Oracle
31: Subtract {"Inventory", Value = 553} -- "Memory Crystal Epsilon"
32: Set {"QBits", Value = 103} -- Oracle
33: Subtract {"QBits", Value = 194} -- Quest item bits for seer
34: Set {"QBits", Value = 280} -- NPC
35: GoTo {jump = 36}

36: SetSprite {SpriteId = 4, Visible = 1, Name = "mcryst01"}
37: SetLight {Id = 63, On = true}
38: Add {"Experience", Value = 100000}
39: StatusText {Str = 11} -- "+100,000 Experience"
40: Cmp {"QBits", Value = 100, jump = 42} -- Oracle
41: Exit {}

42: Cmp {"QBits", Value = 101, jump = 44} -- Oracle
43: Exit {}

44: Cmp {"QBits", Value = 102, jump = 46} -- Oracle
45: Exit {}

46: Cmp {"QBits", Value = 103, jump = 48} -- Oracle
47: Exit {}

48: SetNPCTopic {NPC = 8, Index = 0, Event = 76} -- "Oracle" : "Control Center"
49: SetNPCTopic {NPC = 8, Index = 1, Event = 0} -- "Oracle"
end

event 51
function events.LoadMap()
1: Cmp {"QBits", Value = 280, jump = 6} -- NPC
2: Cmp {"QBits", Value = 281, jump = 8} -- NPC
3: Cmp {"QBits", Value = 282, jump = 10} -- NPC
4: Cmp {"QBits", Value = 283, jump = 12} -- NPC
5: Exit {}

6: SetSprite {SpriteId = 4, Visible = 1, Name = "mcryst01"}
7: GoTo {jump = 2}

8: SetSprite {SpriteId = 3, Visible = 1, Name = "mcryst01"}
9: GoTo {jump = 3}

10: SetSprite {SpriteId = 2, Visible = 1, Name = "mcryst01"}
11: GoTo {jump = 4}

12: SetSprite {SpriteId = 1, Visible = 1, Name = "mcryst01"}
end

[Hide]  

EXTRA

[Hide]  

Shrine of the Gods

Quote


event 103
Hint = str[16] -- "Shrine of the Gods"
0: Cmp {"PlayerBits", Value = 10, jump = 17}
1: Add {"FireResistance", Value = 20}
2: Add {"ElecResistance", Value = 20}
3: Add {"ColdResistance", Value = 20}
4: Add {"PoisonResistance", Value = 20}
5: Add {"MagicResistance", Value = 20}
6: Add {"BaseMight", Value = 20}
7: Add {"BaseIntellect", Value = 20}
8: Add {"BasePersonality", Value = 20}
9: Add {"BaseEndurance", Value = 20}
10: Add {"BaseSpeed", Value = 20}
11: Add {"BaseAccuracy", Value = 20}
12: Add {"BaseLuck", Value = 20}
13: Set {"PlayerBits", Value = 10}
14: Set {"MainCondition", Value = const.Condition.Cursed}
15: PlaySound {Id = 14050, X = 0, Y = 0}
16: StatusText {Str = 7} -- "+20 to all stats permanent."
17: Exit {}
end

[Hide]  

Travel

Quote


event 14
Hint = str[50]
0: EnterHouse {Id = 50} -- "Free Haven Travel East"
end

event 15
Hint = str[50]
0: Exit {}

1: EnterHouse {Id = 50} -- "Free Haven Travel East"
end

event 16
Hint = str[51]
0: EnterHouse {Id = 51} -- "Free Haven Travel West"
end

event 17
Hint = str[51]
0: Exit {}

1: EnterHouse {Id = 51} -- "Free Haven Travel West"
end


Traveling being the same as entering a house was a bit surprising

[Hide]  

The Circus (Blackshire)

Entrance

Quote


event 30
Hint = str[166]
0: Cmp {"DayOfYearIs", Value = 84, jump = 30}
1: Cmp {"DayOfYearIs", Value = 85, jump = 30}
2: Cmp {"DayOfYearIs", Value = 86, jump = 30}
3: Cmp {"DayOfYearIs", Value = 87, jump = 30}
4: Cmp {"DayOfYearIs", Value = 88, jump = 30}
5: Cmp {"DayOfYearIs", Value = 89, jump = 30}
6: Cmp {"DayOfYearIs", Value = 90, jump = 30}
7: Cmp {"DayOfYearIs", Value = 91, jump = 30}
8: Cmp {"DayOfYearIs", Value = 92, jump = 30}
9: Cmp {"DayOfYearIs", Value = 93, jump = 30}
10: Cmp {"DayOfYearIs", Value = 94, jump = 30}
11: Cmp {"DayOfYearIs", Value = 95, jump = 30}
12: Cmp {"DayOfYearIs", Value = 96, jump = 30}
13: Cmp {"DayOfYearIs", Value = 97, jump = 30}
14: Cmp {"DayOfYearIs", Value = 98, jump = 30}
15: Cmp {"DayOfYearIs", Value = 99, jump = 30}
16: Cmp {"DayOfYearIs", Value = 100, jump = 30}
17: Cmp {"DayOfYearIs", Value = 101, jump = 30}
18: Cmp {"DayOfYearIs", Value = 102, jump = 30}
19: Cmp {"DayOfYearIs", Value = 103, jump = 30}
20: Cmp {"DayOfYearIs", Value = 104, jump = 30}
21: Cmp {"DayOfYearIs", Value = 105, jump = 30}
22: Cmp {"DayOfYearIs", Value = 106, jump = 30}
23: Cmp {"DayOfYearIs", Value = 107, jump = 30}
24: Cmp {"DayOfYearIs", Value = 108, jump = 30}
25: Cmp {"DayOfYearIs", Value = 109, jump = 30}
26: Cmp {"DayOfYearIs", Value = 110, jump = 30}
27: Cmp {"DayOfYearIs", Value = 111, jump = 30}
28: StatusText {Str = 9} -- "No one is here. The Circus has moved."
29: Exit {}

30: EnterHouse {Id = 166} -- "Circus"
end

Game

Quote


event 108 -- "Play Endurance Game for 50 Gold"
0: Subtract {"Gold", Value = 50}
1: Cmp {"CurrentEndurance", Value = 200, jump = 3}
2: GoTo {jump = 22}

3: RandomGoTo {jumpA = 4, jumpB = 7, jumpC = 10, jumpD = 13, jumpE = 16, jumpF = 19}
4: Add {"Inventory", Value = 477} -- "Four Leaf Clover"
5: SetMessage {Str = 189} -- "Incredible! Are you sure you didn't cheat? Well, a rule's a rule. Here's your prize– a four leaf clover!"
6: Exit {}

7: Add {"Inventory", Value = 477} -- "Four Leaf Clover"
8: SetMessage {Str = 189} -- "Incredible! Are you sure you didn't cheat? Well, a rule's a rule. Here's your prize– a four leaf clover!"
9: Exit {}

10: Add {"Inventory", Value = 477} -- "Four Leaf Clover"
11: SetMessage {Str = 189} -- "Incredible! Are you sure you didn't cheat? Well, a rule's a rule. Here's your prize– a four leaf clover!"
12: Exit {}

13: Add {"Inventory", Value = 471} -- "Harpy Feather"
14: SetMessage {Str = 188} -- "Excellent work, you win a harpy feather!"
15: Exit {}

16: Add {"Inventory", Value = 471} -- "Harpy Feather"
17: SetMessage {Str = 188} -- "Excellent work, you win a harpy feather!"
18: Exit {}

19: Add {"Inventory", Value = 470} -- "Lodestone"
20: SetMessage {Str = 187} -- "Good job, I thought I had you there. You win a lodestone!"
21: Exit {}

22: Cmp {"CurrentEndurance", Value = 150, jump = 24}
23: GoTo {jump = 43}

24: RandomGoTo {jumpA = 25, jumpB = 28, jumpC = 31, jumpD = 34, jumpE = 37, jumpF = 40}
25: Add {"Inventory", Value = 477} -- "Four Leaf Clover"
26: SetMessage {Str = 189} -- "Incredible! Are you sure you didn't cheat? Well, a rule's a rule. Here's your prize– a four leaf clover!"
27: Exit {}

28: Add {"Inventory", Value = 477} -- "Four Leaf Clover"
29: SetMessage {Str = 189} -- "Incredible! Are you sure you didn't cheat? Well, a rule's a rule. Here's your prize– a four leaf clover!"
30: Exit {}

31: Add {"Inventory", Value = 471} -- "Harpy Feather"
32: SetMessage {Str = 188} -- "Excellent work, you win a harpy feather!"
33: Exit {}

34: Add {"Inventory", Value = 471} -- "Harpy Feather"
35: SetMessage {Str = 188} -- "Excellent work, you win a harpy feather!"
36: Exit {}

37: Add {"Inventory", Value = 470} -- "Lodestone"
38: SetMessage {Str = 187} -- "Good job, I thought I had you there. You win a lodestone!"
39: Exit {}

40: Add {"Inventory", Value = 470} -- "Lodestone"
41: SetMessage {Str = 187} -- "Good job, I thought I had you there. You win a lodestone!"
42: Exit {}

43: Cmp {"CurrentEndurance", Value = 100, jump = 45}
44: GoTo {jump = 63}

45: RandomGoTo {jumpA = 46, jumpB = 49, jumpC = 52, jumpD = 55, jumpE = 58, jumpF = 61}
46: Add {"Inventory", Value = 477} -- "Four Leaf Clover"
47: SetMessage {Str = 189} -- "Incredible! Are you sure you didn't cheat? Well, a rule's a rule. Here's your prize– a four leaf clover!"
48: Exit {}

49: Add {"Inventory", Value = 471} -- "Harpy Feather"
50: SetMessage {Str = 188} -- "Excellent work, you win a harpy feather!"
51: Exit {}

52: Add {"Inventory", Value = 471} -- "Harpy Feather"
53: SetMessage {Str = 188} -- "Excellent work, you win a harpy feather!"
54: Exit {}

55: Add {"Inventory", Value = 470} -- "Lodestone"
56: SetMessage {Str = 187} -- "Good job, I thought I had you there. You win a lodestone!"
57: Exit {}

58: Add {"Inventory", Value = 470} -- "Lodestone"
59: SetMessage {Str = 187} -- "Good job, I thought I had you there. You win a lodestone!"
60: Exit {}

61: SetMessage {Str = 186} -- "Too bad! You came pretty close. For 50 gold, I'll give you another chance."
62: Exit {}

63: Cmp {"CurrentEndurance", Value = 75, jump = 65}
64: GoTo {jump = 82}

65: RandomGoTo {jumpA = 66, jumpB = 69, jumpC = 72, jumpD = 75, jumpE = 78, jumpF = 80}
66: Add {"Inventory", Value = 471} -- "Harpy Feather"
67: SetMessage {Str = 188} -- "Excellent work, you win a harpy feather!"
68: Exit {}

69: Add {"Inventory", Value = 471} -- "Harpy Feather"
70: SetMessage {Str = 188} -- "Excellent work, you win a harpy feather!"
71: Exit {}

72: Add {"Inventory", Value = 470} -- "Lodestone"
73: SetMessage {Str = 187} -- "Good job, I thought I had you there. You win a lodestone!"
74: Exit {}

75: Add {"Inventory", Value = 470} -- "Lodestone"
76: SetMessage {Str = 187} -- "Good job, I thought I had you there. You win a lodestone!"
77: Exit {}

78: SetMessage {Str = 186} -- "Too bad! You came pretty close. For 50 gold, I'll give you another chance."
79: Exit {}

80: SetMessage {Str = 186} -- "Too bad! You came pretty close. For 50 gold, I'll give you another chance."
81: Exit {}

82: Cmp {"CurrentEndurance", Value = 50, jump = 84}
83: GoTo {jump = 100}

84: RandomGoTo {jumpA = 85, jumpB = 88, jumpC = 91, jumpD = 94, jumpE = 96, jumpF = 98}
85: Add {"Inventory", Value = 471} -- "Harpy Feather"
86: SetMessage {Str = 188} -- "Excellent work, you win a harpy feather!"
87: Exit {}

88: Add {"Inventory", Value = 470} -- "Lodestone"
89: SetMessage {Str = 187} -- "Good job, I thought I had you there. You win a lodestone!"
90: Exit {}

91: Add {"Inventory", Value = 470} -- "Lodestone"
92: SetMessage {Str = 187} -- "Good job, I thought I had you there. You win a lodestone!"
93: Exit {}

94: SetMessage {Str = 186} -- "Too bad! You came pretty close. For 50 gold, I'll give you another chance."
95: Exit {}

96: SetMessage {Str = 186} -- "Too bad! You came pretty close. For 50 gold, I'll give you another chance."
97: Exit {}

98: SetMessage {Str = 186} -- "Too bad! You came pretty close. For 50 gold, I'll give you another chance."
99: Exit {}

100: RandomGoTo {jumpA = 101, jumpB = 104, jumpC = 107, jumpD = 109, jumpE = 111, jumpF = 113}
101: Add {"Inventory", Value = 470} -- "Lodestone"
102: SetMessage {Str = 187} -- "Good job, I thought I had you there. You win a lodestone!"
103: Exit {}

104: Add {"Inventory", Value = 470} -- "Lodestone"
105: SetMessage {Str = 187} -- "Good job, I thought I had you there. You win a lodestone!"
106: Exit {}

107: SetMessage {Str = 186} -- "Too bad! You came pretty close. For 50 gold, I'll give you another chance."
108: Exit {}

109: SetMessage {Str = 186} -- "Too bad! You came pretty close. For 50 gold, I'll give you another chance."
110: Exit {}

111: SetMessage {Str = 186} -- "Too bad! You came pretty close. For 50 gold, I'll give you another chance."
112: Exit {}

113: SetMessage {Str = 186} -- "Too bad! You came pretty close. For 50 gold, I'll give you another chance."
114: Exit {}
end

[Hide]  

The Obelisk Chest

Quote


event 108
Hint = str[17] -- "rock"
0: Cmp {"MapVar1", Value = 1, jump = 30}
1: Cmp {"QBits", Value = 375, jump = 36} --[[ NPC
431 ]]
2: Cmp {"QBits", Value = 361, jump = 4} --[[ NPC
403 ]]
3: Exit {}

4: Cmp {"QBits", Value = 362, jump = 6} --[[ NPC
405 ]]
5: Exit {}

6: Cmp {"QBits", Value = 363, jump = 8} --[[ NPC
407 ]]
7: Exit {}

8: Cmp {"QBits", Value = 364, jump = 10} --[[ NPC
409 ]]
9: Exit {}

10: Cmp {"QBits", Value = 365, jump = 12} --[[ NPC
411 ]]
11: Exit {}

12: Cmp {"QBits", Value = 366, jump = 14} --[[ NPC
413 ]]
13: Exit {}

14: Cmp {"QBits", Value = 367, jump = 16} --[[ NPC
415 ]]
15: Exit {}

16: Cmp {"QBits", Value = 368, jump = 18} --[[ NPC
417 ]]
17: Exit {}

18: Cmp {"QBits", Value = 369, jump = 20} --[[ NPC
419 ]]
19: Exit {}

20: Cmp {"QBits", Value = 370, jump = 22} --[[ NPC
421 ]]
21: Exit {}

22: Cmp {"QBits", Value = 371, jump = 24} --[[ NPC
423 ]]
23: Exit {}

24: Cmp {"QBits", Value = 372, jump = 26} --[[ NPC
425 ]]
25: Exit {}

26: Cmp {"QBits", Value = 373, jump = 28} --[[ NPC
427 ]]
27: Exit {}

28: Cmp {"QBits", Value = 374, jump = 30} --[[ NPC
429 ]]
29: Exit {}

30: OpenChest {Id = 6}
31: Cmp {"QBits", Value = 375, jump = 35} --[[ NPC
431 ]]
32: Add {"Gold", Value = 250000}
33: Set {"MapVar1", Value = 1}
34: Set {"QBits", Value = 375} --[[ NPC
431 ]]
35: Exit {}

36: OpenChest {Id = 7}
end

[Hide]  

Throne Room Example

Quote


event 34
Hint = str[161]
0: MoveToMap {X = 0, Y = 0, Z = 0, Direction = 0, LookAngle = 0, SpeedZ = 0, HouseId = 161, Icon = 2, Name = "0"} -- "Castle Fleise"
1: EnterHouse {Id = 162} -- "Throne Room"
end

I guess MoveToMap doesn't actually move the party anywhere most of the time, its just a way to ensure that player is at some certain location right now and not outside for example, so that monsters won't attack and such.
The command is also used for map teleports:
Quote


event 215
0: MoveToMap {X = -9192, Y = 21936, Z = 160, Direction = 1536, LookAngle = 0, SpeedZ = 0, HouseId = 0, Icon = 0, Name = "0"}
end

[Hide]  

? (Castle Ironfist)

Quote


event 220
0: Cmp {"MapVar9", Value = 1, jump = 4}
1: Set {"MapVar9", Value = 1}
2: SetFacetBitOutdoors {Model = 1, Facet = -1, Bit = const.FacetBits.Invisible, On = true}
3: Exit {}

4: Set {"MapVar9", Value = 0}
5: SetFacetBitOutdoors {Model = 1, Facet = -1, Bit = const.FacetBits.Invisible, On = false}
end

event 221
0: Cmp {"MapVar14", Value = 1, jump = 4}
1: Set {"MapVar14", Value = 1}
2: SetFacetBitOutdoors {Model = 1, Facet = -1, Bit = const.FacetBits.Untouchable, On = true}
3: Exit {}

4: Set {"MapVar14", Value = 0}
5: SetFacetBitOutdoors {Model = 1, Facet = -1, Bit = const.FacetBits.Untouchable, On = false}
end

[Hide]  

Barrels

Quote


event 411 -- "Barrel of Red liquid"
0: StatusText {Str = 411} -- "+1 Might permanent"
1: Add {"BaseMight", Value = 1}
2: Set {"AutonotesBits", Value = 117} -- "Red liquid grants Might."
3: ChangeEvent {NewEvent = 410} -- "Empty Barrel"
end

[Hide]  

That is the naming scheme for the outdoor maps: [for example: out.odm]
https://i.imgur.com/RNS9co1.jpg

You can download all the scripts from the game here
Thanks to GrayFace!

DvD_01DvD_01 likes this. 

Forum: Magicka 2

Thread: About Bananas Mode

Started by: ZhenchaoZhenchao

Imo that would make an interesting category which can be also split more for some different interesting challenges.
Also the only moderator for this game was last time online 1 year ago, so it might be a good idea to find someone else.

SGASGA likes this. 

Forum: Anachronox

Thread: Let’s Start

Started by: WheezyDaWeezerWheezyDaWeezer

Interesting, when loading a save you have a couple of ticks to interact with things before the map switches (with space key, since mouse cursor is in the menu). Activating elevator for example, keeps a part of UI with buttons on screen when the map finishes loading. Talking to someone prior to switching a map will keep a dialogue window on top for a half a second.
https://i.imgur.com/2X0c4th.png
Tried pickups and this is what I've got with a random thing:
https://i.imgur.com/KMy1Kok.png
Maybe picking up other items will actually do something.
Using worldskill doesn't seem to do anything (well it seems like it, might be just a different timing).
Currently the most consistent thing to interact with is Stargent Laserblade from Mystech Tunnels, interacting with them in different locations gives different results. For example if it's Rowdy's we're all of a sudden trying to interact with a path corner 😃
https://i.imgur.com/oRGVGCP.png
Good to know! 😃
https://i.imgur.com/6jOdlON.png
So in theory if we'd be able to find matching combinations between maps it is possible to instantly pickup things? :thinking:
Also the space key does a bit weird things. It is supposed to act in the same way as left mouse button(?) but check this out:

The problem is that it is not really consistent, sometimes it works, sometimes it doesn't. Has something to do with camera angles I suppose.

IglumIglum likes this. 

Forum: Risen

Thread: Gothic + Risen Speedrun Discord

Started by: BlaGeBlaGe

Invite expired

 

Forum: Anachronox

Thread: Let’s Start

Started by: WheezyDaWeezerWheezyDaWeezer

You can actually skip the cutscenes. What you need to do is to press "esc" while running into a cutscene trigger. (You don't stop running while in the menu). When you will hit the trigger the "pause" splash will appear in the menu indicating that a cutscene began. Then you need to save and load the game (still in the menu). After the game will be loaded the cutscene will be skipped. Sometimes after skip the game does weird things like changing fov for example.
One more thing you can do with that glitch: if you'd attempt to skip a battle like that the game will skip every other battle afterwards making it a pacifist run of some sort. Restarting the game brings things back to normal. So you glitch the game, skip all the battles you need, restart when you need normal behavior and then glitch it again once more to keep going.

A bit different way to skip battles:

This is for ordinary battles which are not tied to cutscenes. You save before the trigger then run into it while in the menu and when a battle starts you load the save you've made before it. The game will usually softlock (your characters and enemies will remain idle) or crash if you'd attempt to load a save made during a glitched battle.

IglumIglum and DaccioxDacciox like this.