mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-13 00:47:31 +01:00
48d8a06d1c
This PR does a few new things: 1. Adds a Mass var for Movables (/Mob, /Obj) which is literally required for me to do anything at all with Kinematics (Very routine basic physics) 2. Adds a derived "effective mass" statistic which is generated via signal hook, allowing sources like Skills, Drugs, Cybernetics etc to pitch in and contribute to a user's "Strength" in certain situations without directly modifying mass. 3. Adds a mass modifier var for species datums, while painstakingly calibrating each and every single species with consultation from every lore team. A baseline human gets 72.0kg of Human Reference Mass. Any species applied to it will multiply this by a constant that algebraically cancels out the Human Reference Mass and replaces it with a Species Reference Mass. Changing a species via the usual procs will reset and then re-apply the correct values. 4. Refactored Lift/Drag/Fireman to have limits and penalties based on relative effective mass 5. Finally, to make use of all this, I've added a new Conditioning Skill, which modifies effective mass. The standard assumption made for Lift/Carry is based in an assumption that a typical character should realistically be able to lift/carry/fireman a person 1.25x their mass. Previously the fireman carry mechanic was heavily hardcoded, and didn't have much in the way of granularity. If I wanted to RP a character that was a bodybuilder, there wasn't really a way to do this. With this PR, there's now a fairly large variety of interesting breakpoints. This also allows there to be more granularity between different species as desired by our lore teams. For example, a Zhan is in general stronger than a M'sai. To give an example in the breakpoints for two different species: Human Lift Breakpoints: Rank 1: 90kg (lift a Skrell, Human, Offworlder, M'sai, KA, or ZA) Rank 2: 112.5kg (Lift a Zhan, Shell, or Diona Coeus) Rank 3: 135kg (Lift a (Non-Industrial) IPC, Unathi) Rank 4: 157.5kg (No new breakpoints, though you get less a movespeed penalty from lugging around any of the above) Can Never Lift: Industrial, Bullwark, Diona, Vaurca Ta' Zhan Tajara Lift Breakpoints: Rank 1: 116kg (Skrell, Human, Offworlder, M'sai, Ka, Za, Zhan, Shell, or Diona Coeus) Rank 2: 145kg (Non-Industrial IPC, Unathi) Rank 3: 174kg (No new breakpoints, though you get less penalties from the above) Rank 4: 203kg (Juuuust barely lift an Industrial or Diona with heavy slowdown) <img width="1078" height="436" alt="image" src="https://github.com/user-attachments/assets/a6802515-a827-4dc1-8734-55b604c589ab" /> Conditioning as a Skill sits in the Occupational category, which has been carefully chosen and designed around to create a fairly compelling web of opportunity costs. As a skill, it's very desireable for basically any person that wants to play a "Muscular character" and also enjoys fireman carrying people around, which makes it particularly useful for hangar techs. By contrast a Paramedic might not actually need this skill, since they can bypass the usual limits by just using rollerbeds. --------- Signed-off-by: VMSolidus <evilexecutive@gmail.com>