Skip to content

Commit

Permalink
Add content to actions and setup
Browse files Browse the repository at this point in the history
  • Loading branch information
danieltalsky committed May 19, 2024
1 parent a1872b6 commit 706594f
Show file tree
Hide file tree
Showing 3 changed files with 142 additions and 63 deletions.
52 changes: 23 additions & 29 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Inform 7 At Play

**Inform 7 with illustrative examples of play**

Build rich worlds using natural language, as easy as:
Expand All @@ -25,64 +26,57 @@ It's just a place to take off your boots, but the
coat hooks are made of filigreed platinum and the
shoehorns are made of solid gold, which hardly seems
practical.
>
>
> There is a shiny apple here.
>
> **\>`eat apple`**
>
> **\>`eat apple`**
> (first taking the shiny apple)
> You eat the shiny apple. Not bad.
### [How to make places\.](places/)

### [How to make places\.](places/)
![80%](https://progress-bar.dev/80)

The real world is a place, and has several places inside it. You can have your imaginary world follow the time-honored tradition of making rooms people can walk in compass directions to get to.

### [How to fill those places with things.](things/)
### [How to fill those places with things.](things/)

![90%](https://progress-bar.dev/90)

Things fill the real world and your world should probably have them.

### [How to use verbs and actions.](actions/)
![30%](https://progress-bar.dev/30)
### [How to use verbs and actions.](actions/)

![50%](https://progress-bar.dev/50)

Let people unbend paperclips, ring bells, ride horses, and flip coins.

### [How to put semi-convincing people in your places.](people/)
![20%](https://progress-bar.dev/20)
### [How to put semi-convincing people in your places.](people/)

### ["When play begins:"](setup/)
![20%](https://progress-bar.dev/20)

Heck is other people.

### ["When play begins:"](setup/)

![80%](https://progress-bar.dev/80)

How to do some fancy setup to polish your world and make it unique.

### [Common Mistakes (and How to Fix Them)](naming/)
### [Common Mistakes (and How to Fix Them)](naming/)

![1%](https://progress-bar.dev/1)

Sometimes Inform doesn't understand what you're trying to tell it to do. Here's how you can avoid or figure out some common problems.

### [Annoyingly complicated rules for naming things.](naming/)
### [Annoyingly complicated rules for naming things.](naming/)

![1%](https://progress-bar.dev/1)

Don't even bother reading this until you run into a problem with naming people, places, or things.

### [I have no idea what any of this means.](faq/)
![70%](https://progress-bar.dev/70)

What is Inform 7? Who are you? How do you do any of this? What are you talking about?

.
.
.

---
![70%](https://progress-bar.dev/70)

## TO DO: Reminders to myself:

### Technical
- Inform 7 output -> markdown converter (python?)
- Figure out a way to let github code blocks wrap so it can work on mobile.

### Content

- Do a "how to do Hit Points if you REALLY must" section.
What is Inform 7? Who are you? How do you do any of this? What are you talking about?
23 changes: 14 additions & 9 deletions actions/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,19 +183,23 @@ Here you're telling it to understand a whole command as a "mistake":
> The statue does not understand how serious you are about this
It doesn't really matter if the action is an actual "mistake". It could
be something you want the player to do. Using the `mistake` command
be something you want the player to do. Using the `mistake` command
lets you just print out a message and tell Inform not to do anything else.

## Actions without a thing: report

### @TODO:


### @TODO

```inform7
Report smelling: say "Then again, you don't have the best sense of smell. Maybe if you smell specific things it will be easier to discern a smell.".
```

## Make a brand new action

### @TODO

```inform7
Understand the verb "pinch" as pinching.
```
Expand All @@ -205,15 +209,16 @@ Understand the verb "pinch" as pinching.
---

## TO DO: Reminders to myself:

- Overriding the current verb set
- list of the current verb set
- list of the current verb set
- Creating new verbs
- "If"
- Rulebooks: the verb lifecycle
- Before
- Instead
- Check
- Carry out
- After
- Report
- Before
- Instead
- Check
- Carry out
- After
- Report
- Relations and state for nouns, changing state
130 changes: 105 additions & 25 deletions setup/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The boring place is a room.
> **An Extremely Boring and Tiny World**
> An Interactive Fiction
> Release 1 / Serial number 230205 / Inform 7 build 6M62 (I6/v6.34 lib 6/12N) SD
>
>
> **boring place**
>
> \>
Expand Down Expand Up @@ -50,13 +50,13 @@ When play begins, say
Now you get:

> You're in an imaginary world. You probably shouldn't have pressed that button that said "Teleport me to an imaginary world." Now you've done it.
>
>
> **A Fictional World I Created**
> An Interactive Fiction by The World's Most Interesting Person
> Release 1 / Serial number 230205 / Inform 7 build 6M62 (I6/v6.34 lib 6/12N) SD
>
>
> **nappy dugout**
>
>
> \>
## An interactive fiction?
Expand All @@ -77,7 +77,14 @@ Now it will say:
> **A Fictional World I Created**
> An unreal place you can walk around in by The World's Most Interesting Person
## Look at yourself
## Improving the defaults

Inform has a lot of good default messages for trying things.

You can make your own messages that give your interactive story your own unique
flavor. Some examples:

### Looking at yourself

Sometimes the player might try this:

Expand All @@ -95,23 +102,96 @@ And now:
>\>**`look self`**
> You are a weird alien with tentacles instead of arms.

.
.
.

---

## TO DO: Reminders to myself:
- Use no scoring, the serial comma and American dialect.
- Use full-length room descriptions.
- Releases:
- Release along with a website. Release along with the source text.
- The release number is 12.
- Fun default verb rules for things like `jump`, `pray`, `sing`, `wake up`,
- Using rules:
- Understand "use [a closed openable thing]" as opening.
- Understand "use [a open openable thing]" as closing.
- Understand "use [a switched off device]" as switching on.
- Understand "use [a switched on device]" as switching off.
- Understand "use [an edible thing]" as eating.
### Looking at things that don't have a description

```inform7
The field is a room.
There is a dry stone in the field.
```

>\>**`look stone`**
>You see nothing special about the dry stone.
We can do better than that, right? Here's how to say something else:

The description of a thing is usually "You look at [the noun] very closely indeed, and to be completely honest, it looks about how you'd expect. You think for a moment that there might be something slightly special about it but then, upon looking just a little closer, you see that there isn't."

Now we get:

>\>**`look stone`**
>You look at the dry stone very closely indeed, and to be completely honest, it looks about how you'd expect. You think for a moment that there might be something slightly special about it but then, upon looking just a little closer, you see that there isn't.
### Looking at your empty inventory

Normally when you check your inventory you get a boring message like this:

>\>**`inventory`**
>You are carrying nothing.
Overriding this message requires some special Inform 7 magic with this odd-looking command:

```inform7
The print empty inventory rule response (A) is "You look everywhere but finally come to realize that you have no possessions."
```

Now:

>\>**`inventory`**
>You look everywhere but finally come to realize that you have no possessions.
## Making `use` useful

By default, the verb `use` isn't something Inform understands. You can set
up some rules to make life easier for players.

```inform7
The garage is a room.
There is a bird cage in the garage.
The cage is an closed openable container.
There is a disconnected light switch in the garage.
The switch is a switched off device.
There is a peanut candy in the garage.
The candy is edible.
```

Let's see how use works by default:

>**garage**
>You can see a bird cage (closed), a disconnected light switch and a peanut candy here.
>
>\>**`use cage`**
>That's not a verb I recognise.
>
>\>**`use switch`**
>That's not a verb I recognise.
>
>\>**`use candy`**
>That's not a verb I recognise.
We can do better by setting up some default rules for using things.

```inform7
Understand "use [a closed openable thing]" as opening.
Understand "use [a open openable thing]" as closing.
Understand "use [a switched off device]" as switching on.
Understand "use [a switched on device]" as switching off.
Understand "use [an edible thing]" as eating.
```

Now things work a little better:

>\>**`use cage`**
>You open the bird cage.
>
>\>**`use switch`**
>You switch the disconnected light switch on.
>
>\>**`use switch`**
You switch the disconnected light switch off.
>
>\>**`use candy`**
>(first taking the peanut candy)
>You eat the peanut candy. Not bad.

0 comments on commit 706594f

Please sign in to comment.