Simple-Station / Einstein-Engines

A Space Station 14 upstream repository, inspired by Baystation12.
https://einstein.simplestation.org
GNU Affero General Public License v3.0
24 stars 49 forks source link

Refactor the Language System #459

Open Mnemotechnician opened 2 weeks ago

Mnemotechnician commented 2 weeks ago

Description

The language PR was merged early and OH GOD I ALREADY REGRET IT

This PR is intended to provide the missing refactors and address the issues that were missed due to the early merge.


TODO


Media

N/A for now


Changelog

:cl:

Pspritechologist commented 2 weeks ago

Love to see this being done, I was actually just coming now to check on what needs to be fixed with Languages :)

I agree that it was merged prematurely, for some of the pending fixes please take a look at the unresolved review comments on the last pr. There's some great looking stuff already in here :+1:

Pspritechologist commented 2 weeks ago

Introduced a polymorphic obfuscation property to the LanguagePrototype

I was about to do this myself! :P Looks great.

Moved a lot of obfuscation-related stuff from server to shared. The actual obfuscation process, however, is still done on the server. That may or may not be subject to change, too.

Prediction = Good but we really don't want obfuscation happening on Shared. The client should only ever become aware of the message post modifications, otherwise the un-modified data is simply available to them. We need to be aware of vectors for cheating, and exposing unnecessary data to the client is one of the biggest.

Mnemotechnician commented 1 week ago

Prediction = Good but we really don't want obfuscation happening on Shared. The client should only ever become aware of the message post modifications, otherwise the un-modified data is simply available to them. We need to be aware of vectors for cheating, and exposing unnecessary data to the client is one of the biggest.

Indeed, that's what I've been keeping in mind while writing the coode, but the current networking approach is just ever so stupid and bug-prone...

Mnemotechnician commented 1 week ago

This is mostly done now I think. I'll leave the balance part out for now, I don't feel like I can come up with something reasonable myself.

VMSolidus commented 1 week ago

image

Test fail is legitimate.

Mnemotechnician commented 1 week ago

Oopsie.

github-actions[bot] commented 1 week ago

This pull request has conflicts, please resolve those before we can evaluate the pull request.

github-actions[bot] commented 6 days ago

This pull request has conflicts, please resolve those before we can evaluate the pull request.