[p]At some point, those sneaky Aelomanders from Slugvine Forest started skipping people's turns every time they used their Inhale ability - skipping their allies' turns, or even skipping the player's turns! [/p][p][img src="https://clan.akamai.steamstatic.com/images/36910281/de6c69114c7cb0fdc6f527e10e73b907b456dbb5.gif"][/p][p]Well no more! They will now behave themselves, and can no longer Inhale time itself.[/p][p][/p]
CHANGES
[p]Fixed Aelomanders skipping others' turns when they Inhale[/p]
[p]Fixed misaligned map tooltips for capital ports[/p]
[p]Fixed Barr's dialog trigger breaking if you load the 2nd autosave in the intro[/p]
[p]Fixed Ignis Knight's 'Phoenix' not benefitting from Quick Cast passive[/p]
[p]Fixed quickslots not being assigned if you changed class after being boarded, then got boarded again[/p]
[p]Fixed AI underestimating Fire Whirl damage[/p]
[p]Fixed Cleever being able to despawn and drop equipment during boarding[/p]
[p]Dispel, Aegis, and Cure now work on temporary effects that last until next turn, such as Trip Up[/p]
[p]Viral now only transfers status effects that are removable by Dispel/Cure[/p]
MODDING
[p]Viral now only affects ActorValues with canBeRemovedByNonspecificAVEffectRemoval=true;[/p]
[p]Added bool Action.canHaveAbilityTablet[/p]
[p]Added cExceptFromSource, tExceptFromSource[/p]
[p]Added 'setGlobalVarToActorProperty' Task (not usable as TriggerEffect)[/p]
[p]Added 'task' ActorValue definition to prevent errors with AI use[/p]
[p]Fixed ItemType 'reduceItemGrabRangeWhenStoodUpon', 'replaceWith_assign_globalVar', and Action 'doesNotConsumeCombatAction' sharing an enum value with other special properties[/p]
[p]Added 'm:ruinMode' formula[/p]
[p]Fixed right-click dropdown lists having inaccurate list ordering sometimes[/p]
[p]Slightly optimized some item info lookups[/p]
Version 1.5.964: Counter hotfix
Due to a bug in the implementation of supportAbilReplaceAliasID, Counter Shot and the like were accidentally incompatible with melee Counter abilities. This has been fixed! There are also some little improvements for modders to make zone editing tools like the Eyedropper and Fill tool work and feel better.
CHANGES
Fixed ranged counters being incompatible with melee counters
Fixed misaligned tooltips for certain classes
MODDING
Support abilities with supportAbilReplaceAliasID are now properly unequipped when all slots are full
Support abilities with supportAbilReplaceAliasID now replace the ID that supportAbilReplaceAliasID is set to
Fixed itemEquipped element being applied to non-weapons equipped in the weapon slot
Fixed itemEquipped element being applied twice to weapons
Fixed itemEquipped element being applied to actors on the main menu
Fixed m:randSign not working
Eyedropper tool now highlights tile when hovering, and plays an FX when clicked
Build mode Eyedropper/Fill tool cannot accidentally interact with items when clicking
Build mode Fill tool (hotkey: f) rework!
Highlights all affected tiles beforehand
Now only selects contiguous tiles, like a normal fill tool
Can select non-contiguous if Ctrl is held
Range increased from 8 -> 15
Version 1.5.962: Better Balestra
Turns out Bolt Balestra's calculation for offhand damage was using the main hand's weapon strength - that's now fixed! And to compensate for cases where the main hand was stronger, Bolt Balestra is now stronger in general.
CHANGES
Bolt Balestra offhand damage increased from 50% -> 60%
Fixed Bolt Balestra using main hand weapon power for offhand weapon damage
Everswarm and Gate: Onslaught no longer hit invisible targets
Fixed randomly generated humanoids being able to have a beard on top of their mask
Fixed asking Reeve about a journal entry in the cafe pointing at the wrong entry
Fixed crash on launch for users with certain language settings
MODDING
Fixed formula 'w2' sometimes using main hand weapon instead of offhand
Added 'setGlobalVarToZoneProperty' Task
Added base 'tNewDay' trigger that does nothing
Added SupportAbility.supportAbilReplaceAliasID which allows other passives to treat this like it is one of their supportAbilsToReplace
Fixed ActorType cloneFrom not including ruinModeSupportAbility
Fixed 'purge' not properly canceling delayed abilities
Fixed rare crash with AI evaluating the results of certain item actions
Modded drawOrderFX now use texture size as sourceRect if it isn't specified
Mods can now specify colors by name, by R,G,B format, or by R,G,B,A format
Fixed cloned ItemTypes counting against maximum of 20,000 ItemTypes limit
Slightly optimized loading FormulaGlobals
Slightly optimized texture loading
Version 1.5.96: Omni fixes
A buff or two, a handful of bugfixes, and lots of modding improvements (including the option for a mod config menu)!
CHANGES
Omnipode's element skill bonus increased from +1 -> +2 (this also buffs its attack damage by 1)
Shellship and Shellsloop now ignore the wind penalty to movement in combat
Can now start a new game without giving your character a name if you try twice
Unmaker's Drain can no longer target invisible creatures
Fixed a Reeve cafe discussion dialog option not being properly removed after exhausting all its dialog
Fixed new groves sometimes spawning invisible 'blank' items that can be picked up using the 'Get' keybind
Fixed being able to get stuck in Solport if you Jump Strike into the tower
Fixed Goss' stats being affected by difficulty settings
Fixed enemy passive Critical Phantom not working on RUIN difficulty
Slightly optimized data type loading
MODDING
Added new "Mods" config menu! Only appears outside combat when you have a mod that can be configured. You can add a dialog for setting your mod's configuration by giving your mod a [DialogOption] with ID=modsDialog;
Fixed AI trying to revive unrevivable actors
Made Build menu more responsive to mousewheel while hovering over an item or actor
Minimap no longer auto-updates while map is open for zones >1000 tiles wide or tall
Added 'purge' actorValue that only dispels positive status effects
Status effects of ActorValues that don't exist (such as from disabling an old mod) will no longer crash when cured
Added bool AreaOfEffect.ignoreWind
Added 'm:buriedItemsAtTarget' formula
Added "debug:" and "between:" formula prefixes
Added for tooltips
Added Lua function 'getGlobal_string()'
Added 'tNewDay' globalTrigger
ItemEffect, ItemReaction, etc. no longer crash if the ItemType ID they reference does not exist
Fonts can now be added. Place an .xnb font file in a mod folder and it will automatically be added. (NOTE: it is extremely finicky about the correct type of .xnb)
Added global variables for 'sellPriceMultMod', 'buyPriceMultMod', 'tradeGoodPriceDistanceMultMod', 'tradeGoodPriceDistanceSquaredMultMod', 'tradeGoodPriceDistanceMod', 'marketRateNPCChangePerGPMod', 'marketRateMaxMod', 'marketRateDecayMultMod'
If you want to use the new global variables, the default values for trade are:
Sell Mult: 0.25
Buy Mult: 1
Trade Good Price Per Distance Mult: 0.002 (1 distance = 1 overworld tile)
Trade Good Price Per Distance Sqaured Mult: 0.000007 (effectively doubles price over 350 tiles)
Trade Good Price Per Distance: 0.12
Market Rate Max: 120
Market Rate Decay: very complicated, influenced by wealth level of allied ports within 120 tiles
Version 1.5.952: Big Tooltips
A bugfix update just in time for the Turn-based RPG fest! This fixes some rare bugs and some crashes that non-english language computers were running into. And there's a new option that lets you make tooltips huge (great for Steam Deck)!
v1.5.952
Added 'Double Tooltip Size' option
Fixed being able to turn in infinite Lost Documents if they are stored inside a container
Fixed error message when Viral is applied near a KO'd creature
Fixed crash with certain characters in text (they are now replaced by *)
Fixed Salvage quest goal being able to very rarely spawn inside Cragrook
Fixed mistitled journal entries for Basic Equipment, Weaponry, and Huge Rope
(Modding) Fixed ItemType special.fullTileHitbox not working with custom sprites
(Modding) doubled max number of item types from 10,000 -> 20,000 to fix crashes if someone subscribes to every mod ever made
(Modding) 'removeItemFromParty' task now properly removes items from inside carried containers
Version 1.5.951: Speed & convenience
More speed, more polish! This patch is for getting rid of minor pain points and speeding up slightly inefficient dialogs.
Also, a fun new feature for crew planning! Ever forget what classes you were going to give to the 6 crew members manning your 7th Windjammer? Now you can give them all little bookmarks on their class window and never forget again!
Can now 'bookmark' classes by Right-clicking or pressing Ability Select (default: Y) on them. Bookmarking is purely a visual reminder to help you remember what classes you'd like to use later.
New hotkey: Speed Up (Toggle) - Press once to speed up enemy turns until it is pressed again
Speed Up Enemy Turn now shows a fast forward icon in the top left while active
Holding the 'Stash/Cargo/Crew' button while clicking 'Loot All' on a container now sends all items to Stash/Cargo
Added 'Swap' dialog option for Moored ships at the Harbor
Added dialog option to Give 3 Lost Documents at once to faction leaders
Added dialog option to convert 5000xp into 5 Stars at the Training Ground
Food tooltip now shows the amount of Deluxe Rations in cargo if you are out of Food
For players that keep accidentally talking to Loke in Searth - he will eventually relent and just let you buy goods from him instead of making you walk inside
Replaced Repair Kits with Gold in the beach intro section
Improved performance when drawing many lights
Added example text to 'Dyslexic-friendly Font' option tooltip
BUGFIXES
Fixed display issues with large fleet and long ship names when Mooring ships
Fixed 'Home Sweet Home' achievement not unlocking for players using controllers
Fixed inconsistent calculations of ranged attacks around certain wall corners
Fixed being able to lose stats if you save and load while a party member is dead
Fixed Geomancy granting Wind Skill even when near water
Fixed Arc Lance being able to strike friendly NPCs in town
MODDING
Added support for setting 'flip' in drawOrderFX definitions
Added 'howmany' and 'howmanyWorld' console commands
Added 'tNegativeStatuses', 'tStatuses', 'casterCurrentTurn', and 'casterNotCurrentTurn' maths
Fixed 'partyItem' formula not accounting for items within containers
Fixed dialog specialEffect 'incOnNewDay' not working properly
Fixed controllable summons with abilities not having access to them if summoned in combat
Version 1.5.945: Single Tap fix
One of the mod features added in the last patch accidentally broke the Ranger's Double Tap so that it did not, in fact, double tap - so here's a small bugfix patch! Now it will properly attack twice.
CHANGES
Fixed Double Tap only doing one attack when using a weapon
Fixed Escape/Cancel button being able to select dialog options that are disabled
Slightly improved Formula calculation speed (should speed up AI and some mods a tiny bit)
MODDING
Fixed crash when capturing a ship that is part of a sea monster fleet
Fixed tLoadGame GlobalTrigger being called on main menu and new game
Fixed ActorPrefabs with "controllable=True;" crashing
Fixed 'transferReverse' not working
Locations that are hidden by discoverable_fReq becoming false can now be re-discovered
Escape/Cancel button now searches for a valid DialogOptions from the bottom up instead of top down
Disabled filename-unsafe characters in Zone ID field
Version 1.5.944: More little fixes
Various convenience items are on the list today, like reporting Monster Den quests anywhere and losing less morale when you run out of food. Not the most exciting patch, but it is a big one for modders!
CHANGES
When using a controller, holding the Map button for >0.5s now lets you interact directly with the map
Completed "Clear Monster Den" quests can now be reported to any guild
When you run out of food, the morale penalty is lessened based on how much food you had left
Adaptability XP cost reduced 750 -> 350
Fixed certain actions without animations being delayed if in critical HP
Fixed being able to interact with the main menu while Save/Load/Options/Mods windows are open
Fixed incorrect line of dialog when asking Reeve about Buralk as a Buralk
Added extra achievement tracking (now also stored per-save) just in case
Increased speed of pathfinding algorithm (thanks rcfox!)
Fixed AI plan for enemies that get killed and disappear during movement being reused by summoned enemies of the same type
MODDING
FXOnTileColor, FXOnHitColor, etc. now also accept RGB values (ex: 255,255,255)
Added "fReq_queueAnotherAction" to Action for conditional queued Actions
Non-humanoids can now react to 'dodged' and 'blocked' elements
Fixed ActorType previewSprite being offset incorrectly in character select for party members
Fixed edge case crash when replacing an existing GlobalFormula using certain naming conventions
Fixed certain creatures softlocking when using class abilities that use the 'charge' animation
Fixed minimap crash on zones wider than 500 tiles
Fixed error when shield skill is modified before actor inventory is loaded
Fixed actions that use HP/MP being incorrectly calculated if Max HP/MP are raised by temporary effects
Fixed 'escOption' DialogOptions ignoring specialEffects if called by pressing Escape
Added "min" and "max" formula prefixes
Added "round" formula prefix
Fixed SpawnData never spawning the last entry in the availableArmors list
Fixed "partyItem" formula counting items in the party's inventory twice
Viral now cannot spread through Actors with a Reaction to viral with damageMultiplier=0;
Added Faction spawnInZone property (defaults to eral)
'addTrigger' TriggerEffect now assigns the new trigger's numID properly
Added 'removeTrigger' TriggerEffect
Added 'setGlobalVar_toActorID' triggerEffect that sets a variable to the triggering actor's ID
Added 'transferReverse' actorValue that is like 'transfer' but from target -> caster
Added formula 'swapCasterID' and 'swapTargetID' prefixes
Added formula 'actorsOfType' that counts actors in the zone (ex: actorsOfType:spide)
Added Lua command "setGlobalString()" to set GlobalVars that are strings
'mod' formula now ignores colons, periods, and operators in mod names
'mod' formula now returns 0 for mods that are enabled but their data has been deleted
specialEffects in dialog now accept special @ substitutions, such as "@GmyVar" for a GlobalVar or "@APlayer" for the player's Actor ID. The full list is below.
Full list of specialEffect substitutions: @X,@Y = coords (@X8.5,@Y6) @T = travel point (@TA2) @G = globalVar (@GmyVar) @S = treat as string (@S47) @APlayer = ID of player @ACurrent = ID of current turn @ATalker = ID of dialog speaker @XYA gets coords of actor as above. (@XYAPlayer) @ alone is the delay of the effect. (@5) @F is the Formula requirement for the effect. (@Fg:myVar)
An example usage would be: specialEffect=setGlobalVar,myVar,pop; specialEffect=fx,@GmyVar,@APlayer,@1;
This example stores the name of an FX in a variable, and then plays it on the player.
You can take advantage of these capabilities in normal Triggers by using the "executeDialogEffect" TriggerEffect.
v1.5.944: More little fixes
Various convenience items are on the list today, like reporting Monster Den quests anywhere and losing less morale when you run out of food. Not the most exciting patch, but it is a big one for modders!
CHANGES
When using a controller, holding the Map button for >0.5s now lets you interact directly with the map
Completed "Clear Monster Den" quests can now be reported to any guild
When you run out of food, the morale penalty is lessened based on how much food you had left
Adaptability XP cost reduced 750 -> 350
Fixed certain actions without animations being delayed if in critical HP
Fixed being able to interact with the main menu while Save/Load/Options/Mods windows are open
Fixed incorrect line of dialog when asking Reeve about Buralk as a Buralk
Added extra achievement tracking (now also stored per-save) just in case
Increased speed of pathfinding algorithm (thanks rcfox!)
Fixed AI plan for enemies that get killed and disappear during movement being reused by summoned enemies of the same type
MODDING
FXOnTileColor, FXOnHitColor, etc. now also accept RGB values (ex: 255,255,255)
Added "fReq_queueAnotherAction" to Action for conditional queued Actions
Non-humanoids can now react to 'dodged' and 'blocked' elements
Fixed ActorType previewSprite being offset incorrectly in character select for party members
Fixed edge case crash when replacing an existing GlobalFormula using certain naming conventions
Fixed certain creatures softlocking when using class abilities that use the 'charge' animation
Fixed minimap crash on zones wider than 500 tiles
Fixed error when shield skill is modified before actor inventory is loaded
Fixed actions that use HP/MP being incorrectly calculated if Max HP/MP are raised by temporary effects
Fixed 'escOption' DialogOptions ignoring specialEffects if called by pressing Escape
Added "min" and "max" formula prefixes
Added "round" formula prefix
Fixed SpawnData never spawning the last entry in the availableArmors list
Fixed "partyItem" formula counting items in the party's inventory twice
Viral now cannot spread through Actors with a Reaction to viral with damageMultiplier=0;
Added Faction spawnInZone property (defaults to eral)
'addTrigger' TriggerEffect now assigns the new trigger's numID properly
Added 'removeTrigger' TriggerEffect
Added 'setGlobalVar_toActorID' triggerEffect that sets a variable to the triggering actor's ID
Added 'transferReverse' actorValue that is like 'transfer' but from target -> caster
Added formula 'swapCasterID' and 'swapTargetID' prefixes
Added formula 'actorsOfType' that counts actors in the zone (ex: actorsOfType:spide)
Added Lua command "setGlobalString()" to set GlobalVars that are strings
'mod' formula now ignores colons, periods, and operators in mod names
'mod' formula now returns 0 for mods that are enabled but their data has been deleted
specialEffects in dialog now accept special @ substitutions, such as "@GmyVar" for a GlobalVar or "@APlayer" for the player's Actor ID. The full list is below.
Full list of specialEffect substitutions: @X,@Y = coords (@X8.5,@Y6) @T = travel point (@TA2) @G = globalVar (@GmyVar) @S = treat as string (@S47) @APlayer = ID of player @ACurrent = ID of current turn @ATalker = ID of dialog speaker @XYA gets coords of actor as above. (@XYAPlayer) @ alone is the delay of the effect. (@5) @F is the Formula requirement for the effect. (@Fg:myVar)
An example usage would be: specialEffect=setGlobalVar,myVar,pop; specialEffect=fx,@GmyVar,@APlayer,@1;
This example stores the name of an FX in a variable, and then plays it on the player.
You can take advantage of these capabilities in normal Triggers by using the "executeDialogEffect" TriggerEffect.
Version 1.5.93, and a new game announcement: Kingsvein!
Updates on Horizon's Gate continue - even while I'm making another game! I recently announced Kingsvein, a brand new Tactics RPG set in an infested castle deep in the weird realm of Graven.
It may not be a naval game like Horizon's Gate, but it definitely features the same tactical combat goodness! Instead of sailing, you'll ride your trusty wyvern mount around a metroidvania-style city with a customizable party of Diecast knights. It will be out later in 2023! Please give it a look and wishlist if it interests you!
For Horizon's Gate, v1.5.93 brings some convenience and balance changes, improving a few lategame abilities and making it easier to get around with big fleets. Try setting up a route with cheaper Launch Buoys to zoom past all the sea monsters!
CHANGES
Sea Monsters weak enough to be ignored will now only start dialog if they get extremely close
Fleet speed is now reduced based on how much extra cargo over the limit is carried (-1 per 30 cargo)
Player-established port Item Stores now sell 3 random Ability Tablets (applies to newly established ports only!)
Added a new status effect journal entry for Charging, Casting, and Glowing
BALANCE
Launch Buoy price reduced from 8000 -> 5000
Swashbuckler's Mug now always demoralizes, but doesn't deal extra damage when stealing
Increased Minstrel's 'Cheerful' and 'Critical Oath' duration from 35 -> 40
Fixed having a two-handed weapon with your other hand full preventing Negate from working
Fixed Condra not selling an Ability Crest at 100% investment (new saves only)
Fixed status effect stat bonuses (such as +1 Ice Skill from Ice Enchant) stacking when loading a save
Fixed being unable to use 'Escape' or 'Cancel' to return items picked up from under allies
Fixed screenshake being increased permanently after a vertical screen shake occurs for the first time
MODDING
Fleet speed penalty based on extra cargo can be adjusted with "cargoPenaltySpeedMultAdjust" globalVar (ex: setting cargoPenaltySpeedMultAdjust to -0.5 reduces the penalty by 50%)
Ctrl+C now copies text of currently selected text field into clipboard
Added a "Copy to Clipboard" button to Actor editor window
Added ModSamples/PaletteSample.txt to explain palette modding
Can now change Guild Quest frequency using the format given in ModSamples/QuestTypeSample.txt
Added Location.dialogNodeID property, which starts dialog when trying to enter the location
Added a "mod:" formula for checking if a mod is enabled (Example: mod:SailingFastForward)
Added AvAffecter.hideActEval, which if true does not show the AvAffecter on the preview window but still shows floating damage numbers
Added 'setTileTerrain', 'addLocationUnlockable', 'setZoneBGFX', 'setZoneRollingPinStyle', 'setGlobalVarPlusZoneID', 'appendToGlobalVar_zoneID', and 'appendToGlobalVar_locID' triggerEffects
Fixed 'appendToGlobalVar_math' dealing with strings instead of math
w:unarmed can now be used to check if a weapon slot is empty
Fixed TerrainType sideSprite and wallSet48_noScaleY_96down only using terrain.png instead of the specified texture
Fixed issue with Zone bgFXID that prevented certain FX from working
speakerOverrides and 'talk' Trigger Effects now work on incapacitated Actors