enigma-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Enigma-devel] bug in the archipelago level (level 3 of Enigma I)


From: Malla
Subject: Re: [Enigma-devel] bug in the archipelago level (level 3 of Enigma I)
Date: Sat, 13 Jan 2007 22:32:17 +0100
User-agent: Opera Mail/9.10 (Win32)

Hi,

On Sat, 13 Jan 2007 18:15:43 +0100, Ronald Lamprecht <address@hidden> wrote:

Hi,

Tacvek wrote:
I'm not sure it happened in all Oxyd versions though -- maybe it could
be made compatibilityMode-dependent in Enigma?

Yes, this features was implemented in all Oxyd-versions.
 Hmm... Since one of enigma's goals is to be compatible with Oxyd,
implementing such a feature is almost a requirement. The downside is that
we only noticed this now.
 If all oxyds implemented this feature, and
we can implement it in the same way (same situation would choose same safe spawn point) then it definately should be implemented in the oxyd compatibility modes. But for the levels new for Enigma, I suspect such a feature should require activation in each level in which it is desired. After all, some existing levels were designed with the current situation in mind
and could become far too easy with such a change.
But other levels could definately benefit from this feature, so there is definately a need
to be able to activate it in Enigma compatability mode.

Actually Daniel wrote some code for calculating a secure respawn position years ago. It is used in case of a GoHome. But he did comment out the usage for a respawn of actors. We do not know the reasons, but we did spot some cases were the current handling would cause trouble.

We did not check the algorithm for its compatibility with Oxyd's behaviour. It would be helpful if someone would analyse and describe the used algorithm.

I've tried to analyse the behaviour, but I couldn't find any conformity (in Oxyd Magnum). It seems that Oxyd selects randomly one free position near the spawn-point. The Oxyd behaviour is far from perfect. It's possible to spawn around stones you cannot push away, so you are trapped. I tried Magnum #59 "Work or Think!" (the level Jacob mentioned), and in this level it's even possible to respawn in a part of the level you normally can't reach (I attached a screenshot). If I try to leave the level at the lower side, Oxyd crashes.

A respawn algorithm would be activated by default only for Oxyd* compatibility modes. In Enigma mode the level author would have to set an attribute for each actor. We might additionally provide a callback hook that allows the levelauthor to adjust the respawn position.

Sounds great. :)

bye
Malla

Attachment: Oxyd3.png
Description: PNG image


reply via email to

[Prev in Thread] Current Thread [Next in Thread]