Commit Graph

1806 Commits

Author SHA1 Message Date
Remie Richards 473bcd1858 Ports Drones from NTstation + New Improvements/Features 2014-09-13 15:02:57 +01:00
Cheridan cd34be6151 Merge pull request #4521 from Incoming5643/summonevents
Magic Mania $1.75: Summon events
2014-09-07 22:34:26 -05:00
Cheridan 866dbb7959 Merge pull request #4634 from Carn/timSort
TimSort for byond
2014-09-07 19:52:02 -05:00
Cheridan 6bde58d70d Merge pull request #4702 from Miauw62/sleepen
Balance changes to the sleepy pen.
2014-09-07 10:38:00 -05:00
Alex 8f81a0e766 Merge pull request #4709 from Lo6a4evskiy/2014-08-15-Welding-stuff
Removed unnecessary messages when welding
2014-09-07 15:08:01 +01:00
Alex 368b8b199b Merge pull request #4682 from Menshin/reagents_consumption_fix
Fixes reagents extra consumption + some cleanup
2014-09-06 19:05:42 +01:00
Alex 62a7596270 Merge pull request #4686 from Miauw62/idfix
Worn ID won't display on station-bounced broadcasts.
2014-09-06 19:04:59 +01:00
Firecage aab99e8825 Fixes what Miauw said 2014-09-06 15:19:58 +02:00
Lo6a4evskiy 82f869c9a6 Updated to resolve conflicts 2014-09-06 13:34:43 +04:00
Miauw 7c97447d24 Balance changes to the sleepypen. 2014-09-05 18:24:25 +02:00
Firecage c6a386a13a Conflict fix 2014-09-05 09:51:25 +02:00
Miauw 64c95a2fae Worn ID won't display on station-bounced broadcasts. Fixed #4650 2014-09-03 20:30:40 +02:00
Menshin 6c7ff25568 *fixes reagents consuming extra units each ticks (#4608)
*removed the inexistent reagent/plasma subtype of hellwater
*hitting someone with unholy water in body with the bible now turns the unholy water in holy water instead of space cleaner
2014-09-03 09:47:47 +02:00
Firecage 38beaaf75c Updates 2014-09-02 01:24:54 +02:00
Firecage 7eddda88d0 Merge branch 'master' of https://github.com/tgstation/-tg-station.git into mineralfloors 2014-09-01 23:53:41 +02:00
carnie 05b76b123e TimSort for byond:
RESULTS:
sorting 10 random lists of length 3 to 303 in increments of 3
(Meh, I forgot to refresh this one, there were only 338 trials rather than 1010, can't be bothered to recode the test)
                                    Profile results (total time)
Proc Name                                             Self CPU    Total CPU    Real Time        Calls
-------------------------------------------------    ---------    ---------    ---------    ---------
/proc/sortList                                           0.672       16.141       16.243       171226  <--TG's current mergesort(recursive, hence the higher number of calls)
/proc/sortTim                                            0.008        3.278        3.274          338  <--TimSort
/proc/sortMerge                                          0.011        2.839        2.855          338  <--new mergesort
/proc/sortInsert                                         0.010        2.124        2.103          338  <--binary insertion

Sorting 10 presorted lists with 3 inversions (3 elements shuffled up), Lists of length 3 to 303 (increments of 3)
                                    Profile results (total time)
Proc Name                                             Self CPU    Total CPU    Real Time        Calls
-------------------------------------------------    ---------    ---------    ---------    ---------
/proc/sortList                                           1.290       23.056       23.254       308050	<--rather cataclysmic
/proc/sortMerge                                          0.015        4.077        4.068         1010	<--
/proc/sortInsert                                         2.639        3.472        3.464         1010	<--
/proc/sortTim                                            0.014        1.567        1.576         1010	<--TimSort is faaar more effective in these cases,
Timsort can exploit runs effectively

sorting 10 presorted lists which have been reversed
                                    Profile results (total time)
Proc Name                                             Self CPU    Total CPU    Real Time        Calls
-------------------------------------------------    ---------    ---------    ---------    ---------
/proc/sortList                                           1.234       23.193       23.295       308050
/proc/sortMerge                                          0.023        4.681        4.686         1010
/proc/sortInsert                                         2.875        3.750        3.765         1010
/proc/sortTim                                            0.020        3.294        3.284         1010	//This can be lower by using a different comparison method
 *Corrected: /proc/sortTim                                0.017        0.665        0.663         1010	//Using a non-strictly ascending comparison

sorting 10 presorted lists
                                    Profile results (total time)
Proc Name                                             Self CPU    Total CPU    Real Time        Calls
-------------------------------------------------    ---------    ---------    ---------    ---------
/proc/sortList                                           1.199       21.391       21.517       308050
/proc/sortMerge                                          0.018        3.724        3.729         1010
/proc/sortInsert                                         2.497        3.302        3.309         1010
/proc/sortTim                                            0.024        0.586        0.584         1010

Summary, all the new procs are faster than the old ones. TimSort is ever so slightly slower than Insertion and Merging on random lists. But on lists with natural runs (partially sorted data) it is far faster than all others.

The old merge sort was removed and replaced with timSort. Other algorithms are provided as alternatives.

All algorithms use a central datum, so accept many of the same parameters. For instance, setting associative=1 will make them sort associative lists by their associated values, rather than keys.
They also accept a cmp argument. This allows sorting of lists of datums, text, numbers or whatever. The pre-existing helpers in lists.dm were rewritten as examples.
2014-09-01 11:29:49 +01:00
Cheridan da5b68e7ee stop asking how crowbars fit in your pocket fffff 2014-08-31 13:02:04 -05:00
Alex 837d5bc7eb Merge pull request #4456 from Ikarrus/table_prints
Fingerprints for Cables and Tables
2014-08-31 17:11:14 +01:00
Firecage 834f9a05b9 Mineral flooring 2014-08-31 17:12:17 +02:00
Miauw 78a9b0be69 Merge branch 'master' of https://github.com/tgstation/-tg-station into say()
Conflicts:
	code/__HELPERS/game.dm
	code/game/gamemodes/cult/runes.dm
	code/game/machinery/requests_console.dm
	code/game/machinery/telecomms/logbrowser.dm
	code/game/objects/items/devices/PDA/radio.dm
	code/game/objects/items/devices/aicard.dm
	code/modules/admin/admin_verbs.dm
	code/modules/assembly/holder.dm
	code/modules/assembly/voice.dm
	code/modules/mob/living/carbon/brain/brain.dm
	code/modules/mob/living/carbon/human/whisper.dm
	code/modules/mob/living/carbon/slime/slime.dm
	code/modules/mob/living/say.dm
2014-08-31 13:40:16 +02:00
Miauw bc2b8d0d5d DONE DONE DONE DONE DONE DONE 2014-08-27 17:40:26 +02:00
Firecage 6c7af5eb32 SPANCLASSES!!!!! 2014-08-26 09:52:13 +02:00
Miauw e3c0b2fa43 AHAHAHAHAHAHHAHAHAHAHASDHHADFHEUAHGUIHGDGIJDOINGEIOKILLTHEMALL 2014-08-24 20:35:49 +02:00
Alex d0a1eae3f9 Merge pull request #4517 from Firecage/fixchamproj
This fixes the chameleon projector.
2014-08-24 13:02:50 +01:00
Alex 944966ba93 Merge pull request #4520 from Firecage/Messagefixes
This fixes the message issues
2014-08-24 12:59:52 +01:00
Miauw f704c320d7 More saycode bugfixing, adds a saycode readme, etc. 2014-08-23 16:21:02 +02:00
Cheridan b33320e6b6 Merge pull request #4514 from Firecage/fix1
Fix for 1 use freedom implant
2014-08-22 09:52:34 -05:00
Cheridan a7c0ca8dfd Merge pull request #4506 from Jordie0608/itsawondernanotrasendoesntreplaceweldingfuelwithsomethinglessvolatile
Makes welderbombs use fueltank's ex_act
2014-08-21 22:14:13 -05:00
Incoming 7ac7ecb277 Summon Events Initial Commit: See the pull for complete details 2014-08-21 20:05:41 -04:00
Firecage 4198e61af1 This fixes the message issues 2014-08-22 01:15:13 +02:00
Firecage 9df78f3681 This fixes the chameleon projector. 2014-08-21 17:02:13 +02:00
Firecage f5c3d0b9cf Fix for 1 use freedom implant 2014-08-21 16:11:26 +02:00
Jordie0608 f17200bc7f Makes welderbombs use fueltank's ex_act 2014-08-21 00:56:17 +10:00
Alex 99fae13391 Merge pull request #4393 from paprka/emptyclick
Empty gun click noise
2014-08-19 10:36:06 +01:00
Miauw 5765a2e2cb Resolves many, more saycode bugs. AI tracking is still broken. 2014-08-18 18:51:07 +02:00
Miauw 433262e5e0 Removes debug messages. 2014-08-17 12:58:03 +02:00
Miauw 1fef6effc3 RADIO CODE WORKS NOW HOLY SHIT
(warning, contains tons of debug messages that still need removal)
2014-08-16 20:33:50 +02:00
MrPerson 09071b88d5 Merge pull request #4357 from paprka/nerfninja
Makes ninja less stupidly broken (balancing)
2014-08-16 04:13:49 -07:00
ikarrus cb27ad34a6 Cutting cables, too 2014-08-15 19:50:09 -06:00
ikarrus 3fe03bbea7 Constructing Tables will add fingerprints 2014-08-15 19:40:04 -06:00
Alex 74c22755be Merge pull request #4365 from paprka/fingerlessgloves
Adds fingerless gloves, other glove related changes
2014-08-15 08:03:37 +01:00
paprka bbf90b10d3 span fixes 2014-08-12 02:15:07 -07:00
Alex ff25503b4d Merge pull request #4384 from Ikarrus/deputybands
[MAP] Boxstation Update and Deputy Armbands
2014-08-12 08:12:15 +01:00
paprka e97f21a24a empty weapon click 2014-08-11 22:56:05 -07:00
Alex 9cfb19f511 Merge pull request #4373 from paprka/deepgunlore
Whole bunch of gun-related stuff
2014-08-11 16:25:05 +01:00
Alex 53d9aca271 Merge pull request #4371 from paprka/bowmanheadsets
Bowman radio headsets
2014-08-11 14:13:26 +01:00
paprka e3c26bfdd1 Merge remote-tracking branch 'remotes/upstream/master' into deepgunlore
Conflicts:
	code/game/objects/items/weapons/storage/uplink_kits.dm
2014-08-09 16:19:33 -07:00
ikarrus 8a5d1325d1 Update boxes.dm 2014-08-09 14:23:37 -06:00
ikarrus 22e0081cf3 Resolved Conflicts:
code/game/objects/items/weapons/storage/boxes.dm
2014-08-09 14:19:43 -06:00
ikarrus 3c96428603 [MAP] Boxstation Update and Deputy Armbands
-Singularity engine is now sealed off from outer space, making it more secure from saboteurs and safe from meteors
-Deputy armbands (red) added to HoS office. These can be ad-hoc distributed by the HoS when deputizing crew
-Slight remap of HoS office to fit everything in there. added a filing cabinet and paper, too
-Shutters added under robotics and R&D's primary hallway windows
-Filing cabinet and paper added in bridge
2014-08-09 14:11:04 -06:00