From 6405b2284e24aef6ceb1b3c70fc102bd98facb47 Mon Sep 17 00:00:00 2001 From: Astra <226853568+EmberAstra@users.noreply.github.com> Date: Fri, 16 Jan 2026 19:19:04 +0100 Subject: [PATCH] Microwave Emitter (#5205) Add microwave emitter --- .../en-US/_DV/research/technologies.ftl | 1 + .../Recipes/Lathes/Packs/science.yml | 1 + .../Weapons/Guns/Battery/battery_guns.yml | 35 +++++++++++++++ .../Weapons/Guns/Projectiles/impacts.yml | 19 +++++++++ .../Weapons/Guns/Projectiles/projectiles.yml | 21 +++++++++ .../Prototypes/_DV/Recipes/Lathes/devices.yml | 11 +++++ .../Prototypes/_DV/Research/experimental.yml | 12 ++++++ .../Battery/microwave_emitter.rsi/base.png | Bin 0 -> 748 bytes .../Battery/microwave_emitter.rsi/icon.png | Bin 0 -> 741 bytes .../microwave_emitter.rsi/inhand-left.png | Bin 0 -> 910 bytes .../microwave_emitter.rsi/inhand-right.png | Bin 0 -> 974 bytes .../microwave_emitter.rsi/mag-unshaded-0.png | Bin 0 -> 129 bytes .../microwave_emitter.rsi/mag-unshaded-1.png | Bin 0 -> 127 bytes .../microwave_emitter.rsi/mag-unshaded-2.png | Bin 0 -> 137 bytes .../microwave_emitter.rsi/mag-unshaded-3.png | Bin 0 -> 138 bytes .../microwave_emitter.rsi/mag-unshaded-4.png | Bin 0 -> 139 bytes .../Battery/microwave_emitter.rsi/meta.json | 40 ++++++++++++++++++ 17 files changed, 140 insertions(+) create mode 100644 Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/base.png create mode 100644 Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/icon.png create mode 100644 Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/inhand-left.png create mode 100644 Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/inhand-right.png create mode 100644 Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-0.png create mode 100644 Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-1.png create mode 100644 Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-2.png create mode 100644 Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-3.png create mode 100644 Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-4.png create mode 100644 Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/meta.json diff --git a/Resources/Locale/en-US/_DV/research/technologies.ftl b/Resources/Locale/en-US/_DV/research/technologies.ftl index 321ad2d667..1715d6ec51 100644 --- a/Resources/Locale/en-US/_DV/research/technologies.ftl +++ b/Resources/Locale/en-US/_DV/research/technologies.ftl @@ -10,6 +10,7 @@ research-technology-engineering-eva = EVA PPE Suits research-technology-cloning = Cloning research-technology-artifact-display = Artifact Display Technology research-technology-psionic-prosthetics = Psionic Prosthetics +research-technology-directed-radiation = Directed Radiation # Civilian research-technology-civilian-mechs = Civilian Mechs diff --git a/Resources/Prototypes/Recipes/Lathes/Packs/science.yml b/Resources/Prototypes/Recipes/Lathes/Packs/science.yml index acd530f6f0..ac7801160c 100644 --- a/Resources/Prototypes/Recipes/Lathes/Packs/science.yml +++ b/Resources/Prototypes/Recipes/Lathes/Packs/science.yml @@ -60,6 +60,7 @@ #- WeaponTetherGun # End DeltaV Removals - WeaponGauntletGorilla + - WeaponMicrowaveEmitter # DeltaV - Microwave emitter # Only contains parts for making basic modular grenades, no actual explosives - type: latheRecipePack diff --git a/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml b/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml index 6a1bb86d36..6943590f5e 100644 --- a/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml +++ b/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml @@ -620,3 +620,38 @@ Firemode: Disabler: { state: mode-disabler } Lethal: { state: mode-lethal } + +- type: entity + name: microwave emitter + parent: BaseWeaponBatterySmall + id: WeaponMicrowaveEmitter + description: A handheld device emitting concentrated, low-intensity radiation. Does not cook your food. + components: + - type: Sprite + sprite: _DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi + layers: + - state: base + map: ["enum.GunVisualLayers.Base"] + - state: mag-unshaded-4 + map: ["enum.GunVisualLayers.MagUnshaded"] + shader: unshaded + - type: MagazineVisuals + magState: mag + steps: 5 + zeroVisible: false + - type: Item + shape: + - 0,0,1,1 + size: Small + sprite: _DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi + - type: Gun + selectedMode: FullAuto + fireRate: 5 + availableModes: + - FullAuto + soundGunshot: + path: /Audio/_DV/Weapons/Guns/Gunshots/beamcannon.ogg + - type: ProjectileBatteryAmmoProvider + proto: BulletRadiation + fireCost: 100 + - type: Appearance diff --git a/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Projectiles/impacts.yml b/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Projectiles/impacts.yml index 869da03ded..e15abae2f8 100644 --- a/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Projectiles/impacts.yml +++ b/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Projectiles/impacts.yml @@ -16,3 +16,22 @@ - type: Tag tags: - HideContextMenu + +- type: entity + id: BulletImpactEffectLightGreenDisabler + categories: [ HideSpawnMenu ] + components: + - type: TimedDespawn + lifetime: 0.2 + - type: Sprite + drawdepth: Effects + layers: + - shader: unshaded + map: ["enum.EffectLayers.Unshaded"] + sprite: Objects/Weapons/Guns/Projectiles/projectiles_tg.rsi + state: impact_laser_greyscale + color: lightgreen + - type: EffectVisuals + - type: Tag + tags: + - HideContextMenu diff --git a/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml b/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml index 3143d1d299..1dec84e7b4 100644 --- a/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml +++ b/Resources/Prototypes/_DV/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml @@ -183,3 +183,24 @@ Shadow: 20 - type: TimedDespawn lifetime: 0.4 # really short, shouldn't travel far at all + +- type: entity + id: BulletRadiation + name: radiation wave + parent: BulletEnergyGunLaser + categories: [ HideSpawnMenu ] + description: Sheer gamma radiation! Hopefully you are shielded. + components: + - type: Projectile + impactEffect: BulletImpactEffectLightGreenDisabler + damage: + types: + Radiation: 2 + - type: Sprite + sprite: Objects/Weapons/Guns/Projectiles/projectiles_tg.rsi + layers: + - state: omnilaser_greyscale + shader: unshaded + color: lightgreen + - type: TimedDespawn + lifetime: 0.08 diff --git a/Resources/Prototypes/_DV/Recipes/Lathes/devices.yml b/Resources/Prototypes/_DV/Recipes/Lathes/devices.yml index 9895680e3f..48ff2a41b6 100644 --- a/Resources/Prototypes/_DV/Recipes/Lathes/devices.yml +++ b/Resources/Prototypes/_DV/Recipes/Lathes/devices.yml @@ -36,3 +36,14 @@ Steel: 100 Glass: 100 Gold: 100 + +- type: latheRecipe + id: WeaponMicrowaveEmitter + result: WeaponMicrowaveEmitter + categories: + - Tools + completetime: 5 + materials: + Steel: 500 + Glass: 400 + Uranium: 100 diff --git a/Resources/Prototypes/_DV/Research/experimental.yml b/Resources/Prototypes/_DV/Research/experimental.yml index 7ddab88ffe..49be970daa 100644 --- a/Resources/Prototypes/_DV/Research/experimental.yml +++ b/Resources/Prototypes/_DV/Research/experimental.yml @@ -23,3 +23,15 @@ - DispelLeftArm - RecallLeftArm - ForcewallLeftArm + +- type: technology + id: DirectedRadiation + name: research-technology-directed-radiation + icon: + sprite: _DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi + state: icon + discipline: Experimental + tier: 1 + cost: 5000 + recipeUnlocks: + - WeaponMicrowaveEmitter diff --git a/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/base.png b/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/base.png new file mode 100644 index 0000000000000000000000000000000000000000..a43bad4f2cc9e5df945536a2d60e9e56f255cfd5 GIT binary patch literal 748 zcmVPx%rb$FWR9J=WmEB8IaTv!xC%i~7Hubb@JHv@WCcc0oy+9>+QG(D#7rtPWSKbHx z6@s@>K^cX3Q&1ThDcF^bwNMGSn1k8gO1HH`2X_;lF4j4FIh)g_5VY^rkKc2C&-eR$ zpWpdCP(cO%JA`r*^wjpM+S>iyweNgY<&t0O?8|Jdq3&12UptUZ9u9{{?j(t&Vwk&| zu}XFT9zUAY^IL7LDnKOc&EedW1J`fdR`d7PUn~Kz@M{72XM$GR(!$Q2p{xBg0Fh8o zU0j?MthQElYMm-wcx@1 zX$G$j7L4UPaKdiq)%>C!e>yt@z_sB~d>${(_wRDG4dZ4(M*66p^7K|CJM zi8nTN(Ad<$+UiG=iLX>wAEUV?^LCWH1G17#S86gNZVI@UoqBbJ9H_6aN0O|%h-lac zKxbDs=DG$_sUP?^T)VeGt6o-;Of9)k6os0a8cZg$QD6ZFG?DRmoJiO!M8m#<_Lp>E zYRLt6K6CGbCuiTi>;xdWljLmGc~1Hpa^jkZm6f*wpo@rxeTIj~@DgVCUUT49UoVQH zuo(^TCh}Ssy?I-mnVuASYI{|&TGY?RQn7u{gQCBo*85`Qc85cC2V6oAPx%pGibPR9J=WmEB8IaTv!xC%Q;5HuJP(JHv@W7QTQoq63wELkD+xy0CNH+1Z>ng`j<}e&_e{e8124 z`JLwn6;$xQLnt>uXN_0W$HAY0L&rN=F8S5A?!Adsw8M({YX@@46NxzTj!Zh6#@^A0 zQ*s0F`+&dIq&?eLa?WT>y&;blFU6TU%*koJ$@Fg)MPTloC(~ zE1yHauJv@;c18R_aLJFuA>wd|0E~=|5ebEvfAyS=^)*ECEN$&whNA~6!NUjB^k45U zyqM>}Ik%hF^9#oJv)LH{ZVV0+35D^0cyGD~`#LbtG^AZQ)rz<&F!y4v@TNQmzQd0n)v9TW5zXW>riYhbZ3!thh)z#J5YJIaLEsVydyJkrx|%iHl5Q&EHA$kz-T@N8Px&NJ&INRCt{2noUR>K@`XT(~nTlN)JIu(e}~>JrtpVT%_%Q7lR*d?IGkOS|QCr zq=-i;C7vuE#DfZkSUjx3L!lCsLTK93izNjQ+JatEqr#FyjPYW%(?hx;A0}qEyN<>A z-LmYweea+5-Yh#05C{YUfj}S-2m}IwKyc9@MjMPoB6+{ZCuCM#U4v&mZ52Pu9|*B@ zI)#CLcitLGX_5Vtpp;hnC|s%dP7O@e{*4 zuQ-(AIBco`kO{oEixL3L3|}vqVYJ6F^y}Tr5NkTBM=H6O4Zd@v8~#9u0h!XElwy2B zW>`!iLpVH7D5ZFOcj&j8RYqgD0IH*%uiD5$Yys97flIQ%(p(1s zXmz$^MNre)9|*BlXA1zp(p(3ZWP>$E5Q#)gOMMl?OTathA*u*-v$F*F+mto|0PLQ< z3F&kSQey)EKx%Bj#`hmklmxy-S26eIby3Z4Z)bW(kjh58YyK{f3#AlxM+duAe>1Pc zk59<#=hhCQD~sf`^+xXkru2YZa-Fd|I#_gNkrZxk1O09iU0Eb{M+Z~aoD_r^<#47M zPzs}iJy#h}35Cth?8cXiDenP#Im^IR&P4|BL=IF7Ah;W}qb~Er=2@+TfF?9?kOr zdMGzTpasKA;K9TD70(0c;iMS?Ym6YcDVIG~D}~_#Xq^YpL*Wd8cg90Lw9A(P9BZ{@ zcn>Hy51`j(B{Kv{8po7UxbC<$J;(42C^rxAFBH!ZWUi}euLd97lr@!{;Thna@sPEu zb?n5qu)Gw8q9pR>0rVg>HXxl&K~WM|UJ7F;zJ;}_^}PO~^`BQU^>oVD9jAaSW-L z^LCc6hqR+a+x^U7&5WfYf=XEnB`!D%YFB(T65v0!N_X!P%g(hEo+$(!nKvcq(McuM ziVF@+T~1OiEUFr;iJ?`2K_4FQzfk?kKTXEOP2*ZwRmbdOD*tlsSaf~9v+3r~Z*$A{ z<(JQpbWjlBU}0*6PzQ6HJtj>lxOn${^1}iS-Lqms)pLVZy*#Yy86;~wGmh0O^U(i3 zIsVh9P93{_?77O#zq@X5@AdVY7C5s%YqH=bnU=fvju$aaEHj&Ks(7H()$nRY&DpH@ zD@x|(?CV{bc~n87`}j+-+r87B7C-~M!GH`Co&AD>+Oe`em?nTIQW zE3~nRO}bZo{Nm$82bH(4t)&ypUObGw?U+%{zto*o;{S`}UeVnBmlZ=^PhwJv{PQXE zcD$G7vgP|HU3e$AC)?UU`pb&JQ;NAC)K<6<`2%O2k*|C2P!$FS( zmap@bwqCydBqgfbcJ;ii9lD-EMNBMd&2o}ce=;;=O*YJ8VtB!$dNd+BvQ>xu}km05FQ-r zCZoMNr{V_p|35C5)*te%Vr1&9nrav5b@G#!thUYxXWvlCm#=K}8mFake?0F$;ZxVH z6~!-CoG+Q2^Fd?j#eGx4uNeOS!_xV8&+A80lXu)VmrGq&n8U>AcTT)y`L;buNxfli zuQol4SE-&_ZLj{=wr_2+TN^T3VeGoe!oyd^SxJQr>bLUsKg6MaC&o9lKrMhv8 zZr8E$fVW1!Lv>Hz|0NVKmoe+xeSPOY#Z!#AlNbB>&Yv8_8Q_(uw`s$J$SpY|}=SizjTJXcS9d{|fAvGc^ChVJ+Km!HZ^7u%w?bbUh-lfcccxKlC5zCB}G zrnX%1^g-d@?^h;hXu4U*H0iJ#np*b0J%x59JPkK| rbuKr#eQ(bqD+c$dBjS+!@Poafpl8~x7L!ZB49ei?>gTe~DWM4fbxXIQ literal 0 HcmV?d00001 diff --git a/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-0.png b/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-0.png new file mode 100644 index 0000000000000000000000000000000000000000..4f86356f08a4ec3598ec9b0a6aac4e09374484aa GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R})}AhoArY-_ z&u!!ds&WZT@?3HA)YF*O#yd@7zopr0ENLQkN^Mx literal 0 HcmV?d00001 diff --git a/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-2.png b/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-2.png new file mode 100644 index 0000000000000000000000000000000000000000..e7539c788995f0d12905dfa5c6afd076fb55617a GIT binary patch literal 137 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}&YmugArY-_ zFC64#P~c%Xc$jU?Q6{Eq>qH|RYi>Ax;y85fe}W|^L&N)@C2JpEtn_Aoqa4Y9{xjpX jc$Y|rPmBx<0q>Z2JGjgjd8jx8jbre1^>bP0l+XkKXn-r= literal 0 HcmV?d00001 diff --git a/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-3.png b/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-3.png new file mode 100644 index 0000000000000000000000000000000000000000..9e2d14c7cf2ddfa93b699d4605e2e1262bbcf219 GIT binary patch literal 138 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}E}kxqArY-_ zFC64#P~c%Xc$jU?Q6{Eq>qH|RYi>Ax;y85fe}W|^!w1{>>r8E|@?SR8s=R(!X?NgP kw+8ov#wW}S3=8hCu3p1uZMuGOGtfK+Pgg&ebxsLQ0IcUOK>z>% literal 0 HcmV?d00001 diff --git a/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-4.png b/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/mag-unshaded-4.png new file mode 100644 index 0000000000000000000000000000000000000000..e1a36d5f23550303f0fbad884201852297b5b159 GIT binary patch literal 139 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}uAVNAArY-_ zFC64#P~c%Xc$jU?Q6{Eq>qH|RYi>Ax;y85fe}W|^!@lR2x3;-I*OlGSpJHoso;{*o lFqP5f0P{(91_p_7?KFzCZ&RJYD@<);T3K0RVlmDo+3a literal 0 HcmV?d00001 diff --git a/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/meta.json b/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/meta.json new file mode 100644 index 0000000000..b67548a18c --- /dev/null +++ b/Resources/Textures/_DV/Objects/Weapons/Guns/Battery/microwave_emitter.rsi/meta.json @@ -0,0 +1,40 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Sprites by EmberAstra (github)", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "base" + }, + { + "name": "mag-unshaded-0" + }, + { + "name": "mag-unshaded-1" + }, + { + "name": "mag-unshaded-2" + }, + { + "name": "mag-unshaded-3" + }, + { + "name": "mag-unshaded-4" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +}