Commit Graph

828 Commits

Author SHA1 Message Date
Leshana
85d3cbfa12 Replaced "area" shuttles with "landmark" shuttles.
Largely ported from the work done at Baystation in Baystation12#17460 and later commits.

 - Shuttles no longer require a separate area for each location they jump to.
   Instead destinations are indicated by landmark objects, which are not necessarily exclusive to that shuttle.
   This means that more than one shuttle could use the same docking port (not at the same time of course).
 - Enhanced shuttle control computers to use nanoui if they didn't.
 - Organizes shuttle datum code a bit better so there is less re-inventing the wheel in subtypes.
 - Allows the possibility of shuttles (or destinations) that start on late-loaded maps.
 - Deprecate the "extra" shuttle areas that are no longer needed and update shuttle areas in unit tests

This all required a bit of infrastructure improvements.

 - ChangeArea proc, for changing the area of a turf.
 - Fixed lighting overlays actually being able to be destroyed.
 - Added a few utility macros and procs.
 - Added "turf translation" procs which are like move_contents_to but more flexible.

(cherry picked from commit c837078105)
2020-03-13 00:26:08 -04:00
Atermonera
0021a3b025 Merge pull request #6818 from Neerti/event_manager_fix_electric_boogaloo
Fully Implements R_EVENT for Event Managers
2020-03-12 12:01:07 -07:00
Neerti
e8c51b9291 Makes R_EVENT go everywhere. 2020-03-11 23:17:24 -04:00
Atermonera
0150255a30 Merge pull request #6805 from Novacat/nova-accessory
Ports Inactivity SS from Bay
2020-03-10 23:08:03 -07:00
Atermonera
b930c72904 Merge pull request #6795 from VOREStation/pol-gametime
Makes pregame time a config setting
2020-03-10 00:32:46 -07:00
Unknown
74c0137a6b Ports Inactivity SS from Bay
Remember that server-destroying timer bug that VORE keeps getting?

Turns out, it is related to the inactivity subsystem, that, due to having SS_BACKGROUND and SS_NO_TICK_CHECK flags, causes the master controller to break in a horrible way. One of the consequences of the master controller breaking is that the timer subsystem stops running.

I am relieved that this monster of a bug has finally been slain. Hopefully.
2020-03-09 01:03:04 -04:00
Aronai Sieyes
5b236b1a05 Makes pregame time a config setting
Boo hardcoded values
2020-03-08 01:10:04 -04:00
Atermonera
a5b0c9126a Merge pull request #6789 from VOREStation/pol-busysignal
Moving AI busy check so it's performed less and more centrally
2020-03-05 12:13:42 -08:00
Aronai Sieyes
74e71454bd Fix AI busy 2020-03-05 00:04:07 -05:00
Neerti
24fbd0b87e Half-Refactors Jobs (#6762)
* Somewhat cleans up a piece of job code, makes new ID computers not be awful.

* Changes ROLE_ defines to DEPARTMENT_ to be clearer. Backports the new ID computer's assignment section of its UI to the old ID computer.

* Swaps back to southern cross map.

* Removes a block of commented code.
2020-03-03 13:27:37 -08:00
Neerti
6898823361 Fixes various lightning strike bugs. 2020-02-25 21:49:38 -05:00
Neerti
d88f8b8533 Changes world << "text"s to to_world_log() 2020-02-24 16:24:44 -05:00
Neerti
8d2755a09e Fixes two bugs, one serious and one annoying. 2020-02-20 23:45:25 -05:00
Neerti
556973c9ec Fixes merge conflicts. 2020-02-20 21:59:28 -05:00
Neerti
00b24d93c8 Hopefully finalizes code work. 2020-02-20 21:48:58 -05:00
Neerti
54a75927ff Commiting my work before I do a stupid thing, just in case. 2020-02-20 21:21:38 -05:00
Arokha Sieyes
5b15917d32 to_chat replacing stream operator 2020-02-17 13:14:08 -05:00
Heroman3003
5aaba55222 Fixes null empty supplypack appearing in last category (#6698) 2020-02-16 22:18:54 -08:00
GeneriedJenelle
2b99bf2adb Update configuration.dm 2020-02-07 01:11:27 +00:00
GeneriedJenelle
0eb2377c35 adds config file var 2020-02-07 00:55:33 +00:00
Atermonera
ea8bf0ad0b Merge pull request #6630 from Novacat/nova-alerts
IP reputation checking
2020-01-21 15:10:27 -08:00
Atermonera
929ba9c96b Merge pull request #6620 from Heroman3003/eventpause
Pauses event processing while doing event actions
2020-01-15 20:43:25 -08:00
Unknown
645ddf30d1 IP reputation checking
Ported from https://github.com/VOREStation/VOREStation/pull/6451
Code done by Aronai

Adds IP reputation checking to detect Tor, proxy, and VPN usage and block it if so configured.

It's disabled by default, but if enabled the default settings are to block all VPN/Proxy/Tor to connect unless the player has been a player for 5 days on a 'normal' connection so that people who legitimately sometimes use a VPN for *reasons* can continue to do so. You can also have it check reputations and just log bad ones, without disconnecting the users.

Whether or not it allows 'existing' players, the length of time they must have played, what's considered a 'bad' IP score, etc, are configurable. You **must** put an e-mail address if you use this, otherwise the service will likely ban you. This is the e-mail address they will send e-mails to if you're performing too many checks or they need to speak to you. 

Adds config options, here's a paste from the example config:
```
## IP Reputation Checking
# Enable/disable IP reputation checking (present/nonpresent)
#IP_REPUTATION

# Set the e-mail address problems can go to for IPR checks (e-mail address)
IPR_EMAIL whatever@whatever.com

# Above this value, reputation scores are considered 'bad' (number)
IPR_BAD_SCORE 1

# If you want the people disconnected. Otherwise it just logs. (present/nonpresent)
IPR_BLOCK_BAD_IPS

# If players of a certain length of playtime are allowed anyway (REQUIRES DATABASE) (present/nonpresent)
IPR_ALLOW_EXISTING

# And what that age is (number)
IPR_MINIMUM_AGE 5
```

As you can see, it's off by default, so if you're a downstream this won't change anything for you unless you decide to turn it on. If you want the features, just copypaste the new config lines out of the example and uncomment IP_REPUTATION.

Downstreams can replace the /client/proc/update_ip_reputation() proc with your own, if you'd like to substitute your own service! Just set the client's ip_reputation var at the end of your proc.
2020-01-15 14:48:22 -05:00
Heroman
2c6bd784c4 Pauses event processing while doing event actions 2020-01-11 20:42:49 +10:00
Shadow
5db87c9526 Station time 2020-01-10 20:33:29 -06:00
Atermonera
ac8dd558b7 Buffs radiation so it isn't defeated by a thin sheet of lead. (#6572)
Makes radiation config options actually controlled by config.
2019-12-19 21:50:32 -08:00
Mechoid
7ecdcb40d2 Security / PseudoCargo Expansion (#6482)
* Security Expansion work.

* Weaponized Racism, Stowaways, Meteors

* Fix Fix. Prep modular armor for addition.

* Fix the boots.

* More modular armor work. Now in cargo!

* Fixfix

* Fixfix

* Thank you anxiety very cool.

* Make a Stowaway Antag

* FixFix
2019-11-24 17:22:25 -05:00
Unknown
7f4b35580d Blind port of Bay Radiation Subsystem
Figured I would do my part to move everything over to subsystems. Not tested yet.
2019-09-30 23:59:31 -04:00
Heroman
926be2ef53 Allows supplypacks with req_one_access to exist 2019-06-02 07:21:41 +10:00
Unknown
2fa409b3a9 Fixes Indentation 2019-05-27 00:52:32 -04:00
Unknown
2b0367c5c6 Tries another fix 2019-05-27 00:49:13 -04:00
Unknown
ccd4ac3ae9 Replaces Timer SS with Bay Port
I have no clue how to code or debug subsystems, this is just my desperate attempt to fix the constant timer subsystem crashes on Virgo.
2019-05-26 23:52:03 -04:00
Unknown
6f03ccff73 Fixes error with #6164
Whoops, accidentally overwrote something I should not have.
2019-05-13 22:44:49 -04:00
Unknown
5dccccb321 Ports character setup subsystem from Bay 2019-05-13 22:27:06 -04:00
Unknown
9ce4361faa Ports #6039 with Virgo Fixes 2019-05-03 20:36:06 -04:00
Heroman
1a2c7b6ada Fixes emergency pods not working 2019-05-02 10:50:44 +10:00
Neerti
2baef09f0f Merge pull request #6031 from Novacat/spriteadd
[REVIEW] Ports Modular Computers from Baystation
2019-04-28 22:06:27 -04:00
Neerti
4dbb8aeaaa Merge pull request #6118 from Novacat/nova-alerts
Ports Baystation's SS Debugging
2019-04-25 17:02:46 -04:00
Unknown
d4c0dd5d69 Merge remote-tracking branch 'PolarisSS13/master' into spriteadd 2019-04-22 20:20:56 -04:00
Atermonera
2deca08d67 Merge pull request #6114 from Neerti/gamemode_config
Makes gamemode player requirements be able to be overridden in the config
2019-04-22 10:33:07 -08:00
Neerti
546e4ccc7d Adds Config-Controlled Automated Solar Setup (#6107)
* Fixes autostart solars, adds new config-controlled solars.

* Tweaks map to use config-controlled solar panels, and makes it work.

* If true, Neerti finishes comment.
2019-04-21 00:33:38 -07:00
Unknown
c465391a24 Changes crash proc 2019-04-19 18:42:01 -04:00
Unknown
af4ca9938e Ports Baystation's SS Debugging
I was not able to port the VV_static part because, as far as I could tell, Polaris does not have an equivalent to VV_static.

Review this very carefully, I barely understand process/subsystem code as is.
2019-04-19 13:51:21 -04:00
Neerti
c5254bb7a8 Makes gamemode player requirements be able to be overridden in the config 2019-04-18 21:07:11 -04:00
Neerti
c5b8c5b4eb Makes transfer always occur if nobody is playing. 2019-04-17 07:05:20 -04:00
Neerti
f952b8a57a Merge pull request #6065 from Heroman3003/xenoarchening
Allows restriction of z-levels from spawning xenoarch finds
2019-04-14 02:27:56 -04:00
Neerti
6fcb14ef9e Merge pull request #6037 from Heroman3003/report-the-crate-cost-lazy-central-interns
Fixes export reports not mentioning crates' cost
2019-04-14 02:27:13 -04:00
Unknown
dfd9415458 Modern Modular Computers 2019-04-13 14:58:08 -04:00
Heroman3003
e1fd4cc80f Allows restriction of z-levels from spawning xenoarch finds 2019-04-11 09:54:25 +10:00
Neerti
6a2cd30e14 Replaces AI-controlled Maint Drones with AI-controlled Borg Shells (#6025)
* AI shells, some fixes re: Borgs.
2019-04-06 02:06:14 -07:00