Commit Graph

308 Commits

Author SHA1 Message Date
Leon Friedrich c44f173f5e
Fix aghost parenting issues. (#11936) 2022-10-16 10:26:24 +11:00
Morb 5af82ebe9b
Add briefcase in hand & update setoutfit (#11634) 2022-10-15 14:22:27 -07:00
Nemanja f6234c7920
view ghosts on round end (#11680)
* view ghosts on round end

* now make it good

* it toggles now i hope
2022-10-05 21:55:11 -05:00
Kara db1dfc8958
Command perm modifications (#11273)
* Command perm modifications

* actually not this one

* string
2022-09-14 19:02:38 -05:00
Visne 356a6b8d2e
Event-ify Rejuvenate (#11145) 2022-09-15 03:30:56 +10:00
metalgearsloth b3581d11c6
Update maploader to support loading onto an existing map (#10748) 2022-09-14 14:05:48 +10:00
metalgearsloth 72bc05e3ac
Add department bans (#11085)
* Add department bans

Also localised some stuff while I was there.

* loc
2022-09-08 17:06:21 -05:00
Leon Friedrich 414f32a4ee
Make ghost warp use `AttachToGridOrMap()` (#11069) 2022-09-05 22:36:52 -07:00
metalgearsloth 5b42861539
Smooth docking traversal (#10822) 2022-08-29 15:05:53 +10:00
Moony 6fe29d1c66
Update PlayTimeCommands.cs (#10596)
pjb forgor to make it possible to actually use the command.
2022-08-14 13:16:47 -07:00
wrexbe c4d135e253
Refactor lobby status (#10550) 2022-08-14 12:54:49 -07:00
Moony a2d8e96a53
Fix localization for playtime. (#10389) 2022-08-08 08:43:27 +10:00
Pieter-Jan Briers e852ada6c8
Play time tracking: Job timers 3: more titles: when the (#9978)
Co-authored-by: Veritius <veritiusgaming@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-08-07 16:00:42 +10:00
metalgearsloth b7bedcd282
Probably fix adminnotes for offline players (#10292)
Works with 2 clients on my machine
2022-08-04 17:52:13 +02:00
metalgearsloth 4d5d4cc564
Make controlmob not require sentience (#9479) 2022-07-14 22:34:07 +10:00
Nemanja 5edf2ccad5
EntityStorage ECS (#9291) 2022-07-14 09:11:59 +10:00
metalgearsloth a2a5df1990
Damage masks (#9402) 2022-07-06 17:58:14 +10:00
metalgearsloth bdbed1e665
Allow adminnotes to use username (#9388)
No I'm not going to the ban panel to find someone's GUID.
2022-07-03 16:34:16 -05:00
Moony e038ae4820
fix variantize (#9348) 2022-07-02 18:29:47 -07:00
Moony 8e90bf46e9
Implements panic bunkering. (#9315)
* Implements panic bunkering.
Helps with raid management, esp with unknown accounts.

* adds an enable/disable command.
2022-07-01 22:46:37 +02:00
Moony 0ec3bc23cb
Revert "Adds a tool for importing .netset files into the ban DB. (#9016)" (#9149)
This reverts commit b13e672393.
2022-06-25 14:02:41 -05:00
Moony b13e672393
Adds a tool for importing .netset files into the ban DB. (#9016)
* Adds a tool for importing .netset files into the ban DB.

* Adds a static variable so it's clear what the GUID is.
2022-06-25 10:52:05 -07:00
Kara 4d8ff35640
Roleban completions (#9114)
* Roleban completions

* helpers

* eat my peenor dumb robot
2022-06-24 21:14:47 +10:00
Rane a1affccc84
Miasma improvements (#9022) 2022-06-24 01:20:52 -07:00
metalgearsloth 3da454140d
Add department-specific radio channels (#9061)
* Add department-specific radio channels

This commit adds working department-specific radio channels, while
minimizing damage to the current codebase. It is expected that a future
refactor will clean this up a bit.

ChatSystem now has a RadioPrefix() method that recognizes
department-specific channels (e.g. ":e" and ":m") in addition to the
global channel (";"). It strips the prefix from the message and assigns
messages an integer representing the destination channel, if any.

IListen and IRadio now accept optional 'channel' arguments with this
channel in mind.

The ugly is that the integer channel number is hard-coded and also shows
up in chat.

Comms are not modeled at this time. You cannot break comms (yet).

All headsets have channels soldered into them. You cannot change
encryption keys to hop on new channels. Steal a headset instead.

* Remove debugging print

* Convert to prototypes

* Use prototype names in headset prototype

* Adjust list style

* Document prototype fields

* cringe

* some cleanup

* colours

* Remove alphas at least

* cc

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
2022-06-23 20:11:03 +10:00
KIBORG04 58da937259
Displaying of player characters in the round end statistics (#9006)
* All in one

* using fix

* Update GameTicker.RoundFlow.cs

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
2022-06-23 19:32:06 +10:00
Leon Friedrich fa4c6f63f8
Nullable grid Uid (#8798) 2022-06-20 10:14:35 +10:00
Júlio César Ueti de9c5084e0
Renames jobban to roleban so all role commands follow the pattern roleX. (#8754)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-06-12 13:25:11 +10:00
Acruid 4f9be42f40
Remove Explicit GridId References (#8315)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-06-12 11:54:41 +10:00
Leon Friedrich ca7960382b
Missing nullables (#8634) 2022-06-04 17:17:48 +10:00
ike709 5ae56c67e1
Adds the ability to not play admin sounds (#8242)
Co-authored-by: ike709 <ike709@github.com>
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2022-06-02 15:41:19 +02:00
wrexbe e649dcea14
Dirty command fix (#8534) 2022-05-30 00:10:57 -07:00
wrexbe 219609d358
Dirty Command (#8533)
Dirty Command

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-05-30 00:06:50 -07:00
wrexbe 1e0babbd50
Make AdminLogsSystem an IoC manager (#8492)
* Make log not entity system

* Fixes
2022-05-28 23:41:17 -07:00
Moony 130302a262
Adds twenty-one new smites, moves the explosion smite to the verb category. (#8456)
* Adds seven new smites, moves the explosion smite to the verb category.

* adds even more smites.

* Even more smites, some messages for specific smites.

* Adds even more smites.

* Removes some junk, adds a smite that angers the pointing arrows.

* get rid of dumb component.

* Remove mistake from verb menu presentation.

* How did that happen?

* whoops

* c

* e

* fuck

* Loading...

* removes the BoM go away

* adds the funny kill sign. Fixes ghost smite.

* Move systems around.

* Adjust organ vomit.

* Adds a smite that turns people into an instrument, and one that removes their gravity.

* oops

* typo

Co-authored-by: Veritius <veritiusgaming@gmail.com>
2022-05-27 00:41:18 -07:00
Pieter-Jan Briers 4f9f9e5942
Completions for the warp command (#8470) 2022-05-27 10:19:31 +10:00
Kara c6f5734bdc
Make adminwho require admin perms (#8421) 2022-05-25 10:49:22 +10:00
EmoGarbage404 2697bbf8c7
Polymorphs and Transformation (#8185) 2022-05-18 14:05:22 +10:00
Pieter-Jan Briers ddb4c00816
Console completions (content side) (#8211) 2022-05-18 12:36:21 +10:00
metalgearsloth b1ccdb7238
Fix playglobalsound volume (#8208) 2022-05-16 23:31:51 +10:00
wrexbe bc68ac96dd
Cleanup the namespaces (#8132) 2022-05-13 17:59:03 +10:00
wrexbe 61d147aea9
Fixing warnings (#8131) 2022-05-13 15:35:13 +10:00
wrexbe 9a4892a272
Add listgamemaps command (#8093) 2022-05-11 13:48:29 -07:00
Moony 36181334b5
StationSystem/jobs/partial spawning refactor (#7580)
* Partial work on StationSystem refactor.

* WIP station jobs API.

* forgor to fire off grid events.

* Partial implementation of StationSpawningSystem

* whoops infinite loop.

* Spawners should work now.

* it compiles.

* tfw

* Vestigial code cleanup.

* fix station deletion.

* attempt to make tests go brr

* add latejoin spawnpoints to test maps.

* make sure the station still exists while destructing spawners.

* forgot an exists check.

* destruction order check.

* hopefully fix final test.

* fail-safe radstorm.

* Deep-clean job code further. This is bugged!!!!!

* Fix job bug. (init order moment)

* whooo cleanup

* New job selection algorithm that tries to distribute fairly across stations.

* small nitpicks

* Give the heads their weights to replace the head field.

* make overflow assign take a station list.

* moment

* Fixes and test #1 of many.

* please fix nullspace

* AssignJobs should no longer even consider showing up on a trace.

* add comment.

* Introduce station configs, praying i didn't miss something.

* in one small change stations are now fully serializable.

* Further doc comments.

* whoops.

* Solve bug where assignjobs didn't account for roundstart.

* Fix spawning, improve the API.
Caught an oversight in stationsystem that should've broke everything but didn't, whoops.

* Goodbye JobController.

* minor fix..

* fix test fail, remove debug logs.

* quick serialization fixes.

* fixes..

* sus

* partialing

* Update Content.Server/Station/Systems/StationJobsSystem.Roundstart.cs

Co-authored-by: Kara <lunarautomaton6@gmail.com>

* Use dirtying to avoid rebuilding the list 2,100 times.

* add a bajillion more lines of docs (mostly in AssignJobs so i don't ever forget how it works)

* Update Content.IntegrationTests/Tests/Station/StationJobsTest.cs

Co-authored-by: Kara <lunarautomaton6@gmail.com>

* Add the Mysteriously Missing Captain Check.

* Put maprender back the way it belongs.

* I love addressing reviews.

* Update Content.Server/Station/Systems/StationJobsSystem.cs

Co-authored-by: Kara <lunarautomaton6@gmail.com>

* doc cleanup.

* Fix bureaucratic error, add job slot tests.

* zero cost abstractions when

* cri

* saner error.

* Fix spawning failing certain tests due to gameticker not handling falliability correctly.
Can't fix this until I refactor the rest of spawning code.

* submodule gaming

* Packedenger.

* Documentation consistency.

Co-authored-by: Kara <lunarautomaton6@gmail.com>
2022-05-10 13:43:30 -05:00
MLGTASTICa 02de328d9c
Fixes thirst not applying speed debuffs properly , Makes Thirst a server-side component only (#7767)
Co-authored-by: MLGTASTICa <ak9bc01d@yahoo.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-05-09 15:50:36 +10:00
metalgearsloth 983b004607
Make playglobalsound much quiter (#7910)
* Make playglobalsound default much quieter

Also adds volume override.

* tweak

* reviews by the cutest gradient girl
2022-05-03 19:32:32 +10:00
Leon Friedrich 1141c19d76
Toggleable Hardsuit Helmets (#7559) 2022-04-23 13:31:45 +10:00
DrSmugleaf 5227d1a023
Admin notes (#7259)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-04-16 20:57:50 +02:00
Moony 4d70395d11
Fix maploading once and for all. (#7501) 2022-04-15 14:35:58 -07:00
Rane 28c615ea09
Rejuvenate cures all diseases (#7495) 2022-04-11 12:46:35 +02:00
Leon Friedrich 56168e592e
Explosion refactor (#5230)
* Explosions

* fix yaml typo

and prevent silly UI inputs

* oop

* Use modified contains() checks

And remove IEnumerable

* Buff nuke, nerf meteors

* optimize the entity lookup stuff a bit

* fix tile (0,0) error

forgot to do an initial Enumerator.MoveNext(), so the first tile was always the "null" tile.

* remove celebration

* byte -> int

* remove diag edge tile dict

* fix one bug

but there is another

* fix the other bug

turns out dividing a ushort leads to rounding errors.  Why TF is the grid tile size even a ushort in the first place.

* improve edge map

* fix minor bug

If the initial-explosion tile had an airtight entity on it, the tile was processed twice.

* some reviews (transform queries, eye.mapid, and tilesizes in overlays)

* Apply suggestions from code review

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* is map paused

* GetAllTiles ignores space by default

* WriteLine -> WriteError

* First -> FirstOrDefault()

* default prototype const string

* entity query

* misc review changes

* grid edge max distance

* fix fire texture defn

bad use of type serializer and ioc-resolves

* Remove ExplosionLaunched

And allow nukes to throw items towards the outer part of an explosion

* no hot-reload disclaimer

* replace prototype id string with int index

* optimise damage a tiiiiny bit.

* entity queries

* comments

* misc mirror comments

* cvars

* admin logs

* move intensity-per-state to prototype

* update tile event to ECS event

* git mv

* Tweak rpg & minibomb

also fix merge bug

* you don't exist anymore go away

* Fix build

Co-authored-by: moonheart08 <moonheart08@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-03-31 21:39:26 -05:00
mirrorcult 70f0fffed2
ChatManager murder (#7337) 2022-03-31 16:21:58 +11:00
Vera Aguilera Puerto b115eb0d93
Adds PlayGlobalSound command. (#7249) 2022-03-25 13:08:32 +01:00
Moony 12b682ee4d
Tile variants content (#6956) 2022-03-09 20:59:44 +01:00
Leon Friedrich c95516e5b2
Revert "Explosion refactor TEST MERG (#6995)" (#7005) 2022-03-06 04:02:34 +11:00
Moony 4a466f4927
Explosion refactor TEST MERG (#6995)
* Explosions

* fix yaml typo

and prevent silly UI inputs

* oop

Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2022-03-04 13:48:01 -06:00
ShadowCommander 4a68718050
Role ban improvements (#6855) 2022-02-21 22:00:55 -07:00
ShadowCommander 4825142210
Role bans (#6703) 2022-02-21 23:11:39 +01:00
mirrorcult e85bdc2d87
More blood tweaks (#6811) 2022-02-20 17:18:24 -07:00
mirrorcult 34c96439f6
Detach ghosts from parents on spawn (#6816) 2022-02-19 23:16:55 -07:00
mirrorcult ec4d4688c7
Seal/abstract/virtual everything (#6739) 2022-02-16 18:23:23 +11:00
metalgearsloth 434580845b
Fix map yaml linter (#6433) 2022-02-01 14:05:55 +01:00
mirrorcult 5249ea057a
Kill bobby 2.0 (#6023) 2022-01-04 10:17:39 +01:00
Paul Ritter 512d6a38c3
get that crap outta here (completely rewrites inventorysystem) (#5807)
* some work

* equip: done
unequip: todo

* unequipping done & refactored events

* workin

* movin

* reee namespaces

* stun

* mobstate

* fixes

* some work on events

* removes serverside itemcomp & misc fixes

* work

* smol merge fix

* ports template to prototype & finishes ui

* moves relay & adds containerenumerator

* actions & cuffs

* my god what is actioncode

* more fixes

* im loosing my grasp on reality

* more fixes

* more work

* explosions

* yes

* more work

* more fixes

* merge master & misc fixed because i forgot to commit before merging master

* more fixes

* fixes

* moar

* more work

* moar fixes

* suffixmap

* more work on client

* motivation low

* no. no containers

* mirroring client to server

* fixes

* move serverinvcomp

* serverinventorycomponent is dead

* gaming

* only strippable & ai left...

* only ai and richtext left

* fixes ai

* fixes

* fixes sprite layers

* more fixes

* resolves optional

* yes

* stable™️

* fixes

* moar fixes

* moar

* fix some tests

* lmao

* no comment

* good to merge™️

* fixes build but for real

* adresses some reviews

* adresses some more reviews

* nullables, yo

* fixes lobbyscreen

* timid refactor to differentiate actor & target

* adresses more reviews

* more

* my god what a mess

* removed the rest of duplicates

* removed duplicate slotflags and renamed shoes to feet

* removes another unused one

* yes

* fixes lobby & makes tryunequip return unequipped item

* fixes

* some funny renames

* fixes

* misc improvements to attemptevents

* fixes

* merge fixes

Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
TemporalOroboros 201952e618
Adds temperature to solutions (#5834) 2021-12-24 02:22:34 -07:00
Leon Friedrich 7e49b22a74
Verb predict (#5638) 2021-12-16 21:42:02 +11:00
metalgearsloth f110e28021
Fix openahelp and quit command perms (#5763)
Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>
2021-12-12 22:45:49 -07:00
Vera Aguilera Puerto 8c351e5456 Merge branch 'master' into 2021-12-03-remove-IEntity-komm-süsser-todd 2021-12-09 10:39:11 +01:00
DrSmugleaf 81c0b1e174 Add admin logs window pop out button, default to docked
Default to unmaximized
2021-12-09 00:05:42 +01:00
Vera Aguilera Puerto ba736f70df Remove many resolves on Content.Server 2021-12-08 17:04:21 +01:00
Vera Aguilera Puerto c57b07a4d0 Goes in-game now 2021-12-06 15:34:46 +01:00
metalgearsloth 525297c5fe A bunch of AttachedEntity bullshit 2021-12-06 15:39:46 +11:00
DrSmugleaf 2a3b7d809d Fix 3000 errors 2021-12-05 18:09:01 +01:00
Vera Aguilera Puerto 5cd42c9ad6 Inline UID 2021-12-03 15:53:09 +01:00
Vera Aguilera Puerto ee4ff9cfe8 Inline Name 2021-12-03 15:25:51 +01:00
Vera Aguilera Puerto 61be228ad0 Some manual GetComponentOrNull inlines 2021-12-03 15:18:15 +01:00
Vera Aguilera Puerto a5b57c8e10 Inline Transform 2021-12-03 14:20:34 +01:00
Vera Aguilera Puerto 69b270017b Inline TryGetComponent completely, for real 2021-12-03 14:17:01 +01:00
Vera Aguilera Puerto 0feebbff00 Inline HasComponent entirely 2021-12-03 12:23:18 +01:00
Vera Aguilera Puerto b835bea086 Inline GetComponent 2021-12-03 11:55:25 +01:00
Vera Aguilera Puerto e3227546b3 Inline Delete 2021-12-03 11:43:03 +01:00
Vera Aguilera Puerto f10ed6c0c3 Inline GetAllComponents 2021-12-03 11:42:24 +01:00
Vera Aguilera Puerto e0fe09cb46 Inline RemoveComponent 2021-12-03 11:34:00 +01:00
Vera Aguilera Puerto 70bbd8c502 Inline Prototype 2021-12-03 11:18:05 +01:00
Moony cc1741f0a9
Shuffle around command perms for trial admin (#5606) 2021-11-29 21:40:10 +01:00
mirrorcult fc4a950257
Split Respirator into ThermalRegulator and Respirator and ECSes both (#5603) 2021-11-28 19:25:42 -07:00
Pieter-Jan Briers 64861ff034
Add Content.Shared.Database (#5588) 2021-11-28 14:56:53 +01:00
Moony 7792c0b5f1
Station management commands (#5553) 2021-11-26 23:43:43 -07:00
Moony 469d57f34e
owo (#5510)
* owo

* URGENT FIXES

* typo moment
2021-11-26 23:43:33 -07:00
Moony ec68226e99
Refactor how jobs are handed out (#5422)
* Completely refactor how job spawning works

* Remove remains of old system.

* Squash the final bug, cleanup.

* Attempt to fix tests

* Adjusts packed's round-start crew roster, re-enables a bunch of old roles.
Also adds the Central Command Official as a proper role.

* pretty up ui

* refactor StationSystem into the correct folder & namespace.

* remove a log, make sure the lobby gets updated if a new map is spontaneously added.

* re-add accidentally removed log

* We do a little logging

* we do a little resolving

* we do a little documenting

* Renamed OverflowJob to FallbackOverflowJob
Allows stations to configure their own roundstart overflow job list.

* narrator: it did not compile

* oops

* support having no overflow jobs

* filescope for consistency

* small fixes

* Bumps a few role counts for Packed, namely engis

* log moment

* E

* Update Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml

Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>

* Update Content.Server/Maps/GameMapPrototype.cs

Co-authored-by: Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>

* factored job logic, cleanup.

* e

* Address reviews

* Remove the concept of a "default" grid.
It has no future in our new multi-station world

* why was clickable using that in the first place

* fix bad evil bug that almost slipped through
also adds chemist

* rms obsolete things from chemist

* Adds a sanity fallback

* address reviews

* adds ability to set name

* fuck

* cleanup joingame
2021-11-26 20:02:46 +11:00
DrSmugleaf af6353da46 Add admin logs for shuttle call/recall 2021-11-22 21:31:50 +01:00
DrSmugleaf c3fe5909ad THE RETURN OF THE KING
This reverts commit c18d07538a.
2021-11-22 19:08:27 +01:00
DrSmugleaf c18d07538a Revert "Admin logs (#5419)"
This reverts commit 319aec109d.
2021-11-22 18:55:17 +01:00
Javier Guardia Fernández 319aec109d
Admin logs (#5419)
* Add admin logging, models, migrations

* Add logging damage changes

* Add Log admin flag, LogFilter, Logs admin menu tab, message
Refactor admin logging API

* Change admin log get method names

* Fix the name again

* Minute amount of reorganization

* Reset Postgres db snapshot

* Reset Sqlite db snapshot

* Make AdminLog have a composite primary key of round, id

* Minute cleanup

* Change admin system to do a type check instead of index check

* Make admin logs use C# 10 interpolated string handlers

* Implement UI on its own window
Custom controls
Searching
Add admin log converters

* Implement limits into the query

* Change logs to be put into an OutputPanel instead for text wrapping

* Add log <-> player m2m relationship back

* UI improvements, make text wrap, add separators

* Remove entity prefix from damaged log

* Add explicit m2m model, fix any players filter

* Add debug command to test bulk adding logs

* Admin logs now just kinda go

* Add histogram for database update time

* Make admin log system update run every 5 seconds

* Add a cap to the log queue and a metric for how many times it has been reached

* Add metric for logs sent in a round

* Make cvars out of admin logs queue send delay and cap

* Merge fixes

* Reset some changes

* Add test for adding and getting a single log

* Add tests for bulk adding logs

* Add test for querying logs

* Add CallerArgumentExpression to LogStringHandler methods and test

* Improve UI, fix SQLite, add searching by round

* Add entities to admin logs

* Move distinct after orderby

* Add migrations

* ef core eat my ass

* Add cvar for client logs batch size

* Sort logs from newest to oldest by default

* Merge fixes

* Reorganize tests and add one for date ordering

* Add note to log types to not change their numeric values

* Add impacts to logs, better UI filtering

* Make log add callable from shared for convenience

* Get current round id directly from game ticker

* Revert namespace change for DamageableSystem
2021-11-22 18:49:26 +01:00
20kdc 4cce40bd9f
Ghost roles create new minds, better tracking of roles at round end screen (#5175)
* Ghost roles now get new Minds

* Some round start/end button stuff

* Mind tracking for better round end reports

* Make traitor kill objectives use mind CharacterName rather than actual occupied entity ("kill brain" prevention)

* Transition over to EntityUid for mind stuff because that's the only way to do it

* BrainSystem fix for PR rebase
2021-11-15 11:14:34 -07:00
Pieter-Jan Briers 5923c848d2 Admins can see if other admins are AFK. 2021-11-15 14:13:18 +01:00
Pieter-Jan Briers b83ee83c22 Add adminwho command. 2021-11-15 09:10:57 +01:00
mirrorcult 457e8c64ee
Convert StomachBehavior to a component/system + rejig body namespaces (#5249)
* Convert StomachBehavior to a component/system + rejig body namespaces

* test

* slightly more namespace changes

* remove

* Hello?????

* fuck you github test runner

* reviews

* oobsy!
2021-11-11 16:10:57 -07:00
Javier Guardia Fernández 42aaba9a5d
Remove most IEntity usages from explosions (#5240)
* Remove most IEntity usages from Destructible and Explosions

* Perform a minute amount of cleanup

* Fix build
2021-11-09 21:24:35 +01:00
Javier Guardia Fernández f5b11d6af8
Remove IMobStateComponent (#5220) 2021-11-08 15:11:58 +01:00
Vera Aguilera Puerto e6e15b3728 Replace all ITransformComponent by TransformComponent 2021-11-08 12:37:32 +01:00
Leon Friedrich 3612d25539
Fix & extend add reagent verb (#4954)
* AddReagentWindow

* addReagent command

* functional UI

* fix networking

* add comments & docstrings

* Remove unecesary system

* cleanup & close-eui

* tweak default window size

* fix EUI closing error

* fix merge issues

* fix merge
2021-11-08 15:22:42 +11:00
moonheart08 a27c1d9bd9
funny container commands (#5113) 2021-11-02 15:32:58 +11:00
ShadowCommander 0e33b246db
Fix ControlMob on already controlled mob (#3868) 2021-11-02 11:11:50 +11:00
moonheart08 1b8b5b5d16
oh god it's BQL time (#5050)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2021-10-31 21:14:44 +01:00
Saphire Lattice 1d136bf18b
Make ban command properly give a ban message instead of a placeholder (#5087) 2021-10-29 20:54:14 +02:00
moonheart08 debd22e19c
Add select (#5003) 2021-10-25 16:23:44 +02:00
moonheart08 89bbb71f75
ForAll command! (#4982)
* ForAll command!
Implements "Bad Query Language", which has a few specifiers you can use for badminning, namely:
named <regex>
prototyped <prototype name>
with <component name>
tagged <tag name>
parented_to <parent entity uid>

For example: forall prototyped MobHuman parented_to 855 do explode $WX $WY 1 1 1 1; addcomp $ID Item

* oops

* fix a silent parsing bug, make parser louder.

* cleanup

* rename shit
2021-10-23 19:15:40 +02:00
mirrorcult ae1ce0b31c
Status effect refactor (#4868)
* Oops! All Changes In One Commit

* try desperately to fix prediction issues and fail

* oops

* test

* actually fixes prediction issues

* port jittering to status effect

* default merge behavior + alert cooldown stuff

* silly test issue

* zabloing

* address reviews
2021-10-15 23:45:04 +02:00
moonheart08 9250bd62cb
Admin shuttle call button (#4859)
* shuttle call ui

* shuttle call ui

* Localize shuttle commands better.

* localization fix
2021-10-13 10:15:28 -07:00
Vera Aguilera Puerto 6eee256b11
Refactors stunnable to be ECS. (#4819)
Also cleans up StandingStatesystem.
2021-10-10 12:47:26 +02:00
moonheart08 d8be2ef784
Makes announcements a +ADMIN command instead of a +FUN command. (#4815) 2021-10-09 18:36:52 +02:00
Vera Aguilera Puerto 67fd509c9f
Adds jittering. (#4809)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2021-10-09 17:30:04 +02:00
moonheart08 f635909d4e
Admin announcement panel. (#4803) 2021-10-09 10:54:27 +02:00
moonheart08 cf8ec622fd
Normalizes the permissions of some commands. (#4796) 2021-10-08 09:41:30 +02:00
Vera Aguilera Puerto 1f72435263 Fix ghosts having empty names under certain conditions.
Fixes #4731
2021-10-06 11:56:16 +02:00
Vera Aguilera Puerto 0cb34858f8 Check if entity has FlammableComponent befor calling Extinguish on Rejuvenate. 2021-10-05 11:14:44 +02:00
Leon Friedrich 6cb58e608b
ECS verbs and update context menu (#4594)
* Functioning ECS verbs

Currently only ID card console works.

* Changed verb types and allow ID card insertions

* Verb GUI sorting and verb networking

* More networking, and shared components

* Clientside verbs work now.

* Verb enums changed to bitmask flags

* Verb Categories redo

* Fix range check

* GasTank Verb

* Remove unnecessary bodypart verb

* Buckle Verb

* buckle & unbuckle verbs

* Updated range checks

* Item cabinet verbs

* Add range user override

* construction verb

* Chemistry machine verbs

* Climb Verb

* Generalise pulled entity verbs

* ViewVariables Verb

* rejuvenate, delete, sentient, control verbs

* Outfit verb

* inrangeunoccluded and tubedirection verbs

* attach-to verbs

* remove unused verbs and move VV

* Rename DebugVerbSystem

* Ghost role and pointing verbs

* Remove global verbs

* Allow verbs to raise events

* Changing categories and simplifying debug verbs

* Add rotate and flip verbs

* fix rejuvenate test

* redo context menu

* new Add Gas debug verb

* Add Set Temperature debug verb

* Uncuff verb

* Disposal unit verbs

* Add pickup verb

* lock/unlock verb

* Remove verb type, add specific verb events

* rename verb messages -> events

* Context menu displays verbs by interaction type

* Updated context menu HandleMove

previously, checked if entities moved 1 tile from click location.

Now checks if entities moved out of view.

Now you can actually right-click interact with yourself while walking!

* Misc Verb menu GUI changes

* Fix non-human/ghost verbs

* Update types and categories

* Allow non-ghost/human to open context menu

* configuration verb

* tagger verb

* Morgue Verbs

* Medical Scanner Verbs

* Fix solution refactor merge issues

* Fix context menu in-view check

* Remove prepare GUI

* Redo verb restrictions

* Fix context menu UI

* Disposal Verbs

* Spill verb

* Light verb

* Hand Held light verb

* power cell verbs

* storage verbs

and adding names to insert/eject

* Pulling verb

* Close context menu on verb execution

* Strip verb

* AmmoBox verb

* fix pull verb

* gun barrel verbs

revolver verb
energy weapon verbs
Bolt action verb

* Magazine gun barrel  verbs

* Add charger verbs

* PDA verbs

* Transfer amount verb

* Add reagent verb

* make alt-click use ECS verbs

* Delete old verb files

* Magboot verb

* finalising tweaks

* context menu visibility changes

* code cleanup

* Update AdminAddReagentUI.cs

* Remove HasFlag

* Consistent verb keys

* Remove Linq, add comment

* Fix in-inventory check

* Update GUI text alignment and padding

* Added close-menu option

* Changed some "interaction" verbs to "activation"

* Remove verb keys, use sorted sets

* fix master merge

* update some verb text

* Undo Changes

Remove some new verbs that can be added later

undid some .ftl bugfixes, can and should be done separately

* fix merge

* Undo file rename

* fix merge

* Misc Cleanup

* remove contraction

* Fix keybinding issue

* fix comment

* merge fix

* fix merge

* fix merge

* fix merge

* fix merge

* fix open-close verbs

* adjust uncuff verb

* fix merge

and undo the renaming of SharedPullableComponent to PullableComponent. I'm tired of all of those merge conflicts
2021-10-04 20:29:03 -07:00
Vera Aguilera Puerto 0be5ff829b
Gets rid of all ComponentManager usages. (#4707) 2021-09-28 13:35:29 +02:00
Vera Aguilera Puerto c4ec9a143d ReadyAll iterates `PlayersInLobby` instead of using `IPlayerManager`. 2021-09-23 13:18:48 +02:00
Vera Aguilera Puerto 55393699b1 ReadyAll no longer spawns people who are observing
Fixes #4650
2021-09-23 13:00:28 +02:00
Pieter-Jan Briers 00fbffcddf AGhost now un-aghosts you if you are already a ghost. 2021-09-21 08:13:47 +02:00
mirrorcult 09f5ec5cb8
Fix can't return to body bug (#4424) 2021-08-06 00:02:36 -07:00
Vera Aguilera Puerto 93acc565f0
Makes Airtight ECS. (#4351)
* Makes Airtight ECS.

* Remove atmos holdovers while at it!
2021-07-25 17:04:58 +10:00
Visne b7dc3c81ae
Remove redundant #nullable enable (#4275) 2021-07-16 17:37:09 -07:00
Galactic Chimp 769daedaa9
#1607 deprecate IEntityQuery (#4204)
* #1607 partial progress

* #1607 partial progress

* #1607 almost done

* #1607 PR suggestions

* #1607 PR suggestions

* #1607 PR suggestions

* #1607 PR tweak

* #1607 PR tweak

* #1607 removed unused namespaces

* #1607 PR tweak

* Fix jank

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2021-06-27 13:40:03 +10:00
Galactic Chimp 392b820796
Removed old Loc.GetString() use instances (#4155)
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2021-06-21 02:13:54 +02:00
Vera Aguilera Puerto d3a611164b
Turns GameTicker into an EntitySystem. (#4197)
* GameTicker turned into an EntitySystem

* Turns ClientGameTicker into an EntitySystem, turn NetMessages into events

* Change event names to be more consistent with the rest.

* YAML linter uses the dummy gameticker CVar override.

* Fix game ticker initialization order

* Dummy ticker won't spawn players.

* Fix character creation test
2021-06-20 10:09:24 +02:00
DrSmugleaf ff1a2d97ea
Re-organize all projects (#4166) 2021-06-09 22:19:39 +02:00
Vera Aguilera Puerto 462cddf860
Use ActorComponent instead of IActorComponent or BasicActorComponent. (#3966) 2021-05-12 13:42:18 +02:00
ShadowCommander 951b0f425a
Refactor mind and ghost deletion code (#3680)
* Refactor mind and ghost deletion code

* Refactor to use EventBus and clean up deletes

* Fix mind eject when being deleted

* Refactor entity manager calls to use IEntity.EntityManager
2021-03-31 14:17:22 -07:00
Pieter-Jan Briers a321b4302e Use HWIDs for bans. 2021-03-22 01:32:09 +01:00
DrSmugleaf a5ade526b7
Enable nullability in Content.Server (#3685) 2021-03-16 15:50:20 +01:00
Pieter-Jan Briers 1818b561f8 You can now ban people that aren't on the server. Or that have never JOINED the server in the first place. Amazing! 2021-03-08 02:23:44 +01:00
metalgearsloth 4d064abcd7
Physics (#3485)
* Content side new physics structure

* BroadPhase outline done

* But we need to fix WorldAABB

* Fix static pvs AABB

* Fix import

* Rando fixes

* B is for balloon

* Change human mob hitbox to circle

* Decent movement

* Start adding friction to player controller

I think it's the best way to go about it to keep other objects somewhat consistent for physics.

* This baby can fit so many physics bugs in it.

* Slight mob mover optimisations.

* Player mover kinda works okay.

* Beginnings of testbed

* More testbed

* Circlestack bed

* Namespaces

* BB fixes

* Pull WorldAABB

* Joint pulling

* Semi-decent movement I guess.

* Pulling better

* Bullet controller + old movement

* im too dumb for this shit

* Use kinematic mob controller again

It's probably for the best TBH

* Stashed shitcode

* Remove SlipController

* In which movement code is entirely refactored

* Singularity fix

* Fix ApplyLinearImpulse

* MoveRelay fix

* Fix door collisions

* Disable subfloor collisions

Saves on broadphase a fair bit

* Re-implement ClimbController

* Zumzum's pressure

* Laggy item throwing

* Minor atmos change

* Some caching

* Optimise controllers

* Optimise CollideWith to hell and back

* Re-do throwing and tile friction

* Landing too

* Optimise controllers

* Move CCVars and other stuff swept is beautiful

* Cleanup a bunch of controllers

* Fix shooting and high pressure movement controller

* Flashing improvements

* Stuff and things

* Combat collisions

* Combat mode collisions

* Pulling distance joint again

* Cleanup physics interfaces

* More like scuffedularity

* Shit's fucked

* Haha tests go green

* Bigmoneycrab

* Fix dupe pulling

* Zumzum's based fix

* Don't run tile friction for non-predicted bodies

* Experimental pulling improvement

* Everything's a poly now

* Optimise AI region debugging a bit

Could still be better but should improve default performance a LOT

* Mover no updater

* Crazy kinematic body idea

* Good collisions

* KinematicController

* Fix aghost

* Throwing refactor

* Pushing cleanup

* Fix throwing and footstep sounds

* Frametime in ICollideBehavior

* Fix stuff

* Actually fix weightlessness

* Optimise collision behaviors a lot

* Make open lockers still collide with walls

* powwweeerrrrr

* Merge master proper

* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* Ch ch ch changesss

* SHIP IT

* Fix #if DEBUG

* Fix vaulting and item locker collision

* Fix throwing

* Editing yaml by hand what can go wrong

* on

* Last yaml fixes

* Okay now it's fixed

* Linter

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
Co-authored-by: Vera Aguilera Puerto <zddm@outlook.es>
2021-03-08 04:09:59 +11:00
Pieter-Jan Briers 1eb0fbd8d0 Revert "Physics (#3452)"
This reverts commit 3e64fd56a1.
2021-02-28 18:49:48 +01:00
metalgearsloth 3e64fd56a1
Physics (#3452)
* Content side new physics structure

* BroadPhase outline done

* But we need to fix WorldAABB

* Fix static pvs AABB

* Fix import

* Rando fixes

* B is for balloon

* Change human mob hitbox to circle

* Decent movement

* Start adding friction to player controller

I think it's the best way to go about it to keep other objects somewhat consistent for physics.

* This baby can fit so many physics bugs in it.

* Slight mob mover optimisations.

* Player mover kinda works okay.

* Beginnings of testbed

* More testbed

* Circlestack bed

* Namespaces

* BB fixes

* Pull WorldAABB

* Joint pulling

* Semi-decent movement I guess.

* Pulling better

* Bullet controller + old movement

* im too dumb for this shit

* Use kinematic mob controller again

It's probably for the best TBH

* Stashed shitcode

* Remove SlipController

* In which movement code is entirely refactored

* Singularity fix

* Fix ApplyLinearImpulse

* MoveRelay fix

* Fix door collisions

* Disable subfloor collisions

Saves on broadphase a fair bit

* Re-implement ClimbController

* Zumzum's pressure

* Laggy item throwing

* Minor atmos change

* Some caching

* Optimise controllers

* Optimise CollideWith to hell and back

* Re-do throwing and tile friction

* Landing too

* Optimise controllers

* Move CCVars and other stuff swept is beautiful

* Cleanup a bunch of controllers

* Fix shooting and high pressure movement controller

* Flashing improvements

* Stuff and things

* Combat collisions

* Combat mode collisions

* Pulling distance joint again

* Cleanup physics interfaces

* More like scuffedularity

* Shit's fucked

* Haha tests go green

* Bigmoneycrab

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-03-01 03:11:29 +11:00
Injazz 5ae1b06095
fixes ghost duplication on aghosting (#3235)
Co-authored-by: Injazz <injazza@gmail.com>
2021-02-25 01:14:16 +00:00
DrSmugleaf ab56f7dc92
Add banning to the admin panel (#3191)
* Add banning to the admin panel

* Added response to ban command
2021-02-14 16:05:02 +01:00
Leo a3d0e3f6a7
OOC sent by an admin will have a different color (#3117)
* Admin OOC is sent with a different color than regular OOC

- Also adds the OOC color to the database

* Command to set the color

* Ooc -> OOC

* Change default color to Red (`#ff0000`)

* Outdated namespace
2021-02-14 15:59:56 +01:00
Leo ad611755dc
Fix outfit command not respecting preferences and not filling id's name (#3198) 2021-02-14 15:39:53 +01:00
DrSmugleaf f4978d1b9e
Add pardon command and tests (#3190)
* Add pardon command

* Make pardoning check for an existing ban and unban first

* Add pardon test and documentation
2021-02-13 17:51:54 +01:00
DrSmugleaf 9f5fca2334
Add banlist command (#3163)
* Add banlist command

* Fix up args
2021-02-12 13:04:32 +01:00
Acruid ca4fd649fe
Massive Namespace Cleanup (#3120)
* Engine namespace changes.

* Automated remove redundant using statements.

* Simplified Graphics namespace.

* Apparently the container system stores full type names in the map file.😞 This updates those names.

* API Changes to LocalizationManager.LoadCulture.

* Update submodule to v0.3.2
2021-02-11 01:13:03 -08:00
metalgearsloth 684ec60be6
Pausing content (#3061)
* Change EntityQuery to not retrieve paused by default

* GetAllComponents

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-02-04 00:20:48 +11:00
Vera Aguilera Puerto 46790c5fea Updates "setmind" command to use the new console API 2021-02-02 13:41:21 +01:00
20kdc b746116825
Command "setmind", so admins can forcibly relocate other players. (#3067)
Y'all just know an admin is going to abuse this like Make Sentient/Control Mob, but oh well
2021-02-02 12:21:16 +01:00
Acruid 8b5d66050a
Console Unify API Changes (#3059)
* Remove unused IChatCommand.

* Lots of refactoring into a shared context.

* Removed ICommonSession from server concmd Execute.

* Added argStr parameter to concmd execute.

* The execute function of client concmds now returns void, use the new shell.RemoteExecuteCommand function to forward commands.

* Finally move shells and commands into shared.

* Console commands can now be registered directly without a class in a shared context.

* Engine API Changes.

* Repair rebase damage.

* Update Submodule.
2021-02-01 16:49:43 -08:00
Pieter-Jan Briers 436694e376 Explosions can be spawned at any coordinate, play sound again. 2021-01-24 16:06:03 +01:00
Vera Aguilera Puerto 0b7f286cf3 setoutfit doesn't do mob checks anymore.
Fixes bug where trying to setoutfit a dead/stunned mob would drop the new outfit on the ground, alongside the old outfit.
2021-01-09 22:29:59 +01:00
Leo 8eb96cfb01
Add setoutfit command (#2874)
* Add setoutfit command

* Adds setoutfit as a verb and adds a proper UI to the command

* Removes from AdminMenuWindow

* Changes the SetOutfit verb to be a component verb instead of a global verb

* Addresses reviews

* Remove empty method

* Remove on server aswell
2021-01-08 14:29:08 +01:00
Leo 57b049d173
Adds DSay command (#2901)
* DSay command

* Moves getting the clients from DeadChat and AdminDeadChat to a function
2021-01-03 16:13:31 +01:00
Vera Aguilera Puerto 318f82ab30 Fixes aghost spam creating many admin ghosts.
- Also gives aghosts their character/player name
2021-01-03 15:32:53 +01:00
Pieter-Jan Briers a5151af4c1 Adds promotehost command to make bootstrapping admin privileges easier. 2020-12-23 17:08:34 +01:00
DrSmugleaf 6fd4467ee0
Add command to delete all instances of a component (#2580)
* Add command to delete all instances of a component

* Fix help string

* Consistent naming

* Use TryGet for registrations

* Remove newline

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-11-27 21:28:38 +11:00
Pieter-Jan Briers 736f9958cc
Cleanup, code review, comments. 2020-11-10 21:30:20 +01:00
Pieter-Jan Briers e39ddd4802
Permissions panel. 2020-11-10 16:50:28 +01:00
Pieter-Jan Briers ad58a056d7
ConGroups are gone. Long live admin flags in content. 2020-10-30 16:06:48 +01:00