Sunday, March 8, 2015

AIF Toolkit v1.0.2 + AIF Toolkit Recipe Book + The Concession Stand

AIF Toolkit version 1.0.2 is released. You can download it here. This is a pure documentation update (but what a documentation update it is!) so if you don't want all the extra documentation you don't have to download it. This was supposed to go up yesterday, but I stayed up late last night playing The Lost Hound. What a great game!

The AIF Toolkit finally includes a sample game: the Concession Stand. Now, the Concession Stand is a minicomp-sized game, but it's basically bad, and it's bad on purpose. My issue is with my sample games is that I had gotten these great, ambitious ideas, which of course fell apart, and the Concession Stand is basically a bare-bones AIF game that demonstrates some advanced features. I got incredibly lazy writing the sex scene, so there's that to look forward to. The only good thing about it is for a good read of the source code.

Also, the AIF Toolkit include the AIF Toolkit Recipe Book, an extension that is only documentation. It's a bit like a FAQ and a reference, and includes ways of how to implement a wide variety of features. As I get questions I'll probably add more to the AIF Toolkit Recipe Book. It also includes a project template and three sex scene templates. The sex scene templates were made systematically, I apologize in advance if they contain any errors and I'll fix them as I get reports or as I see them.

P.S. If you look at the right hand side bar, you'll notice that there's now a link to the latest release of the AIF Toolkit. That should make it so the newest release is always easily accessible.

24 comments:

  1. Not sure if anyone will see this but I started to try out this extension and I was wondering if their is a way to change which body parts are described in a pdescription of a character. Also I was wondering if their is a way to change a characters clothes between scenes.

    ReplyDelete
    Replies
    1. pdesc -- you can remove body parts from being described in two ways.

      1) Remove it using the portrait scope activity. For instance, if you don't want to mention feet:

      After deciding the portrait scope of a person (called N):
      if N incorporates feet (called K):
      paint over K.

      That remove feet from being mentioned in a portrait description.

      2) Mark it as "mentioned".

      Rule for printing the portrait description of feet (called N):
      now N is mentioned.

      Clothes--

      Make two clothing sets for a character, let's say "casual" and "pajamas".

      When night begins:
      force dress alison into pajamas, into off-stage.

      When day begins:
      force dress alison into casual clothes, into off-stage.

      I hope this is helpful.

      Delete
  2. Hi, sorry for the really late reply but I had problems with Inform and finding free time so it took a while to get back to this. Ok the first problem I seem to be having is that when I try to put in the code to remove body parts from the Portrait Description I get this problem:

    Problem. The phrase or rule definition 'After deciding the portrait scope of a person (called N)' is written using the 'colon and indentation' syntax for its 'if's, 'repeat's and 'while's, where blocks of phrases grouped together are indented one tab step inward from the 'if ...:' or similar phrase to which they belong. But the tabs here seem to be misaligned, and I can't determine the structure. The first phrase going awry in the definition seems to be 'if N incorporates hair (called K)' , in case that helps.

    I'm not sure what this means since I'm very new to Inform programming. FYI, I'm using the code from the Sample Game you made with the last release and I'm trying to remove mention of hair, face, and eyes from Portrait Description.

    The other thing is a small thing but I was wondering if you can change outfits by scenes like if someone is wearing something in one scene and changes clothes for the next.

    Thanks and sorry it's taken me so long to answer from before.

    ReplyDelete
    Replies
    1. 1) That error message means you probably forgot to add in a period, semicolon, or tab. If you are using the code I pasted above -- with that piece of code you need to add in some tabs, one in the second line and two in the third. Sorry about that, Google removes tabs.

      2) Outfits can be changed by using the Force Dress (A PERSON) Into (A Clothing Set). Simply invoke that at the beginning of a scene, like so:

      When the greatest scene begins:
      force dress Jane into awesome clothes.

      Delete
  3. Cool, it works now. Thanks a lot for the help

    ReplyDelete
  4. Oh there was another thing I'm a little confused about and that's how to get examining body parts that are clothed working.

    I've looked in the documentation for Layered Clothing and put in:

    if John's cock is clothed, say "[The obstructing garment] is over John's cock."

    but it keeps on creating an error when I try to test it.

    ReplyDelete
    Replies
    1. If you simply have that line of code by itself outside of a rule, then it won't work. What you want is something like:

      Instead of examining John's cock:
      [tab]if john's cock is clothed:
      [tab][tab]say "[the obstructing garment] is over John's cock.";
      [tab]else:
      [tab][tab]say "John's cock is really big."

      If that's not your issue, paste the code and the error message and maybe I can help.

      Delete
  5. Is there a way to set the clothes you wear at the start of the game? Now that I have different sets of clothes, the game puts all of them on to the character at the beginning. I've tried pick the clothing by scene by having the character forced into the clothes at the start but it leaves all the clothes discarded on the ground.

    Which section in Advanced Layered Clothing can I read about stripping or removing my clothes, a NPC's clothes, or undressing myself or asking a NPC to strip or remove clothes?

    I've also noticed that dresses and skirts are not included by default in the extension. Do I have to create the garment myself?

    Also how difficult is it to lift clothing like a dress, skirt, nighty, or a long shirt? Just wondering so I can decide whether to put this feature in or not.

    ReplyDelete
    Replies
    1. 1) The game should not automatically make NPCs wear clothes unless you type "Bob is wearing the blue underpants." If that is happening, there is a bug somewhere.

      2) Whether clothes are discarded or not is controlled by a use option. By default, clothes should empty into inventories, unless you use: "Use discard clothes after stripping." You can also control where you want clothes to be discarded by phrase options, for example: "Force dress Nikki into swimsuit, into off-stage" will dump all the excess clothes into the off-stage, while "into inventory" will dump it into her inventory and "into location" into wherever she's standing.

      3) Chapter 2, 2.1-2.5

      I realize that there's no actual description on how to write rules for these actions, so I'll probably add that. So, STRIPPING OFF controls stripping individual garments and WEARING adds garments. For NPCs, a simple sex-ready check is done before they strip off clothes.

      4) Yeah, it's intentional skirts aren't included, since for most people they would be identical to shorts. Dresses should probably be added. The easiest way to make a skirt is as follows:

      A skirt is a kind of shorts. It is not plural-named. A skirt is shiftable.

      And dress:

      A dress is a kind of garment. The covered areas are {chest area, breasts area, ass area, crotch area, legs area}. A dress is shiftable.

      You would then only need to provide the shifting rules for the garments.

      5) Clothing lifting is not mechanically difficult, once it works it works fine, but it is difficult to integrate in all the various descriptions, making sure that the prose respects the lifted skirt. So it's easy to get working, but a lot of work to make it work well.

      Delete
  6. Sorry, I didn't see your last answer before I posted above.

    I tried to put in the code you put in but I think I must be putting it in the wrong place or something because I get this error:

    Problem. You wrote 'Instead of examining Nikki's tits' , which seems to introduce a rule taking effect only if the action is 'examining Nikki's tits'. But that did not make sense as a description of an action. I am unable to place this rule into any rulebook.

    I put this under the description of the NPC's body parts first and again as a a part of the Rules section.

    ReplyDelete
    Replies
    1. The thing that struck me immediately is that you use "Nikki's tits" when there's a good chance the object is called "Nikki's breasts". Trying using breasts instead of tits. If it still doesn't compile let me know.

      Delete
  7. Alright I made the change and now I get this error:

    Problem. In the sentence 'if Nikki's breasts is clothed' , I was expecting to read a condition, but instead found some text that I couldn't understand - 'Nikki's breasts is clothed'.

    I was trying to match this phrase:

    if (nikki's breasts is clothed - a condition):

    But I didn't recognise 'nikki's breasts is clothed'.



    --------------------------------------------------------------------------------

    Problem. You wrote 'else' : but this is an 'else' or 'otherwise' with no matching 'if' (or 'unless'), which must be wrong.

    I might I have the code in the wrong place. I put it under the description of breasts.

    Sorry for the late reply finding time to write lately was tough.

    ReplyDelete
    Replies
    1. That is a bug on my end, I must have accidentally deleted the definition of "clothed". Try using "not exposed" instead.

      Delete
  8. Alright that worked thanks. Does not having the definition of "clothed" in the code cause any other problems? How do you put the definition into a game if it's not in the extension?

    I looked over the section about stripping in Advanced Layered Clothing and I couldn't find anything about asking a NPC about removing they're clothes or your clothes except in a section about accessories which was removed. Is there a way to do this?

    ReplyDelete
    Replies
    1. So you mean a persuasion rule, as in:

      Persuasion rule for asking a person to try stripping X:

      To answer your question: It should be possible to ask people to strip their own clothes or your clothes. There is a use option to prevent people from stripping off another person's clothes ("Use self-stripping only", I believe). You should be able to write it like any other rule:

      After Jane stripping off Lauren's panties:
      say "X".

      Delete
    2. For your point on adding "clothed", this should work:

      Definition: a body part is clothed if it is not exposed.

      Delete
    3. I just looked it up, and "covered" does the exact same thing as "clothed". Use "covered" instead.

      Delete
    4. Everything works when I strip clothes from either the PC or the NPC except for the NPC stripping herself, it just says that "she has better things to do." Do I have to make her sex ready for the scene because I have her already set to being sex ready for testing these things out?

      Delete
    5. From the error message it sounds like I'm missing a persuasion rule, but I tested it and NPC self-stripping is working perfectly. Did you write a persuasion rule? If so, that could be the culprit.

      Delete
    6. Ya I forgot the persuasion rule so it works now. Thanks for the help.

      Delete
  9. Oh I was also wondering if it was possible using these extensions to have shiftable clothing to shift based on actions the NPC takes like if a NPC wearing a dress, without being told too by PC, bends over causing the dress to shift up and then, later, standing up to let it shift down.

    ReplyDelete
    Replies
    1. That's possible, though it's not pretty. I'll add a more elegant method in the future, but for now you can use this method:

      Carry out Annie leaning over when Annie is wearing Annie's dress:
      -->now the modest boolean is false;
      -->adjust annie's dress over {ass area, crotch area};
      -->now Annie's dress is shifted.


      Carry out Annie standing up when Annie is wearing Annie's dress:
      -->now the modest boolean is true;
      -->adjust annie's dress over {ass area, crotch area};
      -->now Annie's dress is unshifted.

      Delete
    2. I'm still figuring out how to do this so I haven't been able to test this but if I have a NPC doing 1 of say 5 random actions in a scene or room every 5 turns or so while looking for a lost object, I can put this code under the description of one of the actions and it'll work like I need too?

      Delete
    3. I hope so. I haven't tested the code above, mind you, but it should work.

      Delete