Trizbort, an IF mapping tool for Windows

Of course there are always exceptions, and there’s always games that do it “their own way” - I’d just like to ensure that your great feature would work as well on a standard game as on a game with, for instance, room descriptions like “By the Cherry Tree farm” - only capitalising the first letter.

Incidently, I haven’t yet tested, but how would Trizbort react to automapping, say, Moonmist?

I suspect it wouldn’t map very well. On one hand, it’s enough of an exception for you to possibly not worry about it; on the other hand, it’s not unfeasible that someone might emulate that style; on the third hand (which is to say, on the foot), the vast, vast, vast majority still uses a “One Line, Capitalised” standard.

I don’t expect you to magically have to sort everything out, I’m just showing you the non-standards, in case you didn’t think of them, so you can draw a line in your mind saying “THIS is reasonable for automapping, and THIS is not, because I’m not a magic worker”.

Also, here’s another non-standard situation which might be a good idea for Trizbort to pick up on.

This is from “Even the Devil Must Die”, a CAT game. Now, CAT isn’t exactly high-profile, so this is unlikely to be an issue - but the above does NOT create a room called “AT THE BUS STOP” as I’d expect. Maybe because it’s all caps, maybe because of all the extra lines. At any rate, just wanted to let you know.

EDIT - No point in triple-posting, I’ll just edit this post - in “The Evil Sorcerer”, there’s a room called “Sun room”… again, the capitalization makes Trizbort not recognize that room. I’d say it’s starting to look necessary to look into it. :wink:

Thanks Peter, they’re very good examples I hadn’t seen. At the moment “AT THE BUS STOP” is rejected because of the all caps; “Sun room” because of the lack of a capital R.

I might relax Trizbort’s rules a little next version such that if a line is entirely unpunctuated, consists entirely of letters and whitespace, has more than one word, and has a preceeding blank line, and no more than say 5 words, then words with no caps or all caps are permitted provided that the first letter on the line is capitalised. Existing rules would still apply (and there are plenty of them), but this would be an extra case. Of course there are doubtless couter-examples where this would create an unnecessary room (“NOTE TO PLAYERS” or similar) but perhaps they’re rarer. What do you reckon?

Good point. IFMapper does that quite often, actually - accidently create rooms which aren’t meant to be rooms.

Well, thinking about it, you know what would be even best? Leave the rules as they are - I considered asking you to make those “more relaxed rules” toggleable by the user, but that’s extra work for you with little foreseeable payoff - but make Trizbort a little bit smarter. Let’s say, in Murder at the AeroClub, Trizbort didn’t spot “Car park”. So let’s say I create “Car park” myself, and even fill in the description. It’s an exception, so it’s not any skin off my nose. It would be bothersome if I had to do it every room in every game, but the odd room in the odd game? Best to have a little bit of extra work and ensure that the rest of the program is tightly coded.

So, with that manually-created room, and even with the directions created manually, I would expect Trizbort to recognise that it is a room, and whenever it sees “Car park” in a single line with no punctuation - in fact, whenever it sees something that is a perfect match to a ROOM NAME and is followed by a perfect match to that room’s DESCRIPTION - it would assume that it IS a valid room, and would behave accordingly, even if it would, left by itself, assume otherwise.

How does this sound?

Also, Trizbort gets confused by “UNDOing”. :wink: Might want to check that, let it know that “[Previous turn undone.]” (and maybe make that text optionally editable by the user, as some games, like Crystal and Stone Beetle and Bone, use different UNDO messages) is not a room description.

Finally, I’d like to suggest something extra for confusing layout. What if it were possible to “tag” a certain room as non-mappable? Here’s a concrete example: in “Dawn of the Demon”, there’s a sort of maze where you can only navigate it with the lights off. When you turn the lights on, the room’s name and description changes to a blander version, with no exits in any direction… although as far as the player is concerned, he’s still in the same room, and turning the lights back off will revert to the previous name and description and exits. I assume Trizbort would balk at this, and with reason… but if I could just have those “lit rooms” listed on the map but off to one corner, unconnected to anything else… and if Trizbort was given instructions to DISREGARD any connections to/from those rooms… then I could just keep on mapping as normal. It would also, I imagine, be helpful in a maze - disregard rooms with a certain title and description (such as “MAZE. You are in a maze of twisty passages all alike.”), make no assumptions or connections, and then just let the player sort it out for himself without Trizbort interfering.

Well, this is just a thought. I’ve no idea how hard it would be to implement, or even how useful it would be in modern-day IF… but even in modern-day IF there are rooms with the same name, or puzzles like the one I described from Dawn of the Demon, which would confuse Trizbort as much as a maze with twisty passages.

Ah well, it’s late and I’m starting to get sleep-muddled. Consider these points, but feel free to slap me on the wrist if they’re just utopical, unpractical or not worth the effort. I mean, Trizbort’s great as it is.

That idea about accepting known existing room names is a damned good plan. Top notch in fact. I’d probably slot that in after Trizbort strips off anything it thinks is an " (on the bed)" style suffix, and then match against the whole line excluding leading/trailing whitespace. Description matching should then be automatic; if Trizbort didn’t have one already it’d accept a new one from the transcript happily; if it did have one which differs it’d display its disambiguation dialog. Next version methinks.

Whoops on the UNDO front :slight_smile: Does it really think “[Previous turn undone.]” is a room name? Lawks. That may, as you point out, need some tweaking :wink:

I also like the idea of marking rooms as unmappable, it fits in nicely with Trizbort’s “have a go and then let the user correct things” approach. As you say I’ve no idea how often it’d be used, but I do like it. Definitely up for consideration.

I probably won’t be rushing out a new version unless there are horrible bugs, but it’s great to have some good ideas to go into it. The more the merrier :slight_smile:

Thanks,
-eg.

Heh, not quite as bad as that. :slight_smile: But when one types undo, one gets, for instance,

Front of Lawn
[Previous turn undone.]

…so Trizbort thinks it’s another room with the description “prev turn undone”, and brings up the disambiguation dialog. Not ideal, but far from being so confused as to thinking it’s another room. :wink:

As for the rest, glad to have been of help. Trizbort is what I’ve been waiting for ever since I started IFfing in earnest, and I’m all too happy to help it get better and better.

I just checked this out for the first time. Something I personally would like to see would be segregation of “regions” and maybe even “floors” as separate linked and nameable layers.

For example, I just discovered Anchorhead. (I know, shame on me. But I have to say, though the writing is fantastic, I disagree with the reviews of the ambiance and level of creepiness so far, being the Lovecraft nut that I am. I digress…)

The map is getting a little cluttered. I could drag rooms WAY away from one another to segregate them from one another, but then the map file just gets huge. I’d love to be able to bring up the properties for a room and define it as, for example, “Verlac Mansion - 1F”. This room would then link to another layer so that when I entered it, it would switch layers to another map.

Thanks I4L, I do like this idea. One or two people have suggested something similar, and it’s an issue I encounter when using Trizbort with large maps as well.

I’ve vaguely thought about this in the past, and could envisage floors or layers being separate tabs in the interface, each with its own rooms and connections, but with visible “stubs” allowing automatic switching between the two as you suggest.

I also still like the idea of permitting multiple regions on each layer, each as their own labelled area, possibly with its own background colour for clarity. (I’d like to permit rooms to be individually coloured as well, at some stage.) The main thing that puts me off this is how it would fit in with automapping, which uses a pretty primitive algorithm to lay out the map and would be difficult to imbue with intelligence. Mind you the same can be said for layers I imagine; in either case automapping would I suspect have to default to placing new rooms in the same region, and on the same layer as the previous room, which could be irritating since they’d have to be fixed up by hand. For games like Anchorhead this might work quite well; for some games - with many different ways of getting between “regions” - I imagine it could be rather more frustrating.

Thanks for the suggestions, I’ll definitely think on them :slight_smile:

I’m running Win7 Home Premium 64-bit. My OS doesn’t want to install the .NET framework, claiming there’s a compatibility problem with something called IIS. Since these are both Microsoft technologies, it’s a bit hard to see why there should be a problem, but there it is. And of course the Trizbort installer won’t run without installing .NET.

I’m not planning to take a chance on hosing my system in order to try out a mapping program. Can anyone shed any light on the nature of this conflict, and whether I should ignore the message and install .NET anyway?

IIS is Microsoft’s web server. I doubt you’re running a web server on your PC :mrgreen:

Just make sure to install the .NET framework from Windows Update. That way you can be sure you get the correct version.

It doesn’t show up in Windows Update. That could mean it’s not installed at all, so Microsoft is not trying to update it. On the other hand, updates for Office 2007 do show up, and I don’t have that installed either.

I have an installation of Win7 and it shows up under the “optional” group.

What version of .Net is Trizbort written for? Different versions of Windows come pre-installed with different versions of .Net (XP - 1.1, 2003 - 2.0, Vista - 3.0, Win7 - 3.5). So unless Trizbort is using 4.0, you shouldn’t need to install anything - it may just be an incorrect dependency. I know the ADRIFT installer tried to create a dependency for 4.0 when it actually only uses 2.0.

Actually, XP does not come with any version of .Net pre-installed (it’s only included on the CD to be installed manually.) An exception are XP Media Center and Tablet PC Editions, which have 1.0. 2003 has 1,1.

Damn, sorry, you’re right about XP. Later versions of 2003 come with 2.0, but you’re right, earlier versions do come with 1.1. But it’s a moot point really, as the machines being discussed were Vista/Win7.

Trizbort requires .NET 2.0 or higher; it is true that the installer isn’t very bright and is easily confused, particularly by Windows 7. This is entirely my fault, I did rather assemble the original installer in a hurry via Frankensteinian cut and paste. I should revisit it and give it an overhaul. Apologies!

If it’s giving you issues you can try the zip file instead. On recent versions of Windows you shouldn’t need to install .NET.

Very nice. Thanks! I tried doing an on-screen mapping once using OpenOffice, and found it rather laborious. I can see that Trizbort will be a big improvement, either for playing games or for designing them.

Well, I wasn’t thinking in terms of automapping. I don’t think it would be able to automatically differentiate between regions, since it’s simply scraping text out of the log file and regions are typically indicated on-screen. But if I’m looking at my map, Anchorhead for example, I assume that the mansion is a different region from the town. So I click on the “Scenic View” room and tell Trizbort that this is the entrance room to a new region. Maybe Trizbort could let me name it.

Trizbort then breaks that and the connecting rooms off to a new layer. Any time I hit that room, it automatically switches to the new layer or tab. I am, of course, welcome to click between the tabs, but unless it turn off automapping, if I move in the game, it snaps me back to the correct region.

I suppose there would be some complication where a region has multiple entrances, which isn’t the case in Anchorhead. Maybe a more eloquent solution would be to select all of the rooms that you want to assign to a new region instead?

I don’t know, just thinking out loud.

Sounds familiar! :laughing:

Does it now…?

Another thing… Might want to list somewhere in the automapping section of the documentation interpreters that aren’t compatible with live gameplay transcripts. Or maybe there’s only one. I love Filfre, but it locks the transcript file so that Trizbort can’t open it for reading. WinFrotz2000, on the other hand, does not. I haven’t tried any others.

Maybe that was mentioned elsewhere already as well. I have HORRIBLE memory.