Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Overhaul Xenoarchaeology #10906

Open
wants to merge 423 commits into
base: master
Choose a base branch
from

Conversation

DrDuckedGoose
Copy link
Contributor

@DrDuckedGoose DrDuckedGoose commented Apr 19, 2024

For those looking, this is also attached to the old wiki page-
https://wiki.beestation13.com/view/User:Racc-Off/new_artifacts

About The Pull Request

Commit Often :trollface:

Code

Rewrites the majority of xenoarchaeology code, vastly improving the old systems & implementations. The old code was pretty shit, and had quite a few bugs. These changes improve the majority of code, fixing most of the bugs I'm aware of.

Design

Improves multiple designs and interactions, generally introducing more depth to the shared systems. Overall improves how xenoarchaeology works in terms of department-to-department interaction, and how it functions within science. Previous pain points discussed by players have been addressed and handled in ways that integrate with improving the overall design & flow of artsci.

TODO

Finish relevant playtest todos:

  • Pearl trait initialization, to be or not to be
  • Science reward values
  • Tracker trait incompatibilities

For me

  • vary twin weights
  • Improve weights and conductivity to be more distinct
  • Add more trait hints
  • Add ability to negative-check traits in labeler
  • Add searching to labeler

Why It's Good For The Game

Improves almost every facet of the artifact experience, for players & coders alike

Testing Photographs and Procedure

Screenshots&Videos

image
image
image
image
image
image
image
image
image
image

Changelog

🆑
remove: Remove artifact pad
tweak: Improve artifact code
tweak: Reroute artifacts through cargo, adjusts artifact console
add: Add plethora of artifact traits
add: Add system for custom & player made artifacts
add: Add structures to deduce artifacts
add: Add structure to 'stabilize' artifacts
add: Add item to track artifacts
add: Stickers!
add: Sticker Gambling
/:cl:

Copy link

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

@github-actions github-actions bot added Mapping DMM Change TGUI-Changes Contains changes to TGUI. Make sure its up to date with TGUI 4.0 and removed Config Update labels Apr 19, 2024
Copy link

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

Copy link

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

@EvilDragonfiend
Copy link
Member

EvilDragonfiend commented Nov 4, 2024

Okay, making the trait codes into multiple files are now quite sane to read, and I figured something that blocks reading

Note that this is not change request. It's leaving my thought to make it better. I should think what's better for those.


First, datum paths are not a bit clean, but also assuming the purpose of the datum is not flowing.

  • /datum/component/xenoartifact
  • /datum/xenoartifact_trait
  • /datum/xenoartifact_material
  • /datum/xenoa_material_traits

Second, component xenoartifact logic is a bit confusing, but the current logic might be already how it is supposed to be.
signaling -> item -> component xenoartifact -> traits -> activator trait -> activating -> trait triggering is something incomprehensive...

I feel something is missing from handling those in the middle position.


I will research how this can be better readible.

@EvilDragonfiend
Copy link
Member

EvilDragonfiend commented Nov 4, 2024

ah, also, this is change request:

  • You should rename parent type files with _name.dm.
    • activator.dm to _activator.dm
    • major.dm to _major.dm
    • minor.dm to _minor.dm
    • malfunction.dm to _malfunction.dm

Putting _name makes the file at the top in the index list, and that makes hinting people for what they must read first.

Copy link
Member

@EvilDragonfiend EvilDragonfiend left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I figured bad names were causing severe confusions. name of variables having a list was not really matching to the intention of its list.

code/__DEFINES/xenoarchaeology.dm Outdated Show resolved Hide resolved
code/modules/xenoarchaeology/components/xenoartifact.dm Outdated Show resolved Hide resolved
code/modules/xenoarchaeology/components/xenoartifact.dm Outdated Show resolved Hide resolved
code/modules/xenoarchaeology/components/xenoartifact.dm Outdated Show resolved Hide resolved
code/modules/xenoarchaeology/components/xenoartifact.dm Outdated Show resolved Hide resolved
code/modules/xenoarchaeology/misc/materials.dm Outdated Show resolved Hide resolved
code/controllers/subsystem/xenoarchaeology.dm Outdated Show resolved Hide resolved
code/controllers/subsystem/xenoarchaeology.dm Outdated Show resolved Hide resolved
@PowerfulBacon
Copy link
Member

PowerfulBacon commented Nov 15, 2024

The default tutorial artifact shouldn't be one so abusable in combat, hollow can capture anyone and then force them to rest. I don't mind artifacts being powerful in combat, but the hollow one just feels unfair since theres nothing you can do about it and the capture is instant

@PowerfulBacon
Copy link
Member

image

UI has scaling issues

It also doesn't tell you what the expected values should be given the selected traits

@aramix273
Copy link
Contributor

It also doesn't tell you what the expected values should be given the selected traits

while it would be convenient for this to happen in the labeler, if you label artifacts with some traits and place them on the measurement tools, it will calculate and tell you the sum of traits on albel for that property, i.e. mass or conductivity, when measuring them, along with the actual (total) value in the artifact

image

Copy link

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

@EvilDragonfiend
Copy link
Member

please ping me if it's ready for more review.

@DrDuckedGoose
Copy link
Contributor Author

UI has scaling issues

It also doesn't tell you what the expected values should be given the selected traits

Do not try to change its divine dimensions

@EvilDragonfiend
Copy link
Member

xeno_machine.zip

Try this

Co-Authored-By: EvilDragonfiend <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants