Jump to content

Knights of Solamnia exploit


Gort

Recommended Posts

I thought it was fixed a long time ago:)

At first, the Knights of Solamnia will ask you to help them home.

Directly afterwards, a Cowled Wizard called Teos will force you to join

with his group. If you ask him to help you free the Knights, he'll refer

you to Ribald in the Adventurer's Mart.

 

Ribald, for a small fee, will organise you a mage. In one day exactly, a

mage will teleport in and free the Knights. You'll be given 45000 xps

and the Golden Girdle (CHEAT: If you're really quick, you can talk to

her multiple times and get the reward multiple times)

Link to comment
yes, i'm saying it

 

 

Hello,

 

I believe, you are right. The Fix adds only a dialogue interrupt, which will end, if the dialog ends, but the effects, that are played have their own (a bit longer) duration.

 

So here my short answer with a solution that should work surely (although I have - again, as often - a typo in my fast written script ;) ):

 

Change in the mgkhol01.dlg:

 

REPLACE_ACTION_TEXT MGKHOL01 ~AddExperienceParty(45000)

GiveItemCreate("BELT02",LastTalkedToBy,0,0,0)

CreateVisualEffectObject("ICCSWOUI",Myself)

Wait(1)

ActionOverride("obssol01",ForceSpell(Myself,DRYAD_TELEPORT))

ActionOverride("obssol02",ForceSpell(Myself,DRYAD_TELEPORT))

ActionOverride("obssol03",ForceSpell(Myself,DRYAD_TELEPORT))

EraseJournalEntry(55626)

EraseJournalEntry(55640)

EraseJournalEntry(55643)

EraseJournalEntry(55641)

EraseJournalEntry(55642)

SetGlobal("SolamnicPrelate","GLOBAL",1)

SetGlobal("Solamnicbuttplug","GLOBAL",1)

ForceSpell(Myself,DRYAD_TELEPORT)~ ~StartCutSceneMode() StartCutScene("BG2Fix01")~

 

The BAF for this BG2Fix01.cut will be:

 

IF

True()

THEN

RESPONSE #100

CutSceneId(Player1)

AddExperienceParty(45000) ActionOverride("mgkhol01",GiveItemCreate("BELT02",LastTalkedToBy,0,0,0))

ActionOverride("mgkhol01",CreateVisualEffectObject("ICCSWOUI",Myself))

Wait(1)

ActionOverride("obssol01",ForceSpell(Myself,DRYAD_TELEPORT))

ActionOverride("obssol02",ForceSpell(Myself,DRYAD_TELEPORT))

ActionOverride("obssol03",ForceSpell(Myself,DRYAD_TELEPORT))

EraseJournalEntry(55626)

EraseJournalEntry(55640)

EraseJournalEntry(55643)

EraseJournalEntry(55641)

EraseJournalEntry(55642)

SetGlobal("SolamnicPrelate","GLOBAL",1)

SetGlobal("Solamnicbuttplug","GLOBAL",1)

ActionOverride("mgkhol01",ForceSpell(Myself,DRYAD_TELEPORT))

Wait(3)

EndCutSceneMode()

END

 

Regards

 

Roana

 

Edited: OOOOOhhhps... - very wrong WeiDu code... :) - now corrected :)

 

(I guess I should learn WeiDu some time... :) )

Link to comment

First: can't replicate this. If I get in quick enough, I can get Paac to go through her dialogue again, but not after she gives the reward so I can't get an actual exploit.

 

I think way back in the day, devSin warned me that a DialogueInterrupt(FALSE) wasn't sufficient for these, though I believe pairing it with an Interrupt(FALSE) is. I don't think we need to revert to a cutscene.

Link to comment

I'm not entirely sure why someone would go through the trouble of manipulating that cheat in that way in the first place. IMO, if someone is *that* determined to cheat, they can always use the console to give themselves the appropriate experience and Golden Girdles.

Link to comment
I'm not entirely sure why someone would go through the trouble of manipulating that cheat in that way in the first place. IMO, if someone is *that* determined to cheat, they can always use the console to give themselves the appropriate experience and Golden Girdles.

Bravo! I couldn't say it better :)

Link to comment
I'm not entirely sure why someone would go through the trouble of manipulating that cheat in that way in the first place. IMO, if someone is *that* determined to cheat, they can always use the console to give themselves the appropriate experience and Golden Girdles.

 

Hello,

 

I agree :)

 

Didn't have implemented that above in my own game too. I fully agree to you, that the Fixpack should NOT eleminate such cheat-possibilitys in the game at the first place, but I have read of this everywhere known "cheat-possibility" here in these froums so often, that I just wanted to show up a possibility to get absloute sure rid of it :) .

 

It seems, that you have arrived at a status of regular game programmers: give the people a few goodies - and - they will want ALL. I guess, you will have to live with this... ;) .

 

If I want to cheat for some reason (e.g. testing my own stuff), I CLUA what I want :)

 

Regards

 

Roana

Link to comment
The assumption that exploits can only be encountered by willful application of cheating is incorrect; ones such as this can be accidentally triggered by a stray mouse click. Ergo, it's in the Fixpack.

 

Very true, in all likelyhood this exploit was "discovered" by accident in the first place.

Link to comment

I've added additional safeguards here.

// removes exploit of multiple XP for sending Solamnic Knights home
ADD_STATE_TRIGGER MGKHOL01 0 ~Global("CDNoRepeat","LOCALS",0)~ 
ADD_TRANS_ACTION MGKHOL01
BEGIN 0 END
BEGIN 0 END
~SetGlobal("CDNoRepeat","LOCALS",1)~
REPLACE_ACTION_TEXT MGKHOL01 ~AddExperienceParty(45000)~ ~DialogInterrupt(FALSE) AddExperienceParty(45000)~

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...