Malf overhaul, take two!
Waaaay back in the old days, I made it so malf AIs had to hack APCs to win, instead of just sit AFK for 45 minutes. Now I'm taking some more drastic action, to see what happens.
THE MALF AI NO LONGER SPAWNS ON THE AI SAT.
Instead of sitting in the AI sat hoping nobody notices your blatantly obvious hacking, at which point the 3 people lucky enough to have looted EVA get to have all the fun, you can now shunt your core processes into an APC you have hacked, and hacked APCs are only moderately obvious.
While shunted into an APC, the AI draws power from that APC instead of the one in their main core. If the APC loses power, the AI loses power as normal. If the APC they are in is damaged or destroyed, they are forced back into their main core. If the main core is inoperative at that time, they die. The AI is also capable of willingly going back to their main core. As long as the AI's main core is intact, the AI speaks out of its core, regardless of its current location.
I have tested as much of this as I could to make sure it is functional, but thanks to the game mode overhaul, I have been unable to run actual malf rounds on my test server, so I have had to cheat and set things to work in any mode for testing. As for actual round balance, there's no real way to predict how that shit'll change.
This is just the base overhaul, more changes will be forthcoming as malf rounds provide data on how the change performs.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2668 316c924e-a436-60f5-8080-3fe189b3f50e
For an example, let's say the phrase is: culture, wine, admit. The response is: massive, tired, doctor's delight. A traitor may begin a conversation with something like: "A man of culture always drinks wine, I must admit. What do you think?" The response to that: "When I am massively tired, I drink doctor's delight. Otherwise, I abstain." The example is best referenced in the Bar, or any place where drinks are available. With enough creativity and linguistical acumen, it may be used elsewhere.
The point here is to make conversation seem as natural as possible while providing traitors a means to recognize each other. The words do no have to be exact, either. Quarter Master may be QM and the Captain may be Cap'n. Traitors should still recognize what is being communicated--or not.
#Deactivated AI cores are no longer mobs. This is mostly cosmetic. You cannot gib a deactivated AI since it will be an object, not a mob. It will also not announce arrivals since it's an object, not a mob (this is an improvement, in my opinion).
#Some code tweaks to AIs. They will now auto-start with a random name instead of their default-chosen name (which is still changeable).
#Intelicards should no longer constantly refresh the window when they are being wiped.
#Added new mech sprite.
#Resin walls should no longer delete the person inside when killed in certain ways. Hulks will easily break free from resin if placed inside.
#Ninjas can now download the AI onto spiderOS, provided Drain is on. SpiderOS works with AI cores, AI cards, and restoration terminals. Make sure Drain is on when you click on either the object (core/terminal) or the suit (aicard). AIs with law zero may get to have some fun, depending on circumstances.
#Toggle Drain renamed to Toggle Interaction. It now serves as general trigger for special ninja interactions.
#Added energy net power to ninjas. Prototype for HerpA and whatever he may want to do with it but it's pretty much finished. The energy net can be destroyed by the person trapped (or others) and will teleport them to the prison after 30 seconds.
#Ninjas can now slice cameras apart per request.
#Added a few more type checking procs (isliving, islarva, isobserver, ishivemainframe).
#Mobs that are anchored will no longer be able to move (AIs will still move as normal). You will also not be able to grab them.
#Incorporeal Move now works properly for regular mobs once more.
#Marauders from CentCom can now launch directly from their bay. Start the shuttle and wait on a mass driver. On that note, mechs can now go through portals and launch through mass drivers.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1558 316c924e-a436-60f5-8080-3fe189b3f50e
Ion laws are now listed before all other laws, making them the kings of law priority
AIs can have multiple Ion laws
They are still resettable as normal
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@648 316c924e-a436-60f5-8080-3fe189b3f50e
The AI now has to actually do stuff to win!
Malf AIs now have the ability to hack APCs.
The timer does not start until at least one station APC is hacked.
The hack takes 60 seconds (give or take lag), and the AI is unable to interact with other objects during the process.
The more APCs you hack, the faster the timer goes.
This change is very much experimental, and subject to change/being erased from the annals of time.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@185 316c924e-a436-60f5-8080-3fe189b3f50e
Construction starts with a stack of 4 rmetal
From there, wrench, AI core circuitboard, screwdriver, wirecoil, a stack of 2 rglass, screwdriver
Between adding the wiring and the rglass, it is possible to insert a brain to create a new AI.
If no brain is included, you get an Inactive AI.
It is also possible to use the Asimov, Purge, and Freeform law modules on a core at this stage.
A new AI will not have any laws if you don't add any!
Deconstruction is currently impossible once it is a full AI, but until the securing of the rglass is done, you can still take it apart.
Assuming you've inserted the rglass, deconstruction is crowbar, crowbar (only if you inserted a brain), wirecutters, screwdriver, wrench, welder
It currently has really fugly sprites because I am not a spriter
Added ability to stack rmetal.
Added AI core circuitboard to tech storage.
Commented out some debug code that was no longer needed.
This is the biggest update I've done, it seems to be compiling fine on my end, but for all I know shit will ass up once it hits the SVN.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@139 316c924e-a436-60f5-8080-3fe189b3f50e