DROD 3.3's release brings us to a rather important task with regards to CaravelNet: the update of the CaravelNet Spider.
The spider is currently running code for 3.2.0, which was released back in 2008. It was going to be updated when 3.2.1 was released this February, but that got delayed due to a particularly nasty bug in 3.2.1 that could cause certain rooms to crash.
3.3 fixes these problems, but due to other changes packaged inside, there is a price: the 3.2 code cannot accept 3.3 demos. So we're going to update the spider now.
There's a few things about this update that are important though. Updating the spider's code is fairly easy. What we're interested in right now, though, are the stockpile of demos and published holds it has to deal with. The first thing is that we're looking at a very good opportunity to do a full verification of *ALL* CaravelNet demos after the update. There are demos in the system that have been broken by changes as far back as JtRH 2.0.16, a good four years ago. And I'm pretty sure there are even older changes. We also still have some mess from the spider bugs back in early 2008, and a handful of demos from betatesters/HAs that start on invalid level entrances. We're hoping to finally put paid to all of those with the upcoming verification.
However, before we can do that, there's a bit more work that we need to do. It's been over three years since 3.2's release, and there are a lot of changes in the last two patches. And some of these have ended up breaking holds.
As a result, we are looking to update these holds to both make them work with 3.3, as well as preserve as many old highscores as we can.
=====
We've identified a list of holds that are definitely broken by the changes. These are as follows:
Korvak's Keep
The Mining Business
Cheap Trick contest compilation
Fireballs
We're looking to fix these holds in a manner such that old highscores are preserved, and that the rooms still play the same both in 3.2 and 3.3. I believe this is possible for all of the listed holds.
PMs will be sent to the architects behind each of these holds notifying them of the problem. Whilst we do have our own fixes in mind -- which we will both inform the architect of, and put into place by default if an architect chooses to leave it to us -- the architect is at liberty to update the hold themselves. We will be making an effort to keep the holds working for the versions of DROD they were originally made for though.
=====
There are also a number of holds that, whilst still possible in 3.3, have been changed enough that almost all demos for the room would be invalidated. Where possible, we'd like to update these holds as well. Details will be PMed to the relevant architects over the next few days. Since the holds are not broken, we have no stringent requirement to update them, but we'd rather preserve highscores and room solutions if we possibly can. This may not be possible in all cases, though.
Finally, there are some rooms that have new unintended solutions that have been introduced in either 3.2.1 or 3.3. Since no demos are broken, we can't identify all of them. However, since this was a US introduced by a game patch, we are provisionally allowing Hold Updates to fix them, providing it's done before we begin the full verification in about a month's time. We're going to aim for a deadline of
December 1st, but this may change.
Bear in mind that only rooms that work differently from the changes between 3.2 and 3.3 will be considered, and that fixes should ideally close off the US whilst leaving the majority of 3.2 demos still valid. These will be discussed on a case-by-case basis.
As an aide to the above, here is a list of all the gameplay changes added in the last two patches:
Click here to view the secret text
×
3.2.1
* Bomb Explosions now fully respect Force Arrows in all situations.
* Mimics and Characters can now push a mirror and activate a token covered by the mirror on the same turn.
* Mirrors can no longer protect potions, scrolls or fuses from bomb explosions, closing doors, trapdoors falling, and so forth.
* The 'flying attribute' of Clones (used to depress pressure plates) are now properly synched with the player when the player's role changes.
* Flying Clones can no longer trigger a pressure plate when you place them.
* A Character using a Tarstuff Switcher Token will no longer prevent the correct tarstuff from growing on spawn turns.
* Halph understands when the orb or pressure plate he's heading towards breaks, and will instead try and find a new one immediately rather than continuing towards the broken orb/plate.
* Multiple swords on the same tile can now only reflect an Aumtlich beam if they're all perpendicular to the beam.
* Certain non-wall tiles that Seep could potentially survive on are now no longer safe for Seep.
* Events that destroy tarstuff now destroys all tar tiles first before any tar babies are created. For example, tar babies are no longer created during the middle of an explosion: the explosion destroys everything it's supposed to first, and then any unstable tar will convert into babies.
* Player roles that can step to kill can now kill flying monsters by stepping whilst moving a platform at the same time.
* A brain killed 'mid-turn' no longer unbrains the room before the turn is over. Brains detect Beethro if he is in smell range or otherwise visible after all Mimics have moved. A Mimic killing the last brain now always unbrains the room before any monsters move (even if a Guard or Slayer is also in the room), but a Fegundo or Adder killing the last brain would allow any monsters left to still make one last brained move.
3.3
* Invisible Characters may now use the Move to, Move and Wait for Player to Touch Me commands.
* Dead monsters are no longer unlinked from the process queue until their current turn has ended.
* Adders eating a Character with the Critical Hero Imperative is now a "Game Over" condition.
=====
If you have any questions, please feel free to discuss them within this thread.