Commit Graph

86 Commits

Author SHA1 Message Date
Joan Lung b5b4037e2e More istypes replaced with helpers (#20767)
* shouldn't you be merging these by now

* my oh my do we have a lot of these

* a fellow pedantic shit
2016-10-03 13:40:13 +13:00
oranges c64bff59c1 Refactor cinematic ticker to use notransform (#20649)
* Refactor cinematic ticker to use notransform

* Missed one temp buckle qdel
2016-09-24 17:56:13 -05:00
AnturK d225d4800b Station Goals (#20009)
* goals initial

* Revamps Meteor Shield
Minor UI touchups.
Fixes DNA Vault completion check.

* Allows admins to varedit goal completion.
Does not clear dna probe on upload.

* Missed icons and template.

* Spelling, proper attackby returns

* Meteor shield emag effect only works when it's active.

* Admin panel for station goals.

* Some visual feedback and spans.

* Announcement now shows the goal name.

* Fixes

* Fixes and adminlog

* Tgui build

* Moves the information to intercept report except for admin spawned ones.
2016-09-07 20:15:45 +12:00
Incoming5643 f70ba63d3e You can smuggle smuggler's satchels to a future shift (#19838)
* Hidden Smuggler Satchels hidden beneath the station now persist between rounds, though there's no assurances of WHEN they'll appear next and only one will ever appear in the round.

NOTE THAT THIS PULL INTRODUCES A CRITICAL BUG, DO NOT MERGE *JUST* THIS PR, AWAIT THE FOLLOWUP

* Finishes up satchel persistence.

Satchels require at least 20 saved bags before any will start spawning.

the var persistence_replacement can be set to a path to replace a very high risk item with a lower risk look alike. This is currently done with the nuke disk, the wizards spellbook, and the uplink implant

* DESIGNATED.
REMIE.
PULL.
2016-08-20 16:27:02 +12:00
Joan Lung 81329edda6 Clockcult fixes and tweaks (#19795)
* Clockcult fixes and tweaks

* die but don't stay dead

* stay dead but never die

* instinct

* unreadable dark magic

* idiocy knows no bounds

* danger close

* like four fucking times faster

* superdynamics
2016-08-12 09:06:21 +12:00
Xhuis 566f89c9d9 Gamemode code improvement (#19354)
* Gamemode code improvement, initial commit

* Wraps up announce messages and removes Henderson

* Fixes an incomplete comment
2016-07-19 10:59:32 +12:00
Joan Lung 68113a31bc </span> 2016-07-09 15:28:00 -04:00
Joan Lung cbb567f7a6 Hides gamemode debug messages from players 2016-07-09 15:27:24 -04:00
Jack Edge af5110c43e Tip of the round 2016-06-23 00:48:09 +01:00
Kyle Spier-Swenson 235b79fb5a StonedMC, the bastard love child of GoonPS and CarnMC (#17987)
Basically, they key difference between StonedMC and CarnMC is that when multiple ticks want to run at the same byond tick, we divvy up the tick between the subsystems, rather then allow one subsystem to hog it all.

The key difference between StonedMC and GoonPS is that we allow the subsystems to tell us how to divvy up the tick using flags and priority.

The new SS_ flags allows us to select behaviors that used to be piggybacked as side effects of dynamic wait or default but sometimes unneeded behavior.

Dynamic wait is 100% gone, lower priority and SS_BACKGROUND are better more refined ways of doing this when combined with MC_TICK_CHECK

I have by design never looked at the inners of goonPS, so this is all original code but I know it uses two loops because of comments by goon devs on reddit threads, that design didn't make sense before, but when I can tell a SS how much of a byond tick it is allowed to have, knowing how many need to run this tick is helpful I also know a bit more about how it works from piecing together comments in #vgstation.

Detailed list of changes:

Subsystems now have flags, allowing fine grain control over things like rather or not it processes, inits, rather it's wait is how long between runs (post run timing) or how long between starts, and rather or not late fires should cause the next fire to be earlier.

Mc now has two loops One loop handles queuing shit, one loop handles running shit.

MC now splits up tick allotment rather than first come first serve Subsystems can even request a bigger share using higher priorities. (It will even resume subsystems it paused if other subsystems hadn't used as much as it predicted they might need)

Default fps is now 20 This is related enough to the MC and it's a change that's really long since over due

All code oddities are most likely to be necessities to lower overhead on the mc since it runs every tick
2016-06-16 18:01:16 +12:00
Incoming5643 e1d600f847 [s] Adds a rare tips file to the tip of the day (#17988)
* Allows for rare meme tips

web editor pull, doesn't work by itself

* Injecting memes

* W H O O P S
2016-05-30 10:55:07 +12:00
Jack Edge 78384666b1 Removes SHUTTLE_* defines being numeric
Wew, there was a lot to change. Fixes #17950. There is a lot of gamemode
code here, so I'm not entirely sure if this is ultimately worth it.
2016-05-26 18:16:45 +01:00
AndrewJacksonThe2nd 6ad6cb55ca fixes 2016-03-05 14:25:10 -08:00
AndrewJacksonThe2nd afd0a20432 Goon Port #1: Stock Market 2016-03-04 20:39:27 -08:00
Cheridan 9766395322 Merge pull request #15355 from tkdrg/yeah
Improves admin counting for irc
2016-02-22 01:27:43 -06:00
phil235 95f825e7ed Fixes inventory things appearing above the nuke cinematic. 2016-02-17 01:49:03 +01:00
Tkdrg b441767693 Improves admin counting for irc
This is intended to support future improvements to the #adminbus bot.
2016-02-09 21:37:44 -03:00
Firecage 332bde0f4f Does the rest of the if()'s/ else's 2016-01-17 19:03:12 +02:00
MrStonedOne fd80575f38 Removes a bunch of sleep(-1) and spawn(-1) from the code
This seems to be causing issues where if the queue was too long, byond would attempt to process through all of it while hanging everything else.
2016-01-04 15:17:12 -08:00
Bjorn Neergaard 531e4b947f Subsystem display tweaks 2015-12-05 10:13:59 -06:00
Bjorn Neergaard 34b717afb4 radio_controller -> SSradio, SSbp -> SSnpc 2015-12-04 22:25:24 -06:00
Bjorn Neergaard 97ca70cd34 Rework Master Controller, Failsafe, and Subsystem code 2015-12-04 15:40:58 -06:00
MrStonedOne 4f652da4bd Adds a config option for the round end restart delay.
This should enable more murder death kill at round end before the next round starts.
New servers will default to 90 seconds while old servers will default to the old 25 seconds until they import the config option to their server.
2015-10-26 05:04:43 -07:00
Kyle Spier-Swenson d2327bd06f Fixes automatic map change causing lag
It would lock up the MC for 30 seconds while it was compiling, meanwhile ticks are queuing.

After the map was compiled, there would be 15 mob ticks, 15 object subsystem ticks, 15 mechinery ticks, 60 atmo ticks, etc all queued up and would attempt to fire all at once.
2015-10-12 19:29:29 -07:00
phil235 9c79257aab Changes the paths of stools, beds and chairs. It is now obj/structure/bed/chair and obj/structure/bed/stool. It makes much more sense since stools barely have any code of their own.
Beds (and chairs) now have buildstacktype and buildstackamount vars to handle how many sheets of what they should drop on deconstruction.
They also have a foldabletype var to handle folding into item (currently only used by roller beds) so that people can add foldable chairs in the future.
Fixes swivel chairs not dropping the correct amount of metal sheets.
2015-10-10 13:35:00 +02:00
Razharas 87f2cbf4ed Merge pull request #12218 from phil235/BugFixBoogalooA
Fixes critical bug causing multiple hits from single projectile.
2015-10-09 12:41:08 +03:00
Razharas e3065b1643 Merge pull request #12164 from Aranclanos/crewmonitor
Changes map generation time at roundstart
2015-10-07 22:17:11 +03:00
phil235 dbaba791f3 Fixes critical bug causing multiple hits from single projectile.
Fixes some other potential issues coming from changing a few del() to qdel().
Fixes not being able to shoot mob on same tile as the shooter.
Fixes being able to shoot oneself by simply clicking our mob.
Fixes not being able to shoot non human mobs right next to us.
2015-10-07 20:57:36 +02:00
Razharas 0ad7257a52 Merge pull request #12089 from MrStonedOne/maprotation
HOLY FUCKING SHIT, I'VE DONE IT! Map rotation!
2015-10-07 07:53:42 +03:00
duncathan e2ed83b6a5 adds the del() log to world.log at roundend and allows the runtime condenser to parse and condense it 2015-10-05 18:52:44 -06:00
Aranclanos ff451025ed Moves the minimap generation to the initialization list, instead of being calculated after it.
Removes the spawn from it too.
2015-10-04 22:09:17 -03:00
MrStonedOne 29cf9bd265 Some map rotation tweaks.
Adds a config option for the map rotation chance.
Ups default rotation chance from 50% of round length to 75% of round length.
Moves the procs around.
Adds two new admin verbs:
Force map rotation.
Change map.
2015-10-02 10:48:09 -07:00
MrStonedOne a6e189a873 Removes unused force var from map rotate proc 2015-10-01 04:11:21 -07:00
MrStonedOne fb01e5ce71 Cleans up map rotation code, removes debugging code 2015-09-30 08:43:22 -07:00
MrStonedOne fcc8402f31 map rotation base code 2015-09-30 07:13:38 -07:00
phil235 f90ee4aa8c - Fixed monkey starting with no dna.
- Fixed bugs with monkeyize/humanize: 7803 (humanized monkey nobloodtype)
- Fixes 9298 monkeyed ling have troubles humanizing themself (already fixed?)
- Fixes despawning clothes when monkeyizing. 11855
- Replaced check_dna_integrity proc by simpler has_dna proc when required.
- created set_species() proc
- fixed space retrovirus not transfering SE (despite having a domutcheck()). Still need to check if it needs a name = real_name.
- I renamed mecha/var/dna to dna_lock to avoid confusion
- I renamed an armor var in a species proc to armor_block to avoid confusion with species/var/armor.
- I removed many if(dna) checks in lots of files.
- I removed duplicate defense procs between human/proc/X and dna.species/proc/X since dna is now always set.
- Anatomic panacea from changeling removes alien embryo correctly. 6247
- Fixes runtime when trying to put dna-less brain mmi into a dnalocked mech.
- Removed carbon/var/list/features, we now only have dna.features and prefs.features
- Remove hulk mutation from lizards and other species (Fixed 6413); only real humans can acquire hulk. (less work on sprites for each ones, fixes lizard tail not in hulk color)
- Fixes cloning not setting up correctly dna UE and dna.real_name
- I fixed the issue with sucked+cloned ling being unable to absorb
- I fixed issue with changeling proc checking if they have the dna already not working.
- Fixed 4095, low health hulk with DAA getting stuck in loop of acquiring/losing hulk.
- I added a second layer for mutations to differientate mutations that go below and above the body layer (Fixes 7858)
- Fixes 10048, the transform to initial appearence button was fucking up the dna.

- Fixes cloning not setting up correctly dna UE and dna.real_name
- Fixed the issue with sucked+cloned ling being unable to absorb
- Fixed issue with changeling proc checking if they have the dna already not working.
- Fixed 4095, low health hulk with DAA getting stuck in loop of acquiring/losing hulk.
- Added a second layer for mutations to differientate mutations that go below and above the body layer (Fixes 7858)
- Fixes 10048, the transform to initial appearence button was fucking up the dna.
2015-09-19 22:18:28 +02:00
bear1ake f697ae90f5 removes a bunch of .0 2015-09-10 20:57:30 +09:00
Firecage dfae1e0b53 Changes a lot of del() to qdel() 2015-08-16 23:33:22 +02:00
Ikarrus 5b1e7ce777 Minor Tweak - Ads delay to gang victory printout 2015-07-31 21:38:57 -06:00
Ikarrus 4aedc97e82 Adds Ending Cinematic for Gang Dominations
It basically flashes the SYSTEM OVERRIDE COMPLETE animation.
2015-07-28 20:21:52 -06:00
Jordie 99814bc1b9 Merge pull request #10737 from Incoming5643/end_my_suffering
Adds a server admin version of end round now
2015-07-23 22:33:47 +10:00
Jordie da7f758ef3 Merge pull request #10566 from Ikarrus/hardcapqueue
Adds a Join Queue if the server exceeds its hard population cap [Ready]
2015-07-23 22:18:12 +10:00
Incoming 59217b2b06 Adds a server admin version of end round now; a semi obscure admin tool that came about in the mulligan push but never really got advertised. It will print out a round end report and attempt to database round stats before restarting. Suggested use is when the round has SLOWED down to an unplayble crawl for some reason but the game is still technically responcive. Pressing end round doesn't preclude the use of reset if it doesn't seem to be working, but end round should usually be tried first.
Removes the 20 second confirmation between prompts for the normal admin version of end round now.

If admins force end a round escape objectives will be good faith greentexted if the antagonists were still in a position to escape alive.

The survival rate will always be printed at round end now, even if the shuttle makes it to centcom (evac rate will be printed too in that case).
2015-07-20 23:06:42 -04:00
Firecage 4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
phil235 1265d49b7c Merge pull request #10470 from Jordie0608/spessmensfourthwallistheceiling
Fixes ooc autotoggle and adds loc to sprayer log
2015-07-14 14:45:47 +02:00
phil235 a6e9dc3362 Merge pull request #10374 from Jordie0608/spacetimeisrelativetofps
Explosion cinematics no longer delay round end
2015-07-14 14:17:33 +02:00
Ikarrus 1c43425304 Tested and Tweaked 2015-07-12 09:50:57 -06:00
Ikarrus 3bc29a74e6 Adds a Join Queue if the server exceeds its hard population cap
Players can join a queue that will notify them with a message and sound when a slot becomes available. First come first serve.

Players have approximately 20 seconds to join after the notification. Failure to join in that window removes them from the queue, to remove AFKers.

I haven't tested the code yet but it's basically done.
2015-07-11 22:57:08 -06:00
Jordie0608 70ae3d2134 fixes ooc autotoggle and adds loc to sprayer log 2015-07-09 00:52:19 +10:00
Cheridan 3f47a28096 Merge pull request #10422 from KorPhaeron/tickerfix
Fixes round end runtime related to cyborgs
2015-07-07 07:03:34 -05:00