The Sinister Design Forums

Please login or register.

Login with username, password and session length
Advanced search  


Welcome to the new Sinister Design forums!

Pages: [1] 2 3 ... 10
 on: Yesterday at 03:21:11 PM 
Started by CraigStern - Last post by CraigStern
-- the sound manager now has 12 distinct one-shot sound effect channels.

-- added 4 looping sound effect channels to the sound manager.

-- the sound manager now auto-assigns each one-shot sound effect and loop to the first unused channel of its type, allowing different sound effects and loops to overlap each other.

-- new script action: PlayLoop. Plays a sound effect on a loop. One parameter: the name of the sound effect to loop.

-- the sound manager now tracks which sounds are being played in which channels, allowing them to be looked up by name and affected during playback.

-- new script actions: StopMusic, StopLoop, and StopSound.

StopMusic simply stops the current music; no parameters needed.

StopLoop and StopSound each take one parameter: the name of the sound effect to stop. (If left blank, all looping/one-shot sound effects will stop playing when the respective action is called.)

-- added a tutorial about ranged attacks to the Overgrown Garden battle.

-- added a bowman to the Overgrown Garden battle, demonstrating how ranged attacks work to reinforce the tutorial (and also making the fight a little more interesting in the process).

-- moved the "scouting out enemies" tutorial to the Grabber's Grove fight, where it's more relevant.

-- changed the sorting of battle UI elements so that text overlays no longer cover over dialogue, character, reserve supplies, or level-up screens.

-- made further progress on the proper positioning of skill visual effects.

 on: February 20, 2019, 04:32:18 PM 
Started by CraigStern - Last post by CraigStern
-- the game now tries to play skill visual effects of the OnSelf and OnCenter types on their associated frames in combat.

-- created skill effect animations for Mind Blast, Mind Shield, Mind Shock, and for the final ("impact") portions of Pyro Blast, Cryo Blast, Light Blast and Shadow Blast.

-- restructured the visual effects class in order to allow visual effects to move over time and emit light onto the scene.

-- the game now marks visual effects complete after they're done animating, and removes completed visual effects from the scene.

-- worked on fixing some issues with visual effect positioning, with limited success.

 on: February 19, 2019, 04:01:14 PM 
Started by CraigStern - Last post by CraigStern
-- the engine now parses the soundAndFX attribute on skills, stores information about the sound and visual effects associated with queued attacks, then queues up said effects with their associated timing info as soon as each queued attack launches. Then, the game checks a counter for each queued-up effect on each frame.

-- the game now plays skill sound effects on their associated frames in combat.

-- the game now tries to play skill visual effects of the OnTargets type on their associated frames in combat. (Only a fraction of these are actually currently implemented, as I have to create each animation by hand.)

-- added all the old sound effects into the gameso that they can be called at runtime.

 on: February 18, 2019, 03:58:34 PM 
Started by CraigStern - Last post by CraigStern
-- on the title screen Load Game menu, the game now detects the most recently saved saved game and automatically opens to the page where that save file appears.

-- in the mid-battle Save Game menu, the game now detects the most recently used save game slot (for either saving or loading), and automatically opens to the page where that save slot appears.

-- the space selector element is now hidden during dialogue, during attacks, in between turns, and throughout AI turns.

-- during deployment, the space selector now appears only over valid deployment tiles.

-- new script action: AddReply. This adds a new reply to a specified branch of a specified dialogue tree. Three parameters: (1) Conv ID, (2) Branch Name or Number, and (3) Reply Text|Reply Type|Reply Parameters. If parameter 1 is left blank, the game will apply this action to the current dialogue tree. The vertical bars in parameter 3 will be converted into forward slashes, and whatever is typed there will be treated as a normal reply.

-- new script action: RemoveReply. This removes a specified reply from a specified branch of a specified dialogue tree. Three parameters: (1) Conv ID, (2) Branch Name or Number, and (3) Reply Number or Reply Containing Text. If parameter 1 is left blank, the game will apply this action to the current dialogue tree. If a number s not entered for Parameter 3, the game will find the first reply containing whatever text is entered as a substring.

-- the main campaign now remembers when you ask peoples' names in the Recruitment and Arena scenes, and removes the reply options allowing you to trigger the introductory name dialogue again from future interactions.

-- removed the Order Introductions button from camp; the character intros are a really important part of learning about the characters and who they are, and I wasn't satisfied with the player experience of getting to know one's characters when they were taken out of the equation.

-- the character creator now throws an error when you try to proceed with a character inventory containing more than 12 items in it, and explicitly tells you to reduce the number of items to 12 or less.

-- fixed: due to some outdated code, the game would refuse to show dummy tiles when mousing over skill buttons in the Actions Bar after a character screen had been opened and closed.

-- fixed: the title screen wasn't letting the player select a save slot for a new game beyond the first page of slots.

-- fixed: the game would display the victory screen at the same time as a level-up coinciding with the battle-winning attack, provided that that was the only level-up queued to occur at that moment.

 on: February 15, 2019, 02:22:18 PM 
Started by CraigStern - Last post by CraigStern
-- designed and implemented a "space selector" UI element that shows the space you're currently moused over at all times during your turn. This should eliminate any ambiguity about what you're about to click during your turn (and also constitutes a necessary precondition to adding in controller support).

-- removed those ugly placeholder asterisks denoting spaces you'll be moving through and replaced them with slightly less placeholder-y, less ugly directional arrows.

-- reduced the opacity of enemy move range tiles to make it easier to see your own movement tiles when they overlap.

-- fixed: cliff fill tiles weren't set as children of the battlefield in either the main game or the map editor, cluttering up the base level of unity's hierarchy whenever they were instantiated.

 on: February 14, 2019, 03:19:14 PM 
Started by CraigStern - Last post by CraigStern
Gave artist feedback on internal wood floor tiles with "house wall" sides and new, 1-width cliff terrain tiles.

-- the recruitment screen now has a button providing fast access to the Army Overview interface so you can make more informed decisions while recruiting!

-- when accessed with no units in the player's current roster, instead of remaining confusingly blank, the Army Overview screen now displays the message "No characters to display."

-- the terrain inspector in the map editor now displays coordinates in y , x order to be consistent with the order used in script actions. Further, it now labels the x and y coordinates for greater clarity.

-- the character creator now checks to ensure that all counterattacks given to a character are real skills that exist, and throws an error if they don't.

-- new script action: MasteriesToList. Two parameters: (1) Character Name and (2) List Name. Creates a list with the names of all equipment masteries the named character possesses.

-- new script action: LearnMastery. Two parameters: (1) Character Name and (2) Mastery Name. (For multiple masteries, delimit Mastery names with vertical bars.) The named character learns the named mastery/ies.

-- new script action: RemoveMastery. Two parameters: (1) Character Name and (2) Mastery Name. Removes the specified mastery from among the specified character's equipment masteries.

-- made lissit somewhat less common during recruitment in the main campaign.

-- fixed: the game would not show the effects of newly recruited characters' equipment on their stats and skills in the character screen until they first appeared in a battle.

-- fixed: some issues with the display of weather effects.

-- fixed: the UV-free tiling shader on water and lava tile materials somehow got switched out for a mobile diffuse shader.

 on: February 13, 2019, 04:06:33 PM 
Started by CraigStern - Last post by CraigStern
-- created a new custom variable type: the Area! Areas are rectangular spaces with bounds corresponding to coordinates on the battlefield.

-- new script action: SetArea. Takes 5 parameters: (1) Area Name, (2) topmost Y coordinate, (3) bottom-most Y coordinate, (4) leftmost X coordinate, and (5) rightmost X coordinate.

-- new script actions: IfInAreaGoTo and IfInAreaRun! These check to see if a character is present on the battlefield, and if so, whether the character is within a defined area--if so, the associated thing (going to the branch or running the script) happens. Takes 5 parameters: (1) Area Name, (2) Character Name, (3) Branch Number/Script Name, and (4) Check For Absence (true or false -- optional). If (4) is set to true, the thing will happen only if the character is present on the battlefield and not within the specified area.

These replace the (far more cumbersome) old IfOnCoordsRun action.

-- new dialogue trigger: OnReachingArea! This works exactly like OnReachingSpace (which it is replacing) did, except that it takes the name of a custom area instead of coordinates. Parameters: (1) Area Name, (2) Character Name (or -ANY-; optional), and (3) Army Number (optional).

-- new script action: SkillsToList. Three parameters: (1) Character Name, (2) List Name, and (3) Natural Only (true or false -- optional). Creates a list with the names of all skills the character currently possesses. If the third parameter is left blank (or set to false), the list will include both natural skills and skills granted by the character's equipment; but if set to true, the list will only include natural skills (i.e. nothing deriving from an equipped item).

-- new script action: RemoveSkill. Two parameters: (1) Character Name and (2) Skill Name. Removes the specified skill from the specified character's natural skills.

-- new script action: InvToList. Two parameters: (1) Character Name (or Reserve Supplies, or a roster number), and (2) List Name. Creates a list with the names of all items in the specified inventory; each named item's position in the list corresponds to its position in the inventory. (Using Reserve Supplies as parameter 1 will select the current roster's reserve supplies, while using a number will select the reserve supplies of the specified roster.)

-- new script action: RemoveItem. Two parameters: (1) Character Name (or Reserve Supplies, or a roster number), and (2) Item Position or Item Name. Removes the item specified from the specified inventory.

Using Reserve Supplies as parameter 1 will select the current roster's reserve supplies, while using a number will select the reserve supplies of the specified roster; using a number for parameter 2 will remove from the selected position n the inventory, while using a string will search for the first item whose name contains the string.

-- fixed: you could use Give Item to get more than 12 items into a character's inventory.

-- fixed: a Kill-All Victory could trigger while enemy reinforcements remained waiting to spawn.

 on: February 12, 2019, 04:30:33 PM 
Started by CraigStern - Last post by CraigStern
-- new background received and added to the game: prison!

-- fixed: the game was only applying space damage to spaces possessing a phase attribute of liquid.

-- fixed: the terrain inspector window wouldn't update with space properties when mousing over a space containing a unit or a UI tile.

 on: February 11, 2019, 04:34:56 PM 
Started by CraigStern - Last post by CraigStern
-- conditions now support the use of custom variables! Which is to say, you can slot in -VAL:-, -STR:- and LIST{} special characters to set Condition parameters on a map based on player decisions from prior scenes--or even just at random.

-- moved the triggering of OnLoaded dialogue forward so that it triggers before most starting battlefield conditions (all of them except for NewArmy, SetArmyAlliance, SetArmyColor, Deployment, and RosterNumber) go into effect. This provides an opportunity to shift variable values impacting battle conditions at the very start of the battle!

Here, for instance, is OnLoaded dialogue that successfully randomizes Global Lighting for a map with a Global Lighting,-STR:Lighting- condition:

Code: [Select]
<Dialogue trigger="OnLoaded" convID="Random Lighting" r="false">
<Branch num="0" name="">/

-- implemented the Roster Number condition in both battle and cut scenes, allowing switching of the current roster for purposes of recruitment, camp activities, and battle deployment.

-- implemented the Fatigue condition in battle, allowing different armies to start with varying amounts of Energy missing.

-- implemented the Space Bonus and Space Damage conditions in battle, allowing the editing of individual space properties.

-- implemented the new Death Rules condition, replacing the old Permadeath condition. Death Rules takes one of the following four strings as its sole parameter: Permadeath/Wound Level/Back at 1/Back at Full.

If Death Rules are set to Permadeath, fallen characters are immediately removed from all rosters, per the Telepath Tactics default; if set to Wound Level, fallen characters  are gone until recovered (whether via camp activities or a SetStat action); if set to Back at 1, fallen characters return in the next scene with 1 health; and if set to Back at Full, fallen characters return in the next scene at full health.

Death Rules can also be set to some other, arbitrary string, in which case death will have no inherent effect whatsoever beyond the character being removed from the current battle. (Note that regardless of what Death Rules are in play, you can still institute custom effects for fallen characters via OnCharDeath dialogue.)

-- implemented a third difficulty setting, "Brutal." The three difficulty settings, in addition to changing prices for recruitment and items, change the Death Rules for the campaign (Relaxed = Back at 1, Challenging = Wound Level, and Brutal = Permadeath).

-- created documentation for all existing operators in the game.

-- began documenting all existing conditions in the game.

-- began work in an in-game scripting reference allowing the player to browse all supported Actions, Replies, Conditions, Triggers, Tags, Operators, etc. in-game while editing a campaign.

-- fixed: the game would crash when loading a non-deployment battle with unused FromPlayerRoster spawn locations.

-- fixed: the AI wouldn't bother attacking with Blinded characters due to their zeroed-out accuracy. This was unsatisfying, so the AI now ignores Blinded status for purposes of weighing whether to attack with someone. :)

-- fixed: a few annoying timing errors during AI-controlled turns.

-- fixed: temporary status effects were not getting removed from characters after battle.

 on: February 10, 2019, 05:56:23 PM 
Started by CraigStern - Last post by CraigStern
-- the AI now notices when a skill has scripts attached to it, and will treat that skill as having some effect even if the skill deals 0 damage and imparts no status effects directly!

-- new tag: SkillPreference. This lets you place a proverbial finger on the scales with a unit's AI, making the unit more (or less) likely to use a particular skill. Two parameters: (1) skill name, and (2) an operation (i.e. operator:operand). Unlike operations elsewhere in the game, this one uses a float for the operand instead of an integer (because it touches on the AI), and doesn't support floor/ceiling operators (because it's not working with integers).

For example: suppose you wanted to double the AI's internal "score" for moves involving Mind Shield on a certain unit; you'd give that unit the following tag: SkillPreference,Mind Shield,*:2.0

-- there is now a separate window of all browsable in-game skills that you can use to populate the Skill Progression field in the character creator. The window checks to ensure that the character is learning skills at a specified level above 1, and that the character does not already start with the skills selected to learn later.

-- the character editor now throws an error if you try to proceed from the skills screen with the same skill in both Skills and Skill Progressions.

-- improved the camp activity narration for the "Alone" activity.

-- made Dialogue and Script boxes different colors in the dialogue editor to make them easily visually distinguishable.

-- fixed some hair alignment issues with a few of the female human hair types.

-- fixed a variety of not-terribly-interesting bugs.

Pages: [1] 2 3 ... 10