[WIKI-THREAD] Workshop suggestions 2!

BEFORE READING THIS THREAD, READ COMMENT NUMBER ONE!

With the release of the workshop on live, that means that the old thread on PTR feedback is really no longer viable…Plus it kind of got buried in other threads as well there are a lot of old suggestions that were added by the devs, overall it got out-dated fast.

So I thought I’d remake it into the form of a wiki-thread, which makes it easier to read for everyone involved.

Down below, feel free to edit the thread and add your own suggestions:

If you want to organize the thread a bunch to make it easier to read go ahead as well.

EDIT: I will be scratching out stuff that was done instead of moving it to the “Things that were done” because I’m lazy


Index


Things that we want:

Quality of Life Improvements

  • Improved rule editing
    • Collapsible folders/collections/hierarchies.
    • Drag-and-drop.
    • Ability to Create / Paste Actions, Conditions, Rules to a specific position in the Rule / Script
  • Warn people exiting the game when there are unsaved changes.
  • “Copy, Paste, Add” Buttons that are always on screen instead of attached to the first line of “Actions, Conditions, Rules”
  • Remove the accented vowels from heroes’ names, or recognize unaccented versions of those characters when searching.
  • Statistics and graph display of the number of re-evaluations of Conditions for each Rule handler
    Very useful for identifying rules and actions that can lead to high server overload.
  • Privacy options for Presets
    (e.g: Set a code to be un-editable / only editable for you)
  • An in-game “Editor mode” where the creator can fly, clip through walls, and select, modify, and interact with invisible triggers or other objects on the map.
    “Could be the foundation for a map editor, if you’re going to make that.”
  • Ability to add Keybinds to various functions like Adding, Copying, Deleting Rule, Actions and Conditions

Effects

  • New/reworked effects
    • A rework of the “Create Effect” action
      • Remove “Sphere” and “Light Shaft” and add a new type: “Primitive”.
        Includes the following options: Shapes (Sphere, Cylinder, Cone, Cube/Rectangular Prism, Plane); Size; Rotation; Scaling; Texture (Energy, Barrier, Metal, Color); Color
        • Collision detection for these shapes so that they can act as triggers.
    • All current sound effects should be moved to two new actions: “Create Sound Effect” and “Play Sound Effect”.
      Includes options for volume, pitch, radius, and ‘Audible to’
      • Default volume should be at an appreciable level.
    • Improvements to “Create Beam Effect”.
      • Add option for width.
      • Add a few new beam types: “Smoke”, “Sine”, “Pulse”
    • Add a “Create Particle Effect” action. This would be optimized for creating many small, temporary effects in a small space.
      • Including options for Sprite, Size, Color, Emission Rate, Initial Velocity, Acceleration, Particle Lifetime, and Position.
      • Sprite examples could be orbs, sparks, stars, flames, and muzzle flashes
    • Add the following Effects
      • Sombra “Opportunist” (Passive)
      • Widowmaker “Infra-Sight” (Ultimate)
      • Mercy “Ressurect” (Ability 2)
  • HUD Text Positions based on X% and Y%
  • Different Fonts for all text functions
  • Opaque Material Types

Bots / AI / Non-player Entities

  • ‘Create Bot’ ability to spawn any Entity with it’s normal programming. (Including: B.O.B.; Turrets; Null Sector units; Talon units; etc)
  • Add Entities like (B.O.B.; Turrets; Null Sector units; Talon units; etc) to ‘Create Dummy Bot’ to spawn the corresponding Entity without it’s normal programming.
  • Targeting for non-player entities for conditions and effects.
  • Simple, programmable AI commands.
    (e.g. When a condition is met, all specified entities within an area are instructed to move to another specified area using their own pathing and either ignore or attack enemies they encounter.)
  • Change the hero operated by the built-in AI by script.
  • Designated “AI Slots” for built-in AI to allow the creation of Bots that aren’t taking up player slots

Character Customization

  • Ability Modification Including

    • Changing the Ability Icon
    • Enable / Disable Passive Abilities “Including ‘hidden’ Passives”
    • Enable / Disable Role Passives
    • Ability cast time
    • Ability Damage / Healing / Knockback dealt
    • Ability Duration
    • Ability spread
    • Ability charges
      • Shared ability charges
      • Adding charges to a ability that usually doesn’t have more than one.
    • Ability resource
      • Adding a resource meter to an ability that usually doesn’t use one.
    • Ability recharge rate
    • Ability Size
  • Weapon Modification Including

    • Reload speed
    • Reload capacity (?)
    • Ammunition consumption
    • Weapon spread
    • Fire Rate
    • Weapon Damage / Healing / Knockback dealt
  • Changing a Heroes Role

  • Enable / Disable a players Head / Body hitbox

  • Individual Player Model / Player hitbox scaling

  • Playing Characters Animations
    With or without their default function

  • When a hero is disabled via Script hide their Icon on the Selection Screen

  • Ability to control what sounds a character can and can’t make.

Workshop in general

  • Increased performance and removal of workshop limits.
  • Save / Load Presets to / from local machine
  • Local variables inside rules.
  • Variables that transfer between games.
  • Support for all keyboard Buttons as Input
  • Allowing players to choose specific Effects of Workshop Extensions
  • Move player to spectator
  • Enable / Disable Kicking inactive players
    • Move AFK Players into Spectator slots instead of removing them from the Game
  • Setting a lobby to play on a specific patch

Actions / Events / Values

  • Enable / Disable Viewmodel
  • Ability to Toggle parts of the Inspector Recording
    • Enable / Disable Inspector Log Recording
    • Enable / Disable Inspector Variable Recording
    • Enable / Disable Inspector Event Recording
  • Ability to Toggle Inspector Recordings for specific Players and Global Events.
  • Shields
    • Ability to create shields
    • Ability to modify Health and Recharge rate of a Shield
    • Ability to modify Size, Shape and Width of a Shield
    • Ability to modify the Position and Facing of a Shield
  • Ability to credit the ‘Resurrect’ action to a player
  • Preset gameplay modifications (?)
  • Clear all status effects (Buffs / Debuffs / All) from Target player(s)
  • Temporarily Modify Player / Global Variable (?)
  • Events
    • Player Dealt / Took Damage Event Values
      • Event was Blocked
      • Event hit Health
      • Event hit Health Type
      • Ultcharge generated
    • Player Earned Elimination
      • Event was assist
      • Event was offensive assist
      • Event was defensive assist
    • Player Died / Dealt Final Blow
      • Assister (?)
    • Ongoing All Spectators
  • Ability to interpret Messages send by players as Custom Strings
  • Improved / expanded raycasting
    • “Pillcast” (raycast with radius)
    • Detection for rays hitting critical areas
    • Detection for rays hitting non-player entities and objects, such as barriers, railings, etc.
    • Advanced ray casts (?)
    • The option to create a raycast in the direction of any bullets or projectiles from an attack (?)
  • Filter options for “Player Closest to Reticle”
  • Condition is True; Condition is False
  • Is Allowed Button (?)
  • Is Enabled Button (?)
  • Workshop Settings
    • Add the ability to create settings which are only visible / adjustable under set criteria
    • Add the ability to add flavour text to existing settings which is visible while hovering over the setting
  • Ability Position (?)
  • Position of a Players gun

Map / Game / Teams

  • Map object Manipulation Including
    • Enable / Disable destructible object destruction
    • Enable / Disable Global interaction (?)
    • Adjusting the Speed of objects (?)
  • Create Object with options for
    • Position, Size, Shape, Rotation, Color, and Collision
  • Declare Overtime / Sudden Death (Resettable)
  • Set payload progress percentage
  • Set Objective objective capture percentage
  • Ways to manipulate the “fire” system
    • Disable / Enable Fire Scoring (?)
    • Disable / Enable Fire Decay
    • Set / Modify Player Fire Score
  • Ability to choose the next map
  • Enable / Disable overtime
  • Expand “Spawn Health Packs” option to spawn small health packs or big health packs only.
  • Ability to dynamically create 1 - 12 Individual Teams (Skirmish only) with Adjustable Team size.
    • With the Ability to set any pair of Teams into a “relative phase”
      This would help lobbies that want independent fights to occur, without interfering with each other.

Misc / Uncategorized

  • Add Function to get some ones full Battletag as String (?)
  • Matrix or 2D arrays
  • The ability to get the ID of created entities and text without having to call the “Last [thing]” action

(Since this can cause race conditions if you have multiple rules [or multiple instances of 1 rule] simultaneously creating stuff), or more generally.

  • more actions with returns.
  • Add filter / vision effects (black and white, brighter/ dimmer, etc.)
  • Bypass Damage: …
    • …Detection (damage cannot be detected)
    • …Shields (damages purely health and armor)
    • …Armor (only health/shields)
    • …Artificial (only health)
    • …Pure (only shields/armor)
    • Bypass Heal: All of the above
    • Bypass Critical Damage: Above
  • ID’s for accelerations to make using them easier.
  • A way to sync data between games, export data through an API or something (?)
  • Set damage type (?)
  • Simple game BGM control
    (Such as specifying the start crescendo timing or loop)
  • Event Filter Options for “Start Damage Modification” and “Start Healing Modification” (?)

Things that we asked for that were done

  • Strings
    • Custom Strings
    • Saving Custom Strings into variables
    • String Operations
  • Dummy bots
    • Option to save bots as part of the preset.
    • Renaming Dummy Bots
    • Bot only Slots
  • Variables
    • Custom Variable Names
    • Ability to create more than 26 Variables
  • Better saving system for presets so that they stop getting deleted
  • Better UI system for console workshop
  • Player Received / Player Dealt Healing events
  • Button support for reload / quick melee
  • Modify ability cooldown / charge / resource
  • A way to cleanly and forcefully end whatever action a hero is performing.
  • Custom Workshop only maps
  • “None” reevaluation option for HUD/In-World texts.
  • Button support for weapon switch
  • A way to update our codes to avoid outdated gamemodes.
    (i.e. declare our code as “outdated” and make it redirect to a new code)
  • Visual effects
  • Hacked / Fortified / Nano Boosted / Shielded / Immortal / etc, without gameplay modifications)
  • Beam Type (Symmetra’s Projector Beam)
  • Detection for ammunition and modification.
  • Change Start/Stop Holding Button and Press Button to use the button value and compatible with variables
  • Player Team manipulation
  • Add Enable / Disable Outlines.
    Outline Color Modification
  • Free For All, Team Deathmatch, Capture the Flag score manipulation.
  • Get/Set/Fire ‘input’ and ‘output’ as well as ‘button’ and ‘throttle’
    “Allow for controls to be tracked without being tied to a character, and character actions to be fired without being tied to the controls”
  • Health of type (Health / Shield / Armor)
  • Directional inputs (Constants like Up, Down, Left and Right)
  • The option to make a Raycast return the Position of impact
  • Ability to Create Custom Projetiles

As you can see, the list is much smaller, i condensed fused and removed some things that were already done / could already be done / didn’t make sense / Didn’t understand / etc

Just in case, all the stuff i removed will be in the spoiler down below, if you believe i was wrong in any capacity, please feel free to edit them in once again, But try to make it more clearer in case its hard to understand

Removed stuff
  • A set of variables belonging specifically to each team, allowing the creation of rules where each team has a separate instance of said variable in the same way that Player Variables do.
  • Position of Muzzle - only for visual effects as it may be different in first person to third.
  • Draw ray. Creates a thin, 2D, rectangular sprite, with one axis facing the player to give the appearance of thickness, along the path of a specified ray cast. Could have variable thickness and color. :star:
  • Alter the opacity of effects, or at least have opaque color options.
  • A way to pick a map for the next match in-game.
  • A modifier to change the damage that something does under certain conditions without setting the damage dealth/damage received by the attacker/victim. Examples: a character takes reduced damage from a certain angle; characters deal more damage when shooting through a special area, like Bap’s ult; an aerial character does extra damage when they hit an enemy from above.
  • A catch-all condition for debilitating status effects like Frozen and Stunned. “Is able to act” or something.
  • An event called during hit detection regardless of damage done, for use cases such as Cry Freeze and Genji’s Deflect.
  • A “Begin Heal Modification” action which allows the healing received from other players to be modified.
  • Functions / macros / custom actions (with parameters), made of multiple actions. Extreme bonus points if we can have functions with return values as well as parameters.
  • Ability to modify parameters of events
    (e.g. change the amount of damage dealt by an event)
  • A proper way to iterate through arrays and execute however many actions on each element of the array.
  • Add options to remove or add map objects or structures
  • Linkable Conditions (Ex. Linking Two Or More Conditions Into An Or Condition Without Using An Or Condition)
  • Critical Damage
  • Restart game action in workshop, so you can quickly restart the game
  • Access to the training mode and its map within the lobby rules.
  • The creation of training mode bots and the option to define their set behaviour.
  • A built in while loop instead of having to use a Do while loop.
  • Playsound command that allows the workshop to call on any in game voice line / SFX and play it.
  • Clicking on a number field should either highlight the entire field or nothing, instead of everything to the left of the cursor (this is rarely helpful).
  • Handle the decimal limit by rounding instead of ignoring inputs. Right now number fields only allow up to three decimal places, but they are filled with zeroes by default, so you must delete those zeroes first or you won’t be able to type anything after the decimal point.
  • Show last save time when hovering a preset.
  • More conventional save/load system for presets.
  • Organize heroes alphabetically.
  • Additional workspace (Chamber, Island)
  • Manipulate the scale (Size) of characters
  • Detect ammunition
  • All 12 players set to the same team would be good for “chill” lobbies where players don’t want to kill each other, but do want to hear each others’ comms
  • Values for temporary health (armor, shields, health)
  • Addition: Add Sort Value To (Armor/Shields)/Temporary
  • Addition: Use direct values for Max H/S/A
  • Allow players to be set to any team number 1-12. This could simulate 6v6 or FFA, but could also enable anything between.
  • Set Cooldown Ui (edit the cooldown Ui tied to any button - can set custom icons and add reevaluating numbers over the top of them - creates new icons if not existing - null removes the icon, default resets - none of this effects actual cooldowns)
  • Proper local variables (i.e. variables in the scope of a single rule, since player variables are actually global variables belonging to a player)
  • Enable / Disable passive abilities. (I feel like its in the game but i haven’t seen it)
  • A function that detects when abilities have successfully targeted someone (Roadhog hooked someone or Reinhardt successfully pinned someone)
  • Modify/disable passive abilities. Includes passives that are described in the Hero Info, such Lúcio’s wallride, and passives that are not, such as Lúcio’s aura.
  • Modify ability cooldown and duration, as well as other properties such as barrier HP, resource meters and ammo / uses / charges / fire rate / spread.
  • Allow for “dry firing” of any ability (still uses animation without dealing damage, firing bullets, knockback, projectiles or any other effects).
  • Ability to cancel event healing, event damage, and cancel player death (for example in infection game mode, same hero cannot damage them).
  • The alteration/possible removal/prevention of status effects caused by player abilities.
  • Add ability to “Spawn AI” or other entities, including non-hero characters (Nulltroopers, Talon Snipers, etc., maybe as well as some new generic ones such as generic troopers or omnic civilians) and other things like barriers, turrets and BOB. Entities could be spawned at specific locations/times, have team affiliation (Team 1, Team 2, friendly/hostile to all).
  • Dynamic addition and removal of built-in AI by script.
    • No need to manually add and remove from the lobby menu.
    • Can dynamically fix team uneven.
    • When waiting time to for players to gather, can implement automatically swap player from BOT when player join.
  • Current array element of array
  • Make effect limits per-player
    (i.e. if player A, due to an ongoing player function, is used to create 32 effects, player B can still be used to create his own 32 effects without being affected by or affecting player A’s effects.)
68 Likes

THIS CONTAINS IMPORTANT INFORMATION ON THE WIKITHREAD

GUIDE ON WHAT TO DO IF A TROLL EDITS THE THREAD AND DELETES EVERYTHING

with this beeing open for anyone to edit, theres a posibility that people will troll and remove everything: hence why this is made on a separant comment to the OP if that were to happen, below is a step by step process on how to fix it

  • check the top right of the post for the edits icon and click it
  • Scroll to the last edit before the troll ruined it
  • copy and paste
  • Save

EDITTING CONSIDERATIONS AND RULES

wikithreads are finnicky, so here are some things i want to put out

  • Do not delete others suggestions

its just rude and unecesary

  • Try not to repeat suggestions

there is a character limit, so the more space we save, the more suggestions we can fit


another thing to consider is the following:

  • Do not edit the thread if there is another person editting already

Wikithreads do not update in real time during editting mode, for that reason, multiple people editting at the same time will result in everyone deleting the others edits, before you edit, keep an eye on the top right of the editting screen, if you see someones icon, that means someone is editting, if you see this, quit immediatly so no one gets confused!

9 Likes

Was going to make a feature request thread with suggestions from creators, but I’m glad you started a wiki thread.

If you don’t mind, I might start adding to this thread, and I might also like to organize some suggestions based on importance (at the discretion of the suggester).

Also, what is the character limit? How much space do I have to work with for explanation/reasoning/examples?

1 Like
1 Like

Here’s a thread with some suggestions for new status effects.

Ye dont mind.

I dont know exactly but its like, huuuuuuuuge so i wouldnt worry about it too much


Speakin of, everyone else commenting on the thread feel free to edit too and add the stuff you commented

You can edit that in the OP if you want to,

Added a some things from this thread, as well as a few other things.

I removed the request for deleting specific effects because I believe we can already do that (add last created entity to an array/variable, then specify that variable when deleting an effect).

I also moved “Add AI” down to non-essential “Things We’d Like” because although it’s not possible to do currently, I think it’s probably outside the scope of what the workshop was intended to do.

Let’s keep this thread going, people! We need a one-stop shop for highly-requested features.

1 Like

i was planning on doing a whole different thread for another feature but i guess ill put it into this one

There we go, i added it,

Trying to create string messages.
I would like to show things like:

  • “Hello Tracer”
  • “Hello Lena”
  • “Next Level - Press Interact”
  • “Skip training - Press Interact”

So string functions ideas are

  • “Skip”
  • “Training”
  • “Practice”
  • “Press button”
  • Hero name of(Hero)
  • First name of(Hero)
  • Full name of(Hero) - i.e. “Lena Oxton”
  • Button icon string(ButtonEnumType) - similar to “Hero icon string”
  • Press button string(ButtonEnumType) - probably better for both workshop makers and translations than combining string and icon.

One thing regarding status effects which we need is the ability to clear a status effect applied by a player ability, but it seems like you can only clear status effects that you apply using “set status”.

I dont know if it is a bug or if it’s intended, but I’ve been unable to clear sleeps which are applied directly by ana’s sleep darts (same with other statuses applied by relevant hero abilities).

i can check just fine if the status is applied with the “has status” condition, but “clear status” only works if they were previously applied by “set status”.

Edit: More suggestions:

  1. Getting a value for raw player movement input
  2. Getting a value for which weapon is equipped for heroes who have a secondary weapon (like mercy or torb)

Another thing is just more text strings

Therr are so many words that are missing, its so annoying

A few things I would very much like:
A way to cleanly and forcefully end whatever action a hero is performing, be it casting an ability, using an ultimate, or firing and reloading. Team specific variables. And access to the training mode map and the creation of training bots.

add something to track player placement in ffa (does it already exist?)

Potentially you can keep track of their kills using your own scoring system?

i thought about doing this so that a player place is the amount of players with a bigger score + 1. but i couldnt find a way to find the amount of values in an array (im not that good at this)

i think it would be simple, i havent quite played arround with the idea of adding stuff, But it Should be something like this

“on player deals final blow”

Actions

Add 1 to player variable A of event player

player variable A can be your score,

You can also remove one from player variable A every time they die to make it extra hard

i know that part (and i actually even thought about the remove 1 part which is kinda weird) and i can also just set variable A to player score. but how do i find the amount of players with a bigger variable A (or score) then the event player?