Repository navigation
Conversation
Laser guns, laser NPCs and laser turrets now fire tg's hitscan beam with the existing laser tracer instead of a travelling bolt. Damage is unchanged. Disablers, X-ray, pulse, emitters, the ship defense turret, the accelerator cannon, laser eyes and mech lasers stay bolts.
…puff, hiss-by and far sound
…types, red-zone Old Furnace roll, laser empty sprites
… in the resale test, update the wiki page
… body The splash states are six 0.1 s frames, but the splash lived 0.5 s, so the last frame (the cooling pane glow on glass, the last droplets on walls) never showed. Splashes now live 0.6 s. The flesh splash's steam came from the shared steam pool, whose holder draws above every mob. A bolt hitting the far side of a body put its steam over the chest while the splash itself was hidden. The steam now uses its own pool whose holders take the splash's layer.
tg's range-out hop leaves a projectile a tile less twice its overshoot short of where it ran out, so the gutter-out appeared up to a tile behind the bolt's last drawn spot. The gutter now adds that shortfall back along the bolt's path. The wisp named a state the copied projectile icon does not have, so it never drew, and the switch to it flashed the bolt's emissive core upright for a frame. The core, light, icon and transform now change together in one update, the wisp uses the effects icon, and it fades in its own frames instead of being faded a second time.
Hits no longer add fire stacks. Bolts carry higher wound bonuses so they leave real burn wounds, melt a hurt arm or leg (the rifle also one with a critical burn, never a healthy limb in one hit), and break structures and doors faster. The pistol bolt goes from 30 to 32 damage to keep its time to kill without the fire.
The gun items showed Mojave Sun's small floor sprites everywhere. They now use its inventory art, recentred: Kestrel, Hornet and Cinder in 32x32, the Furnace and Old Furnace in a 48x32 file with a -8 base pixel offset like tg's wide rifles. Coil glow masks are redrawn on the new coils.
The hot glow now flashes pink-white for the first tenth of its life, drops to a saturated violet (#8A1FBF, then #6A16A0) and cools through dark plum (#3E0F5C) before going out. Timings, breathing and the emissive fade are unchanged.
…put wall splashes on the wall face
The bolt shows when the ball snaps on the client's clock, and its copy no longer holds back for the first ticks. The ball's light rides the bolt from the shot. The pinch ball is hot pink, the snap and ring are short and purple, the pistol's small ball is smoothed, and the wall splash and its glow are pink on the wall face.
The copy that carries the bolt out of the pinch now holds on the ball, shows a tick after the snap and closes onto the bolt's path over the first tile, all on the client's clock. It no longer follows the server's moves, which stalled it at the muzzle and left gaps at the handover. The snapped ball shows a little longer.
The copy no longer rides the hidden bolt, whose sprite skips a tile for a frame as it crosses into a new turf: it flies its own path from the ball onto the bolt's line and on with it, and shows as the ball snaps. The ball's light goes with it.
…he wall face, and shrink the pistol's splash The bolt's light sits on its head instead of its middle, and a wall's glow stops lighting itself as it cools to char.
The bolt waits level with the ball and leaves as it snaps, so its barrel copy only closes sideways onto its line and hands over a tenth of a second later instead of chasing it.
The bolt leaves from the snap even when the timer lands late, the copy keeps to where the bolt is seen, and it goes in the same tick the bolt shows so the two never show together.
…ong the face, and deepen the pinch ring
…oter, so the shooter's head hides it
…cases - A shot that boils the Furnace now costs its plasma: the shot is charged before the heat step, since a boil re-chambers the gun. - A cartridge swap seats the new cartridge first, so the old one goes to the freed hand instead of the floor. - Outpost shop listings keep cartridges and plasma guns with different plasma apart. - Lighting something with a plasma gun re-chambers it and heats a Furnace. - The Old Furnace can't be duplicated or scrapped. - No barrel pinch on point-blank shots, where the hit lands first.
- Slag cools at the body's own species heat limit, so ethereals' normal body heat no longer keeps it cooking. - Re-attaching a severed slagged limb keeps its slag and heat and doesn't dose the blood again. - The slag surgery's dressing won't go on over slag, and an emptied wound moves on to the dressing without a failed step. - A septic slagged burn's scanner advice says to excise the slag before cryo. - Cuts only "sear shut" when nothing on the limb still bleeds, and a melted limb gets no sear message. - A shield splash uses the shield that actually blocked the bolt, noted as it blocks, so a shield the block breaks still gets its splash. - Plasma scar text no longer says green.
…d wiki - The distant firing sound skips listeners in another packed encounter, as playsound() does. Its range and volume defines move to the shared defines. - The near-miss hiss skips the mob the bolt was fired at and anyone behind a wall. - The sound credits mark which files were edited from the originals. - The wiki says only the wound analyzer speeds up picking slag.
- Pirate plasma shots play the distant firing sound like a player's. - A red-zone boss handed a Furnace drops whatever was in its other hand, so Director Prime no longer holds a two-handed rifle and a syringe gun.
- The far-sound test checks against the volume defines. - The cache weapon class and shop ladder tests know the plasma and frontier guns, and the Furnace's rotating black market shelf. - New tests: a live-fire boil costs a bolt and a vent and a breaking boil drops the cartridge, a hand swap returns the old cartridge to the hand, shop listings split by plasma, a breaking shield still splashes, the slag dressing won't go on over slag, ethereal slag cools, and a reattached limb keeps its burn.
A plasma bolt melts an arm or leg only when at least 10 of its own burn gets through armour, and the damage the limb must reach never drops below half its max.
A limb with no flesh (robotic, or no BIO_FLESH: skeletons, golems, plasmamen) still melts off through tg's dismember, but leaves a slag pool, sparks and a welder hiss instead of gobbets, a stump and the wet melt sound. Cuts on such a limb aren't seared.
Venting does nothing below the first coil step, so a cold Furnace no longer wastes plasma or locks its trigger, and a short chamber cools the barrel in proportion to the plasma it let out.
Only pirate ship crews and boarders fire plasma guns, not ruin pirates.
… hashes The plasma cartridge joins the ammo category, rated yellow like the Cinder it feeds; pressing one by hand stays public on purpose, since the gun is the gate. The loot Cinder and Furnace take their shop guns' ratings, the built-in lenses copy their guns, and the abstract bases are marked abstract.
The burn-through tests fired 5-damage bolts, below the 10 landed burn a melt now needs. The melt cases fire at the floor; the negative cases do too, so they still test what they name.
…set the shooter on fire
The copy flew a fixed path on the client's clock and was swapped for the bolt by a server timer. When the server ran slow the copy got up to a tile and a half ahead, so on short shots it sat on the target and the bolt then showed further back and flew in again. The copy now repeats each movement step the bolt makes, with the same timing, closing sideways onto the bolt's line over the first tile, and hands over once the bolt has covered that tile.
A finished cog fades for half a second, then its Destroy() removed every managed vis overlay on the user, including the cog of a do_after that had started in the meantime. Picking plasma slag one bead after another showed no cog for the second pick, so the slag seemed to come out seconds after the work ended.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds two plasma guns, two frontier laser guns, single-use plasma cartridges, plasma burn wounds, and plasma pirates.
Builds on
feature/hitscan-lasers. That branch's commits are included here, so merge it first.Guns
How plasma works
Effects
Media
Recorded in a real client at real speed.
Bolts and the barrel pinch (Furnace, then Cinder, in all four facings):


Wall and glass hits in the dark:

Hits on people (two ordinary hits, then two burn-throughs):

Plasma burns (a pistol hit, then rifle hits on the same chest; the slag picked out with a hemostat):


Melting limbs (arm with gloves and a held crowbar, leg, lying, walking off mid-melt, a robot arm):





Shield block:

Furnace heat and vent:

Cartridges (pressed from sheets and loaded; full on the table, in hand, and spent):


Assets
The gun and cartridge sprites (recoloured to hot purple) and the plasma, RCW and laser pistol sounds are from Mojave Sun (CC BY-NC-SA 3.0). The bolt, effect, burst, melt and plasma wound sprites, and the plasma hit, burn-through and melt sounds, are new. Each file's source and licence is listed in
voidcrew/modules/plasma_weapons/icons/attributions.txtandsound/attributions.txt. There's a new player wiki page atwiki/content/plasma-and-laser-guns.md.Also in this PR
__byond_var_id_padding.dm(the same file the hyperviolence branches carry) so the CI build stays clear of DM's broken variable id 65535.Not playtested
It compiles cleanly under the normal and CI define sets, and the plasma unit tests pass. Every effect, burst and melt was recorded in a real client in all four facings. Still needs a human playtest: