Sunday, 3 December 2017

Newlife 0.4.14

Hello everyone!

Newlife 0.4.14 has been released. The patreon version is here. The changelog is below.

Due to the delay in releasing this version, I've made it public straight away and it can be downloaded using the links to the right.

As usual, saved files & templates from older versions probably won't work with newer ones. 

For new players - just use one of the links to the right to get a zipfile containing Newlife. Once unzipped, you'll see a folder containing .jar and .exe files. Either one of these will run the game. 

For either version you'll need to have Java installed. A lot of programs use Java so you might well already have it. If the jar shows up as an unrecognised file type, then you probably don't. In that case you can get it from http://www.java.com/
The exe should tell you if you don't have the right version on your computer, but you'll still need to install java to run the game.
There's a guide for new players here which includes some troubleshooting tips for installation & downloading.

This version focuses on a plotline involving the PC's BF's jerk friend. To access these scenes you need:

- A boyfriend who does not have the selfish or jerk personality, does not have the doormat or likes-to-share traits and is not Horse.
- In a relationship for at least 4 weeks
- Some liking and love for him (the requirements are fairly low but aromantic will block this chain)

Changelog:



Major changes & additions:
  • Added a 4-scene event chain based around the “boyfriend's jerk friend” PMW winner.
Minor changes & bugfixes:
  • Fixes to text issues. Thanks to OrangeJuice, Rigel, Secondarian, Fiery Dog Poop, Aethar, Flanjygo, Saur and Never for reporting some of these.
  • Fixed an error reported by DrGong and Antage when you repeat the innocent befriending scene with an NPC you'd formerly befriended by going down the lowlife boyfriend path.
  • Fixed an error reported by Dunan Rayne and Jjrider in the “Friends don't blackmail” action of the jerk blackmail scene.
  • As requested by Kaorok, the main menu can now be resized without cutting off the buttons.
  • Added a potential partner effect for the doormat trait.
  • Added a friendship level check that was missing from the conditions for Rigel's lowlife event. This now needs a CLOSE friendship level to fire.
  • Added some flags to the blackmail scene as suggested by thereisnospoon to block condom use when the NPC insisted on inseminating the PC.
  • Doormat boyfriends will no longer dump you if you get pregnant by someone else. Thanks to Bartran for reporting this.
  • Fixed a “no actions” error reported by Dunkaroodle when the boss asks your innocent colleague to have anal sex during the electrocouch scene.
  • Fixed an issue reported by MadCat where men would compliment you on your outfit even when you were completely naked. They will now only do so if you're wearing at least one article of clothing.
  • Fixed an issue reported by jjrider where your character would mention being on the pill when asking a man to finish inside her, even if she'd lied to him about it previously.
  • Fixed a bug reported by Saur where the “no condom, no sex” option could be picked repeatedly even after the man put on a condom the first time.
  • Added 2 hidden traits requested by Fryett. These will currently never appear except on custom NPCs: UNLOVABLE prevents the PC from gaining love points towards that specific NPC, ODDLY_UNATTRACTIVE provides an attractiveness penalty and also caps starting attractiveness so they'll always begin as being unattractive to the PC regardless of body-type or traits like HANDSOME. Attractiveness can increase over time though so this might change in-game.
  • Added an NPC cunning trait that stops the PC's bf discovering cheating with them. This isn't randomly assigned to NPCs at present but can be added to custom ones.
  • Added new options that let the player modify the starting number of NPCs when a game is begun.
  • Fixed various errors with the first pass at 0.4.14, including ones reported by Flanjygo & Saur.
.
Enjoy the new version, and let me know if you find any bugs! 


Friday, 1 December 2017

Next version delayed until tomorrow

Hi all, I was aiming to get the next version out tonight, but I feel like there's too much left to do and I've got to a point where I'm too tired to write decent content or reliably track down bugs.

I was perhaps too optimistic to attempt to squeeze in four scenes in one release, even though none of them is individually massive. I've also been hindered by my ongoing arm troubles but even so I feel pretty bad. I should have seen this coming and scaled back my ambitions or perhaps put out one of the scenes as a yml/vm framework for volunteers to fill in the details. I just buried my head in the sand. It was dumb and unprofessional.


I'm kind of upset about this as it means that this will be the first ever month without an update. What I'll be doing is releasing the public version tomorrow along with the patron one. That way anyone who supported in November but not December will still get the new version.


After tomorrow, there'll be another release in mid-december: I'll be aiming for around the 20th. I'll try to learn my lessons and start off by getting a simple version done that I can build on instead of leaving myself in a position where I have to implement everything I planned at the start of the month and have no real time set aside for contingencies.

I've made a post on Patreon from which this blog post is mostly copied. As I said there, if any patrons feel this isn't good enough then they should PM me over on that site.

Wednesday, 8 November 2017

Raaaaape!

Hi all,

This is a post I've had sitting on my hard drive for over a month - I anticipate it might lead to a lot of typing for me so I've been reluctant to post it while my keyboard time was limited. 

I feel that I'm getting better day by day though so I'm posting it now before I forget about it completely. Just remember that I'm still not 100% so don't expect me to be getting into long written discussions!


I'd like to talk about a rather divisive fetish: non-consent.

Nonconsent is a popular fetish that's often requested by players. However, it has some key issues that prevent it being part of the main Newlife release. I'm going to put them in a bullet-point list, because I love bullet-points so much that I might put a path into the wedding scene where the player gets to marry one.

  • Firstly, while it's often requested I also often hear from people who are happy it isn't included. While it could be gated behind a trait similar to block_rough, it's questionable whether it's a good idea for me to be dedicating my development/writing time to content that I know a significant number of players actively dislike.
  • Secondly, "glorification of rape and sexual violence" is forbidden under Patreon's community guidelines. This seems like it would block a lot of potential nonconsent content.
  • Third, it's legally questionable for a UK-based developer. While writing the guides for the user-submissions content I found the Crown Prosecution Service's guidelines on the Obscene Publications Act, a law which has been used to arrest people for text-only content in the past. This has a section on content most commonly prosecuted which includes "realistic portrayals of rape".

In summary: Non-consensual content can never be featured in the main Newlife release. It isn't something I'll be working on and it also won't be allowed on the PMW voting list or accepted in scenes submitted for inclusion.

However, with the addition of user-submissions, there may be avenues for it to be included as a separate add-on that wouldn't be affected by the above:
  • The first issue is essentially a problem with the efficient use of my limited development time. However, if the nonconsent content is principally written by a team of volunteers then it wouldn't affect other content
  • The second one is only an issue for content on Patreon. If it's an add-on distributed separately then that shouldn't be a problem
  • The OPA only applies to people who publish content. If I'm not directly involved in creating this add-on and I'm not the one who distributes it then I think that would be safe for me. For example, the team creating it could host it on a blog that they control, and I could simply have a link to their site from this blog here. Of course the people who do make the non-consent addition might have to worry about the OPA, but that wouldn't be a concern if they aren't based in the UK.


I've set up a discussion board on Discord to allow volunteers to contribute towards a community-created rape add-on for Newlife.

This will be a sort of semi-official project that won't be written, edited or distributed by me but that I will link to from the blog so players have an easy way of accessing it.
It'll also need a way of hooking into the main game without being restricted to the testing scene, but that needn't be an insurmountable problem – I'll discuss this further with the NC writers when/if a group of them have got together and figured out what sort of NC content they want to add.


There are some ground rules I want to put in place. These should all be common sense, but my time on the internet has taught me to never assume common sense from every member of a group of random online strangers!

  • First, the NC add-on absolutely must not risk legal consequences for players. As such, it must not include any sexual content involving under-18s, including sexualised descriptions of them or them being present while someone else has sex.
  • Second, if I'm going to link to something and help it connect up to my work then it shouldn't risk negative consequences for me, be they personal, financial or legal. This shouldn't be an issue, but don't do anything dumb like using the add-on to rile up easily-offended people who are likely to form an online hate mob.
  • The add-on should be the volunteers' own work and should not include any copyrighted characters or real-life people. I don't want to have to deal with people sending in cease-and-desists or plagarism lawsuits.
  • The add-on should focus on nonconsent and related content only. Consensual content should be submitted for inclusion in the main-game, as this lets it also be enjoyed by people who aren't into rape.
  • Extreme fetishes other than nonconsent shouldn't be included in this add-on. It's supposed to be the rape add-on, not the "every fetish imaginable" one! If the NC add-on is successful then I'm open to starting similar projects for some other extreme fetishes but the aim is that they would have separate downloads so people could pick and choose the ones they're interested in.
  • Distribution will be something I'll discuss in more detail with the NC team: probably they'll need to set up a blog or something, but that can wait until something's ready for players. However, any distribution must be gated behind an "are you over 18" interstitial and it must make clear to the player what sort of content it includes (i.e. rape) before they download and play it.
  • The add-on should be playable before being released. Something that crashes all the time or runs into a bunch of "to be continued" dead-ends isn't really suitable for Newlife.
  • As I'm not involved in the add-on's development I also won't be able to help with bugfixing. As such, the people who make it should be prepared to take error/typo reports from players and fix them.


The first stage towards this is for NC volunteers to get together on the discord, talk about what they want to work on collaboratively and maybe start prototyping outlines for a scene or two. I won't be organising the group or working as part of it, but once they've got an idea of what sort of scenes they want to add first then we can discuss how they can connect into the game.

If you want to be part of this group and work on NC content then head to the Newlife Discord and check out the nc-discussion channel under the "Nonconsent Project" category.

Have fun, and remember, Newlife is entirely fictional and I do not condone using it as a guide on how to behave in real-life!

Wednesday, 1 November 2017

Newlife 0.4.13

Hello everyone!

Newlife 0.4.13 has been released. Early-access Patrons can find it in the creations section here. The changelog is below.

The previous version is now public. You can download it using the links on the right-hand side of the blog. The public version's changelog is here.

As usual, saved files & templates from older versions probably won't work with newer ones. 

For new players - just use one of the links to the right to get a zipfile containing Newlife. Once unzipped, you'll see a folder containing .jar and .exe files. Either one of these will run the game. 

For either version you'll need to have Java installed. A lot of programs use Java so you might well already have it. If the jar shows up as an unrecognised file type, then you probably don't. In that case you can get it from http://www.java.com/
The exe should tell you if you don't have the right version on your computer, but you'll still need to install java to run the game.
There's a guide for new players here which includes some troubleshooting tips for installation & downloading.

This is the first of two PMW releases. There were two joint winners for the vote and I've had some issues with work this month due to an injury so I decided to just have 2 separate releases instead of trying to get it all into one.

This one is focused on manipulative content for the cunning trait. The largest chunk of new content is probably the lowlife changes: choose "throw her under the bus" to access this path. The next release will implement the other PMW winner, which was content related to a jerk friend of the PC's boyfriend.

This release also marks the first user-written scene to be included into Newlife - great timing considering I'd been having a bad month until Rigel swooped in to save the day!

Changelog:
Major changes & additions:
  • Added new content based around the cunning trait. Some of this is not available for Nice characters. This includes:
    • Cheating at the card game
    • Convincing your innocent friend to get involved with the lowlives.
    • Getting the innocent colleague to sort out the boss' problem during a presentation at work (innocent NPCs really are getting the short end of the stick in this release)
    • Cheating at the partner dance contest. Some of the existing solo cheating options are also now available for non-bitchy cunning characters but players still need the bitchy trait to access the crueller paths.
    • Accessing the “helping an impregnator” friendship event. I'm not convinced this shockingly evil scheme makes much sense for a non-evil character but I've had a lot of requests to slacken the requirements and it is relevant for cunning characters.
  • Included a new scene that was written by Rigel. In this scene you run into the lowlives again when on a day out with your friend. Anyone interested in Velocity should definitely check out Rigel's work. Their skill with Velocity certainly exceeds mine so we can all learn from them!
Minor changes & bugfixes:
  • Fixes to text issues. Thanks to Death25, OrangeJuice, Megh, Pgiac6 and Thomas123 for reporting some of these.
  • Fixed an error reported by Antage in the blackmail scene when you use the “friends don't blackmail” action.
  • Fixed a bug where “addFlag” was being called instead of “hasFlag” in one of the blackmail scene conditions.
  • The cunning trait now gives +10 to starting charm.
  • As requested by FutureSight, the “shop for your flat” action now shows your money when the scene starts and in the describe-scene text and window-shopping action.
  • Modified NPC preference scoring so that impregnators should be better disposed towards the “have 3 kids” vow request unless they don't like children.
  • Added a new male orgasm text for the first time you sleep with your boss, as long as it's in the missionary position and without a condom.
  • The game will now generate 4 lowlives, as there's a chance that the new path can block one from being available for the befriending scene so there needs to be a replacement. The scene itself still only uses 3, chosen randomly from the available ones.
Changes for user-submitted content:
  • Yaml files can now include an optional characterDescriptionTextId entry to override the default character descriptions: see the yml syntax guide for details. If you want to use the default functionality then you should leave this entry out completely.
  • The haveOrgasm method is now also available for male NPCs: you can thank Rigel for pointing out this omission in their scene submission.


.
Enjoy the new version, and let me know if you find any bugs! 


Saturday, 30 September 2017

Newlife 0.4.12

Hello everyone!

Newlife 0.4.12 has been released. Early-access Patrons can find it in the creations section here. The changelog is below.

The previous version is now public. You can download it using the links on the right-hand side of the blog. The public version's changelog is here.

As usual, saved files & templates from older versions probably won't work with newer ones. 

For new players - just use one of the links to the right to get a zipfile containing Newlife. Once unzipped, you'll see a folder containing .jar and .exe files. Either one of these will run the game. 

For either version you'll need to have Java installed. A lot of programs use Java so you might well already have it. If the jar shows up as an unrecognised file type, then you probably don't. In that case you can get it from http://www.java.com/
The exe should tell you if you don't have the right version on your computer, but you'll still need to install java to run the game.
There's a guide for new players here which includes some troubleshooting tips for installation & downloading.


This verson adds the blackmail scene from the custom scene example. I know that the example blog posts aren't finished yet: my keyboard time has been a bit limited this past week due to a (hopefully minor) injury so I'm putting them off for next month. You can see the finished version in the additional_scenes/official_content folder and it's hooked and playable in the game itself without using the testing scene.

Writers should be aware that this version makes a lot of changes to the custom scene system - things like renaming methods to be more consistent. This should make writing easier in the long run but for now you'll probably need to run a find & replace over any scenes you've written to update the names that have changed.

Changelog:
Major changes & additions:
  • Added a new random event: the cheating-blackmail one from the custom scene example blog posts.
Minor changes & bugfixes:
  • Fixes to text issues. Thanks to Jason Montana, OrangeJuice, Saur, Ammut, Classique75, NewFace, Saint Destiny, Death25, Antage, Megh and NoName for reporting some of these.
  • Doormat and Likes_to_share traits are now enabled for custom NPCs, thanks to Megh for reminding me of this.
  • Fixed an issue where custom scenes with invalid yaml could fail without returning a useful error message to the player.
  • Updated some logic around old pc feeling bad about cheating text that hadn't been updated with 0.4.11 changes, as reported by blog commenter “Nobody”.
  • As suggested by FutureSight, the blackjack game will now let you hit even when you have 21, for players who are deliberately trying to lose.
  • The makeout scenes are now a bit stricter about what counts as cheating: if you're with someone other than your partner and you want to not cheat then you need to end makeouts immediately, even if this means using the harsh “stop touching me” action. If this action is disabled due to a failed willpower test then you may have no possible actions that will not count as cheating – this is a consequence of getting into compromising situations with other men as a low-willpower character.
  • Relaxed the conditions for your partner demanding rough-mode after he finds you cheating.
  • Following a request by FutureSight, female-start character creation will now randomly set work experience. This does not happen for male-start as their work-experience is set in the male template before feeding into female-character-creation. Work experience relates to the character's past life (which is implied to represent the player themselves in the near future) so it shouldn't be changed by Ivy's machine.
  • Relaxed the conditions for NPCs demanding the PC get pregnant as a way of proving her commitment when they discover her cheating. Previously this wouldn't happen if they already had a child together, but this condition has been removed now.
  • Increased the event weight for the event where your bf catches you cheating, as suggested by Blargan.
  • Beating up the pervy client now checks the characters' strength values instead of just requiring a fixed fitness value.
  • The NPC browser now sorts NPCs, first by sex and then by name.
  • Fixed a case where the cheating confrontation scene wasn't ending immediately when the PC's partner dumps her.
Changes for user-submitted content:
  • Important: While writing the custom scene I found the inconsistency in method names was annoying for writing. As such they've been standardised so that e.g. enjoy changes now use addWEnjoy instead of addPCEnjoy and medium-scale modifiers now all use “medium” instead of “med”. E.g. addArousalMedium. Method calls using the old names will now be invalid and will need to be changed.
  • Additionally, the methods using Btm as an abbreviation for bottom have been renamed to use the full word.
  • The methods to get and change liking levels all now use “liking” instead of some using “liking” and some “like”.
  • The following methods have been renamed to work better with Velocity's property lookup rules (i.e. starting with “is” or “get”) or for consistency with other changes:
hasLaceTop → isLaceTopped
likesPlayersBreasts → getLikesPlayersBreasts
dislikesPlayersBreasts → getDisikesPlayersBreasts
dislikesNpcBreasts → getDislikesBreasts
hasCheatedWith → getCheatedWith
hasAnxiety → isAnxious
  • Some methods still start with other prefixes (e.g. hasCondom), if I felt their names wouldn't make sense if replaced with get- or is-
  • Rigel created an awesome user-defined language file for notepad++ that does syntax highlighting for Newlife's vm text files of velocity text within tags. They've kindly given permission for this to be included in the release and it can be found in the documentation folder. If you find this useful then be sure to give Rigel a thumbs-up if you see them online!
  • Updated the example for adding items to a list, based on some feedback from Rigel. The old example would send unwanted text to the output because the list.add method returns a boolean which needs to handled (by assigning it to a variable) or it'll end up in the output text.
  • Added the makeFriend and endFriendship methods to NPCs.
  • Added the isAllowedMoreFriends method to the PC.
  • Fixed an issue reported by Eulexia where the $scene context item couldn't be referenced in action short- or long-descriptions, even though some methods like capitalise and addPossessiveSuffix have obvious potential uses there.
  • Added getCheatingSeverity() method to male NPCs.
  • Added clearCheating to male NPCs.
  • Added new custom scene transitions: ANAL_SEX, STANDING_FRONT_SEX, STANDING_BEHIND_SEX, CHEATING_CONFRONTATION.
  • Added a method $isNpcHidden to the Scene object that lets writers test if an NPC has been hidden via the hideNpc method.
  • Added the getStrength method to all characters, returning an integer value.
  • Added the getGirlOrWoman method to the PC.
  • Added 2 new testing traits to NPCs, for situations where a scene needs more than one.
  • Added isNpcRough and isRoughAgreed methods to the scene object.
  • Added isClothesDisarrayed to the PC object.
  • Added getOrgasms to the PC.
  • Added getCockDesc to male NPCs – not sure how I missed that one in the previous version, but it's in there now.
  • Added setActiveMaleNpcNoArousal along with updates to the documentation for this method and the similar setActiveMaleNpc one to clarify when each should be used.
The new method is intended for use in the intro for sub-scenes whose parent has already used the male NPC's attractiveness to modify arousal. This lets the writer have them stored as active without double-counting the modifier.
  • Writers can now check and set relationship flags on NPCs.
  • Added clearPostSexFlags method to the scene object. This is important for clearing down post-makeout flags after they've been handled in a returning section, so they don't confuse the situation if the player transitions to another makeout later in the scene chain.
  • Added a list of commonly-used scene flags to the enum reference (although they technically aren't an enum, as a flag can be any String). These may be useful to control how sub-scenes work, or to handle specific situations on returning from them.
  • The custom scene testing scene now sorts NPCs by alphabetical order when they're being chosen, so you can name your custom NPC “Aardvark” if you want him top of the list.
  • As suggested by Rigel, text is now trimmed of trailing and leading whitespace before being sent to the UI. This will not prevent unwanted whitespace within the text (e.g. mid-sentence line breaks) so watch out for those in testing.
  • Improved the error message returned when a condition from the yaml file fails evaluation in Velocity.

.
Enjoy the new version, and let me know if you find any bugs! 


Monday, 18 September 2017

Custom Scene Example part 4: Filling in the action text

Hi all,

My last post went over defining the first part of the blackmail scene's actions. At that point the actual text in the .vm file was mostly just todo comments. The next stage is to actually fill that in.

This also involved a few adjustments to the yaml file, so you should download both of the new ones before running the scene: the yaml and the velocity.

It's important to run tests as you go. I found issues in almost every single action while testing, although these have all been corrected in the above files - let me know if you spot any undetected bugs.

In my next few posts I'll be putting the spotlight on certain specific parts of the text and discussing them. Let me know in the comments if there are any you want to focus on.

Thursday, 14 September 2017

Custom scene example part 3: Starting with the YAML for the first part of the scene

Hi all!

This is the 4th post in this series about making new scenes for Newlife. For the earlier posts see: Intro, Overview &Preconditions, Planning.

A quick warning: there are some changes to things like method names coming in 0.4.12. As such, the examples given here will not work properly in older versions.

After planning a scene, the next step to actually making content. There are a number of ways to do this, and you might find your process is different from mine – that's fine.

One approach I sometimes use is to simply write out a key path from the scene in a text document and then convert it into actions.

For this scene though, I'm taking the opposite approach: I'm going to define the actions first and then I'll fill them in with actual text later. This has the advantage of letting me run tests early on while the files are quite simple.

I'm also splitting the scene up into sections. To start with, I'm just doing the parts in the Part1 diagram from the planning stage. This makes sense for this scene because part1 covers the path where the PC complies with blackmail while all the other paths split off from a single action: the one where her partner finds out about her cheating.


You'll see some slight changes from the planning stage such as the new "agree meekly" action and in later posts you'll see that I end up making some changes to the yaml files as well.

That's normal. Scenes usually get refined as I work through them and come up with new ideas. The plan is supposed to help organise my thoughts and understand how the scene will flow: it shouldn't be an inflexible commitment.

I've uploaded these first-step files: YAML and VM. You can run them the normal way, by copying them into the newlife/additional_scenes/user_custom_scenes folder, enabling custom scene testing in the game options and then choosing the test custom scene weekday-evening action. 
You'll need to use 0.4.12 or later for this to work - that isn't possible at the time of writing, but I'll try to get a dev version out with these custom-scene changes soon.
 

Saturday, 9 September 2017

Custom scene example part 2: Planning the scene

Hi all!

For the earlier steps in this example see the intro and part one.

Once you've decided on your scene's overview and preconditions, it's time for detailed planning.

This isn't something you need to share on discord, although of course it's fine to do so if you want feedback. Instead, it's a final step to make sure you yourself have a good idea of how your scene will be structured.

This can also help notice any issues where your scene might not be supported by the custom-scene framework. In this case you can raise the issue on discord, patreon or another site I read. I might be able to make addtions to support your scene. If not, you may have to work around limitations or maybe take a different approach to a certain path. This will vary on a case-by-case basis, and it's good to know early on before you start serious writing.

In my design stage I came across a number of issues. For example, version 0.4.11 did not allow custom scenes to un-friend an NPC. So, I ask the dev to add a method on discord. Fortunately they were willing to do so:





How you plan your scene will depend a bit on its overall structure. Turn-based scenes, despite usually being larger, have a simpler plan: just lists of key actions for each character.
Flowchart style scenes such as this example one can be sketched out as graphs of nodes representing the PC and NPCs actions.
Usually flowchart scenes don't use the NPC-action system. Instead, the NPC's actions will be rolled into the PC ones. For example, the PC action "answer the door" will automatically be followed by the jerk NPC making his blackmail demand.

For this example I've used software to make a proper flowchart, with circles representing PC actions and rectangles for everything else.
This isn't what I always do. I usually take a less formal approach to planning – I'll sketch out the design in pen on the back of an envelope.
You don't need to spend this much time on your scenes. Your plan doesn't need to be an example on a blog – it just has to help you understand how your scene will work.

It's also fine for your scene to vary from the plan as you work – in fact it usually will, as you come up with new ideas while writing. Still, I think having that initial overview is very helpful.

Here's the plan for the jerk blackmail scene. It's split into 4 files. I'll also use these to work in stages, making the scene in chunks that can be tested before the whole thing is completed.