• For issues you find with the Switch and Console releases, please follow this link and give as much detail as possible. This is the speediest way to get info to Pipeworks and get a hotfix in the works.
  • 1.4 will bring many changes to the PC version. We strongly advise making plans to back up your worlds and players prior to updating your game. More details here.
  • Begin your search for Journey's End information here and here. Please report bugs and issues for Journey's End here.
  • For issues you find with the Mobile 1.3 update, please follow this link and give as much detail as possible. This is the speediest way to get info to DR Studios to look at your issue. Also, some troubleshooting hints here.

tModLoader Emitters - Placeable and configurable particle ("dust") and gore emitter devices

hamstar

Steampunker

Emitters

v2.1.0.1

Mirror



Note: Requires Mod Helpers


UI and basic place-able "dust" emitter:



Here's some of my experiments with "gores" emitters and settings (I welcome any other good examples):


Applied experimentation (skulls!):


Also includes wiring support:
Allows placing devices that can be configured to emit any type of particle ("dust"), "gore", or sound effect. Rate, volume, size, direction, color, type, etc. can all be configured per emitter.

NEW (v1.2): Now featuring holograms! Use these to draw game sprites in any size, color, orientation, or type. Holograms may be animated, adapt to ambient light, or feature cool special effects.


Source code available.



Credits:
  • Chloe - Sound emitter, hologram code contribution


Installation

Requires tModLoader. Copy the above .tmod file to your 'Documents/My Games/Terraria/ModLoader/Mods' folder to play.




 
Last edited:

hamstar

Steampunker
v2.1.0.1
  • Fixed scale issue with holograms at varying zoom levels
v2.1.0
  • Imported @chloenaut's gores code
  • Added GoreDefinition (an EntityDefinition)
  • Reverted StackableModConfig
  • Fixed hologram mode options to load correctly via item option button
  • Tweaked hologram sprite preview to not be blocked by mouse
  • Renamed max range settings for clarity
  • Fixed hologram mode changes not correctly updating type ranges
  • Fixed holograms using an invalid initial type value
  • Fixed large offscreen holograms cutting off prematurely
v2.0.0.5
  • Fixed default emitter and hologram color/alpha being 0
v2.0.0.4
  • Added backwards compatibility for v1.2 holograms (OldHologramDefinition)
  • Contextualized IBaseEmitterItem with it's definition type
  • Added BaseEmitterDefinition.CreateOrGetDefForItem(Item)
  • Tweaked some information tip texts
  • Fixed hologram UI fields not being set with new item selects
v2.0.0.3
  • Removed outdated/incorrect tooltip for accessing item settings
  • Set settings button to draw faintly when not hovered
v2.0.0.2
  • Added failsafes for hologram loading from older version (1.2.0.1)
  • Tweaked def outputs
  • Restored removed def fields as forwarding properties (1.2.0.1 compat)
  • Fixed hologram preview zoom
  • Streamlined zoom code (UIZoomHelpers)
v2.0.0.1
  • Fixed issue that might interrupt item auto use with hotbar emitters
v2.0.0
  • Fixed hologram world MP sync
  • Added EditorButton class
  • Set emitter/hologram items to each be IBaseEmitterItem
  • Set wire mode (in and of itself) to not permit in-world emitter/hologram interaction
  • Implemented context button to access item settings
  • Disabled right-click functionality for inventory emitters/holograms
  • Added DebugModNetInfo setting
  • Updated mod description
  • Fixed world sync of emitters/holograms
  • Fixed hologram copy contructor missing frame
  • Removed emitter/hologram in-world left-click toggling
  • Added in-world tooltips for emitter/hologram tiles
  • Restructured draw code files for holograms
  • Refactored def classes ToStrings
  • Updated to v2.0 due to compat breaking changes
  • Renamed emitter's Alpha to Transparency
  • Corrected zoom of emitter/hologram previews
  • Fixed shader timer range adjusting per shader mode
  • Restructured dialog code files to separate item/def IO
  • Fixed dialog positioning issues
  • Combined alpha settings into hologram item tooltip for colors
  • Split off IO code files from def classes
  • Split save/load and tooltip into new item code files (and added tweaks/fixes)
  • Imported Chloe's shader tab code w/ corrections/tweaks
  • Improved/fixed scanlines FX
  • Refactored defs to split off 'Animation's into new files
  • Fixed CRT time scale slider
  • Added emitter/hologram recipe config settings
  • Imported Chloe's UI hologram modes (NPC, Item, Projectile) and UI tabs code
  • Refactored world load code
  • Set emitter definitions to use a base class
  • Refactored HologramDefinition to include Mode
  • Added hologram dialog tab containers (WIP)
  • Assorted refactoring everywhere
v1.2.0.1
  • Fixed hologram CRT zoom issue
v1.2.0
  • Imported Chloe's code for holograms
  • Changed HologramDefinition to internally use NPCDefinition
  • Added HologramMinimumRangeBeforeProject setting
  • Assorted fixes and tweaks to dialog inputs
  • Refactored definition classes to better organize code
  • Added hologram frame animation controls
  • Updated UISlider to MH 5.7.2
  • Refactored some emitter/hologram animation/timer code
  • Fixed hologram world saving
  • Added DebugModeInfo setting
  • Added hologram sprites
  • Fixed emitter/hologram wiring (via. IL)
  • Imported Chloe's code for hologram scanline effect
  • Cleaned up code
  • Revised hologram shader to use scan lines and waves
  • Set wire mode to also view emitters/holograms
v1.1.0.1
  • Updated to MH v5.7.1
  • Removed some redundant sound sample playing for dialog
  • Implemented dynamic sound type style ranges
  • Resized sound emitter dialog
  • Fixed sound emitter loading
  • Organized emitter definitions into new folder
  • Sound emitter sprite
  • Assorted code cleanup
  • Added sound emitter recipe
  • Added SoundEmitterMinimumRangeBeforeEmit setting
  • Restructured world emitters code files
  • Assorted tidying to world emitter code
  • Deferred to MH UISlider
  • Merged Chloe's SoundEmitter code
v1.0.1.1
  • Added mod icon
  • Implemented emitter removal for MP
v1.0.1
  • Fixed emitter pseudo-tiles not scaling with game zoom
  • Added setting to restrict emitter distance
  • Reset emitters on world load (ModWorld.Initialize)
  • Fixed UISliders not handling arrow clicks well
v1.0.0.2
  • Fixed dust and gore excess max value ranges
  • Attempted to lock item use while UI active (untested)
v1.0.0.1
  • Added homepage link.
 

Attachments

Last edited:
Modder's Toolbox but now with gores and you can place them in your world lol
nicely done thou Hamstar, will help with debugging some things for sure!
I'm guessing this is for something later down the road isn't it? Like alot of these mods you've been making of late
 

hamstar

Steampunker
Modder's Toolbox but now with gores and you can place them in your world lol
nicely done thou Hamstar, will help with debugging some things for sure!
I'm guessing this is for something later down the road isn't it? Like alot of these mods you've been making of late
Oddly enough, this mod exists simply because I thought it would be cool, and I said I would make it.

I might add sound and "hologram" emitters, by the way.
 

Christluther

Terrarian
make it to where we can control the RGB by typing it or selecting the RGB number so making the color black and white is easier
 

hamstar

Steampunker
make it to where we can control the RGB by typing it or selecting the RGB number so making the color black and white is easier
The RGB hue slider uses a percent value (0 to 1), so you can sorta type it in (I built sliders to have that functionality). The Intensity value controls black or white.
 
Last edited:

hamstar

Steampunker
Mod help request: Completing major features


This mod is currently in need of help with finishing remaining major features:
  1. Sound emitters: Placeable emitters like the existing dust/gore emitters, but only for sounds. Includes settings for volume, pitch, loop, loop delay variance, etc.
  2. Hologram devices: Placeable devices that can draw any arbitrary game sprite. Includes settings for scale, color, frame, animation, direction, rotation, etc.
  3. Tile hologram devices (optional): Similar to the above, but for fake terrain/tiles. May be handy for making tile foregrounds, if draw order controls can be implemented.
  4. Modded dust/gore support: The internal design only works with dust/gore id numbers, which is not suitable for modded use. I need to refactor the design to use class names (or some other unique identifier) instead.

Scope: Contributors will, obviously, need to be adept tML C# programmers, and know how to PR to existing mod projects (I made a rudimentary guide here: tModLoader - Mod Helpers). Creativity, good communication ability, and patience with trial and error will also be needed. Expect a week of work, in the best case. Realistically more like a month.


Current Progress: Besides the above missing features, the mod is currently released (see links), but may need a bit more MP testing in its current form.


Team: The project works on a contributory basis, though I'm technically the leader. I'll handle all PR merges and needed edits. Simply pick a feature from the above list, and start implementing it. If needed, I will help with setting up any UIs, defining config settings, Mod Helpers use, or troubleshooting.


Links:
  1. Mod homepage (here): tModLoader - Emitters - Placeable and configurable particle ("dust") and gore emitter devices
  2. Terraria Sound Suite (for reference): Terraria Sound Suite - Customize all ingame sounds (and more)
  3. Basic PR guide (for reference): tModLoader - Mod Helpers #modders
 
Last edited:

hamstar

Steampunker
I should mention v2 is now released, featuring craftable holograms now able to display NPCs, items and projectiles, and with shader settings! Also a billion other changes and fixes.
 
Top Bottom