General

I suggest you ...

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  1. Warn when I6 rules implicitly return true

    I keep getting bitten by Inform 6 rules which have no explicit return statement. Inform 6 then adds in an implicit rtrue, which stops the rulebook from continuing.

    It would be great if Inform could warn the author whenever such an implicit rtrue will be added, so that they can either explicitly rtrue or rfalse.

    1 vote
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      You have left! (?) (thinking…)
    • SCORM or Tin Can API compatibility

      To make packages compatible with LMSs (learning management systems) I suggest you add the ability to communicate with LMSs through SCORM or Tin Can. These implementations can be done through javascript. It would really open up the use of IF for corporate training, and in academia where learning modules are served online.

      1 vote
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)
        You have left! (?) (thinking…)
      • Allow relations (or just their verbs) to imply other relations

        This idea came up in a discussion on intfiction.org (see http://www.intfiction.org/forum/viewtopic.php?f=7&t=20166), in which a new author wanted to create a "wielding" relation for rules governing use of weapons.

        As pointed out in the discussion, certain verbs for built-in relations are privileged in that they specify two relations at once. For example, use of "to wear" simultaneously specifies the carrying and wearing relations.

        Although the details of this example are heavily dependent on the underlying I6 world model, it seems like there may be some interest in allowing authors to set up their own verbs that specify more than one…

        2 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          1 comment  ·  Admin →
        • Export to Commodore 64 Disk Image (.d64) et al

          Based on its roots in the 8-bit world, Inform 7 should pay homage by exporting story files into those formats (i.e., a disk image playable in emulators).

          Obviously certain restrictions would apply, so it would be up to the authors not to exceed those restrictions (or Inform could help).

          1 vote
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
          • (Parsing/Syntax) Allow direct control over possessive pronouns

            Inform already allows us to match relative to objects. However the matching of possessive pronouns ("my", "his", "her", "its", "their") isn't exposed at the I7 level, which I think it should be.

            The issue has been discussed before:

            http://www.intfiction.org/forum/viewtopic.php?f=7&t=19912
            http://www.intfiction.org/forum/viewtopic.php?f=7&t=19253
            http://www.intfiction.org/forum/viewtopic.php?f=7&t=2431&p=16700

            1 vote
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)
              You have left! (?) (thinking…)
            • (IDE) Play in Browser

              Instead of the left side Story functioning as a hard interpreter, allow for an embedded browser "control" that executes an index.html in a web-output folder.

              1 vote
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
              • Make action variables (and rulebook and activity variables) globally visible

                A fairly common question is why the "actor" global variable isn't usable in phrases. (E.g. https://inform7.uservoice.com/forums/57320-general/suggestions/988953--syntax-make-rules-able-to-refer-to-actors .) The answer is that "actor" is not a global variable, but an action-scoped variable.

                But this is not a good enough reason. It's impossible to write a helper phrase or utility which does work based on the actor. It's also unnecessarily painful to write a response which varies based on the actor -- see forum thread http://www.intfiction.org/forum/viewtopic.php?f=7&t=19917 .

                Action variables are not global variables; they get pushed stack-wise when a new action begins. This is valuable. But there is always exactly one *current*…

                1 vote
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  1 comment  ·  Admin →
                • Fully support sound and image resources in Quixe (playable web page)

                  (Perhaps this counts as a bug, but for once I'll err on the side of feature request...)

                  Currently if you "release along with an interpreter" and your game has sounds or image resources, the resources don't make it into the Release/interpreter directory at all. The Game.gblorb.js file is actually a bare Glulx file in a .js wrapper -- it doesn't have the full gblorb contents.

                  This policy dates from before Quixe supported image display. Now that it does (and we'll get audio in there sooner or later), we have a situation where images are needlessly omitted from the playable web…

                  5 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                  • Add a way for authors to upload and download website themes

                    Some kind of gallery for website themes, ideally supported even within the app? (Or with an easy way to install them.)

                    1 vote
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                    • Permit comma-separated options in say phrases

                      Currently this is not allowed:

                      To say foo, loudly:
                      say "Foo";
                      if loudly, say "!";

                      The error says: "...phrase options are not allowed for 'say' phrases, because the commas would lead to ambiguous sentences, and because the content of a substitution is intended to be something conceptually simple and not needing clarification."

                      I am not seeing the ambiguity. (It would be one phrase inside a bracketed substitution, which seems straightforward.)

                      As for substitutions intended to be simple -- sorry, I don't buy it. The most prominent set of phrase options in Inform is the WriteListFrom routine and its coterie of…

                      2 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                      • Use options for more template-internal constants

                        Constant RE_MAX_PACKETS = 32;
                        Constant MAX_NESTED_ACTIVITIES = 20;
                        (Undoubtedly there are more examples, these are just the ones I've noted down.)

                        Bumping these constants requires an inefficient template replacement. (You have to copy and paste a lot of template code to change one line.) Instead we could have use options: "Use maximum regexp packets of at least 32", "Use maximum nested activities of at least 20".

                        1 vote
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                        • Define "empty" for containers and supporters

                          The "empty / non-empty" adjective is defined for many internal types (rulebooks, texts, etc) but not for world-model objects. I think it would align with authors' expectations if "empty" was defined at least for containers and supporters.

                          (A game could still override this adjective for specific objects if other definitions are desired.)

                          Be careful about efficiency. The following works without having to iterate the contents:

                          Definition: a container is empty rather than non-empty if the first thing held by it is nothing.

                          1 vote
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                          • Release I7 under the Artistic (Perl) License

                            Copying my comment from https://inform7.uservoice.com/forums/57320-general/suggestions/6084680-gnu-gpl (which was marked declined):

                            Graham has indicated that a future release of I7 will appear under an open-source license, but he hasn't said when that will happen.

                            (I assume it will be the Artistic License, as that's what's used for Inform 6 and Inweb.)

                            I don't know if that will produce an exponential increase in productivity. But, at a minimum, it should help with the various "port to my system" requests that have appeared here. (http://inform7.uservoice.com/forums/57320-general/suggestions/4805032-make-the-command-line-arm-port-work-on-arm , http://inform7.uservoice.com/forums/57320-general/suggestions/1089677-port-to-app-store-for-ipad , http://inform7.uservoice.com/forums/57320-general/suggestions/2866300--ide-create-a-new-ide-for-android-devices-vw , etc.)

                            Those are all marked "volunteer wanted". But in my experience, a volunteer…

                            1 vote
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                            • Remove "(I6/v6.33 lib 6/12N)" from the banner

                              The current game banner looks like

                              Release 1 / Serial number 160227 / Inform 7 build 6M62 (I6/v6.33 lib 6/12N) SD

                              The parenthesized part is boilerplate and conveys nothing useful even for deep I6-hacker types (like me).

                              - The I6 compiler is packaged with I7 and will not change, unless someone deliberately upgrades it in place -- which is likely to be a bug-fix update that does not change the "6.33" version label. (Yes, I've done this, and no, I didn't touch the label.)

                              - "6/12N" is hardcoded in the template layer and dates from the era when we thought…

                              1 vote
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                              • Assign stored actions that exist at boot time to whoever the player is defined to be at boot time.

                                Assign stored actions that exist at boot time to whoever the player is defined to be at boot time.

                                If a table has actions in it at boot time, they are currently attributed to the default PC (the one who sometimes becomes 'your former self'). This happens even if the author includes a 'The player is Jane' statement. In the latter case, I think the actions in the tables should all be attributed to Jane when the game boots.

                                1 vote
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                • (syntax) allow "matched as" for rulebook variables

                                  Currently we can use the "matched as" syntax for action variables:

                                  The going action has a room called the room gone from (matched as "from").

                                  The otherwise very similar rulebook variables do not allow us to use "matched as." It would be convenient to allow "matched as" for rulebook variables as well, so that one could write:

                                  The assaying rules are a thing based rulebook. The assaying rules have a thing called the instrument (matched as "with").

                                  and then write

                                  For assaying the rock with the microscope:

                                  rather than

                                  For assaying the rock when the instrument is the microscope:

                                  2 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                    1 comment  ·  Admin →
                                  • (syntax) give us a way to acquire the number of the row that was just chosen

                                    I would like to be able to be able to determine the number of a row in a table that was previously chosen (by some criteria *other* than number). For example, I want to be able to get a sensible value for 'N' when I code the following:

                                    choose the row with fruit "banana" in the Table of Tasty Fruit;
                                    let N be the number of the chosen row.

                                    -OR-

                                    choose a random row in the Table of Handy Lookups;
                                    let N be the number of the chosen row.

                                    It would also be cool to have functions like "the next…

                                    7 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                    • Allow dynamic Index tabs in IDE

                                      I'm developing authoring tools for FyreVM and would like to add functionality to the IDE on an as-needed basis. So if an author decides to use my fyrevm extensions, I would offer a way to inject compile results into the IDE directly.

                                      My current idea would be to add a Channels tab to the Index so the user can see my channel test results.

                                      3 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                      • (Responses, Extension authoring) Allow lettered responses outside of rules

                                        Extension authors are expected mark to responses with letters (e.g. "(A)") inside named rules, but there seems not to be an elegant way to handle strings that appear in, for instance, "Understand as a mistake" or "to gild the lily" situations.

                                        Examples:

                                        http://www.intfiction.org/forum/viewtopic.php?f=7&t=18953&p=100339#p100335

                                        http://www.intfiction.org/forum/viewtopic.php?f=7&t=18882&p=99664#p99664

                                        6 votes
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                          1 comment  ·  Admin →
                                        • (Parsing) Reorder and modify tests created by "Understand ... when ..." to allow closer functionality to I6 parse_name() routines

                                          If an author tries something reasonable-looking like: 'Understand "with [number] spots" as a tribble when the spot count of the tribble is the number understood.' (in a situation where the tribble kind has a number property called spot count), the compiler does not complain, but the Understand grammar doesn't work, either.

                                          Close inspection of the generated source code shows that the tribble kind is assigned a function Parse_Name_GV## (with ## being a number) which includes

                                          a. a generated test (called Cond_Token_###) to determine if the condition that came after the "when" is true.

                                          b. a series of word-by-word tests looking…

                                          1 vote
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                            1 comment  ·  Admin →
                                          ← Previous 1 3 4 5 13 14
                                          • Don't see your idea?

                                          General

                                          Feedback and Knowledge Base