Horizon's Gate - Rad Codex
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

v1.5.963
  • Fixed cloneFrom not working correctly for mods
Horizon's Gate - Rad Codex
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 <adjMaxWidth=> 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
Horizon's Gate - Rad Codex
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
Horizon's Gate - Rad Codex
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
Horizon's Gate - Rad Codex
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


v1.5.945b
  • Fixed crash when pressing Escape/Cancel when there are no dialog options
Horizon's Gate - Rad Codex
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.
Horizon's Gate - Rad Codex
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!

https://store.steampowered.com/app/2276830/Kingsvein/



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
  • Increased Spell Archon's 'Magic Residue' MP recovery from 3 -> 4
FIXES
  • 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
Horizon's Gate - Rad Codex
Small balance and bugfix patch this time - the main focus being improvements to Tactician abilities and a few nerfs to the Warpblade's most dominant moves.

BALANCE
  • Tactician's 'Hold' morale boost base duration increased from 74t -> 104t
  • Tactician's 'Hold' morale boost duration scaling from Magic Attack increased from x2 -> x4
  • Tactician's 'Advance' attack boost increased from 2 -> 3
  • Tactician's 'Withdraw' defense boost increased from 2 -> 3
  • Warpblade's 'Gate: Trick' MP cost increased from 3 -> 4
  • Warpblade's 'Gate: Trick' accuracy bonus removed
  • Warpblade's 'Gate: Onslaught' now has a 50t cooldown


FIXES
  • Fixed procgen not properly randomizing certain elements of grove encounter terrain
  • Fixed Lagan's fleet becoming non-interactive from rare fleet data bug
  • Fixed save files with extra spaces at the end of the save name crashing on load
MODDING
  • When mods crash during loading, you can now opt not to disable the mod, or cancel restarting entirely
  • Fixed crash on right-clicking map icons in non-Eral overworld zones
  • Added ItemType special.hiddenFromBuildMode
  • fullrestore and similar effects no longer clears Max HP effects besides the KO penalty
  • replaceTriggerWithZoneSeries now takes a levelData ID for sValue2 and applies terrain and item replacers
  • Added support for Screenshake and ScreenTint to modify FXData (see Mod samples folder)
  • Fixed crash when a texture for a Location minimap button is missing or removed
  • Made 'Grab' (G key) in build mode always overwrite even with transparent/reflective terrain
  • "actTime" actorValue's harmfulMagnitude is now correctly set to 1 instead of -1
Horizon's Gate - Rad Codex
Finally, Steam Deck support comes to Horizon's Gate! And with it, vast improvements to controller use! (To use the new controller layout, make sure to reset your keybinds to Default!)



Additionally, saving and loading has been much improved - it's faster, takes up less space, and supports cloud saving! However, this came at a price: Horizon's Gate now requires .NET 4.5. This shouldn't lock any players out according to Steam's hardware and software stats - but just in case it does, version 1.5.88 will remain available on a separate branch called "v1588".

On top of that, there have been some big balance changes. Casters with delayed spells will greatly enjoy the time bonus reduction on the enemy's first round - landing spells will become more consistent rather than depending so much on the enemy's opening action. A handful of abilities and passives have been improved as well.

FEATURES
  • Horizon's Gate can now run on Steam Deck!
  • Horizon's Gate now requires .NET 4.5 (which will be automatically installed by Steam).
  • New saves will be stored as .zip files, taking up far less space and improving save/load times!
  • Cloud saving is now supported! ONLY new saves using the .zip format are uploaded to the cloud.
BALANCE
  • Enemy bonus Time to Act from not moving/acting is now halved during the first round of non-naval combat
  • Mechanist's 'Toss Medkit' range increased from 3 -> 4
  • Mechanist Traps and Turrets can no longer be broken by anything but explosions, earth, or physical attacks
  • Balancer's 'Ice Carapace' damage now scales slightly (1:0.25) with the recipient's Magic Attack and Ice Skill
  • Balancer's 'Ice Carapace' description updated to mention that it grants +1 Physical Defense
  • Balancer's 'Warmth' no longer reduces wind damage taken by 10%
  • Guardian's 'Blockade' now affects all adjacent targets instead of just one
  • Gladiator's 'Reckless' now grants +1 Physical Attack and -1 Physical Defense at all times and an additional +4 Physical Attack for 1 turn on combat start
  • Ignis Knight's 'Firewall' now also includes burning characters
  • Reduced Firebomb range by 1, and reduced amount of fire left behind on the ground
  • Salvage Station machine can no longer be broken by ice
  • Rare grove prizes are now limited to top tier equipment or Ability Tablets (no gems)
  • Spidests rebalanced: -1 Move, +20 HP, Jump Attack range reduced by -1 and can hit allies, Whirling Attack inflicts Itchy
  • Netchal 'RUIN' mode passive changed from Bulwark -> Imbue Momentum
  • Jarf 'RUIN' mode Time to Act bonus reduced from -3 -> -2
  • Entrailer 'RUIN' mode Time to Act bonus increased from 0 -> -2
FIXES
  • Gossip no longer mentions the current month's trade special if it is past day 20 of the month
  • Fixed Aegis being consumed by any effect if the target has a debuff from a meal
  • Added delay between targets for Balancer's 'Force' to make multi-tile pushing more reliable
  • Party Inventory tab now properly greys out during combat when it is inaccessible
  • Pressing Stash/Cargo button now only alternates between tabs and does not dismiss the window
  • Added small animation to weapon selector UI when using a weapon
  • When you freeze a puddle it now disappears after a day
  • Fixed AI using Warmth to overwrite an ally's Ice Carapace and vice versa
  • Summoned objects like Puddles and Smoke Balm are now lowest priority when selecting items
  • Fixed being able to waste Stars on a 7th rank of Jump (Jump maxes out at 6)
  • Reduced lag when highlighting characters with large movement range in combat
CONTROLLER
  • Completely overhauled default Controller bindings - make sure to reset to Default to use these!
  • New binding for Menu - default: 'Start' (Cancel no longer opens the menu)
  • Improved "Ability Select" functionality - can now move to inventory on repeat presses or while holding items
  • Improved prompts for "Weapon Select" to reflect that (A) confirms an attack and (X) selects the other weapon
  • Added text prompts when holding a splittable stack of items or an equippable ship item
  • Controller can now delete saves, edit appearances, ships, and modify keybinds
  • Stats in the Class Window can be pointed at to view descriptions
  • Keybinds now has a separate 'clear' button and a timer for canceling (instead of Delete/Escape respectively)
  • After closing the journal from examining, or buying/selling an item, the cursor is returned to its original spot
  • Improved placement of Party Inventory window on small screens
  • Fixed various window focus issues
  • Fixed misbehaving cursor when dragging abilities or crew to reorder them
  • Fixed rare softlock where controller gets stuck in Examine mode
MODDING
  • cloneFroms that reference non-existent data will now just not be loaded instead of crashing
  • Renamed "appendToGlobalVar_math" as "appendToGlobalVar_string" to match its functionality
  • Added "allWithinAoEofCaster" and "allWithinAoEofTarget" (ex: "allWithinAoEofCaster: adjacentPlus1: burn" but without the spaces)
  • Added extra GlobalAoEs with naming scheme "adjacentPlus1" instead of "adjacent+1" (so they can be used mid-formula)
  • Added GlobalAoEs "adjacentArc", "adjacentPlus1Arc", "adjacentAndSelf+2Arc", and so on with arc=true;
  • Added ItemType.specialProperty.bottomPriorityItemClickSearchOrder
Horizon's Gate - Rad Codex
While Enchants themselves are quite powerful, sometimes being an Enchanter feels a bit weak... time to change that! In addition there are some hull changes, improvements to Guardian's Impair, and various bugfixes. Notably, the Unmaker's Decay is now quite a bit more effective due to bugs fixed in its damage calculation.

BALANCE
  • Enchanter's 'Elemental Fury's +5 Physical Attack now lasts 40t instead of 1 turn
  • Enchanters now also gain +1 Physical Defense
  • Enchanters can now rank up HP
  • Guardian's 'Impair' max rank increased from 2 -> 3, and XP costs reduced
  • Warpblade's 'Gate: Trick' MP cost increased from 2 -> 3
  • Cog hull reduced from 22 -> 20
  • Towership hull increased from 33 -> 35


FIXES
  • Added journal entries for 'Towerwall', 'Pole', 'Door', and 'Seartial Banner'
  • Fixed 'Decay' damage being reduced by enemy Magic Defense and Ruin Skill twice
  • Fixed 'Decay' damage being reduced against certain HP-based-damage-resistant foes
  • Fixed Splitworms splitting when healed
  • Fixed being able to be damaged by Spikes during the formation phase
  • Fixed Solport not spawning hires at its cafe
  • Fixed being able to talk to NPCs through walls under roofs while you are outside
  • Fixed spending XP at a Training Ground reducing shared Minimum XP of new recruits
  • Essence Flow now fires mid-turn if you spend MP twice in a single turn
MODDING
  • Automatons are now vulnerable to the 'antiMachine' element
  • Added formula prefix 'ceiling'
  • Fixed crash when using shoddy wooden doors
  • Fixed queued tasks not clearing on loading a new game
  • Fixed Ctrl+R causing crash if loading .lua files
  • removeFromParty task can now have bValue1 specify whether to remove from fleet
  • Added "GlobalFormula" as an alternative to "FormulaGlobal"
...

Search news
Archive
2025
May   Apr   Mar   Feb   Jan  
Archives By Year
2025   2024   2023   2022   2021  
2020   2019   2018   2017   2016  
2015   2014   2013   2012   2011  
2010   2009   2008   2007   2006  
2005   2004   2003   2002