Easy Doors by Hanon Ondricek

This topic is for discussions related to Easy Doors by Hanon Ondricek.

I7’s public library interface is showing a purple box for this extension that says “REVERT TO LIBRARY VERSION (Version 2/150510 :arrow_forward: Version 1/150510)”.

If I accept this invitation to revert to version 1, the system tells me that version 2 has been successfully installed. It seems like there’s a mismatch between the extension file hosted by the public library (v2) and the public library’s metadata (which says that it’s v1).

Thanks for bringing this to my attention. I’m travelling this week, but I’ll be able to look into it when I get back on Friday.

Thanks for noticing - I had that in my IDE but figured it was showing because I had at some point installed a kludged version on my own system for some reason or other.

When a door is this Easy, Inform doesn’t even know it’s gone through it.


1 Like

Hmm, so now the public library tab is showing a blue box that says "UPDATE Version 2/150510 :arrow_forward: Version 3/160425 ", but, when I click on it to update, the popup box says ““Easy Doors” by Hanon Ondricek (Version 2/150510) has been installed successfully.” This is with 6M62 on Mac OS 10.6.8.

That’s strange - is anyone else having that problem? Both the metadata and the extension itself look fine from what I can see.

The new version has as the second section of the documentation an “Update Log” which wouldn’t be in version 2.

More info: The file’s timestamp shows that it was modified at the time that I performed the update, and the contents (version 2 at the top, no update log) are consistent with version 2.

Can you try deleting the extension on your computer and re-downloading? I checked the file on the inform7 server and it is the correct version with the correct permissions, and the index.html file that the IDE reads has the correct metadata.

Deleted it, redownloaded, and got version 2 again. Is there any client-side metadata that could be stale?

I knew I wasn’t imagining things! Here’s the version that includes some I6 routefinding hacks. I’m not sure why it’s different from the Public Library version…possibly a new I7 version came out and broke all the I6 inclusions or something like that?

Easy Doors.i7x (33.6 KB)

(Also, I think this is the oldest thread I’ve ever necromanced. Ah well.)

1 Like

I have installed and set up a test using EasyDoors. Things work fine and as expected–except I can’t get out of the room the easydoor put me into. What is the verb? Go, leave, exit say they apply to doors or containers (not easydoors), but I want to go through an easy door into the priest niche and leave again. Your docs don’t say how to go through an easy door.

Narthex is a room. "You see a black booth along the wall.". 

Outer Priest door is an easydoor in Narthex. Outer Priest door leads to Priest Niche. 
Inner Priest door is an easydoor in Priest Niche. Inner Priest door leads to Narthex. 
Inner Priest door portals Outer Priest door. Dooraction is "The door closes quietly behind you.".

Printed name of Outer Priest door is "black booth". 
Printed name of Inner Priest door is "outer booth door".
Understand "booth" as Outer Priest door.

Priest Niche is a room. 
Description of priest Niche is "You are inside a small room for the priest. It is cramped and dark in here.".
Instead of going from Priest Niche:
	try silently entering inner priest door;	

test booth with "x booth/ enter booth/ leave booth".

The way to use an easydoor is “entering”, as in ENTER BOOTH DOOR. You should also be able to use GO BOOTH DOOR or simply DOOR.

If you want “out” to also work:

Before going outside when the location is Niche:
    try entering the inner priest door instead.

Speaking of easydoors, though, here’s a question. Since easydoors are enterable, the “standard entering rule” moves the player into the easydoor before the “say dooraction and move the player rule” moves them to their destination.

Is there a reason why this behavior is desirable? Or, in other words, is there a reason to not shut off the standard entering rule when the noun is an easydoor, so that the player remains in their holder up until they’re moved to the destination?

(Yes, I fully realize this is a weird edge case. But there’s a method to my madness! This is important to my ECTOCOMP entry: I’m using easydoors to make some passages be ignored by Inform’s built-in routefinding and the holder of the player right before they enter a door matters.)

1 Like

To be honest, this was my first and only extension, and you and others helped immensely with it. So that was something I hadn’t even considered. If you can improve the extension in any way you have my blessing!

1 Like

Here’s the simplest fix:

The standard entering rule does nothing when the noun is an easydoor.

I’ll see about integrating it into the extension after the ECTOCOMP deadline is past. It’s a very convenient little extension—you would not believe how hard it is to make a standard Inform door that you can only reach from a supporter, or to do route-finding through a limited subset of doors (such as “only open doors”).

1 Like

The question is: what should the player enter to leave the booth? They don’t know much about the doors except that there is one. Enter Booth Door doesn’t make sense when they are in the booth, and Leave Booth and Exit Booth gives an error. I need a verb so that player can say something like Leave Booth, or Go Through Door. None of these work. Inform doesn’t have a clear understanding of Easy Doors.

Yes, Go Out does work, but the player may be confused when Leave Booth gives the error message: I only understood you as far as wanting to leave.

Yes, that is a downside. The main reason to use Easy Doors is because they don’t come with a lot of built-in assumptions about how they work and how they should be used. But as a result, if you want to do anything other than ENTER them, you need to code that on your own: the whole point of them is to be free of such implementation assumptions, after all.

Off the top of my head, you could do this.

Leaving is an action applying to one thing. Understand "exit [something]" as leaving.
["Leave" is mapped to "exit" in the standard rules.]
Before leaving something: try exiting instead.

This makes “leave booth” be equivalent to “leave” (as long as “booth” maps to something in the location, such as the booth door).

1 Like