Commit Graph

537 Commits

Author SHA1 Message Date
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
Kyle Spier-Swenson
c1b14680c4 Rogue stickyban detection system. (#19201)
* Rogue stickyban detection system.

This will detect when stickybans go rogue and revert them to whatever their state was when the world started.

* does the remie

* Increases STICKYBAN_MAX_MATCHES to 20 to prevent gaming
2016-07-16 12:00:47 +12:00
coiax
771c64084d Shuttle SS keeps track of hostile environments (#19235)
* Shuttle SS keeps track of hostile environments

Instead of changing SSshuttle.emergencyNoEscape manually, datums now
register and clear themselves with the SS, and a hostile environment is
if any datums are registered.

Note that it's datums that can be registered, as rev and blob gamemodes
register themselves.

Overhauling this means that you can have multiple sources of no-recall,
which although can't happen at present, may do so in the future whenever
multi-antag rounds happen.

🆑 coiax
tweak: The AI doomsday device timer is more accurate.
fix: Fixes a bug where the doomsday device would take twice as long as
it should.
/🆑

AI doomsday timer uses world.time, uses fastprocess to make sure the
announcements go out on time, added observer countdown for
the AI doomsday device.

* Fixes bugs
2016-07-11 16:53:23 +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
coiax
4c5e478ed6 Observers can auto-orbit meteors; space dust event (#19142)
* Observers can auto-orbit meteors; space dust event

During a meteor shower, observers can automatically orbit
threatening meteors and watch them hit the station.

Added Major Space Dust event, which is a meteor shower
containing only space dust.

Reduced chance of RNG meteor event.

Fixes bug where meteors wouldn't move when spawned.
2016-07-09 18:16:11 +12:00
coiax
afb7ebd790 Tiles are now (mostly) pooled objects (#19112)
* Tiles are now (mostly) pooled objects

Floors no longer have a builtin_tile, but instead use PoolOrNew().

Also added a do-nothing SSpool so you can inspect the global pool.

* Entries for time keeping

* MORE STATISTICS

* Stat tracking, auto filling

* Code review I

* Code review II

* Code review III
2016-07-08 13:32:40 -04:00
Xhuis
b58bd1218e Weather fixes (#19139) 2016-07-05 08:49:47 -04:00
Xhuis
1bf31c5608 Fixes a bug with the weather subsystem 2016-07-04 15:29:56 -04:00
Xhuis
2ab3f554d9 Refactors weather into a subsystem (#19003)
Weather has been refactored from a weather control machine on the lavaland z-level into a subsystem. All existing weather has been changed to accommodate this change, and their code has been optimized by using addtimer() instead of sleep().

The new subsystem also supports adding weather to any z-level; for instance, if you made a weather called /datum/weather/rain_storm and made it target z-level 3 with a 100% probability, the rain storm would occur as much as possible with 5-10 minute intermissions. These intermissions take into account the weather's duration.
2016-07-04 13:55:36 +12:00
Jack Edge
7546511a56 Lets emergency shuttle actually leave 2016-07-02 23:47:40 +01:00
Jack Edge
bb110a004d Remove transit when not in use
Now with pretty colors!
2016-07-02 21:29:29 +01:00
Jack Edge
9f9fd6efcd Merge branch 'master' into dynamic-transit 2016-07-02 11:57:32 +01:00
Jack Edge
f7284db11d Multiple assignment, Emergency shuttle works 2016-07-02 11:18:54 +01:00
Incoming5643
5dde284841 The tooltip for the voting action button will give the question (#19052)
I see people saying that they often miss the actual question, even if they see the action button later.

This should make the action button more actionable.
2016-07-02 14:41:18 +12:00
Jack Edge
39ae894c2a Verb for clearing transit 2016-07-02 01:23:49 +01:00
Jack Edge
1ad915beed Now working, let's do this 2016-07-02 00:03:04 +01:00
Jack Edge
0f67b846df Replaces travelDir with port_angle 2016-07-01 16:55:19 +01:00
Jack Edge
d4122daae2 Merge branch 'master' into dynamic-transit 2016-07-01 10:47:03 +01:00
FlavoredCactus
8c8e5d6e91 Fixes lighting hanging up with changed turfs (#19060) 2016-07-01 19:59:34 +12:00
Jack Edge
40d9f0b531 Sutck 2016-06-30 21:57:14 +01:00
Jack Edge
ad51c07f17 Hit a snafu 2016-06-30 21:40:24 +01:00
Jack Edge
3c022aa0d1 Wheeee 2016-06-30 13:24:05 +01:00
Jack Edge
d770fd8b2d Is anything real anymore 2016-06-29 20:37:32 +01:00
Jack Edge
e3c47fdbed Why are you hanging 2016-06-29 11:41:33 +01:00
Jack Edge
32d29d7222 Experiments will continue until performance improves 2016-06-29 11:14:15 +01:00
Jack Edge
0d0c42fc6a Compilation 2016-06-28 13:04:43 +01:00
Jack Edge
94966c9997 Merge branch 'master' into tips 2016-06-24 07:47:41 +01:00
Jack Edge
af5110c43e Tip of the round 2016-06-23 00:48:09 +01:00
oranges
0432cd9bb4 Merge pull request #18484 from coiax/random-space
All of space is now randomised
2016-06-23 09:12:48 +12:00
oranges
a62066ebe4 Merge pull request #18727 from RemieRichards/global_procs_in_addtimer
You can now call global procs with addtimer()
2016-06-21 10:18:49 +12:00
Remie Richards
b0634d3227 istext() check on procToCall 2016-06-20 23:06:51 +01:00
Jack Edge
5da579b7c4 Merge branch 'master' into random-space
Conflicts:
	_maps/asteroidstation.dm
2016-06-20 13:06:08 +01:00
Kyle Spier-Swenson
0d6bbbb412 stop the pills (#18703)
* RedPills Processing

Now you have to use START_PROCESSING(SSname, thing) (and STOP_PROCESSING)

* Fixes a minor bug.
2016-06-20 12:07:44 +02:00
Kyle Spier-Swenson
b05886a132 sstimer: Does a thing in a less retarded way. 2016-06-18 21:14:25 -07:00
Remie Richards
0422a46fbb You can now call global procs with addtimer(), by supplying the object as GLOBAL_PROC, a special define that tells the timing subsystem to use a different call()() syntax (the syntax that supports global procs) 2016-06-19 00:40:04 +01:00
MrStonedOne
d220416ed3 Makes ipintel only warn, fixes some cache things. 2016-06-17 03:54:42 -07:00
MrStonedOne
c37ae784e7 Adds local cache, doesn't check reconnects, fixes bugs 2016-06-16 21:04:52 -07:00
Jack Edge
4e6e9dfe1a Space zlevels now all seeded at once 2016-06-16 12:34:18 +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
Leo
aeac71afd3 No longer extends time when shuttle is already coming and consoles are destroyed (#18372) 2016-06-09 10:04:34 -05:00
Incoming
6656f410d6 this should be an istypeless forloop 2016-06-05 21:35:35 -04:00
Incoming
2783ce0a42 in game votes now provoke an action button, even as a ghost or a new_player on the title screen 2016-06-04 23:57:24 -04: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
coiax
4483d5275c Shuttle manipulator (#17436)
* Starting out on our tgui journey

* God tgui, why do you need to be updated

You're dynamically generated anyway

* Commit of stuff

* Further progress is being made

* Everyone loves buildscripts

* Further modifications to my incredible running script

* Starting to modify the minimap code to be better

* It's going well thusfar, I guess

* What have I done

* RIP minimap

* FUN FUN FUN FUN FUN

* Adds shuttle_manipulator.dmi

MUH HOLOGRAMS

* Is it done? IS IT OVER

* Peer review

* Some bug fixes

* Makes that damn greentext shut up

* Shuttle registration

* Made the Emergency Escape Bar more robust

No climbing on the bar.

* Do not stare into the operation end of the device

* Compile shame

* THE MOST DUMB

* Passive barmaiden

* Emergency shuttle memes

* MORE SAFETY CODE

* Fancy shuttle manipulator icons

* Smoothing it out

* We are going to have a lot of fun with this one

* Independent blobbernauts

* WABBAJACK WABBAJACK

* Message for attempting to authenticate old style

* Angry alert noise is back

* Revert "Independent blobbernauts"

This reverts commit 34d6af7c9c88cfc2864990cb37b586bb90163dd3.

* No parrot sleep plz

* Moves the special shuttle stuff to special.dm

* No Bartender like a Centcom Bartender

* Non-controversial map changes

- Backup shuttle moved closer to Centcom main structure, docking tube
created
- Moved shuttle import landmark to above Centcom main building
- Added shuttle displays to Conference Room
- Squashed the Chapel a bit in Metastation
- Made the docking port on Z2 massive
- Made the docking port on Metastation a lot larger

* Hacks and slashes at Box

A bunch of things are extended and squashed so Box shuttle dock can
support the MetaStation emergency shuttle.

* Some Metastationshit

* Never ending changes

* Wabbajack to TGM

* Modified the bar, I think that's all of them

* Stops Barmaiden wandering around

* More code review

* Whitspace, the bane of us all

* DIE WHITESPACE DIE
2016-05-26 15:15:19 +02:00
coiax
5b5d956943 Alternate escape shuttles and ferries (#16761)
* Added a simple bar-theme escape shuttle

Features include a very tough Bardrone, with laws to be a good
bartender, bathroom, a quality lounge for the heads, and a small
gambling table.

* Changed drone's health to 3000

Bardrone is now strong, to cope from stray gunfire.

* Replaces banned variables with alternates

Step_[xy] is bad, mkay?

* Added STV5, the cramped transport shuttle

Well, looks like Centcom only had this ship ready for evacuation. I hope
you're friendly with your coworkers!

* Removed shuttle area from empty space on STV5

* Added cult shuttle

Looks like this automated shuttle may have wandered into the darkness
between the stars on route to the station. Let's not think too hard
about where all the bodies came from.

* Include the Narnar Shuttle

* Meat ferry added

Very basic, could probably use some love from a map wizard.

* Moved shuttle files to shuttles/ directory

* MAPS MOVED AND RENAMED

* Hyperfractal Gigashuttle

"I dunno, this seems kinda needlessly complicated."
"This shuttle has very a very high safety record, according to Centcom
Officer Cadet Yins."
"Are you sure?"
"Yes, it has a safety record of N-A-N, which is apparently larger than
100%."

* I REGRET ADDING THESE

* Into templates you go

* Changed floors

* Hugbox supermatter, for map making

* Shuttles KINDA delete themselves

* Hats in hats in hats in hats in hats

* Use the hugbox supermatter in the shuttle

* Include the new verbs

* Include our new verbs

* Fixed runtime when deleting emergency shuttle

* Added to verb list

* Fixes more runtimes with deleting the shuttle

* Shuttle Destroy verb now functions

* Moved them out of the shuttles/ folder

* We'll need these docks later

* shuttle_import landmark datum made

* Changes z2 to TGM format and adds shuttle_import landmark

* SHUTTLE IMPORT VERB

Is this it? Are we there?

* Some compile fixes

* Emergency bar map updated

* Updated cramped shuttle

* Updated narnar shuttle

* Supermatter shuttle updated

* Meat ferry updated

* Debugging information included

* Debug code, QDEL hints

* Minor updates to collection of maps

* May as well use the snowflake drone code

PICK YOUR OWN BARKEEPING HAT.

* The Lighthouse

*static*... part of a much larger vessel, possibly military in origin.
The weapon markings aren't anything we've seen ... *static* ... by
almost never the same person twice, possible use of unknown storage ...
*static* ... seeing ERT officers onboard, but no missions are on file
for ... *static* ... *static* ... *annoying jingle* ... only at The
LIGHTHOUSE! Fulfilling needs you didn't even know you had. We've got
EVERYTHING, and something else!

* Made supermatter hallucination too powerful

* Added force argument for docking testing

* Added emergency backup shuttle

Hopefully it will never be seen or used. But means that provided it's
there and untouched, even with the accidental deletion of a shuttle,
round will still be able to end as normal.

* Added templates for existing shuttles

* Backup shuttle used if emergency shuttle deleted

* Added backup shuttle transit space

Don't know why transit spaces aren't dynamically generated, to be
honest.

* Hyperfractal Gigashuttle improved

More radiation lockers, chairs which makes it "safer".

* Added Shuttle Under Construction

The documentation hasn't been finished yet for this shuttle. Break glass
in case of emergency.

* Added warnings for shuttle interaction

ARE YOU SURE YOU WANT TO DELETE THE EMERGENCY SHUTTLE?

I mean, I really don't know what will happen, and it's probably
nothing good.

* Snappop(tm)!

Hey kids and grownups! Are you bored of DULL and TEDIOUS shuttle
journeys after you're evacuating for probably BORING reasons. Well then
order the Snappop today! We've got fun activities for everyone, an all
access cockpit, and no boring security brig! Boo! Play dress up with
your friends! Collect all the bedsheets before your neighbour does so!
Check if the AI is watching you with our patent pending "Peeping Tom AI
Multitool Detector" or PEEEEEETUR for short. Have a fun ride!

* Fixed horrific experiment icon, added gambling spawner

* Candle changes

Infinite candles start fires but don't run out.
Infinite candles don't make messages when created.

* Shuttle can dock if already docked

* Fixing bugs with shuttle import

Also, some minor bugs with hugbox supermatter still consuming
gas moles and slowly depressurising the area.

* Admin notice, unload bad template

* Fixes problems with some shuttles

* Warning message if roundstart dock failed

* Compiles.

* Inform admins of shuttle problems

* Names for shuttles, minor tweaks

* Moved shuttle templates to shuttles/

* Version numbers are lame

* Shuttle datums

* Shuttle manipulator barebones

It doesn't do anything at the moment.

* Added shuttle manipulator to Z2

It still doesn't do anything yet, but it looks pretty.

* Use GetAllContents(), don't delete ghosts

* Fixes bug where nothing would actually load

* Cancel button on Destroy Shuttle

* Fixed birdboat shuttle overwriting bar shuttle
2016-05-07 23:35:57 +02:00
Remie Richards
a5ec86da08 vote improvements
Lets admins skip vote wait (so long as one isn't in progress), gives feedback to people who try to start a vote too soon.
2016-04-29 17:17:49 +01:00
Kyle Spier-Swenson
32cdbe2eea makes the log from long deletes more noisey.
This is so that when this happens, admin's have immediate feedback as to what caused the lag.
2016-04-28 21:56:47 -07:00
Kyle Spier-Swenson
1728d02b50 fucked up args 2016-04-27 21:53:49 -07:00