Fandom

Mega Man 8-Bit Deathmatch Wiki

Junk Shield

277pages on
this wiki
Add New Page
Talk0 Share
WepIconDWN050-JunkShield Junk Shield Junkmansprite
JunkShieldWepGif
Weapon code JunkShieldWep
Comes from Mega Man 7
Weapon color scheme Gray on Light Gray
Fire rate Very Slow-Extremely Slow
Missile speed Slow
Capacity 4 uses
Weapon hotkey/type [7] Shield weapon
Damage 8 (Junk Shield radius)

20 (One piece of junk thrown)

Appears in
these maps
MM7CloudMM4DustMM5GravityMM8GrenadeMM3HardMM2HeatMM1IceMM7JunkMM6KnightMM2MetalMM6MrXMM7Wily1

Junk Shield summons a shield made of scrap metal that orbits around the user. The junk absorbs some of the damage of incoming hits, but can be destroyed after enough punishment. The junk also damages enemies near it, which also decreases its durability. If you fire while the shield is still active, the shield is flung away away as junk projectiles straight forward and from your two back diagonals. It seems that two projectiles are thrown in each direction, but this is purely aesthetic.

Tactics

Using Junk Shield

This weapon is good to finish enemies off or when you are in the middle of a crowd. The shield deals damage without the need to aim while protecting you from the damage that comes at close range. It's also useful to escape, as the defensive bonus will allow you to survive at low health. Be careful and pay attention to its sounds, as if you receive too much damage, the shield will be destroyed.

Vs. Junk Shield

Be careful around players with Junk Shield, as they have a defense buff and do constant damage at close range. If you have a powerful melee or ripper weapon, don't hesitate to use it since they can destroy the shield quite easily. In case you don't have any of those weapons, keep your distance while shooting, wait until the shield is down and keep the pressure up until they either run out of ammo or health. Piercing weapons like Thunder Bolt ignore the defense buff that Junk Shield gives, meaning they will finish them off without hassle.

Code

actor JunkShieldWep : MegaBuster 10087
{
//$Category MM8BDM-Weapons
Weapon.AmmoUse 7
Weapon.AmmoGive 28
Weapon.SlotNumber 7
Obituary "%o was trashed by %k's Junk Shield."
Inventory.Pickupmessage "Power up! Junk Shield!"
weapon.ammotype "JunkShieldAmmo"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
inventory.icon "JSHISI"
Scale 2.0
States
{
Spawn:
WEA3 N 1
loop
Ready:
JARM A 0 ACS_ExecuteAlways(998,0,57)
JARM A 0 //ACS_ExecuteAlways(994,0)
JARM A 0 //A_JumpIf(ACS_ExecuteWithResult(975,0)==3,"Death")
JARM A 1 A_WeaponReady
Goto Ready+3
Deselect:
JARM A 0 A_JumpIfInventory("ShieldCheck", 1, "TakeArmor") 
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
JARM A 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
JARM A 1 A_Raise
Loop
Fire:
JARM A 0 A_JumpIfInventory("ShieldCheck", 1,"ShieldThrow")
JARM A 0 A_JumpIfNoAmmo("Hold")
JARM A 0 A_GiveInventory("ShieldCheck",1)
JARM A 0 A_GiveInventory("JunkArmor",1)
JARM A 0 A_TakeInventory("JunkShieldAmmo",7)
JARM A 0 A_SpawnItemEx("JunkWatcher")
JARM BCDEFGH 2
Goto ShieldActive
ShieldThrow:
JARM A 0 A_GiveInventory("JunkDone",1)
JARM A 0 A_TakeInventory("ShieldCheck",1)
JARM A 0 A_TakeInventory("BasicArmor",999)
JARM IJ 3 
JARM A 0 A_TakeInventory("JunkDone",1)
JARM A 0 A_PlayWeaponSound("weapon/junkshield")
Throwing:
JARM A 0 A_FireCustomMissile("JunkProjectile",0,0,0,0)
JARM A 0 A_FireCustomMissile("JunkProjectile",120,0,0,0)
JARM K 4 A_FireCustomMissile("JunkProjectile",-120,0,0,0)
JARM A 0 A_FireCustomMissile("JunkProjectile2",0,0,0,0)
JARM A 0 A_FireCustomMissile("JunkProjectile2",120,0,0,0)
JARM K 4 A_FireCustomMissile("JunkProjectile2",-120,0,0,0)
JARM K 20 
JARM I 3
Goto Ready+2
ShieldActive:
JARM A 0 A_SpawnItemEx("JunkDamager",0,0,32,momx,momy,momz,0 ,SXF_ABSOLUTEMOMENTUM, 0)
JARM A 0 A_SpawnItemEx("JunkDamager",0,0,32,momx,momy,momz,45 ,SXF_ABSOLUTEMOMENTUM, 0)
JARM A 0 A_SpawnItemEx("JunkDamager",0,0,32,momx,momy,momz,90 ,SXF_ABSOLUTEMOMENTUM, 0)
JARM A 0 A_SpawnItemEx("JunkDamager",0,0,32,momx,momy,momz,135 ,SXF_ABSOLUTEMOMENTUM, 0)
JARM A 0 A_SpawnItemEx("JunkDamager",0,0,32,momx,momy,momz,180 ,SXF_ABSOLUTEMOMENTUM, 0)
JARM A 0 A_SpawnItemEx("JunkDamager",0,0,32,momx,momy,momz,225 ,SXF_ABSOLUTEMOMENTUM, 0)
JARM A 0 A_SpawnItemEx("JunkDamager",0,0,32,momx,momy,momz,270 ,SXF_ABSOLUTEMOMENTUM, 0)
JARM A 0 A_SpawnItemEx("JunkDamager",0,0,32,momx,momy,momz,315 ,SXF_ABSOLUTEMOMENTUM, 0)
JARM A 0 A_SpawnItemEx("JunkDamager2",0,0,80,momx,momy,momz,0 ,SXF_ABSOLUTEMOMENTUM, 0)
JARM A 0 A_SpawnItemEx("JunkDamager2",0,0,0,momx,momy,momz,0 ,SXF_ABSOLUTEMOMENTUM, 0)
JARM HHH 2 A_WeaponReady
JARM A 0 A_JumpIfInventory("ShieldCheck", 1,"ShieldActive")
JARM A 0 A_GiveInventory("JunkDebrisSpawner",1)
JARM HHHHAA 5 A_WeaponReady(WRF_NOFIRE)
goto Ready+2
Hold:
JARM A 1 ACS_Execute(979,0)
JARM A 0 A_Refire
Goto Ready+2
NoAmmo:
JARM A 1 ACS_Execute(979,0)
Goto Ready+2
Death:
JARM A 1
stop
TakeArmor:
JARM A 0 A_TakeInventory("ShieldCheck",1)
JARM A 0 A_TakeInventory("BasicArmor",100)
JARM A 1
Goto Deselect+1
}
}

actor JunkArmor : BasicArmorPickup
{
Armor.Savepercent 75
Armor.Saveamount 100
States
{
Spawn:
PLAY A 1
loop
}
}


actor JunkDamager
{
PROJECTILE
+LOOKALLAROUND
+SKYEXPLODE
+DONTBLAST
-ACTIVATEIMPACT
-ACTIVATEPCROSS
+NOTELEPORT
damagetype "JunkShield"
Speed 27
scale 2.5
radius 5
Height 32
Damage (8)
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_ChangeVelocity(-20,0,0,CVF_RELATIVE|CVF_REPLACE)
TNT1 A 6 
Stop
Crash:
TNT1 A 0 
TNT1 A 1 A_TakeFromTarget("BasicArmor", 5)
stop
}
}

actor JunkDamager2 : JunkDamager
{
States
{
Spawn:
TNT1 A 0
TNT1 A 2 
stop
}
}
actor JunkWatcher
{
Height 0
Radius 0
+NOINTERACTION
-SOLID
+NOGRAVITY
+MISSILE
States
{
Spawn:
TNT1 A 1 A_GiveToTarget("JunkGiveFX1",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX1",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX2",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX2",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX3",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX3",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX4",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX4",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX5",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX5",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX6",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX6",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX7",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX7",1)
TNT1 A 0 A_JumpIfInTargetInventory("BasicArmor",1,"Continue")
Goto Death
Continue:
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX8",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX8",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX9",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX9",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX10",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX10",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX11",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX11",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX12",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX12",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX13",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX13",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX14",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX14",1)
TNT1 A 0 A_JumpIfInTargetInventory("CutterFlag",998,"Death")
TNT1 A 1 A_GiveToTarget("JunkGiveFX15",1)
TNT1 A 1 A_GiveToTarget("JunkGiveFX15",1)
TNT1 A 0 A_JumpIfInTargetInventory("BasicArmor",1,"Spawn")
goto Death
Death:
TNT1 A 1 //A_GiveToTarget("JunkDebrisSpawner",1)
TNT1 A 1 A_TakeFromTarget("ShieldCheck",1)
TNT1 A 0 A_TakeFromTarget("BasicArmor",100)
stop
}
}

actor JunkDebrisSpawner : CustomInventory
{
inventory.amount 1
inventory.maxamount 1
+AUTOACTIVATE
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 AA 0 A_SpawnItemEx("JunkDebris",0,0,0,random(-10,10),random(-10,10),random(5,15),random(0,360))
TNT1 AA 1 A_SpawnItemEx("JunkDebrisSmall",0,0,0,random(-10,10),random(-10,10),random(5,15),random(0,360))
stop
}
}

actor JunkDebris
{
Height 0
Radius 0
+MISSILE
+RIPPER
+NOBLOCKMAP
-SOLID
damage 0
scale 2.5
//+CLIENTSIDEONLY
+NOINTERACTION
reactiontime 4
States
{
Spawn:
TNT1 A 0 
TNT1 A 0 A_PlaySoundEx("weapon/junkend","Voice")
JSHI V 2
TNT1 A 2 A_CountDown
Goto Spawn+2
}
}

actor JunkDebrisSmall
{
Height 0
Radius 0
+MISSILE
-SOLID
scale 2.5
+NOBLOCKMAP
+RIPPER
damage 0
+CLIENTSIDEONLY
reactiontime 3
States
{
Spawn:
JSHI W 2
TNT1 A 2 A_CountDown
loop
}
}

actor JunkGiveFX1 : CustomInventory
{
inventory.amount 1
inventory.maxamount 1
+AUTOACTIVATE
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX1",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX2 : JunkGiveFX1
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX2",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX3 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX3",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX4 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX4",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX5 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX5",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX6 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX6",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX7 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX7",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX8 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX8",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX9 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX9",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX10 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX10",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX11 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX11",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX12 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX12",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX13 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX13",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX14 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX14",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkGiveFX15 : JunkGiveFX2
{
States
{
Spawn:
TNT1 A 1
loop
Use:
TNT1 A 1 A_SpawnItemEx("JunkShieldFX15",0,0,0,momx, momy, momz, 0, SXF_ABSOLUTEMOMENTUM, 0)
stop
}
}

actor JunkProjectile
{
PROJECTILE
Damage (20)
Height 10
Radius 21
scale 2.5
Speed 18
States
{
Spawn:
JSHI V 4
loop
}
}

actor JunkProjectile2
{
PROJECTILE
Damage 0
Height 10
Radius 21
scale 2.5
Speed 18
States
{
Spawn:
JSHI W 4
loop
}
}



actor JunkShieldFX1
{
scale 2.5
- SOLID
+NOGRAVITY
//+CLIENTSIDEONLY
//+NONETID
States
{
Spawn:
JSHI A 1
JSHI A 1
stop
}
}

actor JunkShieldFX2 : JunkShieldFX1
{
States
{
Spawn:
JSHI B 1
JSHI B 1
stop
}
}

actor JunkShieldFX3 : JunkShieldFX1
{
States
{
Spawn:
JSHI C 1
JSHI C 1
stop
}
}

actor JunkShieldFX4 : JunkShieldFX1
{
States
{
Spawn:
JSHI D 1
JSHI D 1
stop
}
}

actor JunkShieldFX5 : JunkShieldFX1
{
States
{
Spawn:
JSHI E 1
JSHI E 1
stop
}
}

actor JunkShieldFX6 : JunkShieldFX1
{
States
{
Spawn:
JSHI F 1
JSHI F 1
stop
}
}

actor JunkShieldFX7 : JunkShieldFX1
{
States
{
Spawn:
JSHI G 1
JSHI G 1
stop
}
}

actor JunkShieldFX8 : JunkShieldFX1
{
States
{
Spawn:
JSHI H 1
JSHI H 1
stop
}
}

actor JunkShieldFX9 : JunkShieldFX1
{
States
{
Spawn:
JSHI I 1
JSHI I 1
stop
}
}

actor JunkShieldFX10 : JunkShieldFX1
{
States
{
Spawn:
JSHI J 1
JSHI J 1
stop
}
}

actor JunkShieldFX11 : JunkShieldFX1
{
States
{
Spawn:
JSHI K 1
JSHI K 1
stop
}
}

actor JunkShieldFX12 : JunkShieldFX1
{
States
{
Spawn:
JSHI L 1
JSHI L 1
stop
}
}

actor JunkShieldFX13 : JunkShieldFX1
{
States
{
Spawn:
JSHI M 1
JSHI M 1
stop
}
}

actor JunkShieldFX14 : JunkShieldFX1
{
States
{
Spawn:
JSHI N 1
JSHI N 1
stop
}
}

actor JunkShieldFX15 : JunkShieldFX1
{
States
{
Spawn:
JSHI O 1
JSHI O 1
stop
}
}

actor JunkDone : Inventory
{
inventory.amount 1
inventory.maxamount 1
}

actor JunkShieldAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
}

External Links

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.