Commit Graph

39 Commits

Author SHA1 Message Date
Cadyn
00bc513e6e Implementing TGSQL security 2021-01-27 10:51:12 -08:00
Cadyn
76ed115e37 Porting TG's SQL 2021-01-25 23:37:49 -08:00
ShadowLarkens
aea68811f6 TGUI Request Console (and Fix TGUI verb) 2020-08-16 22:27:08 -07:00
Aronai Sieyes
09074eaabb Alter playsound paradigm 2020-05-18 23:42:15 -04:00
Aronai Sieyes
6ebd249748 Rewrite examine() to pass a list around 2020-04-29 16:42:50 -04:00
Atermonera
cbb40196fc Machinery: Always use update_use_power() 2020-03-23 23:21:10 -04:00
Arokha Sieyes
1d9e5be122 Replace \image macro with bicon() 2020-02-19 19:55:01 -05:00
Arokha Sieyes
47ccc655db Deprecate the stream operator 2020-02-12 19:38:43 -05:00
Atermonera
9b93339969 Moar descriptions for things 2020-01-20 22:50:39 -05:00
Neerti
fe0b7373b3 Ports TGstation view variables + admin proccall guards, and all the baggage that comes with it 2019-03-27 14:49:30 -04:00
Woodratt
ed9395e58f SC Stupid Sized Map Update
Or how Woodrat spent too long on something that was supposed to be simple.

- Addition of a Explorer Radio Channel and headsets.
- Explorers and Search and Rescue job slots added
- Adjustments to the pilot job including getting rid of the flatcap
- Map fixes, adjustments, (including signs pointing to cryo) planetside side map additions splitting up of the wilderness into two area sections
- Disabled lighting on the arrivals shuttle area once it is docked with the station, should help with the whole issue of lighting bugging out and having dark space
- Fixed EMS jacket missing icons
- Fixed Research signs being missing for some reason, addition of directional signs for cryo
- Addition of a Search and Rescue Winter coat
- Probably a dozen other small bug fixes I forgot, and bug additions

Tested, seems fine. At least in short tests.
2017-12-24 07:04:34 -08:00
Cameron653
97957fcaee Replaces more macros. (#3647)
* MORE MACRO CHANGES

AHHHHHHHHHHHHHHHHHHHH

* Fixes a few typos

* Fixes compile error

* Fixes for real

* 4 macros left that I can't find
2017-07-27 21:12:21 -05:00
Anewbe
88b0c6086e Antag Radio changes 2017-03-25 14:19:57 -05:00
Techhead0
b22afe6a59 Request Console NanoUI and fixes
Converts Request Console UI into NanoUI.
Fixes icon state not changing for normal priority messages.
Fixes consoles being partially operational while broken/unpowered.
Removes code for EXTREME priority messages.
2015-06-11 21:43:27 -04:00
Techhead0
0195c179ff Request Console cleanup.
Changes screen and departmentType to use defines and bitflags instead of magic numbers.
Moves code from the message sender to send_rc_message().
One console's destruction no longer prevents the entire department from receiving messages.
2015-06-03 22:38:04 -04:00
PsiOmega
1ae0ad6d92 Updates the atom_pool, now datum_pool, to handle any datum object.
Makes the garbage collector similarly robust. Continues the whole Destroy/qdel porting.
2015-04-24 09:59:05 +02:00
PsiOmega
4ecc058150 Service personnel get their own radio frequency
Bartenders, chefs, and janitors now have their own service frequency and corresponding headset.
The HoP is listening to this channel by default.
Creates a proper locker for the chef's extra gear.
2014-11-07 20:54:57 +01:00
PsiOmega
fe126626ac Cleans up radio frequency numbers.
Replaces magic numbers across the code base with proper constants.
Prepares for the ability to have more than one antag channel in the future.
Corrects a lie.
2014-09-18 13:07:34 +02:00
UristMcKerman
e37a70089b Tweaks for spam #2
Added brackets surrounding tokens to make whitespace and empty tokens
removable.
Slightly modified ion storm behavior.
Increased duration required to stop spam to 5 minutes.
Added ability to expand spam filter limit with installation of message
monitor circuits.
People will see why their message been discarded.
Discarded messages will be highlighted with red color in message log.
2014-05-29 16:05:00 +04:00
UristMcKerman
c78605b1a4 Tweaks for spam
Added non-randomized example tokens at start. Added filter limitation.
Ion storm will replace tokens with garbage. Spam disaster lasts longer
and is more severe.
2014-05-29 00:31:02 +04:00
UristMcKerman
0a0ce28f68 Added spam filter
Added spam filter functionality to message server and message server
monitor.
2014-05-28 17:12:18 +04:00
Spamcat
10ee1fbcfe World loops 2: Electric Boogaloo. 2013-07-01 19:43:56 +04: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
4d9876fd65 Fixes issues with pen bbcode. Replacetext did not work correctly after I changed text2list - (It was missing 'needles' at the beginning of 'haystacks').
>dd_replacetext and dd_replacetext_case are now replacetext and replacetextEx respectively.
>replacetext and replacetextEx works using strings only; it doesn't convert it into a list and then back into a string.

Fixes some dumb-dumbs in textlist and text2listEx
> "<" where there should be a "<="
> no else case for when the separator is longer than the text (causing empty lists to be returned)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4971 316c924e-a436-60f5-8080-3fe189b3f50e
2012-10-27 21:21:17 +00:00
elly1989@rocketmail.com
73e5c38a56 Preparations for reducing the number of processing machines at round-start. There are currently 8000 or so at round start, this was already pruned to 2800ish by doohl's stuff.
machine.process() now uses a return value to remove itself from the processing machines list. This is more efficient and will help reduce costs especially at round start where some 5000+ machines were removed from the list using first-find. Now there is no searching involved. Instead of machines.Remove(src) just do .=PROCESS_KILL that will return the flag to the proc which called it (the MC) and trigger its removal from the list. If you're deleting something don't even bother removing it from the machines list, there is no need to.

Simplified the last_processed stuff for the MC. It's now a single variable rather than 3. It is simply a typepath rather than a reference to an object (this is so it works even if said object is deleted)

MC stats in admin status_panels now show the length of the processing lists (indicated by #). I've just realised I forgot to mention what the abbreviations are:
The less obvious ones are: Dis=diseases; Net=pipes; Pnet=powernets; Mch=Machines; Tick=the game-mode ticker.

Beach-water now uses an overlay image rather than a separate object.

Fixed a typo in the shuttle console.

Hydroponics trays no longer use first-find within their process() for checking the plant is in the tray (why is that even there anyway? talk about lazy)

Removed some junk/placeholder procs like organ/proc/process() return

Removed newscasters from the processing machines lists.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4603 316c924e-a436-60f5-8080-3fe189b3f50e
2012-09-02 20:32:01 +00:00
baloh.matevz
e6f7615342 - Standardized the code in code/modules/research
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4243 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-31 06:01:55 +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
vageyenaman@gmail.com
449610bee2 Committing a patch for Giacom. See details here:
http://nanotrasen.com/phpBB3/viewtopic.php?f=16&t=9018

Also some very small metroid changes to make them more balanced and less KILL KILL KILL.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3839 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-16 06:11:14 +00:00
petethegoat@gmail.com
524c2ae6a9 Comitting for Giacom.
Details here: http://nanotrasen.com/phpBB3/viewtopic.php?f=16&t=8960

And, to summarise:
Added a new computer, the message monitor console. It is able to access the logs on the message server.
Made PDAs dependant on the message server instead of Telecomms. This fixes PDAs not sending any messages due to no listening_freqs.

When paper is splashed with Ethanol, the contents of the paper or book disappear.
Added white coloured pens. Allows you to write hidden messages that can be revealed by highlighting the text.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3777 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-09 22:14:09 +00:00
petethegoat@gmail.com
72c72c47d3 Sieve stuff, this is a stupidly big commit, I'm sorry, I really am.
Full details in this thread:
http://nanotrasen.com/phpBB3/viewtopic.php?f=16&t=8898
And a summary of the most important bits:
-Door animations no longer desync and do the open-close-open thing. That's been around so long most people don't even notice
-Welding tools no longer get their icons desynced
-Fixed unpowered mineral door runtimes
-Chemistry machines now require power to run
-Fixed the proc to apply radiation based on armor, which means that you can actually not die of radiation as quickly if you wear armor that protects against radiation
--By fixing this, it also fixed the singularity, so you might want to be careful next time you run by it naked
--Also means that radiation events take armor into account. How great
-Hopefully have a bugfix to prevent borgs from using lag to enter the game without an AI or laws, but I cannot test it myself other than that it didn't break anything
-Disposal sound can only play once every couple of ticks, so no more ear-rape by disposals!
-Lasertag guns can no longer be used to make lasergun turrets
-Cleaned up stray pixels on several doors and the lasertag guns

-Reworked how falsewalls work, now whenever you attack them with certain tools (drills, welders, etc...) it instantly turns them into a wall and pushes the attackby(), meaning you might not even notice that you just drilled down a falsewall, and at the very least they are much more fitting
-Omni-directional PA console! Never have to worry about rotating that fucking computer again, because now it does it itself!
-The Marisa robe that spawns in the theater no longer protects like armor
-Tweaked coefficient list for fake insulated gloves (misplaced punctuation messed up the list a tad)
-Moved falsewalls out of 'transfer_valve.dm' and into 'structures.dm'
-Tweaked smoothwalls so it only connects walls with like minerals (only seen effect is on the new walls)
--Also added appropriate signs to areas
-Reworked portable turrets to be a lot less laggy, now they determine the projectile type once, then save it so they don't have to go through else if chains every time they fire
-Added many sprites from WJohnston, but many are not fully implemented (Mostly floor ones)
-Added a vending machine for engineering, the Engivend. Apparently it was needed because of the lack of availability of the Autolathe or whatever.
-Added WJohnston's Dark Gygax sprites, then made a Death Squad Gygax out of them. A bit tougher than the standard Gygax, improved battery, and is pre-fit with gear, ideally for 'hit and run' tactics
-New Odysseus construction sprites, also removed the Odysseus Carapace in favor of plasteel like the Ripley, meaning they in terms of construction, a Ripley is equivalent to an Odysseus 
-Added an 'is_hot()' proc, when called it returns the temperature of the item in K, while taking into account things like whether or not the item is active or whatever
-Rewrote the Experimental Welding Tool, now instead of having a super-sized tank, it uses super-concentrated plasma that is turned into gas inside of it as its fuel source. Meaning, it will never have to be refilled, but it takes time for it to fill itself
-Added WJ's firelight sprites and code. Wanted to use them, but haven't had a chance to really implement them, but still, they're there

-Turrets made with lasertag guns now fire their respective team's bolt
-The turrets also automatically target anyone on the opposing team (But will continue to shoot at anyone, for shits n' giggles)
-Turrets get corresponding sprites based on team
-Shooting a turret with a different team's laser will disable it for 10 seconds
-You can also make ED-209's for your lasertag games/pissing off sec
-These are constructed just like a regular ED, but instead of a security vest and taser, it requires a lasertag vest and gun (same colors)
-When geared for lasertag, They will not arrest anyone nor melee them, only patrol (if set) and shoot
-They have their color schemes as well, and can be disabled just like turrets
-For both turrets and EDs, when geared for lasertag, they will not shoot anyone on the ground, this was due to very quickly learning how fucking OP that was for 1 turret to stunlock 3 people for eternity
-And when they are geared for lasertag, both the turrets and EDs have their access changed to maint, clown, and mime (This will not stop any of them from being shot, however)
-As a side note, you can also make lasertag stationary turrets for any map-related things

-Now walls are based on a plating system, meaning all walls have a girder with a mineral plating on top of it.
-As of right now, usable minerals are Silver, Gold, Diamond, Uranium, Plasma, and Sandstone (Lacking sprites for wood, *cough*)
-This also carries over to falsewalls, so you can make falsewalls out of any of those minerals
-Also, this carries over to powered doors, meaning you can construct useful doors out of minerals, so you could have actual diamond forts with doors requiring access to get in or whatever
-All of these are standardized, and for the most part work just like regular walls, meaning if you start slicing a wall, it will drop the mineral, or if you drill it, or whatever
-What was mentioned with the smoothwall tweak above, only walls of the same mineral will connect, so it all looks very nice
-Doors and walls made of uranium emit radiation when interacted with, with walls causing a 'ripple' effect, so the more walls nearby, the more radiation you get hit with
-Doors and walls made of plasma burn. It's a short, quick burn, but can easily be compounded in large structures
--As a note on plasma walls, I cannot get atmos and plasma walls to play nice (Since they are airless turfs), so I can't actually get them to ignite based on air temperature, but when they do ignite, they will auto-magically ignite nearby plasma walls, with a reduced temperature, meaning that if you want a massive chain reaction over a huge area, you better use something a bit hotter than a lighter
--Also, when plasma walls burn, they simply leave behind a girder, while doors leave assemblies
-Lastly, for nearly any kind of destructive action, Diamond walls are much more resilient, meaning they will take twice as long to be destroyed, and are immune to the effects of thermite
(Also, sprites for plasma walls and uranium walls are shite right now, waiting for replacements)
Update:
-Added cult walls as a 'mineral wall', meaning they will work on the same system and 'ReplaceWithMineralWall("cult")' will change any turf into a cult wall, hopefully for some cult-related activities soon

R&D stuff:
-Now instead of 1 sheet or ALL OF THE SHEETS, you enter a number as to how many sheets you want (it's sanitized to hell as well)
-Minerals no longer multiply when inside RnD machines. (Who fucked that one up? Goddamn)
-Mech fabricators are both deconstructable, and putting higher level parts actually improve it, each 'Tier' up is equivalent to +1 tech levels for that, so a High Powered Micro Laser would give the same bonus as +1 Material Research, a Pico Manipulator would give the same bonus as +2 Engineering, etc
-Complete with a shitty opened Mech Fab sprite!
-And not shitty overlays so autolathe's animate the material that is put in them, rather than give everything that's not glass the metal animation

LOL THE JOKES ON YOU I JUST COPY PASTED HIS TOPIC

added a few svn ignores, for thumbs.db and maps/backup

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3751 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-06 19:45:03 +00:00
VivianFoxfoot@gmail.com
b97447781a PDA messages now require an active messaging server.
The admin rejuvenate command now stabilizes body temperature as well.  

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3282 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-13 05:12:21 +00:00
baloh.matevz
a07cd4220d - Replaced a few more conveyor switches with the one-way conveyor switch.
- 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
2012-02-12 14:56:19 +00:00
baloh.matevz
ed973eadf0 - Added instructions on how to use the pretty markup to the changelog
- Added a few red corner floor pieces to security
- Added a Del() proc to blackbox recorders which makes it so a new blackbox recorder gets made when the one is deleted and all the data is copied over, so no data is lost. Same applies when the new one gets deleted. The new blackbox is spawned on z-level 2, so at centcom on the coordinates X,Y,Z = 1,1,2

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3084 316c924e-a436-60f5-8080-3fe189b3f50e
2012-02-11 05:12:42 +00:00
baloh.matevz
e2a8a5e8bb added a proc for feedback feedback_add_details(var/variable,var/details)
This adds the contents of the details variable at the end of the variable, which is defined in the variable variable. You know this last line makes perfect sense.

It also adds a space between what is already in details and what you're adding.

in effect it's a 

s += " content"

Added an autogibber. If you bump into it from the right end, it gibs you.

Added an exit into space at engineering, by the escape pod.
- External airlocks require engineering + external access
- pod airlocks don't require any access

Added an exit into space at the pod in security
- External airlocks require security + external access


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2698 316c924e-a436-60f5-8080-3fe189b3f50e
2011-12-16 09:40:14 +00:00
baloh.matevz
052fc235af The feedback database now stores world.internet_address instead of world.address.
world.address is the local world address, which is in many cases your router. internet_address on the other hand is the IP you use to connect, which is what I want.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2468 316c924e-a436-60f5-8080-3fe189b3f50e
2011-11-01 01:46:27 +00:00
baloh.matevz
6b452ac175 Added Sanitized message server input for some injection safety...
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2458 316c924e-a436-60f5-8080-3fe189b3f50e
2011-10-30 18:57:25 +00:00
baloh.matevz
830b28dc7f - Feedback gathering thing updated. Now it finally supports actual SQL data storage.
Use the global procs to gather feedback:

feedback_set(var_name, num)
feedback_inc(var_name, num)
feedback_dec(var_name, num)
feedback_set_details(var_name, text)

The values are saved to the database at the end of the round, if it ends properly.

Currently the following information is stored:
- Time when round starts
- Mode
- Time when round ends

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2450 316c924e-a436-60f5-8080-3fe189b3f50e
2011-10-30 04:31:49 +00:00
baloh.matevz
e6aa3fc0b1 My very own feedback gathering system! The blackbox can now gather feedback via the feedback_set(var_name,amt), feedback_inc(var_name,amt) and feedback_dec(var_name,amt) procs.
The way feedback is gathered is that the three procs are placed in code where feedback is wanted, these in turn set variables in the blackbox (Yes, I could have done it in an out-of-world datum or object, but I just prefer having an actual physical object gather this stuff.) At the end of the round, all acquired data is saved to a database. I still need to get ahold of TLE to make the required tables and bugtest some things.

The saving proc exsists, but is not yet called due to the lack for a table to save to. The rest of it should work fine tho, so you can place the feedbac_set, _inc and _dec procs around code and see what they provide via view variables, it just won't save it to the database yet.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2092 316c924e-a436-60f5-8080-3fe189b3f50e
2011-09-03 01:00:01 +00:00
mport2004@gmail.com
2224916ab9 Just some general cleanup
Moved the spacecraft folder into the unused section, moved syndiebeacon into machinery.
Research moved into Modules.
Virus2 moved into WIP - is anyone even working on this, it looks almost done?
Computer2,optics,pda2,experimental moved unto unused.
WIP Chemistry things moved into Chemical Module
Cameras.dm moved into weapons
GameKit.dm moved into unused
BrokenInHands.dm moved into unused
Removed Grillify.dm
Moved all of the files listed as unused in the mining module to unused
Removed several empty folders in modules
Moved cloning.dm into machinery
Moved NewBan.dm into admin
Changed humanoid aliens new_life.dm into life.dm
Moved beast mob into unused
Moved hivebot into unused
Moved carpedexplosion.dm into unused
Moved ai_lockdown.dm verb into unused and removed it from the AIs verb list as it didn't actually do anything.
Removed mastercontroler2.dm
Moved savefile.dm from human to new_player

Bugfix
People spawning on the starting screen on rev/cult should be fixed.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1964 316c924e-a436-60f5-8080-3fe189b3f50e
2011-07-31 21:31:00 +00:00