Jump to content


Photo

Planar Sphere Mod: bugs (and some fixes) in the timed episodes


  • Please log in to reply
7 replies to this topic

#1 Ieldra

Ieldra
  • Member
  • 158 posts

Posted 03 September 2007 - 12:06 AM

This must be one of the buggiest mods in existence. In the timed episodes, there wasn't a single cutscene that didn't hang at least once. Here are some of the occurrences, at least three of them real bugs....

(1) Adventurer attack
This occasionally hangs when the dialogue is supposed to start, probably only when using the Planar Sphere Return mod's teleport function. I couldn't reproduce it reliably, and it was gone after using the normal entrance.

(2) Fanatic attack
This *always* hangs when the dialogue is supposed to start. Probably, the reason is that the fanatic no. 5, who is supposed to initiate dialogue, doesn't have a dialogue file attached - fanatic no. 1 has psAdAtt2.dlg, but he is never called. In psCut33.bcs, I changed

ActionOverride("psFanat5",StartDialogueNoSet(Player1))
to
ActionOverride("psFanat1",StartDialogueNoSet(Player1))

and from then on it worked. For a complete fix, in psAdAtt2.dlg, instead of making fanatics 1 to 4 to enemies, fanatics 2 to 5 should be made to enemies, or one of them will remain blue.

(3) Degrodel attack
Dozens of apprentices will spawn to warn you of this attack instead of one, they won't talk to you on their own, but instead wait for you to initiate dialogue. After Degrodel has appeared, they will continue to spawn and you can repeat uncounted instances of the attack - until I had resolved this, I had Ctrl-Y-ed about 100 useless apprentices. The probable reason for this is that the area variable psDegoSpawnToggle is never set, so
-the apprentice will spawn if it is not set, and
-the apprentice will initiate dialogue if it is set to 1.
Most probably, this is a bug in AR0411.BCS. Current code snippet is:
IF
	GlobalTimerExpired("psTimeToDegoSpawn","GLOBAL")
	Global("psDegoSpawnToggle","AR0411",0)
	AreaCheckObject("ar0411", Player1)
THEN
	RESPONSE #100
		SetGlobalTimer("psTimeToBroomSpawn","GLOBAL",FOUR_DAYS)
		SetGlobal("GlobalTimerExpired","AR0411",1)
		CreateCreatureObjectOffScreen("psApAtt3",Player1,0,0,0) // Apprentice
		Continue()
END
In the debugged code, the name of the area variable in the response block has been corrected:
IF
	GlobalTimerExpired("psTimeToDegoSpawn","GLOBAL")
	Global("psDegoSpawnToggle","AR0411",0)
	AreaCheckObject("ar0411", Player1)
THEN
	RESPONSE #100
		SetGlobalTimer("psTimeToBroomSpawn","GLOBAL",FOUR_DAYS)
		SetGlobal("psDegoSpawnToggle","AR0411",1)
		CreateCreatureObjectOffScreen("psApAtt3",Player1,0,0,0) // Apprentice
		Continue()
END
I didn't test this yet because at the time I played, I was fed up with the bugs and simply set the global to 2 manually, delaying further analysis until later. But I think this should work.

(4) The broom episode
What a surprise...this also hangs. There are several bugs in PsCut35.bcs. I didn't get it to work yet (it still hangs after the broom attack), but here are some of the bugs:
An attack sequence is supposed to be played out between an Apprentice (psAdApp1.cre or psApp01.cre) and a broom (psBroom1.cre). The cutscene script treats most actions as if it were a creature script, and the target is non-existent (the identifier PQAF1 is undefined), so we get several lines of
ForceSpell("PSQBROOM",WIZARD_MAGIC_MISSILE)
which should probably be something like:
ActionOverride("psAdApp1", ForceSpell("psBroom1", WIZARD_MAGIC_MISSILE))
Also, psAdApp1 is not unique, and the constant PQSBROOM referred to by the original code is never set, so there may be other problems with this (Edit: at that point, psAdApp01 is most likely unique, so it should be used instead of psAdd01.cre, which is not). Regardless, after this the broom is supposed to attack the apprentice, but again the target is wrong. Current code:
MoveToObject("psApp01")
Wait(1)
FaceObject("psApp01")
Swing()
SmallWait(10)
Swing()
SmallWait(10)
Attack("psApp01")
Wait(1)
Kill("psApp01")
Obviously, either psApp01 should be replaced by psAdApp1 in this sequence, or psApp01 instead of psAdApp1 should be created in the area script. Also, there is again no creature reference for the attacks, so I think ActionOverride should be used here (I'm not an expert - is this correct?). The attack does happen, but probably it's through the Mordy script attached to the broom
Anyway, even though I could see the attack happen, how the cutscene hangs after the apprentice is killed. So I just loaded an old save and manually set psBroomSpawnCounter to 2. I'll get back to this - As far as I have been able to determine, several brooms are supposed to spawn (hmm, in exactly the same place - I wonder what that's supposed to mean) and then the cutscene should end. But the brooms don't spawn and the cutscene doesn't end.

So, maybe this is some help to whoever has the infinite patience to maintain and upgrade this mod.

Edited by Ieldra, 03 September 2007 - 05:24 AM.


#2 CrazedSlayer

CrazedSlayer
  • Member
  • 17 posts

Posted 20 December 2007 - 05:11 AM

You wouldn't happen to have any advice for me would you? Im upto the fanatic attack and absolutely nothing ive done seems to work. I also dont want to get caught up having to change the code of the mod itself.

#3 Azazello

Azazello

    The Anti-Spammer

  • Staff
  • 1912 posts

Posted 20 December 2007 - 10:10 AM

Ieldra, are using the original, Duality's or that third guy's version?

#4 Ikki

Ikki
  • Validating
  • 123 posts

Posted 21 December 2007 - 06:46 AM

@CrazedSlayer

Like Ildrea explained, you must edit the file psCut33.baf with a text editor and replace
ActionOverride("psFanat5",StartDialogueNoSet(Player1))
with
ActionOverride("psFanat1",StartDialogueNoSet(Player1))

then reinstall the mod


OR you can edit psCut33.bcs with nearinfinity and you don't need to reinstall

( or you can try a fix that i used, and that I posted somewhere in SHS )


@Azazello
Ildrea's fix are working for both "Duality's" and that unsupported "third guy's version"

#5 --Malbolgia--

--Malbolgia--
  • Guest

Posted 29 December 2007 - 10:35 AM

Wow! Great work, both of you!

I've given up my computergame addiction so you won't be seeing any more from me, but I noticed that my servers been uploading somewhere between 100 to 350 mb each month since I first uploaded 2.6a, so I had to come back here and check out goings on of the community. :)

#6 -Selarius-

-Selarius-
  • Guest

Posted 02 January 2008 - 04:56 PM

Malbolgia,

The Planar Sphere mod is truly a great mod that in my opinion had the most amount of bugs in any mod bar none.

While many might not praise your work here vocally (or in written form), I for one think your version 2.6a is a godsend! The amount of downloads you have been receiving appear to be a testament to the quality of your work as well. I simply could not play this mod without your bugfixes (and I know many others could not either) but now I can so you have done a great service to the community.

Keep up the excellent work!



Wow! Great work, both of you!

I've given up my computergame addiction so you won't be seeing any more from me, but I noticed that my servers been uploading somewhere between 100 to 350 mb each month since I first uploaded 2.6a, so I had to come back here and check out goings on of the community. :)



#7 Ikki

Ikki
  • Validating
  • 123 posts

Posted 03 January 2008 - 07:16 AM

I for one think your version 2.6a is a godsend! The amount of downloads you have been receiving appear to be a testament to the quality of your work as well. I simply could not play this mod without your bugfixes (and I know many others could not either) but now I can so you have done a great service to the community.


The guy who did all the bugfixe and 99.9 % of the job was in fact Duality in his release 2.5.

Edited by Ikki, 03 January 2008 - 07:38 AM.


#8 --Malbolgia--

--Malbolgia--
  • Guest

Posted 04 January 2008 - 06:04 PM

Malbolgia,

The Planar Sphere mod is truly a great mod that in my opinion had the most amount of bugs in any mod bar none.

While many might not praise your work here vocally (or in written form), I for one think your version 2.6a is a godsend! The amount of downloads you have been receiving appear to be a testament to the quality of your work as well. I simply could not play this mod without your bugfixes (and I know many others could not either) but now I can so you have done a great service to the community.

Keep up the excellent work!

Thank you, but even though the ones who are currently active within the community have decided to ignore my update and instead simply build upon Dualities work, I did get more than enough praise when I first released my little version. It really wasnt much of an update though, set aside from that I fixed that part which made the whole mod unplayable for myself and made the readme-file a bit nicer to look at. :)

I don't understand why the people here chose to fix an older version of the mod, but I'm sure they felt they had good reason. Hlid should also get quite a bit of praise though as he contributed a great deal to the mod.

I'd usually worry what Ikkis problem with me is, but since I'm not a part of any of this anymore I won't bother with his/hers attitude.

Thanks again! :)