Text disabled

Show all posts
Showing posts with label extensions. Show all posts

Friday, December 2, 2016

Preferences

This is it: the Preferences extension.

Download the latest version here in .i7x format and install it into your version of the Inform environment. You're ready to start writing stories that incorporate player preferences into your Inform title!

You will want to direct your players to the stand-alone app that makes it possible to save their settings, also. That is to be found here.

Release #4:
  • Added preferred names
  • Added retroactive change to history/reality to the transformation options
  • Added a new category (willing) for reaction to transformation
What does it do?
  • Automated loadup routine to import player's saved settings
  • Tables to define the unavoidable content contained in the author's game
  • Automated verify routine to check game settings vs the players
What are the settings?
  • Sex of main character (male, female)
  • Sex of main character can change yes/no. If yes, permits additional categories:
    • Additional possible sex of main character: MTF or FTM
    • Reaction to change of sex (eager, secretly eager, reluctant, willing, change for medical reason)
  • Preferred names for starting sex (male, female)
    • If sex of main character can change, can also set preferred names for (becomes female, becomes male)
  • Sexual orientations allowed by player (likes boys, likes girls, bisexual, neither), can be set separately for each starting sex of the main player
  • Sexual orientation can change yes/no. If yes, permits additional category:
    • starts liking boys, becomes bisexual
    • starts liking boys, switches to liking girls
    • starts liking girls, switches to liking boys
    • starts liking girls, becomes bisexual
  • Main character has a history of sex change yes/no. If yes, permits additional category:
    • History of voluntary sex change
    • History of voluntary permanent sex change
    • History of involuntary sex change
    • History of involuntary permanent sex change
  • Which characters are allowed to flirt with you (men, women, or depending on your current orientation)
  • Other characters allowed to sex change or not (MTF, FTM)
  • Transformation of main character:
    • bimbo
    • identity erasure
    • retroactive change of reality/history
    • breast enlargement
    • corruption/evil
    • gynoid
    • age regression
    • non-human or partially-human living thing
    • inanimate object
  • Other questionable content:
    • mind control (player is victim)
    • mind control (player is perpetrator)
    • unwilling sex (player is victim)
    • unwilling sex (player is perpetrator)
    • bondage (player is victim)
    • bondage (player is perpetrator)
    • incest
    • urine
    • feces
    • semen
    • lactation
    • menstruation
    • pregnancy
    • male pregnancy
    • oral sex
    • anal sex
    • masturbation
    • crossdressing
    • girls with penises
    • boys with vaginas
  • Various sexual partners set separately for each possible starting sex (player is first-listed participant) 
    • male-male
    • male-male-male
    • male-male-female
    • male-female-female
    • male-female
    • female-male
    • female-male-male
    • female-female-male
    • female-female-female
    • female-female

Thursday, December 1, 2016

Extension: Dynamic Clothing

This is the first release. It can do the following:
  • Contains a dynamically-described body model for the player and other characters which can be defined by certain base characteristics. A list of such statistics and their ranges is given below.
  • Many elements of the body model are calculated from the base statistics. For instance, the total breast size is calculated from natural breast size, implants, fatness, and whether the character is (or ever was) pregnant.
  • Characters in the game (including the player) can be described automatically based upon their body statistics and their current attire. The automated description routine can be overridden completely if the author wishes to have a special text all his own.
  • When a character has implants, the breasts may be described differently depending on whether the breasts are mostly natural, mostly implant, etc.
  • Characters can be pregnant. This affects only the description of the character, his/her clothing sizes, and breast size (in a small way — currently pregnant characters and characters who have been pregnant have slightly larger breasts than they would normally have had). Pregnancy is rated by # of days/months as well as by the number of gestations (eg, twins).
  • Sexual characteristics are not gender-specific. Both male and female characters can have defined breast sizes, cock sizes, or pregnancy.
  • When the player uses a command like EXAMINE BOB, the character of Bob is given an overall description. This description is automatically prioritized by whatever is interesting about Bob — that is, whatever is outside the norm for eye color, hair color, hair styles, musculature, height, whether it is an old character with a too-young hairstyle, and so on. (Yes, the author does get to decide what "normal" is in his world if he doesn't like my value ranges — he could set a game in Japan where being Japanese is so common, it's not mentioned.) If the character has a classically ideal figure, the description will also make a comparison to a person with similar proportions (eg, from Marilyn Monroe to Brigitte Nielsen to Scarlet Johansson).
  • The author can write an introductory phrase (such as "Bob is a good friend of yours that you've known since your time together in the Navy") which precedes the automated description. If there isn't an introduction, the description will just give something generic (eg, "Bob is a tall man with...").
  • The player can examine individual body parts, including ARMS, LEGS, BACKSIDE, CHEST, and CROTCH, of any character. Body parts may be automatically described or, at the author's option, given a manual description instead. Multiple input terms are accepted (eg, for LEGS it will accept leg, legs, foot, feet, calf, calves, thigh, thighs, etc). If the player tries to examine certain body parts which the character doesn't have (eg, breasts, cock, pussy), the description will be slightly surprised, as if you expected to find such a thing and did not. For instance, in the sample game, try typing EXAMINE MY COCK.
  • A large number of simple types of clothing have been pre-defined. Garments have standard layers, such that items like underwear are always worn beneath trousers. Also, different types of garment cover different regions of the body. Only the uppermost layer of garments is described.
  • Clothing can also be defined by size: at the chest, waist, hips, bust, and inseam, where appropriate. Some garments (such as hats and socks) are exempt from sizing. Dimensions can be displayed in imperial or metric, although since sizes in both the UK and US are given in inches, body dimensions are usually given in inches. (This is easy to change, however.) The author can specify clothing sizes during creation by adding adjectives, like so: The pair of torn jeans is a hip-32 inseam-30 pair of trousers
  • Pronouns are defined not by whether a character is[ male or female, but whether the character looks male or female, based upon body statistics and gendered clothing (eg, somebody with long hair and wearing a dress will get extra feminine appearance points). Pursuant to this feature, both brassieres and underpants can be stuffed to give the appearance of the opposite sex. However, if the character is defined as one the player recognizes (i.e., the player knows the true identity), then the pronoun will be the correct male/female pronoun.
  • Also, upper garments have a certain amount of concealment; they can make breasts look smaller than they really are (if you have a female character that wants to appear to be a man). There is also a garment defined as a chest-bandage whose specific purpose is to conceal breasts. There is a limit to how much a pair of breasts can be concealed; natural breasts are easier to conceal than implants.Some upper garments can be described as overfilling, meaning that you can wear them, but if your boobs are too big you will spill out; if it's a shirt or a blouse, it won't button.
  • Sometimes nipples will be visible, depending on many things: how cold the room is, what kind of fabric the top is made of, how many layers there are, and how big the breasts are. When there is a chest-bandage or a stuffed brassiere in place, this doesn't occur (naturally).
  • If the character is not wearing a bra, this may be described, depending on how many layers there are.
  • Clothing is also defined by a number of possible colors and fabrics, with different characteristics. These can change the description in predictable ways. For example, a dark-colored bra worn under a light-colored thin-fabric shirt may be visible, provided the character has light-colored skin. Also, a pair of pantyhose will not conceal an ankle tattoo
  • Did I say tattoos? Yes, I did. A special type of garment, present at the level of the skin, is available. By default this is a tattoo, but it can be twiddled a bit to become a scar. Tattoos and scars will be visible if the character isn't wearing any clothing that obscures that region.
Body Statistics the Inform 7 Author Can Define:

  • HEIGHT. From 148 cm to 206 cm, or about 4'10" to 6'9".
  • MUSCULATURE. From 5 to 30. Roughly, muscles as a % of body weight.
  • FATNESS. From 5 to 30. Roughly, fat as a % of body weight.
  • MASCULINITY. From 3-6 (on males) and from 1-4 (on females). How broad the shoulders and upper body are.
  • FEMININITY. From 1-4 (on females) and usually 0 (on males). Determines how much wider hips are than waist.
  • NATURAL BREAST VALUE. From 0-63. Determines how sizeable breasts are. This is not a 1:1 correspondence to cup size; at the lower levels it is +2 for every cup size; then +3 for every cup size, +4, etc. Cup sizes are calculated from none to AA cup to HH cup.
  • IMPLANT VALUE. If you want silicone breasts described differently.
  • COCKSIZE. Size of genitals. The default is 0 cm for females and 15 cm for males (a nice real-world average value). There is no defined maximum.
  • HAIR-GROWTH-TOP, HAIR-GROWTH-SIDES, HAIR-GROWTH-BACK: a height (in cm) for the length of the hair in various areas.
  • CURRENT HAIR COLOR. Acceptable values are faded white, salt-and-pepper white, steely gray, bleached blond, platinum blond, strawberry blond, honey-blond, auburn, chestnut, cinnamon brown, chocolate brown, coppery red, fiery red, jet black, inky black, violent green, electric blue, hot pink, and neon orange.
  • HAIR ANGULARITY. How straight or curly the hair is. Acceptable values are (from least to most tightly curled) straight, wavy, curly and helical.
  • HAIR STYLE. Acceptable values are null-style, long, ponytail, flip, shag, bobbed, chopped, braids, French braid, pompadour, center-parted, side-parted, mullet, pageboy, pixie, pro, spiked, mohawk, buzz, afro, flattop, cornrows, moptop, ringlets, buzzpro, bald-wings, aging-hippie, bald-pated, tonsure, comb-over, and queue.
  • EYE-COLOR. Note hyphen. Acceptable values are e-blue-gray, e-blue, e-gray, e-brown, e-hazel, e-gray-violet, e-green, e-gray-green, and e-black.
  • SKINTONE. Hue. Acceptable values are (from most red to most yellow) Red2, Red1, Yellow1, Yellow2.
  • SKINVALUE. Lightness and darkness. Acceptable values are (from lightest to darkest) Light2, Light1, Dark1, and Dark2.
  • ETHNICITY and NATIONALITY. What kind of genetic makeup the character has; also, where the character might be from. Acceptable values are Caucasian, American, Black American, European, English, Irish, Canadian, Australian, German, Danish, Swedish, Norwegian, Dutch, Portuguese, French, Italian, Greek, Slavic, Russian, Polish, Hungarian, African, Ethiopian, Somalian, Kenyan, Asian, Japanese, Korean, Chinese, Hongkongese, Vietnamese, Cambodian, Filipino, Thai, Latin, Mexican, Puerto Rican, Jamaican, Cuban, Brazilian, Hawaiian, Polynesian, Native American, Jewish, Israeli, Middle Eastern, Persian, Moroccan, Egyptian, Lebanese, and Indian.


Not yet functional:

  • Dynamic descriptions of the face will go in a different extension, which is already mostly built.
  • Ensembles are not yet built.
  • Beards are not yet included in the description routines.
  • Clothing can have patterns and fabric types, but these are not mentioned in the descriptions.
  • Description of the chest does not also include description of the belly when it is noteworthy (eg, when the character is fat and/or pregnant).
  • It is possible to define both a natural hair color and a current hair color (if hair is dyed); this, however, does not affect the description (yet).
  • Commands to DRESS and UNDRESS all at once are not defined.
  • It should be possible to introduce wigs as a disguise element. I will try this at some point.


Later planned expansions:

  • Expansion 1. Clothing details: breaking strain of different fabrics; bursting out of clothing and describing damaged clothing; describing wetness and translucent wetness; clothing drying out over time; describing body/clothing features based on local conditions (such as dresses that ruffle in the wind or what a white T-shirt does out in the rain).
  • Expansion 2. Evaluation of the character's outfit. Identifying whether colors or patterns match or clash.

And here is a sample of what Dynamic Clothing can do. All of the descriptions of the characters are generated procedurally by the extension. The game itself merely defines the characters and what each of them is wearing.

Please note that the characters in this download do not DO anything. You cannot have sex with anybody, explore your body, or get seduced. This is not a game, this is a proof-of-concept for automated character descriptions. The only thing you can do is EXAMINE things and try on clothing.

When I have time, I'll post the completed extension.

Monday, September 26, 2016

What the player wants

Like the old saying goes, you can have it cheap, quick, or correct; pick any two. Work that is inexpensive and fast is rarely of any quality; work that is fast and good usually comes with a high price; and work that is both correct and affordable will rarely be done by your schedule. Something similar applies to finding out what the player wants in his game. The author can ask the player an exhaustive list of highly specific questions, at some cost of time; or quickly breeze through a few questions, sacrificing either completeness or comprehension.

This is especially true when we are dealing with games that simulate social activities like flirting, relationships, and sex. Humans rarely ask for what we want; our social rules do not always allow us to. Sometimes what we want is for someone else to take charge, to not ask us what we want, like a handsome stranger who seduces the player despite her breathy protests to the contrary. Paradoxically, what we want is sometimes the very thing that it is impossible to ask for. In the real world we insist that no means no, but in a fantasy we might wish for no to mean yes.

In order to solve the problem of making a game where no can mean yes, I am writing an extension for Inform called Preferences. It allows the player to specify, in some detail, what is encompassed in his or her sexual fantasies, and to exclude that which is not. It's impossible to be complete in this endeavor, for every fantasy has myriads of sub-categories that would take infinite monkeys, splitting infinite numbers of hairs, to define. And we can't be entirely accurate in every fantasy, since what constitutes a fantasy is somewhat variable from person to person. But we can eliminate the time factor. Rather than have every game ask the same basic questions, Preferences will let the player define these things once, for all Inform games.

I will have more to say about the Preferences extension as I get closer to a release date. I do know that Body Thief will be the first game to incorporate it.

Friday, September 23, 2016

Extensions

Inform 7 is my platform of choice, because it is modular. I can write an extension that can be re-used multiple times, without reinventing the wheel each time.

My current list of extensions under construction:

Weather [complete]. An extension to govern whether rooms are indoor, outdoor, or covered, and how they are affected by weather effects like rain, wind, heat, and humidity. Indoor rooms are defined by whether weather effects can be seen (such as lightning or rain on the windows), heard (like wind or thunder) or felt (like rain, snow, or cold). The author is allowed to define what weather effects are taking place, and when.

Dynamic Clothing [complete but being tested]. A complete model of the human body that can be defined by certain dimensions like height, muscle, breast size, shoulder and hip width, breast size, hair length and style; and other values calculated from them, such as inseam, waist size, cup size, shoe size, etc. Includes a layered clothing model where clothing is described based on what is visible; underlying hidden items are not mentioned unless there is reason to do so. For instance, wearing a black bra under a thin white shirt may be visible. The body model includes a 2-axis descriptor of skin tone, hair length in 3 regions, shaving areas of the body, pregnancy that affects waist size and cup size, presence of genitalia that is independent of the actor's gender, and more. Uses Weather (for rooms that are cold, nipples may be visible).

Basic Help [complete]. An expandable hint system that prints a table of commands that new players can refer to for assistance in Inform. The author can add new lines to the table for any custom new commands.

Body-Swapping [under construction]. An extension to automate the process of assigning a body to a specific actor. This can be used to assign a body, as when the player takes on an alternate form (such as Ranma Saotome's girl-form, or Mystique imitating someone); or to exchange the bodies of two characters; or to assign the player a specific predetermined body after a transformation (as with Jeykll and Hyde). Requires Dynamic Clothing.

Beautiful Faces [under construction]. Attempts to do for faces and makeup what Dynamic Clothing does for bodies.

Preferences [under construction]. An app and extension that allows the player to specify what kind of content he would prefer to avoid in Inform games. Authors who use the Preferences extension can read in the player's desires, and either accommodate them (that is, skip past content the player doesn't like) or warm him that such content cannot be avoided. Users can specify their preferences for many things, such as starting gender, starting name, post-transformation name, response to transformarion, and whether to allow content like unwilling sex, mind control, bodily fluids, breast enlargement, bondage, and many others. Requires Names.

Body Preferences [conception stage only]. A separate preference app to define the player's preferred starting form, and preferred post-transformation form, if any. Requires Dynamic Clothing.

Names [under construction]. An extension that contains thousands of common English names along with the appropriate formal, nickname, diminutive, and opposite-gender forms. For instance, Chris corresponds to Christopher, Chris, Chrissy, and Christine.

Links will follow (as well as code) when I get a moment to upload them somewhere.