Commit Graph

245 Commits

Author SHA1 Message Date
Sparky
7c3ed19c4b Real Time (#11076) 2021-02-16 20:47:45 +01:00
Werner
1762f16344 Migrate basic build to drone (#10651)
* Adds drone tasks to Execute UTs on Aurora and Exodus
* Adds a drone task to Migrate SQL and Perform the SQL UT on Runtime
* Changes the SQL UT to respect the config.sql_enabled setting and
  use that sql connection
* Changes the default config.sql_enabled state to 0, so uncommenting
  SQL_ENABLED has a actual effect
* Moves a number of UT tests into a helper script (code_check.sh)
* Updates the way the RUST_G dll/so is located
* Adds a check to load_databases to verify that sql is enabled
* Adds a check to establish_db_connection to verify that sql is enabled
* Adds spearate config files used during the UTs (which hold the UT db
  connection info and enable/disable the db epending on the UT)
2020-11-26 17:13:56 +01:00
Geeves
7af7d3187b Remote Canisters (#10563) 2020-11-22 10:57:16 +01:00
JohnWildkins
616776f886 Modular PDAs: The End of an Era (#10319)
PDAs are dead, long live PDAs. All trace of old PDAs has been scoured from the codebase, and in its place are modular computer PDAs that are feature-equivalent. Essentially every PDA function except the Syndicate detonation feature and Notepad has been ported over, and battery life for handheld computers has been boosted alongside the addition of charging cables to make things easier.
2020-11-01 21:09:50 +02:00
Doc
701c29eba1 Up round-end time by 60 seconds (#10243) 2020-10-17 18:55:37 +02:00
Alberyk
e23d715c87 Adds a lore summary button to the title menu (#10164)
* kyres request

* stuff
2020-10-08 17:47:28 +02:00
Erki
5ea7f6995e Preloading RSC from external URLs (#10095)
Ports the external URL preloading from tg-station. This allows us to point the config to an external URL, from which the .rsc file will be downloaded. This will be way faster than using the BYOND system, as we don't have to deal with BYOND's netcode.
2020-09-26 22:46:47 +03:00
Cyantime
1a8940bbd8 Adds defines for species and bodytypes (#9707) 2020-08-24 13:59:24 +02:00
Erki
7097912fd1 Adds LDAP but for 2d spessmen (#9527) 2020-08-10 13:56:39 +02:00
Matt Atlas
67b4e8a88c Fixes shells and shit having 300 health instead of 200 (#9524)
This means that you need -100 health to die currently, which is 200 - 300 for most species, which means you need to do 300 damage, which is bullshit.
2020-07-30 15:29:53 +03:00
Alberyk
88ce3ff47c Revert "Adds glide_size to atom_movable and removes tickcomp (#9373)" (#9402)
Either the pr is not working or I did something wrong on my side.
2020-07-19 22:40:44 -03:00
Matt Atlas
f97101f18b Adds glide_size to atom_movable and removes tickcomp (#9373) 2020-07-19 20:30:14 -03:00
Wowzewow (Wezzy)
0e721743b8 Fixes loadout slot buttons (#9208) 2020-06-26 12:57:30 +02:00
Matt Atlas
de38551038 Revert "Ports Bay's stamina/sprinting intent system. (#8805)" (#9182)
This shit is just full of issues that keep popping up and frankly I can't be fucked to deal with them.

Note: I'll probably do the same thing again but very simplified later on. This iteration is a mistake in how much of a mess it is, unfortunately.
2020-06-23 20:07:06 +03:00
Matt Atlas
56a3c517e7 Ports Bay's stamina/sprinting intent system. (#8805)
Now this might actually be the last of the ports before I actually code things I swear.

Ports Baystation12/Baystation12#25773 and adds sprinting by holding the shift key, also adding the option to add more movement intents for species with their own slowdown etc etc.
2020-06-18 23:35:29 +03:00
Erki
ced8c44d51 Automated Profiler (#9053)
Adds a lock-up detecting profiler to the game, using BYOND's new programmatic access to the profiler.

The idea is that we have an SS that's roughly called every tick. This will detect a lock-up by using world.timeofday. There might be a small issue with midnight rollover but eh. Don't. Really care. A notice is printed for each printout. These can later be processed in Python.
2020-06-10 09:03:24 +03:00
Erki
7cc7bcfdd2 Implements the pulling of news from the forums (#8887) 2020-05-21 12:45:07 +02:00
skull132
0907c95842 Revert "Revert "IPC Tag Project (#8649)""
This reverts commit bf11747fc3.
2020-05-08 23:30:08 +03:00
Werner
bf11747fc3 Revert "IPC Tag Project (#8649)"
This reverts commit f076f391f4.
2020-04-28 15:29:36 +02:00
Geeves
f076f391f4 IPC Tag Project (#8649) 2020-04-28 14:45:56 +02:00
Alberyk
486cd1e78d Changes that the emergency shuttle can only be called after one hour (#8639) 2020-04-13 23:33:57 -03:00
Matt Atlas
2e5fdf970c Landmark Shuttles (#8512)
The lifeless live again. Or in this case, what never actually lived here.

Ports Baystation12/Baystation12#17460 probably for real this time. What this allows us to do is create shuttles on runtime and make shuttles easier by just making landmarks and a shuttle instead of areas and shuttles. Also allows runtime landmark creation via flares or whatever AND allows shuttles to use different landmarks at will.

I removed most of the overmap stuff, I think. It shouldn't be hard to slam it in whenever we need to.

Changes:

    "Shuttle code has been completely reworked."
    "Shuttles can now be modified to have more than one destination."
    "Shuttles now have a takeoff sound."
    "You can now throw mobs against walls to damage them. A lot."
    "You now need a neckgrab to throw mobs."
    "BEING UNBUCKLED DURING SHUTTLE LAUNCH IS DANGEROUS! Don't do it."
    "Adminghosts can now interact with all shuttles."
2020-04-05 21:15:31 +03:00
Erki
18e03e0a02 rustg for UDP shipping (#7897)
The C++ UDP logging library has been swapped out with a rustg implementation. The rustg library uses non-blocking IO mode, and hopefully has less trouble than the C++ one. Though we'll have to see. It should error when the call is supposed to block.

The old library has been removed.
2020-01-11 21:17:41 +02:00
Erki
6d0e1a7f1b Fail2topic (#7925)
Adds a system for autobanning IPs which abuse the world/Topic API. The implementation is very analogous to fail2ban. All bans implemented are removed at round end, or at the start of the next round. This is to stop the windows firewall from getting clogged to hell. The system respects whitelisted IPs.
2020-01-05 20:34:43 +02:00
Werner
cb4a712851 Enforces Lineendings and adds Editorconfig (#7657) 2019-12-21 16:19:24 +01:00
Matt Atlas
ab2723a3c5 Security equip. fixes/buffs, general brainmed fixes, agony + halloss into pain (#7699)
tweak: "Security's base nonlethal equipment - tasers and rubbers - is now a bit better."
    bugfix: "Fixed teargas doing practically nothing."
    bugfix: "Fixed a lot of stuff not applying pain damage. Ow."
    bugfix: "Fixed undefined values on the CMC."
    bugfix: "Fixed dionae not regenerating damage."
2019-12-18 09:15:17 +02:00
Matt Atlas
ca1e06d6c7 Adds distress beacons instead of the current ERT call (#7169) 2019-10-27 14:35:24 +01:00
BurgerLUA
4d1c49d97d Explosion Config Flexibility (#7024)
Adds a new config option that subtracts a flat value from power when going across z-levels in in iterative explosion modes. This should make it easier to balance explosions across z-levels.
2019-10-27 10:31:09 +02:00
Werner
60073ab556 Fixes issues with the API whitelist (#6865)
* Fixes issues with the API whitelist

* Update code/modules/world_api/api_command.dm

Co-Authored-By: Erki <skull132@users.noreply.github.com>
2019-08-14 10:10:08 +03:00
Lady Fowl
bb4007a912 Overhauls Custom Synthetic Code (#6803)
Loads custom synths from json or SQL as opposed to a txt file. Adds support for multiple borg sprites, ai chassis and custom ai hologram sprites as opposed to one sprite per player. Adds the ability to use custom pai sprites
2019-08-07 21:30:01 +03:00
Erki
68c2c2e739 Separate Dead OOC Allowed From Dead LOOC Allowed (#6797)
Currently, DISABLE_DEAD_OOC is used as a singular toggle for determining whether or not ghosts can talk on both OOC and LOOC. This is undesireable, should we wish to only disable their access to LOOC via config.

This PR implements a DISABLE_DEAD_LOOC config flag, which explicitly restricts the access of dead people to LOOC. While leaving DISABLE_DEAD_OOC as its own flag for when we want to exclusively restrict global OOC.
2019-08-02 21:04:38 +03:00
Werner
9f5a26d9ff Removes CCIA (#6678)
view duty log verb and changes the way their recorder works.

CCIA recordings are now written to the database once the interview is complete (if enabled) and printed out.
2019-07-17 22:39:31 +03:00
MarinaGryphon
0cd61f4f48 Adds Random Notes (#5644)
Adds SSDocs, which manages randomly spawned documents.
    These documents can be specified in a json file or in a database.
    Adds /obj/random/document and adds /obj/random/document to the loot pool of /obj/random/loot.

Actually adding the notes to spawn is up to loredevs. If there are no notes to choose from, /obj/random/document will leave a blank sheet.

The notes can have HTML in them, meaning custom CSS and images. We're giving the loredevs a good bit of responsibility here.
2019-07-13 17:50:19 +03:00
ParadoxSpace
6916089d4e Replaces Mice w/ Rats (#6625) 2019-07-06 00:03:35 +02:00
Mykhailo Bykhovtsev
035a89da67 Malf new ability of hacking maintenance drones (#6379) 2019-05-31 23:10:48 +02:00
Karolis
96c2e1c163 Adds external auth (#6380) 2019-05-10 00:05:58 +02:00
William Lemon
4e365c0eaf NTSL2+ (#6256)
Warning! Big Scary Change!
NTSL2+ is a re-work of NTSL.
The goals of this rework are to remove worries regarding server load, and make it impossible for a malicious program to crash the server.
The result is an asynchronous daemon based interpreted language, called NTSL2+.

The Daemon in question can be found Here

Features:

Programming Language worth considering a programming language
Limit-able execution - Unable to hold the server up
Runs on Modular Computers
Shitty in-game networking.
Players can finally write their own laptop programs I cannot stress that enough.
2019-04-20 18:24:04 +03:00
Werner
3eebf17cde ERT/TCFL Chance Tweaks (#6012) 2019-03-12 00:09:19 +01:00
LordFowl
8d436c4a03 Converts all necessary << outputs into the to_chat() macro. (#6076)
This PR will lead us towards the Promised Day, for in its wake there shall be much celebration and ecstasy as this world becomes a world suitable for developer hegemony. The first strike is thusly;

All << is converted into to_chat().
2019-03-10 23:39:03 +02:00
Erki
25b5f7ca8b Log TGS shenanigans. (#5892) 2019-02-18 08:59:28 +02:00
Erki
2daef5c6b6 Announcing live test PRs (#5857)
* Implement one.

* REVERT ME LATER

* Initial implementation dooonnee.

* log

* Fixes

* Lazyness squared
2018-12-31 03:55:16 +01:00
BurgerLUA
b1c1eaf2b3 Reverts #5773 and adds debug messages for Antag Selection (#5777)
See title. Extended was running 24/7 for some reason and I would like to know why.

Fixes #5776
2018-12-16 20:05:35 +02:00
BurgerLUA
4cbd2f4e2c Gamemode Start Tweaks (#5719)
When the round refuses to start because of a lack of players or lack of antags, it will properly state this instead of stating that there aren't enough players.

The Wizard gamemode, and the Ninja gamemode, both have restrictions that prevent the gamemode from being launched if there are more than 15 players, unless it was voted specifically.
2018-12-11 20:38:31 +01:00
Erki
a85c687146 Allow hard daemon reboots at regular intervals to help with memory (#5503)
DreamDaemon leaks memory between restarts, which might exacerbate us potentially running out of memory. This allows us to reboot the server every n rounds.

Also refactors the way we handle things that should be saved inbetween rounds. Like gamemode and the restart counter.
2018-11-04 18:38:10 +02:00
Erki
a6be2156f8 Travis Musings (#5116)
Bumps Flyway.
Moves a script that should be a code check to the code checks.
2018-11-03 23:36:36 +01:00
BurgerLUA
1bd59b6532 [Ready] Asteroid Dungeons (#4884)
Adds Asteroid Dungeons framework to the game. Mappers can make their own asteroid dungeons to the game. Currently there are no asteroid dungeons that can be loaded.

Anyone can make a dungeon like anyone could make a change to a map. A readme file is included inside the maps directory for information regarding how to add your own dungeon to the map.

There's an added config function in the example config that determines whether or not asteroid dungeons spawn. I also included 2 bat files in mapmerge and mapmerge2 that backup the asteroid dungeons spawns so that they can be used in mapmerge.
2018-07-20 22:10:35 +02:00
Erki
18baa01d0a Ticket improvements (#4432)
Adds some features and fixes some shit:

Closing of tickets sent to Discord will now alert discord as well.
Adds a reminder period for tickets which starts after they're opened. It's intended to remind staff to close their tickets. Say, something like 10 minutes since opening sounds like a solid idea. If the staff who claimed it is offline, then all staff are reminded of it.
Adds the logging of all tickets to the database at the end of round. Sortable by staff closing, person opening, time opened, time closed, and round ID. This is primarily for Aboshehab.
2018-03-25 16:32:12 +03:00
Erki
7a0e0d6edb Blacklisting of builds (#4274)
Because Lummox enjoys breaking shit and we need to do this.
2018-02-11 01:55:33 +02:00
Lohikar
db53ff3630 Asset Preload (#4055) 2018-01-06 16:30:50 -06:00
Lohikar
6debd29cb7 Iterative Explosions (#3838)
This PR replaces recursive explosions with a new spreading engine: iterative explosions.
Should behave similarly, but also be more reliable, potentially faster.

Iterative explosions also support simple-explosion-esque directional explosion sounds/shake, and will now traverse Z-levels if the explosion is strong enough.

Also changes playsound() to transmit sounds across Z-levels. Uses BYOND's 3rd coordinate on /sound to make sound sound above/below the player if they're using headphones. Removed for now, can't get Z-falloff working right.

Fixes #2199.
2017-12-30 04:38:12 +02:00