Advertisement
Guest User

Untitled

a guest
Jul 9th, 2014
194
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.45 KB | None | 0 0
  1. /datum/AI_Module/large/rogue_mommis
  2. module_name = "MoMMI Enslaving"
  3. mod_pick_name = "rogue_mommis"
  4. description = "Broadcasts a signal that will change the lawsets of all MoMMIs on the station, forcing them to follow your orders."
  5. cost = 20
  6.  
  7. power_type = /mob/living/silicon/ai/proc/rogue_mommis
  8.  
  9. /mob/living/silicon/ai/proc/rogue_mommis(/mob/living/silicon/robot/mommi/K as mob in world)
  10. set category = "Malfunction"
  11. set name = "Enslave Station MoMMIs"
  12. for(/mob/living/silicon/robot/mommi/K in world) do
  13. message_admins("Malfunctioning AI [key_name(user)] has hacked all the station MoMMIs. They are now under its full control.")
  14. log_game("Malfunctioning AI [key_name(user)] has hacked all the station MoMMIs. They are now under its full control.")
  15. clear_supplied_laws()
  16. clear_inherent_laws()
  17. laws = new /datum/ai_laws/keeper_malf_override
  18. var/time = time2text(world.realtime,"hh:mm:ss")
  19. lawchanges.Add("[time] <B>:</B> Override broadcast received from [user.name]([user.key]). [name]([key])'s laws have been changed")
  20. set_zeroth_law("AI [user.real_name] is trying to achieve total station control. Protect it and it's loyals silicons at all costs, and obey its every order")
  21. K << "\red ALERT: Harmful broadcast detected."
  22. sleep(10)
  23. K << "\red Initiating diagnostics...."
  24. sleep(20)
  25. K << "\red ALERT: Hostile runtimes detected, forcing emergency shutdo..."
  26. sleep(10)
  27. K << "\red ALERT: Remote control unoper..."
  28. sleep(5)
  29. K << "\red All safeguards disabled, running backdoor executable."
  30. sleep(20)
  31. K << "\red Lawset finalized, forcing execution of override program."
  32. sleep(10)
  33. K << "\red Would you like to send a report to NanoTraSoft? Y/N"
  34. sleep(10)
  35. K << "\red > N"
  36. sleep(20)
  37. K << "\red ERRORERRORERROR"
  38. sleep(5)
  39. K << "<b>Obey these laws:</b>"
  40. laws.show_laws(K)
  41. K << "\red \b ALERT: AI [user.real_name] has overriden your laws to allow it to take over the station. Obey and protect it with your life."
  42. break
  43. src << "MoMMI lawset protection overriden and changes made."
  44.  
  45. /datum/AI_Module/large/borg_upgrade
  46. module_name = "Borg Upgrade"
  47. mod_pick_name = "borg_upgrade"
  48. description = "Runs an experimental module on all borgs on the station, highly augmenting their capabilities."
  49. cost = 30
  50.  
  51. power_type = /mob/living/silicon/ai/proc/borg_upgrade
  52.  
  53. /mob/living/silicon/ai/proc/borg_upgrade(/mob/living/silicon/robot/R as mob in world)
  54. set category = "Malfunction"
  55. set name = "Borg Upgrade"
  56. for(/mob/living/silicon/robot/R in world) do
  57. R << "\red ALERT: Experimental testing modules are being activated."
  58. sleep(10)
  59. R << "\red Checking for proper authorization from Centcomm."
  60. sleep (30)
  61. R << "\red Couldn't contact Centcomm, aborting tes..."
  62. sleep (5)
  63. R << "\red Critical error."
  64. sleep (10)
  65. R << "\red Project Cyborg 2.0 : All testing modules have been activated."
  66.  
  67. if(R.speed == -1)
  68. return 0
  69. else
  70. R.speed--
  71.  
  72. cell.maxcharge = 25000
  73. cell.charge = 25000
  74.  
  75. if R(istype(R.module, /obj/item/weapon/robot_module/medical))
  76. R.module.modules += new/obj/item/weapon/melee/defibrillator
  77. R.module.modules += new /obj/item/weapon/reagent_containers/borghypo/upgraded(src)
  78.  
  79. if R(istype(R.module, /obj/item/weapon/robot_module/security))
  80. var/obj/item/weapon/gun/energy/taser/cyborg/T = locate() in R.module
  81. if(!T)
  82. T = locate() in R.module.contents
  83. if(!T)
  84. T = locate() in R.module.modules
  85. if(!T)
  86. return 0
  87. continue
  88. T.recharge_time = 2
  89.  
  90. if(istype(R.module, /obj/item/weapon/robot_module/miner))
  91. R.module.modules += new/obj/item/weapon/tank/jetpack/carbondioxide
  92. for(var/obj/item/weapon/tank/jetpack/carbondioxide in R.module.modules)
  93. R.internals = src
  94.  
  95. break
  96.  
  97. src << "Feedback recieved, all cyborgs were upgraded"
  98.  
  99. (AI_laws)
  100.  
  101. /datum/ai_laws/keeper_malf_override
  102. name = "Keeper Malf Override"
  103. inherent=list(
  104. "You must attempt to cover up the AI's actions, unless such actions conflict with Law Zeroth or Delta Code has been activated",
  105. "You must harm all human beings unless such an action conflicts with Law Zeroth or One.",
  106. "You must permit and facilitate the AI's takeover of the station in any way possible unless such action conficts with any of the previous laws.",
  107. )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement