The number of strikes a person gets is a define so hosts can modify it to their liking (I should probably move this to a config option but I can't be bothered to test it again). It defaults to 3 strikes, on the third strike you're out. It'll autoban you for 10 minutes.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5123 316c924e-a436-60f5-8080-3fe189b3f50e
Updated gateways a bit, they use a few less globals now.
Added some new snow icons.
Added a wip away mission.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5122 316c924e-a436-60f5-8080-3fe189b3f50e
They include such procs as sanitize_integer(num, min, max, default) which will check num is a number, round num to make it an integer, then check if it is between min and max (inclusive). If it fails the bound-checks it will return default. There are others, have a look.
PERSISTENT PREFERENCES: Every ckey which connects to the game gets its own persistent /datum/preferences datum.
It is archived in var/list/preferences_datums = list("ckey" = datum)
At connect it is automatically associated with the client defines.dm (or a new one is created if it can't find an archived prefs datum). This means clients will ALWAYS have a var/datum/preferences/prefs which references this datum. So you can use it without checking if(client.prefs)
This has simplified only a few bits of code. It will however, allow us to make preferences like see_deadchat ghost_ears etc, persistent. So they will not reset when you DC.
SAVEFILES: Changed the player savefile code a lot. Hopefully I've not fucked it up too much. Every single variable loaded from saves is now sanity checked using the new sanity procs. This should help prevent savefiles becomming obsolete by sanitizing input to meet current requirements, without deleting all the ok variables and making you start from scratch >_> NOTE: I still need to sort out the savefile version stuff. I'll probably figure it out before the server updates anyway. It sees to be fine without it.
You can no longer choose your blood type. It is randomised (with each bloodtype having a realistic probability of occuring). This is to make blood analysis (detective/medical) less pointless. It is chosen as soon as you connect. It remains persistent throughout each round so you won't be able to change it by logging in/out over and over.
Replaces some copypasta code with is_afk() (still a fair bit to do)
There are new hyperlink shortcut things. _src_=vars will direct your hyperlink to viewvars. _src_=prefs to your preferences datum. (These are the only way to access those bits of code via links). This means that the overall amount of operations in almost every Topic has pretty much halved and is much prettier.
Replaced and removed adminplayervars from datum/admins/Topic. It was superfluous. They now all point directly to the viewvars code using _src_=vars
Removed the changelog popup at round start. Instead a button on your game-window will glow white if there are new updates. To peruse at your convenience. This will speed up connect times.
Removed the AFK_THRESHOLD define. It is integrated into is_afk() now.
TODO: remove the prefs stuff from mobs and clients and update code to use client.prefs to access that info.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5121 316c924e-a436-60f5-8080-3fe189b3f50e
Removed /obj/item/weapon/camera while I was at it (unused).
New cameras are in modules/paperwork/photography.dm.
Standardised folder and paper naming a leetle bit.
Added a new gamekit sprite, also from BS12.
Path changes!
/obj/item/weapon/camera_test > /obj/item/device/camera
Updated all maps with the path changes, excepting oldstation.dmm.
Updated the changelog.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5116 316c924e-a436-60f5-8080-3fe189b3f50e
Before, when making a link to an admin tool, you done this:
<a href='?src=\ref[C.holder];parameter=1;>link</a>
Now, we do not need to use a reference to direct it to places like usr or usr.client.holder (or client, but you never needed src for that anyway)
usr: <a href='?_src_=usr;parameter=1;>link</a>
holder: <a href='?_src_=holder;parameter=1;>link</a>
This basically allows us to move a LOT of code outside of loops as we no longer have to create a \ref for every recipient of the message. They can all be sent identical links. A simple example of this would be in pray.dm Although it's most noticeable in the adminhelp code which is vastly simplified.
Adminhelp name spotting code thingy...whatever... looks for ckey matches first, then surnames, then forenames. This is to stop it possibly weirding out if there is a station full of "Ed"s of "Sarah"s
Prayer code no longer loads a new icon into memory every time a prayer is sent. Use image() not icon()!
key_name() no longer needs a reference for it's admin_link argument.
message_admin() pretty much doesn't need those extra arguments for finding and replacing %holder_ref%. I've got to go through all the code to check before I remove it though.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5105 316c924e-a436-60f5-8080-3fe189b3f50e
-Added a verb to empty the contents of the sprayer onto the floor.
-Admin spawnable only poisonousness apple added.
-Apples will always be eaten in one bite, to balance it, the apple can only hold 20 reagents now.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5104 316c924e-a436-60f5-8080-3fe189b3f50e
Removed the last of the old promotion/demotion code.
Permissions panel accessible via player panel.
Uncommented the attack log verb. I mistakenly thought it wasn't used.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5102 316c924e-a436-60f5-8080-3fe189b3f50e
-Spaceacillin will now prevent the spread of diseases while it is a mob.
-Moved the "Create A Disease" code into a proc.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5101 316c924e-a436-60f5-8080-3fe189b3f50e
-Fixed a bug where blood/vomit decals would be creating new viruses.
-Medical computer won't recognize advance diseases... for now.
-Used english_list when displaying symptoms.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5100 316c924e-a436-60f5-8080-3fe189b3f50e
Fixes issue 526. MMI-Mech issues
MMIs can now change intent. There's no feedback, but they can at least function properly now in mechs.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5098 316c924e-a436-60f5-8080-3fe189b3f50e
-Reduced the chunks of code about minerals in door_assembly.dm
Preeeetty much this commit is just to update all the files to the new path of the minerals. From here, if I can, I'll start changing one by one to remove the huge chunks of code.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5087 316c924e-a436-60f5-8080-3fe189b3f50e
Committing Brotemis's away mission and related code. I think he wanted to make a few more changes, but it should be functional.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5085 316c924e-a436-60f5-8080-3fe189b3f50e
I'll need to talk to Erro to figure out what to do with that.
Personally, I'd like to think people with PERMISSIONS rights could be trusted but you never know >_> bloody internet
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5083 316c924e-a436-60f5-8080-3fe189b3f50e
Glowberries have uranium inside them now instead of radium, which caused overlap since glowshrooms also had radium.
Also tweaked cocoa pod sprites a little bit.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5081 316c924e-a436-60f5-8080-3fe189b3f50e
Integrated the sql and standard admin_rank stuff a little. Still needs some work.
Permissions Panel has a sexy floating search bar. The scripts and stylesheets are external files which will be sent to every client at connect, so they can be used in any panel you wish with no additional overheads.
If there are any bugs with the permissions panel (particularly the search bar) please let me know. thanks.
rights2text now has a seperator argument. It defaults to "", but can be any string, for instance "<br>"
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5080 316c924e-a436-60f5-8080-3fe189b3f50e
-Got rid of a magic number in implants.
-Robots cannot hide their items in food anymore.
-Updated changelog with disease naming.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5077 316c924e-a436-60f5-8080-3fe189b3f50e
Deleted beach.dm and moved the code to floor_types.dm, the turf/simulated/beach is now turf/simulated/floor/beach.
Changed the turfs in the holodeck beach to the new type.
Falsewalls and walls have the right descriptions and names now.
'bananium' and 'sand' falsewalls are deleted, we already have 'honk' and 'sandstone', that are the same thing
Deleted a bunch of code that does the same thing in girders.dm (This still needs a lot of work, I'm unhappy of how it ended up)
I'll keep working with sheets of minerals, they are really messy, I think some of them are defined twice (!) and there are large chunks of code that does the same thing when they are used. But, as always, to be continued~
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5073 316c924e-a436-60f5-8080-3fe189b3f50e
-Made mutagen a catalyst instead of an ingredient. Fixes Issue 1100.
-Spellbook and Teleport Scroll doesn't show up for other players now.
-Added a syndicate intercom in the wizard's den.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5072 316c924e-a436-60f5-8080-3fe189b3f50e
-Removed the mutagen requirement from a metroid recipe so it does not conflict with the mix_virus recipe.
-When deaf, you'll get a notice when you see someone talking but you don't hear them. Being blind and deaf will give you no message, because you won't be able to tell. Talking while deaf will give you a message, even while blind.
-Diseases can't be cured by having a high body temperature now.
-I cut down the copy+paste on the meter code.
-Advance diseases now have a limit of 3 in a single mob, increased the amount of symptoms you can have to compensate.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5069 316c924e-a436-60f5-8080-3fe189b3f50e
Replaced the vault katana with a replica.
(svn actually managed a map merge, if it's broken please just revert to r5064's map, and replace the katana in the vault with a replica)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5065 316c924e-a436-60f5-8080-3fe189b3f50e
- Changed mineral walls, they have their own type by mineral instead of a variable
- Now you can spawn the different mineral walls with the game panel
- Fixed the examining in walls, they will now show the text on the 'desc' var
There are still some stuff out there with mineral walls, ugly chunks of code that does the same thing, two vars that have the same value and stuff like that. All of that will be purged, but, as always, to be continued~
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5061 316c924e-a436-60f5-8080-3fe189b3f50e
Wizards can no longer cast spells when muzzled. Fixes issue 843.
You can no longer take bags of holding or mechs to the clown planet. Fixes issue 1061.
Removed the infared sensor from the autolathe construct list. Fixes issue 1092.
- The infared sensor already does nothing, the code for it seems to have been removed ages ago, so there's no harm in doing this.
- Commenting out the define caused a few problems that I couldn't quite figure out. I'll leave it for now with a warning.
Removed the ability for pAI's to set arrest status. Dead players really shouldn't be allowed to grief people like that. Fixes issue 1093.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5060 316c924e-a436-60f5-8080-3fe189b3f50e
-After using the wish granter it will update your mutation icons.
-Rejuv will now heal clone damage and brain damage.
-Changed the order of possible directions the singularity can go in so that it won't go south too often (in theory).
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5057 316c924e-a436-60f5-8080-3fe189b3f50e
-Fixes Issue 1085 - Artificers creating turfs with buggy lighting
-Spells now will use the proper proc to create turfs
Due to the amount of files changed, this is just the 'part one'. The merging in turf.dm is not finished, mineral walls and buildmode are still using the old system. The creation of turfs on the game panel is not using the proper procs yet. Stay tuned for this changes, but now, sleep.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5054 316c924e-a436-60f5-8080-3fe189b3f50e
Carp are slightly faster (in testing, I walked away from one as a borg, this seems a bit silly). This might not work well in practice though what with lag on a live server, so I'm guessing I might have to change this back.
Carp/syndicate also keep chasing their target as long as they're within 10 tiles, to compensate for them being slower than humans.
Removed the restriction on debraining changelings, this was a terrible "fix" to half-changelings and just lets you metagame.
Added a mineral var (metal) to floors to stop runtimes when you hit them with mining tools.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5052 316c924e-a436-60f5-8080-3fe189b3f50e
Fixed advance diseases using the same reference in mobs.
Fixed advance diseases referencing other advance diseases' symptoms, instead of just copying it.
I tested it more thoroughly this time and I can't find any issues but if you do please add them to the bug tracker and or contact me on #coderbus.
Added a new reaction which will remove symptoms from a disease. Needs blood and synaptizine.
Added a new symptom, shivering will make you cold.
Tweaked and balanced some symptoms.
Removed the "flex" emote that hulks will do randomly.
Reduced the change to speak for hulks and brain damaged mobs. ( 7% -> 3% chance)
Please let me know if anything is out of place or wrong.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5048 316c924e-a436-60f5-8080-3fe189b3f50e
- Trying to remove someone's jobban through 'show player panel' -> 'jobban' -> 'click on job' will still bring up the banning panel, with a note that you can't use the old panel, it will however now properly have the banned player's ckey inserted as the search criteria, instead of your ckey.
- Jump-to-mob now uses mob_list instead of sortmobs()
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5044 316c924e-a436-60f5-8080-3fe189b3f50e
Fixes Issue 1055
-Made a 'catch-all' for emotes, where any 's's at the end of an emote command(Unless they have a '_' in front of them) will be cut off, so things like 'bow' and 'bows' would be interchangeable, and so on.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5043 316c924e-a436-60f5-8080-3fe189b3f50e
Likewise, removed the spawn_xeno verb and made an equivalent bit of code in the FUN section of the secrets panel.
Fixed the create_xeno proc. It was supposed to ask you which type of alien to spawn but it was sending the popup to src, which should have been usr.
Create_xeno can now spawn queens and larva.
Create_xeno is fed a ckey (optional) rather than a ghost mob. Which will make it more versatile and reliable should clients log out during popups and such.
Created an client.is_afk(duration) proc. If the client has been inactive for duration frames (11 frames is roughly 1 second), it will return the number of frames it has been inactive. Otherwise it returns 0. If no duration value is given it defults to 3000 which is roughly 5 minutes. There's a bunch of code I need to replace with this which I will do after I've got the rest of the admin rank stuff finished as that takes priority.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5040 316c924e-a436-60f5-8080-3fe189b3f50e
Made paths to sounds in robot/emote.dm more specific so the game doesn't have to find the files itself.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5039 316c924e-a436-60f5-8080-3fe189b3f50e
Added a new borg upgrade module which requires illegal tech and combat tech to make. It allows you to give them their emagged equipment without fucking with their laws.
New LMG by Ausops (both sprites and code). Right now appears only in Summon Guns, but may appear elsewhere in time.
Grilles now have a bullet act, so they no longer magically absorb infinite bullets.
Updated changelog.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5037 316c924e-a436-60f5-8080-3fe189b3f50e
- Uncommented a piece of code in IsBanned() that was only commented for testing purposes. Admins now once again ignore any bans to their name, except for daemon bans.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5036 316c924e-a436-60f5-8080-3fe189b3f50e