I wish there were actual classes I could take on Inform 7. Don’t get me wrong, the Documentation as well as everyone here at intfiction have been extremely helpful in increasing my knowledge base of the subject, but sometimes I just really need someone who can literally, physically watch over my shoulder as I code and give immediate feedback about better ways to accomplish something or tell me why something isn’t working when I don’t quite know how to describe my problem in words in order to post it here on intfiction.
Don’t lose heart. I started with Inform7 less than 2 years ago, and even after going over the manual, making my first game was a real headache. My desire to create and finish got me through it. Like you, also I had the help of these experts, some of whom helped author Inform7. If you have a good vision and ideas of what you want to create, you will achieve that, one way or another. But it is almost a certainty that you cannot expect to pick up all of the chapters and material in the manual in one go, or even after you create your first game, no matter how long. I am on my third game, and am still asking questions and going over the material. A fortunate thing is that often, in Inform7, there are more ways than one to do whatever you have in mind, and on the other hand, there is probably at least one way to do it.
To any new authors(I am one myself), I would thoroughly suggest going over the manual(the how-to half) once before starting to execute your vision, and then read again through Chapters 1-3. There is really no ONE way to do this, but I started making my game after I did these things, and whenever I got stuck on something, I would research the problem thoroughly from the manual–it has a very good index. If still stuck, I posted on this board. You can learn while you work on your game–I did. Going over the manual initially can give you an good idea of where to ‘find’ certain information, though the table of contents is also good. The benefit of all this is that you can go at your own pace, and not have to wait for a class to catch up with you. You can skip around in the manual–learn what you need, now, and put it to use. Before too long, this will all be so familiar to you, you will create rooms with things, people, and scenery with puzzles at a surprisingly brisk rate. You will begin to think like a programmer, covering all the details and having a mind for rules.
Another tip–do not discard an idea, simply because you cannot do it yet, in Inform. Think about how you can do it. Find out how you can do it.
I appreciate your input, because it means I’m not alone. I’m actually on my third game, too, and actually did pretty much exactly what you described when first learning I7. The first two are on IFDB, but of course as people beta-tested them, they would perform actions or come across issues that I hadn’t even considered.
I started learning with a few online tutorials that taught me how to create rooms and different kinds of things. Then I started making my way through the Documentation. But, like you (as I’ve seen from one of your previous posts), I was too excited to create my first game that I didn’t make it all the way through the first time lol.
I do indeed use the Documentation, Recipe Book, source code from other games to get ideas of how to implement my own goals, and of course the incredibly patient help of the professional programmers here like zarf, matt w, and jrb. But sometimes there’s just no replacement for a good old-fashioned in-person teacher.
Wow, I didn’t know you already had some games on. I just thought you might appreciate some pick-me-ups from a (very)long-time player(47 good god I’m old–I played the Zork series when it was new), short-time author.
Good luck to you
Same to you! I actually got into IF in a rather non-traditional way. When I was a child, I was your typical annoying “Are we there yet?” kiddo. In an effort to keep me occupied, my older sister drew out a map (much like the ones we create in the World index), and would tell me what directions I could go or what I could do or pick up. I loved it. Basically it was a very simplified version of D&D (a game which I’ve never actually played, but have always wanted to).
As a teacher, I remembered this game my sister would play with me and created my own maps to play with my students, requiring them to incorporate concepts or subject material we’d recently learned in order to complete the quest. They loved it, too. Then I thought, what if I could create my own digital versions of these games for my students to play in their free time? I had also remembered a single instance where I had once experienced a computer version of IF, waaaay back when, on a Commodore64, so I knew they had to exist out there somewhere.
I found some about a year back, and lost myself in trying to play them. But I sucked. Vehemently. I could go different directions and I could pick up stuff, but I never had the slightest clue how to solve any of the puzzles. So I says to myself, “Self, I bet if you learned how to create these games, you’ll likely become a better player.” So that, on top of wanting to create educational games, led me to learning how to write in I7. Then, it turned out I liked authoring the games just as much (if not more) than playing them, so now here I am
I found it very helpful to read the documentation from the beginning within the IDE and actually use the provided buttons to copy the example source texts in and see how they work and play with them. The Inform documentation is huge, but experimenting with the examples makes it more comprehensive and easier to understand - much more than if you tried to read the entire manual through without opening Inform until you were done.
Yes, that is indeed what I do, though I must admit I also try to “break” the example programs by changing stuff here and there to see what Inform will and won’t let me get away with.
I think that was part of my issue, actually. I would read a section, try out the example, play with the example, then get carried away with my own experimentations that would keep me from remembering to move on to the next section. This is yet another reason why I’d find it helpful to have an in-person teacher to work with me. They’d keep me in line and on task whenever I got too distracted.
While not a class, you might want to check out the links here: inform7.com/teach/resources-by-grade/
I find that things written for “younger programmers” often contain odd little gems of information. After all, the only thing we lose by revisiting the basics is our own ignorance.
And this link in particular on that page may interest you: emshort.blog/how-to-play/teaching-if/
I really didn’t mean to give wrong advice. I think HanonO’s suggestion is a good one. When I first approached authoring, I felt it was good to skim the manual before really getting into creating, but by Chap 3, I started working on the rooms in my game.
LR, sounds like you have a good background–I wish I had done things like that as a kid.
Getting caught up experimenting isn’t a bad thing - it’s one of the best ways to learn. And unless you’re on some kind of deadline or doing this for a class…there’s no reason you have to absorb the manual all in one gulp. I think I probably took around a year on and off to get through most of the documentation and the recipe book. The cool thing about Inform is you don’t have to use all its functions to make a simple game.
I will admit, there are some of the more esoteric parts that I just glanced through at first because they weren’t applicable to what I wanted to do at the time, but it’s good to at least know where to look when you need to tear apart a table or make a rulebook with multiple outcomes. Almost every time I make a relation I still have to pull up the documentation to make sure I’m doing it right - I tend to write them backward.
HanonO, as an (ex-)schoolteacher, I totally agree with you. Experimenting is definitely one of the best ways to learn, because you’re actually doing it and creating memorable experiences rather than just reading about it. However, when it comes to my own learning, I realize that I lack discipline and need someone to give me a good thwack upside the head when I get too distracted, at least until I’ve managed to introduce myself to a little bit of all the aspects and capabilities that I7 has. I’m still uncomfortable with relatively basic things like making scenes or tables, or when it’d be appropriate to do so. At least I know they exist, though! lol
I think it’s good that I probably will never have the manual completely down pat. I’m sure Inform will always be in some state of evolution, always changing according to need, so if I ever come close to absorbing it completely, there will be a new version!
What I really enjoy about it is that it is so versatile. You can do literally anything with it, concerning interactive fiction. You can make games, for others to play, but you can also do non-game stuff, like make tutorials(on any subject) or tests(though this might vastly UNDER-use Inform). Of course, all fiction writing addresses a need felt by the author; it can be useful for this, too, and you don’t necessarily have to publish it.
LR, another good thing you might try is to think of a challenging situation and try to create it with Inform–something from your past or something you’ve experienced at work, create characters based on co-workers, etc. Not necessarily as a game, but just as practice. Make it fun for you.
Just a suggestion, of course.
That’s an excellent suggestion, IFaddicted. That’s not something I’d ever thought of before. I did once try making a game based on a C programming class I was taking at the time, because I thought it’d be funny to have an IF game that was about coding. But the game itself was incredibly short-lived since I then had to focus more on my schoolwork and the C language instead.
I’ll definitely have to try out your suggestion sometime soon.
Inform can do amazing things - so long as it’s all described in text. Emily Short did a lot of incredible experiments with physics/chemistry/conversation models, culminating (IMO) in Counterfeit Monkey, which actually accomplishes a logical physics model that allows the player to tear the words of the story apart and make new things out of them.
I’m well aware that this thread is a bit dated but I get the impression that the forum has its fast & slower moments anyway so I doubt this should be a problem.
I’ve been recently grabbed by the Inform “virus”, a bit by accident, and I can definitely place myself in the OP’s situation. Nothing negative here mind you, definitely not, but I also had quite a few issues with the official documentation. I get the strong impression that it was written by players who know Inform inside out yet now run into the issue of not being fully able to place themselves into the place of a newbie.
As said: that’s nothing negative because this is something happening all over the place. But yeah… I’ve also had my share of going over the manual a few times and simply not fully grasping what was being explained.
That is: I did understand perfectly, but due to the lack of some hands on (“direct”) examples it wasn’t always very clear at first why (and how) you’d need and/or use some specific features.
An example… Take chapter 2.1 of the official guide: “Creating the world”. When I, from a newbie perspective, look at creating a world I think about creating rooms, setting up a main layout and then afterwards adding all the extra back-end logic (actors, items, rules, $stuff). The manual however starts by explaining how one would create a world where the very first example is creating an object, not a room.
Then it dives into rules, even though at that point you really have 0 idea why you’d even need a rule in the first place.
Chapter 3 gets us fully on track with descriptions, rooms/maps, connections and items but at that time it has already been pretty hard to get through the somewhat dry theory of chapter 2.
Of course after that things only get better, but I do believe that the specific approach makes the so called learning curve a little more steeper. Still, it does become a lot more valuable at a later time because once you grasp some basics then the documentation becomes an awesome reference guide. That is something which would have been much harder to accomplish with a more “lenient learning curve”.
Just my 2 cents of course. For the record… I might take a shot at this myself in a few months. So far I’m seriously enjoying Inform and when I enjoy something I tend to vent from time to time
It’s kind of like learning how to play the guitar. Sure, I can read books and watch YouTube videos, but I know I’d get a far richer education if I had an actual guitar teacher (unfortunately, I’m too poor to afford one, which is why I also write/play IF, because it’s all free, haha). One that would see firsthand what I’m trying to accomplish, know my learning style, and help me get there. Oh! Or like Sokka from Avatar: The Last Airbender. He was a good warrior, but then when he got a master to train him, he became a great warrior.
Of course, now that I think about it, I’d probably be too poor to afford a personal IF teacher, too.
I don’t know if this has been mentioned, but Carolyn VanEseltine wrote a quick-start Inform 7 guide.
And this may be of use to some people using tables:
Hey! SibylMoon was how I first got my start into IF! I agree, her tutorials were indeed quite-straightforward and targeted toward the newbie like myself who had absolutely zero programming experience whatsoever. Admittedly though, I never finished all the tuts because I’d gotten so excited at the prospect of creating my own game that I didn’t finish them… perhaps that’s why I’m still so intimidated by tables, haha. I really should give her site another look now that I’ve got some more education under my belt.