News:

Please request registration email again and then check your "Spam" folder

Former www.henthighschool.com

[HHS+ 1.10 BETA] Official Release Thread

Started by barteke22, May 15, 2022, 10:21 AM

Previous topic - Next topic

barteke22Topic starter

This is the BETA release thread, for the full one check the non-development board  (these files aren't compatible).

About 1.10 BETA  (remake based on Shilo's notes)
We've felt that 1.9.5 was stable enough to keep around for a while, so we took our time with the next release that would become 1.10.0.
One of the goals of this release has been polishing up the existing content and introducing a general framework for certain gameplay mechanics, so they appear more coherent and balanced in terms of gameplay.
There have been over 1000 commits with changes to content alone, over the course of several years.
  • Lots of events have been reworked, code cleaned and/or typos fixed, etc.
  • Stand out items (i.e. things to specifically look for) are noted below
  • For the complete list of all changes see the game's Docs\Changelog folder.
  • For the list of addressed issues that were reported via the bugtracker see: HHS+ Mantis Changelog

Notable Changes and New Stuff
  • UI notifications have been added to show individual changes in the stats, skills, properties and relationship trackers of NPCs that are part of active events.
    • We feel that this drastically alters the gameplay experience and improves the sense of agency of the player. There are many sophisticated VEE operations related to controlling this. Details are further below.

  • Global variables have been introduced as a mechanic in preparation of a future modding framework.
  • Panty Thief Paperdolls (not yet used)
  • New Hardman events in Ward
  • Rework and new content in Underwood quest line
  • Many reworks and improvements by Malorn (Annette, general school and interactions, beach, swimming)
  • Cleanup of rules (removed outdated parts, adjusted balancing)
  • Reducing image file size
  • Tagging images correctly
  • New PTA decisions (sex machines, affection at pool)
  • New background music available for selection
  • New enrollment mechanics
  • Balancing update to school events
  • Lactation drug (and paperdoll effects)
  • Custom calendar notes creation/editing
  • Bunch of new "apps" on the phone
  • Neglected lovers
  • Evolution of Get Physical - now called General Sex
  • Hypnosis now supported for female PC
  • Futas are shown in light green on the people list if you know their gender.
  • Improved visibility of favorite characters by adding a star before their name on the person list of the current location.
  • Added a new game option to remove HasQuest from all characters. Tester feedback showed that this feature is not universally liked, since it may spoil the discovery aspect.
[close]
UI Notifications
  • Added UI change notifications for operations: "Person Stats", "Person Stats by List", "Add Arousal by Fetish", "Person Body Sizes", "Have Sex", "Perform Intercourse", "Person Skill"
  • The Scenario Config has a new property that determines whether the notifications are enabled or disabled by default. The event may still explicitly override that property with the mentioned operation.
  • UI notifications are never shown for event hierarchies that were not originally started in their Execute phase.
  • Added operations to control the gathering and grouping of UI Change Notifications.
  • Added operation to add a list of persons to a UI Change Notification Group.
  • A flag in the scenario config now controls whether notifications are gathered by default or not.
    • (Note: When gathering notifications, "Person Stats by List" will currently record the changes for each person individually if no group name has been set yet. This is due to how that operation works and might actually be intended in some use cases.)

  • Person Stats by List now implicitly adds affected persons to a group named "People" when changing their stats and gathering is enabled.
  • "Person Stats by List" operation will now attempt to use the comment of the linked Object List variable as group name for the stat notifications.
  • Stat and Skill notifications can now define their increment/decrement colors in the XML definitions.
  • Stat notifications can now define whether they are shown for all characters, players or NPCs only or not at all in the XML definitions.
  • If a notification group only consists of a single person, it will just use the notification display for single persons (but still using the group name specified for the group instead of the NPC's name) instead of showing averages and the number of affected NPCs.
  • Added separate operation SetUIChangeNotificationFakeName to set the fake name for notifications for a single person.
  • Added notification history.
[close]
Global Variables
  • Added dedicated system for global variables. In order to make use of a global variable, it must be added as XML file to the new "GlobalVariables" folder. A new file editor tab helps with that.
    • The old version with Reference Variables still works, but preferably this new version will be used from here on out for global stuff and the references only to refer to variables inside the same event.

  • Added new tab to debug panel to view and edit the values of global variables.
  • Added the ability to create global variables from the editor.
[close]
Modding Framework
  • Added the directory where mod folders are meant to be kept.
  • Removed explicit mention of "Schools\NormalSchool\" in XML files, in accordance with the new code.
  • ModInfo.xml from mod directories is now used to display additional information about the selected mod in the Mods panel.
  • ModInfo now has an additional property for the TitleImage to display in the UI.
  • Added a button in the Mods panel to check all currently active mods (but not the base game) for errors.
  • Savegames now include their mod configuration and restore it when loading the savegame.
  • The active mod configuration can now be edited via a tab in the debug menu.
  • Added a new feature to the Mods menu to list all files that are overridden by files from a mod, as well as all files in the mod that get overridden by other files.
[close]
Other tweaks
  • FontAwesome icons can now be used with event decision buttons by writing the "fa-iconname" tag at the start of the decision text.
  • Accounting tab now shows net profit/loss as dedicated row in the list and has a description.
  • Shopping and Trading forms now have an additional button for convenience to buy/sell exactly one item.
  • Shopping and Trading forms now remember the last picked amount for buying/selling per item. (Based on the item's display name.)
  • Chat topics of the general chat event have been turned into individual interactions. The old event is still provided for compatibility and in case the new stuff still has some bugs.
  • Maximum timeout for async event processing is now configurable instead of hardcoding it. By default, if event processing has not finished after 30 seconds, it is forcefully aborted.
  • Sound device can now be configured from the settings page.
  • Some improvements to the Jobs panel in the management window:
    • Biography is now read from a dedicated field in the Person object, so it's possible to add bios for each teacher to display there.

    • The individual experience in each subject is now listed in addition to the subject family experience. (This is not the same as the overall qualification, which would take stats into account, though.)

  • Added a BaseValue for the Stamina subject influences in SchoolSport and Swimming subjects, so no teacher with average stamina is better in PE than in their primary subject.
  • Removed the Expell Student operation from MissingGirlFound. This way, taking the girl for your own slave still leaves a spot reserved for her at the school in case you free her in good condition. She will still get expelled by the WholeFamilyMovesAway function library event if she is underfed or released in poor condition.
  • Added Panty Thief support for Anastasia Goth (not yet used, but I plan to integrate it into some of her interaction events).
  • Restricted Kiss and Ask For Sex interactions so that they only appear if the player character is interested in the target's gender.
  • Added a MinigameConfig file which gives access to several variables each for the Lockpicking (Balance) and Hacking minigames.
    • When loading a saved game without a MinigameConfig file, a default one will be created for the savegame. This default file will have identical values to how the minigames functioned in previous game versions.

    • Also included is a variant config file which has more difficulty and skill level changes applied; be forewarned, the values in this variant config have not been heavily tested.

  • Added a member list to the club tab of the management window.
  • Altered the management window so that the student list, staff list, and club member list color character names as per the main screen's occupant list.
  • Added option to log unresponsive operations as warning if they take longer than a configurable threshold amount of time.
  • Added mechanism to log thread dumps of unresponsive VEE operations.
  • Added a smartphone app that lets the player pick their alarm clock sound. (Currently only has our existing beep sound and a muted option. Feel free to add more.)
  • Added negative event that fires every time the player tries to enter the OP room in the hospital.
  • Some hotkeys have changed as a result, for example settings are now opened with CTRL+S instead of CTRL+Q.
  • Notification history overlay now takes up the whole screen and blocks all UI elements behind it from being clicked. The toggle button has been moved in front of it to ensure it can be disabled. It's also bound to F2, so it can be summoned in events.
  • Toggling Worksafe Mode or Debug Exec Phase Only settings through hotkeys now writes a notification, so the player actually sees the effect.
[close]
Developer/API changes (only relevant for mod authors)
  • Too many to list, see Docs\Changelog\ When porting mods from 1.9.5, check the modding guides before starting.
  • CurrentOutfit is now always calculated whenever its checked.
  • Random Chance now works for values from 0 to 100, rather than 1 to 99.
  • Adding/Setting the relationship value in the database now clamps it to the [-100;100] range.
  • The maximum number of students per class can now be configured via the Scenario Config. A new VEE constant is available that returns the current value of the config.
  • "Item by Name" operations now use the regular "Name" property of an item by default and have a link variation for the "Display Name".
  • SetRuleActive is now named SetRuleAvailable in code and XML.
  • SetRuleChoiceActive is now named SetRuleChoiceAvailable in code and XML.
  • Added a new operation SetRuleChoiceActive (i.e. same name as the old operation) that can be used to set the currently active Rule Choice from VEE.
  • Added button to Options menu to manually clear the event cache of the editor.
  • VEE now uses WPF CommandBindings for common menu items, which come with some built-in keybindings that are familiar from other Windows software.
  • Refactored the whole BodySize mechanic and made it compatible with new StatusEffectModifiers.
  • This also makes it easier to add new body sizes in the future, since everything now uses a unified system to access them.
  • Added VEE operation to get the list of all School Subjects in the game.
  • Added custom override for last name, in the same way as for the first name.
  • Added property "HideFromMenu" to Rule definition to hide it from the management panel while otherwise preserving its functionality.
  • Added File Editor for Rules, so the descriptions and properties can be seen. (Not necessarily recommended for active use due to File Editor bugs.)
  • Added "Get Rule" operation to acquire a Rule object for use with reflective property modification.
  • Added error report if an event with Trigger Type "Location", "Visit" or "Button" contains no reachable "Accept Event" operation. (It would be even better if it was checking if it can be reached from the Try-phase, but that's not as easy to fix right now.)
  • If the event description contains #NoAccept, it won't cause an error message when there is no Accept Event operation on specific Trigger Types.
  • Removed the almost all differences between the folders under Events\.
  • New VE Op: Set Display Gender Override - overrides how the person should be displayed in the person list. Doesn't affect paperdolls.
  • Added SeqCond_PersonShift.
  • Made Text Replace Dictionary take the person dictionary into account.
  • Added 2 new operations: Get Account by Name and Get All Accounts.
  • Added a new condition: Is Account Active.
  • Virtualized all PaperDollHandlers. Threw messages on multi-threaded use before.
  • Show PD in outfit from the engine (Management Panel...) will also set Clothing Always Wear to true.
  • Allow dynamically adding/removing staff (teachers included) to School Management
  • Added support for marking people as asleep through status effects
  • Added link variations to SeqAct_PersonStatusEffect to allow for directly setting the duration and/or start time when adding an effect to a Person, rather than requiring a separate SeqAct_PersonStatusEffectDuration node to accomplish this.
  • Added a new Add Person Skill With Limits operation. Same deal as the new stats operation, just targeting skills instead.
  • Added a new HeightMultiplier field to Person objects, which will affect the paper doll size in VEE events and the interaction menu (does not currently affect the Management Panel or Character Creator).
  • Added LikedGender (a List(Of Gender) property) and RequiredStats (a List(Of StatRange) property) to the Location class, to allow for more restrictions on who can visit a given location.
  • Added a new OccupantInfoConfig filetype, which controls what information is displayed in the occupant list.
  • Refactored enrollment and expelling to be handled through Person class subroutines, which handle any necessary schoolclass, club, and trait changes.
  • Interactions now check if a boolean result value is set for the key "Interaction_KeepGoing" which controls what happens after interaction.
[close]
Bugfixes
  • See Docs\Changelog\
[close]

Known (open) Issues
  • Very rare and unreproducible performance drops during event progression where the game may freeze for several seconds.
    • If you enabled performance monitoring in the debug menu by entering a threshold value in the profiler tab (something reasonable like 5 seconds), you should be able to find an entry in the game's log folder about this incident. We would like to hear back about it.


Please don't post into this thread

Downloading and Installing
  • Download mirrors (732.3 MB): Anonfiles, Gofile, MixDrop, Workupload, Pixeldrain.
  • See Installation Institutions (following) for how to install
    • Note: The download is a 7z archive.  If your Zip program can't deal with it, you can use the free 7zip.

  • Checksum (if you need to verify the integrity of the downloaded archive)
    • MD5:

    • SHA1: F2A46BD26EFAAB54ED31ED25E5AFF671C957A7C3


IMPORTANT: System requirements
  • Requires at least .NET Framework 4.7.
  • Requires the Visual C++ 2010 SP1 Redistributable Package to be installed
    • These packages are commonly installed with modern games, so you might have it installed already

    • However, if you encounter error at startup like "DllNotFoundException" and/or 'SQLite.Interop.dll', you may need to download and install the package

    • The link above is for the 64 bit version. Be sure to install pack corresponding to architecture of your operating system (i.e. look for the x86 version if you are still using a 32 bit OS)

    • Note: According to reports of some forum users, using the x86 version even on a 64 bit OS may help if you run into random crashes at startup


barteke22Topic starter

INSTALLING: Please read this post in detail

If you don't like reading stuff, at least read the next 3 lines:
  • If you don't read and follow all of the instructions in this post you will have problems  :-\
  • When you do have those problems, please come back to read and follow this  :)
  • And, to save you wasting your time and ours, please don't report any bugs until you have done so...  ;)

How to install the base game
  • Access the download Link in the post above
  • When Mega link opens: Download the following file only (saving it wherever you like):
    • HHS+1.10-2070-Release.7z : This is the Base Game at version 1.10
  • Create a new empty HHS Game folder
    • This should be a standard 'user' folder (e.g. under your Docs, Downloads, Etc.)  Do not create it in any of the system folders
  • Now: Unzip all of HHS+1.10-2070-Release.7z into your HHS Game folder

You are now ready to start adding updates to 1.10 from this thread

NOTE: You need to be registered to see and download game updates.


Adding Update Files
  • Bug fixes and updates are posted into this thread (as attachments to posts)
  • Unlike the base game, bug fixes come in one of two forms:
    • .zip files when multiple files are required.  These always have the same top-level folder (Schools)
    • .xml files when a one or two files only are required.  The target <FolderPath> will be specified in the post with the fix or update

To add files from .zip
  • Download the .zip file and Open it: The internal folder structure is per the game
    • As it's a .zip file, windows will treat it as any other compressed folder (and you can simply copy and replace)
  • Copy the entire Schools folder to your HHS Game folder
    • You are replacing files and folders: So check 'Do this for...' and select Copy and Replace whenever prompted

To add an .xml file
  • Download the file
  • Replace file in folder: <FolderPath> as provided in the update post

Installing Updates into an Existing 'Live' Game:
This is applicable to any and all updates that state 'Works in an existing game'
  • After copying in the update file (or files if doing multiple at once): Load your last game save
  • Open Debug  >> select tab Reload Events >> click Add Changed Events
  • Select the event/s that appear >> click Refresh Files
  • Click Remove >> Close Debug >> Save your game

New Game: If Starting a new game (because the update requires it, or just because you wish to):
  • Starting a new game means you do not need to refresh any updates already copied in before you started the game
  • There are circumstances when this appears not to be so (i.e. following the refresh steps above, you see files you didn't expect)
    • If this happens, refreshing (as described above) will often clear it (but not always)
    • Either way: If this happens it suggests an invalid update was provided or you've installed to the wrong place
    • To confirm which: Reinstall (from scratch to an empty folder), and report instances where this re-occurs


IMPORTANT
Install anything below in chronological order (i.e. in the order of oldest to most recent post)

Take the time to read the posts
  • If it says "only works in new a game" (or similar), you cannot apply the update and launch a save (i.e. it only works in a new "Start Game")
  • If it says "works in existing game" (or similar), you can apply the update, launch a save, and Refresh Files... but note any caveats in the post

If installing a new game:
  • Starting with the Base Game (1.10), then the current Service Pack is recommended
  • Please see the following post: That is where 1.10 Service Packs go (as and when issued)
  • Follow the instructions there, and then you only need updates after the Service Pack

Lastly, downloading and updating your game with updates here help not only you, it also helps us.
As it means bug fixes and updates get exposed to a broader testing environment...  :D

barteke22Topic starter

#2
1.10 Service Pack 5  (The main download is from F95, so it includes SP 1-4)
The .zip file below is the fifth Service Pack for 1.10
  • Service Pack 5 subsumes and replaces Service Packs 1 to 4
  • Service Pack 5 contains the 2 extra update .zips from F95 and a bunch of misc fixes that came later.

Please Note
  • Service Packs are simply bundled packages of the updates and bug fixes posted below
  • The purpose is to make installing the game from scratch a little easier
  • If you have incrementally updated your game, you don't need the service pack (though it helps if ever re-installing)

What does it include and what doesn't it include?
  • Does not include the Base game (1.10)
  • Does include all updates and bug fixes for 1.10 (posted below) up to Update 0
  • Does not include fixes and updates after Update 0

Using the service pack
  • Follow the instructions above: How to install the base game to create a new base game at 1.10 (but do not start a game yet)
  • Download the service pack and install, following the instructions above: To install the files from .zip
  • Install any updates after Update 0.  For ease of finding: Update 1
  • Now you can start a new game (you cannot load a save)

Service Pack 5 download here.

Notable fixes:
- Dragonblood's 'small fixes'.
- Issues with Sexy Bikini, penis drugs, making futa drugs, onsen/classroom exceptions.