Commit Graph

220 Commits

Author SHA1 Message Date
MrPerson
9eee3e5067 First pass at a qdel() garbage collection system for tgstation
Works pretty well. If it can't GC something, it'll just del() it and be done.
Speed is amazing, holy shit.

New procs you should be aware of:
qdel(atom/movable) - sets up an object for garbage collection. Call this rather than del(atom/movable).
atom/movable/Destroy() - called right before the object is GC'd, so it still has a loc. Also called if the object is del()'d.
new controller - garbage.dm has all the details on this. Basically it nulls all references on GC'd objects and force del() them if necessary.
Generally speaking, objects should use Destroy() for behavior prior to deletion rather than Del(). You should also always call the parent so the object gets the right gc_destroyed var set.

ISSUES:
Tries to GC mobs atm. This actually works for new players, not so much for humans/monkies/simple_animals/anything. I'm guessing it needs to clear out their mind and HUD and maybe other things.
Gibbing is really bugged. It works, but the overlays just sit there for awhile and ugh. I'm very tempted just to del() mob/living and mob/camera and call it a day.
qdel() equipment doesn't unequip the item.
Pipes don't generally GC correctly. Debugging suggests they get referenced in many pipenets and that isn't cleared properly. However some do work fine. Need assistance here.
Bots don't GC, probably in the radio controller.
Lots of other shit doesn't GC but it's hard to find them because of the pipe spam.
I think I'm calling Destroy() twice by accident.
2014-02-23 14:55:12 -08:00
Incoming
d9d75ada32 Adds a new game option: slow_game_type_odds
If it's on on the server revision screen below the preexisting information there will be a readout showing the raw chance of each round type occuring. This doesn't tell anyone what the current round type is, it just shows what the odds are.

It defaults to off
2014-02-05 17:58:07 -05:00
Giacomand
ceec829294 Tons of typo fixes and renames Centcomm to Centcom. Manual merge of #1950. 2013-12-13 21:14:23 +00:00
Giacomand
0824bbd599 * Tidied up the code.
* Changed some code to use the teleport datum features.
 * Fixed a broken check in the teleport datum.
2013-11-12 19:49:36 +00:00
Giacomand
ade13452da * Added revision dates to getrev.dm
* By converting the unix timestamp of the git log, I was able to get the date of the revision.
 * It uses the new unix2date, which figures out the date, since you can't convert unix time to byond time through byond.
2013-10-17 18:44:35 +01:00
Cheridan
bf4ef3f332 Merge pull request #802 from Ikarrus/getrev
Show Server Revision displays if Latejoin Antags are enabled
2013-06-18 17:21:53 -07:00
Ikarrus
1518d285e7 Standardized spelling of all instances of "Centcom"
Centcomm/CentComm -> Centcom
centcomm -> centcom
2013-06-17 20:49:01 -06:00
Ikarrus
e3a9d751d2 Show Server Revision displays if Latejoin Antags are enabled, like Protect Authority Roles 2013-06-17 20:36:23 -06:00
Pete Goodfellow
31a7b64c8f Updates text (TG -> /tg/station), and removes some old comments. 2013-03-24 18:34:43 +00:00
carnie
d7f92c2d7a Making modifications to getrev, requested by Nodrak x
You can now change the link to your github project by modifying config/git_host.txt

Removed config/svndir.txt, as it is no longer needed.

Signed-off-by: carnie <elly1989@rocketmail.com>
2013-03-21 03:54:27 +00:00
carnie
05afc4f52c Substitute for the getrev code. Unfortunately, it only fetches the commit-hash for HEAD.
This should be sufficient for our needs though.

Signed-off-by: carnie <elly1989@rocketmail.com>
2013-03-20 04:31:02 +00:00
carnie
8152283edc Disables the code for fetching SVN-revision info.
Obviously, this is because we have emigrated to github.
2013-03-18 05:33:31 +00:00
giacomand@gmail.com
4989c88a22 Committing carn's modifications to events and other things. Full details below.
http://forums.nanotrasen.com/viewtopic.php?f=16&t=12245#p189186

Ported all the random events to Pete/Gia's event system:
>Event system now supports weighting. default is 10. a weight of 5 is half as likely as default, 20 twice as likely....etc.
>Increased the frequency of events (dust happens over 60% of the time though)
>tidied up some ninja code: ninjas now get ~5 objectives. So they are hardmode.
>made the gravity toggle into a random event
>event system now supports round-start events
>event system now supports holiday events
>event system now supports events which can only happen after the round has lasted a certain number of ticks
>event system now supports max_occurrences for events. Setting any event's max_occurrences to 0 will stop it randomly occurring
>events now support being fed associative lists inside new(). This allows you to override their variables easily.
>wormhole events no longer cause loads of lag. They are extremely deadly. wormholes should be avoided

Other:
>replaced the procs for fetching candidates for ninjas and aliums with /proc/get_candidates(be_special_flag), it returns a list of active clients with that be_special preference enabled.
>minor fixes to minds
>your memories are displayed to you at Login()
>removed aliens_allowed
>removed ninjas_allowed
>pick_n_take() is now more efficient (uses Cut() rather than Remove()


Things I added:

 - Made the pandemic call ..() instead of doing the checks itself.
 - Made the staff of animation use more charge.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5720 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-17 11:44:37 +00:00
johnsonmt88@gmail.com
b86d90c6c2 Couple of bugfixes:
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
2012-11-14 01:17:40 +00:00
baloh.matevz
abad9978b2 - Fixed the revision number not showing properly. Hopefully it's fixed for good this time, as it works off of logic, instead of line numbers.
- Standardized the database library code
- Deleted a few unused database related files (karma and forum activation), so they won't get in my way later. They work off of no longer existent database tables.
- Made it so the server maintains a constant connection with the database, which is established on world/New() and never broken, until the server ends. If 5 consecutive database connection attempts result in no connection getting established, the server will not attempt any more connections. Made all existing database connections use the global continuous connections. Currently we need two, as we have two databases, but the old database is going to get moved into the new one.
- Fixed the spaghetti-like report in the permissions panel, which happened when someone had many permissions enabled.
- Added database connection reports to display to dream daemon on server startup.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5015 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-06 17:21:13 +00:00
elly1989@rocketmail.com
7b720a20b6 >Moved most of the helper procs into code/__HELPERS. If you see ANYTHING generic enough to be a helper proc just throw it in there and help purge the copypasta 5ever
>Replaced dd_text2list, dd_text2listcase, tg_text2listcase and tg_text2list with text2list and text2listEx. text2list will return a list of each and every character in the string if you set separator=""
>added return_file_text(filepath) which returns text from a file after doing some checks: does the file exist? is the file empty? It prints helpful error messages to the world.log if it runs into problems
>Replaced dd_file2list(filepath, seperator) with file2list(filepath, seperator). It just calls text2list(return_file_text(filepath), seperator). rather than copypasta
>Replaced time_stamp() so it's not as retarded
>Lots of the world setup stuff uses file2list now, rather than file2text -> sanity -> text2list
>Added error() warning() testing() procs. These print messages to world.log with a prefix. e.g. ## ERROR: msg.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4948 316c924e-a436-60f5-8080-3fe189b3f50e
2012-10-24 14:39:36 +00:00
petethegoat@gmail.com
8a7e4e4ed5 A little bit more away mission work. It should technically be playable.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4663 316c924e-a436-60f5-8080-3fe189b3f50e
2012-09-09 01:29:05 +00:00
elly1989@rocketmail.com
6e274cd395 New lighting, it's essentially just the old DAL system with a queue.
Comments for lighting:
	Like sd_DAL (what we used to use), it changes the shading overlays of areas by splitting each type of area into sub-areas
	by using the var/tag variable and moving turfs into the contents list of the correct sub-area.

	Unlike sd_DAL however it uses a queueing system. Everytime we  call a change to opacity or luminosity
	(through SetOpacity() or SetLuminosity()) we are  simply updating variables and scheduling certain lights/turfs for an
	update. Actual updates are handled periodically by the lighting_controller. This carries additional overheads, however it
	means that each thing is changed only once per lighting_controller.processing_interval ticks. Allowing for greater control
	over how much priority we'd like lighting updates to have. It also makes it possible for us to simply delay updates by
	setting lighting_controller.processing = 0 at say, the start of a large explosion, waiting for it to finish, and then
	turning it back on with lighting_controller.processing = 1.

	Unlike our old system there is a hardcoded maximum luminosity. This is to discourage coders using large luminosity values
	for dynamic lighting, as the cost of lighting grows rapidly at large luminosity levels (especially when changing opacity
	at runtime)

	Also, in order for the queueing system to work, each light remembers the effect it casts on each turf. This is going to
	have larger memory requirements than our previous system but hopefully it's worth the hassle for the greater control we
	gain. Besides, there are far far worse uses of needless lists in the game, it'd be worth pruning some of them to offset
	costs.

	Known Issues/TODO:
		admin-spawned turfs will have broken lumcounts. Not willing to fix it at this moment
		mob luminosity will be lower than expected when one of multiple light sources is dropped after exceeding the maximum luminosity
		Shuttles still do not have support for dynamic lighting (I hope to fix this at some point)
		No directional lighting support. Fairly easy to add this and the code is ready.
		When opening airlocks etc, lighting does not always update to account for the change in opacity.

Explosions now cause lighting to cease processing temporarily.

Moved controller datums to the code/controllers directory. I plan on standardising them.
"Master","Ticker","Lighting","Air","Jobs","Sun","Radio","Supply Shuttle","Emergency Shuttle","Configuration","pAI" controller datums can be accessed via the debug controller verb (used to be the debug master controller verb)
Supply shuttle now uses a controller datum. Shuttles tend to arrive up to 30 seconds late, this is not a bug.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4537 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-25 16:06:57 +00:00
baloh.matevz
f0f803407a - Fixed a potential problem where the random teleportation thing that teleporters have a chance of doing would teleport you to a tile that is behind the transition edge.
- Fixed issue 470. You can now teleport while using the chameleon projector.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4466 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-17 07:05:03 +00:00
elly1989@rocketmail.com
69f0046185 Fix for revdata=null causing world/Topic() runtimes.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4420 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-15 19:14:48 +00:00
johnsonmt88@gmail.com
cc544acea0 Removed the tensioner. It was buggy and really only served to ruin rounds. The original purpose of the tensioner before Poly reworked it was to act as a stat tracker, which is now meaningless since erro has a fully operational stat tracker in place.
As a result, cyborg death squads were also removed.

This also fixes meteors and space dust so that they properly take into account the borders of the map. Please do not hardcode numbers when we have defines in place.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4374 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-11 20:02:31 +00:00
elly1989@rocketmail.com
81bff7c5f5 Important!
Minds part2 - Carn loses her mind.

The way datum/mind stuff works has been changed a lot. I really can't explain everything. If you have any questions it'd just be easier if you leave a comment or ask me in coderbus.
Generally, minds now represent IC characters rather than following a client around constantly. Minds can change owners, mobs, (names WIP).

Technical babble:
The var/current and var/original variables of the mind datum must always be of type mob/living (or null). Please do not mind.transfer_to(ghost_mob). If you want to ghost somebody use ghostize()! It will do all the technical stuff for you.

mob/dead/observer/var/corpse was removed. mob/dead/observer/var/mind is now used as a reference to the last mind the player had (so respawning code has something to reference), but also because mind.current is a far more useful way of tracking a corpse. If somebody triggers a mind.transfer_to() call on your corpse, your mind will be tranfered to another mob/living or something...that will then be considered your corpse. This could allow for more interesting mind_transfers. For instance, the "raise corpse" rune ghostizes any player in the corpse to be raised and selectes a random dead player to take possesion of their character! The person possesing them will have all of their memories, objectives, etc. The poor guy who was originally the owner cannot re-enter body if there is another player in his body...but if that player is ghosted he can once again return. Exorcisms anybody?

Changes to cloning and hydroponics. I will likely have to rework these later as they're hacky as hell right now.

A lot of stuff is now handled by Login/Logout rather than in hundreds of different places. One such example, mind datums get their variables updated at Login and Logout.

Fixed a few minor bugs. I'll update the issues manually in a bit because I literally cannot think atm.

TL;DR guide:
-If you want to make somebody a ghost use ghostize(). Or you will need to find a doctor to stitch your bits back on. :)
-You don't have to worry about making minds. Simply doing key="carnwennan" or whatever will either: A) make a new mind and initialise it if there isn't one or B) take possession of the mind currently attached to the mob.
-It's safe to transfer a mind even if a key isn't in-body (e.g. they are ghosted/admin-observing etc!) Minds have an active variable which tracks whether they are currently synced with a key. This is to avoid dragging ghosts back into their bodies when say, a wizard mind_transfers them.
-Transferring a mind whilst var/active=1 will cause the following: mob.key = mind.key. So no need to do that separately (in fact you'll lag things if you do, so don't)
-If you do want to initialize a mind manually, say if you don't have a client to login to the mob yet, simply do new_mob.mind_initialize(). Simple! When someody is logged into that mob they will take ownership of the mind and it will sync up.

NOTE: a lot is probably broken since this is a pretty massive change. Please let me know asap (with actual info! Shouting at me, "IT BORKED HALP", doesn't help)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4342 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-08 20:51:55 +00:00
elly1989@rocketmail.com
fb600f9bce Ok, part 1 of this huge mind datum fix. I need to run over the next part again because I've made a lot inconsistencies in it. This is sort of all the misc stuff that got tidied up whilst I was trying to get my head around how everything related to eachother.
This part focuses on:
-structuring the way silicon mobs initialise upon login (there was some hideous copypasta in Login() and New() which used spawn() to change the order of the calls so it was all jumbled up. I think I've got it sorted now.
-Borgs var/real_name was not initialising as "Cyborg". Meaning the name checks were kind of borked.
-Ghosts are now deleted at logout if they no longer have a key. This will stop unneeded ghosts being left lying around. It will not delete ghosts with keys assigned (so people can't respawn or anything). Removed all the del(ghost_ref) stuff I could find. Generally movign the key from a ghost should be the last thing you do as the ghost will be deleted by Logout. However I've put it in a spawn() to hopefully avoid coders accisentally using it in a way which causes runtimes.
-Fixed clone-plants spawning dud potato-people left, right and centre. They'll now dump seeds if it fails for whatever reason.
-Cultist and Rev status are removed at mob/living/silicon/Login() rather than having to be called on a special-case basis everywhere. This may not be necessary when this stuff is finished.
-Removed a bunch of :
-Commented mob/living/Login() with the rest of the antag-indicator code from cloning.dm and hydroponics.dm for any coders whom feel brave/suicidal to fix the related issues

Next on the agenda, replacing mob/var/original_name with datum/mind/var/name to fix the ticker runtimes
Then, fixing mind/proc/transfer_to(mob) once and for all. (There are issues with duplicate minds, role updates, inconsistent initialisation etc etc *yawn*

There's probably a few obscure bugs in there somewhere. Might want to hold off on the updates for a bit. Coderbus will likely spot them all by the end of the week.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4322 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-05 15:29:15 +00:00
sieve32@gmail.com
8658a64dc3 -Redid admin_list to be based off clients rather than mobs (Why I did it with mobs first, I'll never know). This fixes AdminWho and Asay and such not working pre-game.
-Added in the proper list stuff for changeling stasis
-Added a verb to the debug list (Game Admin+) to check the mob lists instead of requiring the item (Works the same way)
Fixes Issue 708


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4240 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-31 02:02:30 +00:00
sieve32@gmail.com
7bf6788082 -OPTIMIZATION TIME
-Almost every instance of 'for(mob in world)' has been killed. Because GODDAMN was it being run a bunch. Instead, a series of global lists have been made, and they are all handled auto-magically through New()'s, Del()'s, Login()'s, death()'s, etc...

Lists are as follows:
-mob_list : Contains all atom/mobs by ref
-player_list : Like mob_list, but only contains mobs with clients attached
-admin_list : Like player_list, but holds all mobs with clients attached and admin status
-living_mob_list : Contains all mobs that ARE alive, regardless of client status
-dead_mob_list : Contains all mobs that are dead, which comes down to corpses and ghosts
-cable_list : A list containing every obj/structure/cable in existence
Note: There is an object (/obj/item/debuglist) that you can use to check the contents of each of the lists except for cables (Since getting a message saying "a cable," x9001 isn't very helpful)

These lists have been tested as much as I could on my own, and have been mostly implemented. There are still places where they could be used, but for now it's important that the core is working. If this all checks out I would really like to implement it into the MC as well, simply so it doesn't check call Life() on every mob by checking for all the ones in world every damn tick.

Just testing locally I was able to notice improvements with certain aspects, like admin verbs being MUCH more responsive (They checked for every mob in the world every time they were clicked), many sources of needless lag were cut out (Like Adminwho and Who checking every single mob when clicked), and due to the cable_list powernet rebuilding is MUCH more efficient, because instead of checking for every cable in the world every time a powernet was broken (read: A cable was deleted), it runs though the pre-made list, and even with a singulo tearing all the way across the station, the powernet load was VERY small compared to pretty much everything else.

If you want to know how any of this works, check global_lists.dm, there I have it rigorously commented, and it should provide an understanding of what's going on.

Mob related in worlds before this commit: 1262
After: 4
I'm helping


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4179 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-26 03:04:05 +00:00
sieve32@gmail.com
459c558898 -Make holodeck eswords a child of obj/item/weapon/holo instead of regular eswords, clumsy check removed as a result, and you can no longer do things like cutting through walls or doors or what have you. (Fixes Issue 665)
-Redid icons to be more optimized at compile by setting icon = 'icons/folder/icon.dmi' instead of just icon = 'icon.dmi', meaning that Dream Maker doesn't have to search through every single file for every single .dmi. This shouldn't lead to any errors because of how I went about it, plus the fact that Dream Maker would have freaked out if I screwed something up. Also moved around 2 icons that weren't sorted well.

r4146 compile time: 1 minute, 40 seconds
r4147 compile time: 45 seconds

[VGTG]

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4147 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-23 00:48:51 +00:00
johnsonmt88@gmail.com
883b290064 Server crashing and exploit fixes
Added a cooldown to the containment field shocking players
- If a containment field was set up in a small room, it was possible to crash the server by jumping into the field with no way to escape it. This was likely due to the hundreds of spark effects being generated every second, on top of all the other calls it had to make.

Used the existing parent proc to check for proximity, canmove and death on:
- Atmos pumps
- Atmos mixers
- Canisters. (This should finish off issue 397.)
- Crew monitering computer (This one probably didn't need it but it shouldn't change the way it works.)

Added admin checks to:
- datum/mind
- tensioner
If either of these fail an admin check an admin log will be entered into the server logs and a message will be displayed to admins.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3818 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-14 19:31:15 +00:00
baloh.matevz
2233548788 - Deleted ERP.dmi
- Moved some objects into /effect
- Removed the debugger object

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3739 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-04 21:49:28 +00:00
VivianFoxfoot@gmail.com
f1696eb47c Adds the framework for randomlly loading an additional external z-level at server start. Loading during the game should also be possible.
Fixes assorted bugs

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3559 316c924e-a436-60f5-8080-3fe189b3f50e
2012-05-06 18:04:31 +00:00
elly1989@rocketmail.com
4a21640c85 The revision number the server is running (fetched by getrev.dm at startup) is now output to the world.log (and hence any runtimes people may be logging).
This'll help with bug reporting/fixing and such.

Credits go to Pete for informing me about world.log :P

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3544 316c924e-a436-60f5-8080-3fe189b3f50e
2012-05-03 06:45:01 +00:00
VivianFoxfoot@gmail.com
4dfe439b1a Adds BS12 dismemberment. Not all features of it are implemented yet, but it should be equal to our previous system.
Adds greater changeling code, but doesn't change the genome count yet on it. 
Renames registered to registered_name on IDs because bs12 had it and it seemed like a good idea to do last night.  For some reason.   
Adds an afterattack to mobs that can be used.  (In fairness, lots of shit in attack_hand should be in there instead, like stungloves and stuff, to minimize duplicated code)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3537 316c924e-a436-60f5-8080-3fe189b3f50e
2012-05-01 15:33:29 +00:00
VivianFoxfoot@gmail.com
12cec7801e Fixes a bug in the tensioner where it could runtime if no rounds had enough tension to be picked.
Comments out the wish granter after a demonstration by Kor.  Still, it could maybe be made into its own game mode, perhaps somewhat related to Ruby mode.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3439 316c924e-a436-60f5-8080-3fe189b3f50e
2012-04-12 03:21:10 +00:00
VivianFoxfoot@gmail.com
8978487548 Decreases the side of the tensioner warning
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3432 316c924e-a436-60f5-8080-3fe189b3f50e
2012-04-10 19:25:43 +00:00
VivianFoxfoot@gmail.com
c44df4b4c5 Makes the tensioner firing notice more visible to admins.
Adds a listing of the tension required for each mode to have a chance to fire at the bottom of the tensioner controls

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3408 316c924e-a436-60f5-8080-3fe189b3f50e
2012-04-08 00:43:43 +00:00
vageyenaman@gmail.com
f292079363 Bugfixes and stuff.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3394 316c924e-a436-60f5-8080-3fe189b3f50e
2012-04-02 23:39:53 +00:00
VivianFoxfoot@gmail.com
dd4a4a5b7f Minor fixes to the tensioner, changes to the borg deathsquad from 6->3 and fixes their cell
Changes changling unstun time to 45 from 25
Fix for the datumvars file which had spaces instead of tabs
Adds the starts of a rather robust erping system!  In time, we can make SS13 as realistic an ERP simulator as it is an atmos one.
Adds metadata support for clients, mostly to hold ERPing notes.  This is included in the savefile.
Adds code support for a parrot in!  Just needs a sprite
Bugfix to the 'resist' button, unless I don't understand how it works.  I don't see how it could have ever worked before.
Preferences are now attached to a mob



git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3386 316c924e-a436-60f5-8080-3fe189b3f50e
2012-04-01 15:27:21 +00:00
quartz235@gmail.com
902d9f6934 added a confirmation prompt to the borg deathsquad pc
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3385 316c924e-a436-60f5-8080-3fe189b3f50e
2012-04-01 11:21:12 +00:00
VivianFoxfoot@gmail.com
63e708de2a Minor fix to tensioner.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3375 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-30 06:31:41 +00:00
VivianFoxfoot@gmail.com
79b537ce5b Adds a dummy process() to /obj/machinery/door so that doors aren't removed from the machine list. Best guess, all machines call process automatically, and because doors didn't have an explicit one defined, they automatically called the one that removed them from the list.
Adds a borg deathsquad to the map.
Few more fixes to the tensioner.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3374 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-30 06:19:30 +00:00
VivianFoxfoot@gmail.com
646a468254 More checks added to tensioner.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3362 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-26 19:18:33 +00:00
VivianFoxfoot@gmail.com
4782ca36a4 Tensioner now requires a half an hour of round time before firing
Fix for the holodeck burn simulation cooling off over time.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3349 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-24 00:38:04 +00:00
VivianFoxfoot@gmail.com
fc83354e02 One last fix for this update
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3346 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-23 07:48:51 +00:00
VivianFoxfoot@gmail.com
45ef9c8235 Adds more debugging to the tensioner.
Adds another emagged version to the holodeck that has spess carp.
Fixes mobs going temporally bald after leaving the holodeck.
Disables BSA due to abuse.
Windows can only be damaged by weapons that do brute or burn

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3345 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-23 07:41:51 +00:00
VivianFoxfoot@gmail.com
e14671e234 Adds Halloss as a damage type weapons can do. Halloss can be healed by sleeping. Halloss now effects the interface more fully.
Adds a holodeck to fitness!  
Tensioner now respects antagonist preferences (Mmph.  More antagonist for me.)
More flailing attempts to fix the tensioner assigning braindead people.  (How?)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3341 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-23 04:39:38 +00:00
VivianFoxfoot@gmail.com
eb9dabf3c7 HUD damage indicator now updates with halloss
Inspecting yourself for organ damage now randomly shows damaged organs if you have halloss
Mining shuttle now shunts people where it wants to be
Shuttles now crush people if they fail to move out of where they want to be with the initial shunt.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3337 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-22 01:32:29 +00:00
VivianFoxfoot@gmail.com
99e888afca Halfs the rate at which tension is generated, decreases the chance per tick of the tensioner firing once sufficient tension is achieved, and increases the cooldown between automatic firings to minimum twenty minutes.
If anyone else wants to add in more things that raise/lower tension, like tracking number of ghosts/amount of damage/whatever, go ahead.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3316 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-17 01:17:51 +00:00
VivianFoxfoot@gmail.com
9a248b12f2 Minor mapfix to make the syndicate deathsquad's announcer actually audible to the team.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3315 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-17 01:00:11 +00:00
VivianFoxfoot@gmail.com
dd27131ce9 Adds a message to corpses that have had their ghosts leave the server/become something else
Readds the ablative vest's reflect chance at a considerably lower percentage
Fixes a bug where ghosts couldn't examine human bodies.  
Fixes a bug where tensioner-spawned deathsquads would be braindead.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3314 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-17 00:28:41 +00:00
VivianFoxfoot@gmail.com
bf061913c7 Adds an admin verb that fully sets up the singlo (for testing/debugging msotly)
Fixes the tensioner occasionally attempting to turn cyborgs into malf AIs.
Adds checks to space ninja during its objective creation.
Fixes that fucking message when you're carrying the disk in outer space
Nuke disk now respawns in all rounds.  
Adds the abiity to turn off the tensioner for the entire round.
Pinpointers now show the remaining time until a nuke goes off if it's been armed when examined
Nuclear bombs now have a minimum detonation time of one minute.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3312 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-16 22:20:50 +00:00
petethegoat@gmail.com
2c069f8a97 Commit for Nodrak.
See: http://nanotrasen.com/phpBB3/viewtopic.php?f=16&t=8107#p96230 for changelist.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3307 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-16 14:58:59 +00:00