Fixed husking and fatties
Fixed floor tiles still appearing in hand when laying them
Fixed a possible runtime with FAT people
Fixes for pre-existing bugs:
Fixed being unable to put belts & backpacks on other people
Tweaked the damage procs a bit. Mainly adding in sanity checks to prevent negative damage and such. A few optimisations here and there.
Fixed ratios for brute-burn damage being applied to organs simultaneously
nodamage==1 now prevents all organ damage. It does not stop healing however.
In-line with the sanity stuff mentioned above, clamp-values for brute/burn were removed as requested by Rockdtben
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3825 316c924e-a436-60f5-8080-3fe189b3f50e
update_clothing() has been broken up into it's key parts. A full explanation can be found in code/modules/mob/living/carbon/human/update_icons.dm
the tl;dr of it is that overlay updates are no longer called by the gameticker. Instead they are called by procs such as u_equip db_cick etc. This means faster updates (although admittedly, more of them can be called per tick). This however is offset by the fact that specific overlays can be updated now, vastly improving its efficiency. This will especially help when there are large numbers of dead mobs.
Fixed the throw code for TKgrab so it can be toggled.
Cloaking for aliens/humans/ninjas was changed. It's very crude at the moment and for that I apologise. But it works and is very efficient.It also stops cloaked individuals becomming invincible due to people being unable to hit them (even when they know exactly where they are)
Fixed a bunch of bugs with damage-overlays. They were updating FAR FAR to frequently. They were also horribly inefficient. They should now be virtually seamless when updating and only use cached icons, so they aren't affected by lag as badly. This may help with explosions lag a little.
There's still a tonne of stuff I need to refine with this. I'll be refining it down into some helper procs to reduce on code duplication and such
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3811 316c924e-a436-60f5-8080-3fe189b3f50e
- Added a 'time between ticks' status display for admins as well as this being calculated.
- Made the malf countdown take this into account. Now if you hacked 3 APCs, which means you'd normally have your points reduced by 0.5 per tick, you get it reduced by 0.5 * last_tick_duration
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3807 316c924e-a436-60f5-8080-3fe189b3f50e
- Fixed a bug with masks, which did not follow the equipment rules of the SLOT_MASK flag.
- Fixed a problem where monkeys could not equip a backpack.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3774 316c924e-a436-60f5-8080-3fe189b3f50e
Tidied up the Login and Logout procs for mobs. Moved the sandbox buildmode stuff to mob/living/login.dm so you shouldn't have to log-out and back in to enable build mode.
Removed the logged_in variable for mobs as it was the most pointless thing ever.
Made the multikeying checks a separate proc. People are checked the second they get a new_player mob. Its notices are also less spammy.
Changed AllowUpload from the default. It now restricts uploads of over 1Mb to prevent admins uploading massive .Oggs and lagging the server to hell whilst it sends the ogg to 40+ players. Feel free to change the limit.
Moved some of the core client procs into one folder; they should really be together and not in /modules/mob/mob.dm and various other places. I will be giving the client stuff a belated spring-clean over the next few commits, just got to iron out some of the kinks.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3694 316c924e-a436-60f5-8080-3fe189b3f50e
Rules verb moved to the interface to make it more visible (so new players may actually -read- it occasionally).
Minor changes to investigate singulo based on feedback. Entries are now timestamped and the "time \ref[src] (location)" bit is in a smaller font. Collectors note how much fuel they are loaded with.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3687 316c924e-a436-60f5-8080-3fe189b3f50e
type "memo" to access the memo features:
>write: write a memo
>show: shows memos from all admins
>delete: delete your own. (Game Masters may delete other admins' memos)
Typing "memo write" etc works too.
Feature can be disabled by defining ENABLE_MEMOS as 0
MOTD moved to new_player/Login so peole don't see that big motd everytime they DC
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3650 316c924e-a436-60f5-8080-3fe189b3f50e
- Destroying, damaging or emping the computer will now cause the holodeck to revert to its original state. Meaning this should help stop people taking eswords out of the holodeck.
The detective's gun renaming verb moved from the BYOND default 'you did not set a category' tab into the 'objects' tab
Mob.dm's stripping proc was a single very looooooooooooong line of code. It is now multiple lines of code.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3649 316c924e-a436-60f5-8080-3fe189b3f50e
Reverted dismemberment
- This is the majority of the files
Reverted the gun change
- You wont shoot yourself putting your gun away
- You don't have to fire off all of your shots before hitting someone with your gun
Reverted Tarajans
- As requested
Hotfix for the Holodeck.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3574 316c924e-a436-60f5-8080-3fe189b3f50e
There's like 1001 things to fix so some of this is somewhat crude for now.
new helper proc located in procs/helpers.dm
reject_bad_text(var/text)
just feed any text in and it will either return the original text or null (if it contains odd characters such as \ / < > or characters reserved by BYOND. It also rejects if there are no non-whitespace characters)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3571 316c924e-a436-60f5-8080-3fe189b3f50e
Regenerate admin verb now restores limbs/lost blood
Fixes power_loss proc to actually respect the electrical channel something is on.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3539 316c924e-a436-60f5-8080-3fe189b3f50e
Fixed deaths at the end of nuke rounds, optimised the code a little
gib() is now hgib() (ie it's specific to humans). gibs.dm() now only spawns generic gibs that could be from any mob.
Likewise for dust.
Awaiting generic dust() and gib() animations.
Fixed (hopefully, depends if firewalls block this method) getruntimelog.
GameMasters no longer have the getruntimelog verb. Instead they have .giverutimelog . This allows them to grant a specific client access to the server's runtime logs. (they can grant themself access this way too). NOTE: runtime logs can be used to meta, only grant access to coders or people you trust. It may also be wise to ensure they do not play in the current round.
Introducing .getserverlog . It allows any admin above moderator to access ANY archived server/attack logs. Should mkae processing forum ban requests a lot easier since all admins with ban capabilities now have access.
getruntimelog renamed to .getruntimelog . File-request spam prevention increased to 60seconds to discourage access serverlogs too much! They can reach sizes of 4Mb sometimes so please be responsible with them admins.
runtime logs should now be saved to /data/logs/runtime/ (you may have to create this folder yourself)
ummm... fixed gibs appearing below shuttle turfs. Trimmed some uneeded fluff text from the logs.
PHEW
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3509 316c924e-a436-60f5-8080-3fe189b3f50e
Adds a (disabled) framework for making people drop where they're stunned without waiting for the next tick
Shuffles sleeping and resting, making them cause effects of their own rather than just relying on 2 ticks of paralysis or whatever.
You now stand up before being able to move again (called in canmove)
Reduces slip chance from 50 to 0 when knocked out (more in line with the comments in the code, and it just makes more sense)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3503 316c924e-a436-60f5-8080-3fe189b3f50e
TODO: I was intending to use dust to kill players off on a nuclear-loss. However dust() is very very broken. So I've hardcoded everything to die until I can fix dust().
Added an adminverb for 'Game Master's. It was a debug verb so I could test cinematics but I've left it in as it might be handy for events, especially if we get more cinematics. To access it type "cinematic" in full into the input bar as a Game Master, then follow the prompts. At the moment, it only handles nuclear stuff (that's all there is anyway). You can choose where the nuke detonated 0= on station; 1= near station but in space; 2= off the z-level. You can also force a cinematic from another game-mode to play with the prompt after that one.
Note: All mobs are buckled to a bed located inside the gameticker (odd I know) whilst a cinematic is playing. The bed is deleted afterwards releasing all players. If off_station=0 then all mobs will be killed too. This is to stop people running around and doing stuff during the cinematic. I really didn't want to add more variables/checks to mobs.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3481 316c924e-a436-60f5-8080-3fe189b3f50e
- "Mapping debug" verb renamed to "Debug verbs"
- assume direct control, jump to dead group, startup singulo verbs removed from admins. You can enable them by calling the verb 'debug verbs'. 'debug verbs' remains game-master only, as it is just for debugging stuff. For a non-game master to use the 'assume direct control' verb, they have to use view variables - it was added to the drop-down.
Some procs were moved around. Please code things in the locations which make sense! If you are making a verb for /mob/living, then don't put it in mob.dm, put it in mob/living.dm. Thanks.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3461 316c924e-a436-60f5-8080-3fe189b3f50e
AdminHelps are now client verbs rather than mob verbs. Which means adminhelp can be called from cmd_admin_pm when an admin disconnects or something. This will stop non-admins getting the message "Client not found" (read as: license to grieffe) when an admin disconnects for whatever reason.
Moved AdminPM stuff to adminpm.dm
Fixed some run-times in posters and fixed posters eternally having the laying poster icon_state(whatever it was called) when something went awry.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3456 316c924e-a436-60f5-8080-3fe189b3f50e
Commented out the authentication system. It was the remnants of the old goon authentication stuff (or maybe even older) and wasn't actually used in our code at all (at least not in any useful way, it was merely called and short-circuited to 1, so all those if(authenticated) were totally pointless. This has removed 3 unused variables from every client, a bunch of unused variables from the config and two empty text files!
Committed (as a config option) a feature requested by Apoc station. It causes a 'reply to' window to popup when an admin PMs a non-admin player. It's meant to grab their attention so they can't say "I didn't see your PM". It defaults to off. To turn it on just uncomment the #POPUP_ADMIN_PM line in config/config.txt
Fixed a derp in isday where it was fetching the month instead of the day.
Removed medal references from Gib()
Removed the medal_hub global variables because they aren't used in any way shape or form.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3444 316c924e-a436-60f5-8080-3fe189b3f50e
Temp-fix for mob/say.dm It's being sent null from Tcomms, so I'll leave it to somebody with experience with that.
Fix for items bein in your inventory and on the floor
Fix to stop people pulling themselves and causing runtimes (lol)
Fixes a bunch of stuff in the flash code. EMPs will now cause flashes to flash their holder. They don't runtime when flashing cadavers. They don't runtime when being EMPed. They will (hopefully) rev those select few buggy people who weren't getting reved previously. (I can't fix that totally without playing with a bunch of mind stuff)
Fix for throwing nothing. :P
Fix for removing tanks that don't exist from transfer valves.
ummm...I think that's it
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3441 316c924e-a436-60f5-8080-3fe189b3f50e
runtime error: Cannot modify null.layer. proc name: done (/obj/effect/equip_e/human/done) usr: Ramona Fawkes (/mob/living/carbon/human) src: the human (/obj/effect/equip_e/human)
call stack: the human (/obj/effect/equip_e/human): done() the human (/obj/effect/equip_e/human): process()
runtime error: Cannot execute null.use(). proc name: attackby (/obj/structure/barricade/wooden/attackby) usr: Jeffery Long (/mob/living/carbon/human) src: the wooden barricade (/obj/structure/barricade/wooden) call stack: the wooden barricade (/obj/structure/barricade/wooden): attackby(null, Jeffery Long (/mob/living/carbon/human)) the wooden barricade (/obj/structure/barricade/wooden): DblClick(the floor (159,129,1) (/turf/simulated/floor), "mapwindow.map", "icon-x=15;icon-y=12;left=1;scr...")
Rewrote wielded weapons to be their own weapon subclass. There was no point having a var/wielded var/twohanded var/force_unwielded var/force_wielded for every damn item when there is only 1 wield-able weapon anyway. All the wield-able stuff is now in twohanded.dm
Changed the adminhelpsound to some creative commons sound I pinched. Until somebody can get a better one. I'm sick of MAAAAAAAAOOOOOOW.
All PMs trigger the adminhelp sound. That means when you OM a player they get the sound, if a admin is PMed they only hear it if their adminhelp sounds are enabled. This should allow people to get eachother's attention when t he chat is busy.
Fixed some bad code with poddoors (which is used for the shutters in QM)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3435 316c924e-a436-60f5-8080-3fe189b3f50e
Modifies do_after to something that fires a lot less, and is hopefully more robust against infinite loops. It is now theoretically possible to run around and then come back to the same place and have it complete, but that's only really valid for extremely long times (like handcuff removal) and if you get lucky and dodge one of the timed checks.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3421 316c924e-a436-60f5-8080-3fe189b3f50e
Adds a borg reset upgrade that can revive a dead borg, valued at roughly half the cost of a new borg body.
The world restart when everyone dies will no longer fire if someone else is revived during the 30 seconds.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3420 316c924e-a436-60f5-8080-3fe189b3f50e
Ghosts no longer hear emotes from across the map.
You can once again examine yourself.
Buildmode is back in because it is a very useful and great tool.
It is also an ADMIN TOOL and will cause runtimes like most of the other admin tools if you use it like shit.
Removed more erp bullshit
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3417 316c924e-a436-60f5-8080-3fe189b3f50e
Converts the metadata system into its own thing
Makes ghost_ears hear emotes as well as a test.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3392 316c924e-a436-60f5-8080-3fe189b3f50e
Merged the Admin-PM verb and the PM stuff in Topic() as it was 99% the same code anyway.
Admin to Admin PMs are no longer annoying and LOUD: "-- ADMIN PRIVATE MESSAGE --"
All Admin PM messages to non-admins are now 'LOUD'.
Admin-PM verb is now sorted by Mob rather than client as per request
Can again PM mobs by right clicking them.
Apologies for totally missing the last 2 things on my last commit :S
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3381 316c924e-a436-60f5-8080-3fe189b3f50e
Fixes Issue 424 (it was some code in turrets.dm which was setting all the turret controls in the lobby area to off...for no raisin.)
Admins can now PM people in the lobby
Admin-PM verb now uses clients instead of mobs
Removed a vulnerability in the PM system that allowed unauthorised access to a select few admin-tools.
Text changes in examine verbs for monkeys and humans (typos)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3366 316c924e-a436-60f5-8080-3fe189b3f50e
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
Added some stylesheet classes. Approved by Urist. If you're adding game text, please use the class that best describes the text. This way all the text formatting can be edited from the stylesheet rather than traipsing through the code like I am.
Cyborg names reflect their module choice.
Cyborgs can no longer drop their module-items on conveyor belts.
Please remember to add the line: gender = PLURAL to any new item defines if the item is plural, ie metal rods and such.
Much more to come. ;-; Just need to check them and merge... why did I start climbing this mountain?
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3232 316c924e-a436-60f5-8080-3fe189b3f50e
Disposals no longer indiscriminately let items land inside it - the items have to have been thrown by someone.
The ongoing attempt to fix the thousands of runtimes plaguing the game.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3195 316c924e-a436-60f5-8080-3fe189b3f50e
Added Nodrak's Jump to Mob verb.
Added Sieve's lantern fix. Commented out the silicate recipe.
Added Skaer's sec cartridge box to the armoury.
Moved the check_if_buckled() proc to mob/living, rather than having it repeated.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3168 316c924e-a436-60f5-8080-3fe189b3f50e
- Made the player-side admin pm message more visible and obnoxious. Some players might find it annoying but at least it will not leave much room to complain about "missing PM-s"
Screenshot:
http://www.kamletos.si/admin%20message%20format.PNG
- Fixed that awkward X in asay messages, which moved whatever mob you were in to the location of the person who said the message. Replaced it with JMP, which does the same as the JMP in adminhelps - makes a ghost and moves that ghost to the location:
Screenshot:
http://www.kamletos.si/admin%20say.PNG
- Ghosts which find themselves locked in any form of container (closets most commonly) will now (FINALLY) exit the container (and it is any container!) after they click one of the arrow keys.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3121 316c924e-a436-60f5-8080-3fe189b3f50e
- Added feedback gathering for radio, rc and pda message use. (Only the number of messages sent is recorded)
- Generalized the 'round_end' time feedback logging into a proc that now also handles the radio/pda/rc processing at round end. ( blackbox.round_end_data_gathering(), where blackbox is the blackbox recorder object. )
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3111 316c924e-a436-60f5-8080-3fe189b3f50e
- Added Exosuit Nuclear Reactor
- Added Ripley construction steps sprites (courtesy of WJohnston)
- Exosuit Sleeper can now inject occupant with reagents taken from Syringe Gun
- Exosuit Cable Layer will now auto-dismantle floors
- Exosuit Heavy Lazer cooldown increased, Scattershot now fires medium calibre ammo (less damage)
- EMP now drains half of current exosuit cell charge, not half of maximum charge.
- Exosuit wreckage can be pulled
- Fixed several possible exosuit equipment runtimes
- Moved all mecha-related icons to icons/mecha
- Mecha equipment messages will show equipment icons in chat window
- Fixed mecha creation reports being sent at wrong construction step
- Played with changelog markup. For some reason javascript is extremely slow in byond browser, I'll look into it.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3057 316c924e-a436-60f5-8080-3fe189b3f50e
The singularity is now able to eat things like signs and chameleon projectors' projections.
A few other misc runtime fixes.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2916 316c924e-a436-60f5-8080-3fe189b3f50e
The nuke now properly checks to see if its on the station when it explodes and most of the derp var has been removed from the bomb code.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2913 316c924e-a436-60f5-8080-3fe189b3f50e
Xenos are immune to stunning and weakening. This basically means you cannot run up to a xeno and shoot them with a taser and game over. This makes them a lot more dangerous. To compensate, I've added in a xeno-exclusive variable controlling movement delay addition. When a xeno is stunned, its movement speed goes down. The speed is recovered in the life() proc.
Modifications to critter.dmi (manhacks). Added a new lighting icon, floor lights. Possible implementation later.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2886 316c924e-a436-60f5-8080-3fe189b3f50e
added a 2 minute countdown var to humans/monkeys that resets when move() is called (for an actual fix to the cuffbreak bug)
changed a typo in security levels
committed a gib animation fix for Sieve (todo: make custom gib animations for simple_animals/metroids)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2750 316c924e-a436-60f5-8080-3fe189b3f50e
- The player panel now has a Compelte mute option, which mutes everything including adminhelps and admin pm-s.
- A person who is muted will now be informed he is whenever they try to speak/OOC/etc.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2391 316c924e-a436-60f5-8080-3fe189b3f50e
◦ Some head gear (nurse masks, kitty ears...) no longer block CPR. (Issue 167)
◦ DNA Scanners no longer attempt to empty their contents whenever something enters them. This fixes the issue with constructed scanners puking out the circuitry they were made with. (Issue 169)
◦ You can longer /me emote when you've been paralyzed by Zombie Powder. (Issue 168)
◦ Fixed some problems with MMIs / Robots / pAIs being able to understand eachother.
◦ You can put items, that are not clothing/under or clothing/suit, on food trays. How it works is it loops through all acceptable items in the location and adds them to its overlays and a special list variable. I had to change the way mob/drop_item() works a bit. Trays have a maximum capacity, and items of a larger w_class take up more capacity.
◦ Slippery items like banana peels and soap have been nerfed significantly.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2335 316c924e-a436-60f5-8080-3fe189b3f50e
Moved into their own folder and got split into three files.
Damage zones have been regrouped slightly to make it easier to deal with them. Currently the organ groups are head, l/r leg, l/r arm, and head.
Attacking:
Armor is properly checked.
Currently aiming for the chest gives a higher chance to stun whereas the head will stun for longer.
Stungloves/Disarm now show up in the attack log.
Stungloves ignore intent.
Silicon:
AI units can now move between cams that are not on the ss13 network.
Cyborg's alert screen should not longer pop up every time they get an alert if they have opened it once during the round.
Robot vision now uses the standard amount of energy.
Gamemodes:
Added Deuryn's unrev message.
Runes can only be examined if you are close to them.
Moved the Loyalty implants to the HoS' locker at the request of HerpA.
Nuke agents now come with explosive implants that will activate upon death.
Projectiles:
Once again went though the gun code and cleaned things up, it is much better now.
Bullet_act fixed up and most mobs now use the one in living, just overload it if they need to do something diff.
Freeze /caplaser/xbow no longer have an infinite loop.
Shotguns have to be pumped manually.
Went though the latest runtime log.
Power cells now use return on their give/use procs
Assemblies have been reworked and are nearly finished, just need to finish up the special assembly code, redo the signalers, and add one or two new assembly items.
Laying down will now only take 3 ticks to get up, from 5.
You can no longer punch people on the spawn screen.
This is a big one and was cleared by two heads, TK will only allow you to pick up items. If you have an item in your hand it will act normal.
This revision got much larger than originally intended my tests show everything is working fine, but you never know. Ill likely do more mob teaks in the next few days.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2333 316c924e-a436-60f5-8080-3fe189b3f50e
/obj/effects is now /obj/effect.
/obj/station_objects is now /obj/structure.
Did a bit of minor blob work.
The Bay 12 body bags were replaced with closets because having two sets of code that do almost the same thing is silly.
Changed back a few of the last jobproc edits as the remove from list before assign was a check to see if the mob was fucked up and if it was remove it so we did not check it again as it would still be fucked up.
The medbay/tox monkeys names are random once more. More random name monkeys will help with changeling and clean up the observe/mob menus.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2324 316c924e-a436-60f5-8080-3fe189b3f50e