Coder Social home page Coder Social logo

Comments (3)

Terrev avatar Terrev commented on May 28, 2024

emo-san forgive me but im just gonna slap this here cuz i gotta go somewhere asap but this may be relevant to the same systems. might as well look into both?

in vanilla there are npc items that have, for example, an itemType of head but actually dont attach to the same bone as standard headgear. or, likewise, itemType "neck" items that actually attach to the hips bone or head bone on the minifig

the client allows you to equip these items simultaneously - i.e. a standard "neck" item that attaches to the standard "clavicle" bone (equipLocation column), and another "neck" item (rusty's belt) that actually attaches to the "root" bone

however when removing skills during an item unequip, the server appears to judge which skills to remove based on itemType...? so if you equip shoulder gear with a skill (i.e. engineer rank 3 armor) and rusty's belt at the same time, then unequip rusty's belt, it removes the skill from the engineer armor because their itemType is both "neck"

these items were given out at the end of live and i can say with 99.99999% confidence that this did not happen then. not a big deal for the vanilla game, mostly relevant to us modders who are making more use of non-standard equipLocations for cosmetics

https://explorer.squareville.org/objects/8286/11 - rusty's belt, itemType neck, but attaches to root (hip) bone

https://explorer.squareville.org/objects/12304/11 - npc skeleton head small 1, itemType hat, but attaches to head bone (actual hats/headgear attach to hair bone)

https://explorer.squareville.org/objects/12305/11 - another npc skeleton head, this one is itemType neck but attaches to head bone. note the client allows you to wear these two skeleton heads with both neck and hat items, but NOT with each other, since they share the same equipLocation

from darkflameserver.

jadebenn avatar jadebenn commented on May 28, 2024

I can try and take a look at this over the next week

from darkflameserver.

Terrev avatar Terrev commented on May 28, 2024

update - this is also the root cause of the problem with the plunger gun

https://explorer.lu-dev.net/objects/14378/11

in vanilla, it has an itemType of "right hand" but equips to special_l (left hand on the minifigure nif). the server should be basing what slot its skill should go into based on - quite unintuitively - the equipLocation of special_l rather than the itemType

equipLocation to skill slot mapping on the actionbar should be as follows:

special_r = slot 1 (primary skill)
hair = slot 2 (headgear skill)
special_l = slot 3 (offhand skill)
clavicle = slot 4 (neck/shoulder gear skill)

the reason for this weird design choice comes down to a redesign to the actionbar system in beta, fairly late in development, and this was simply the best backwards-compatible choice they could have made to achieve the desired design

if an item specifies a castable skill such as an attack but does not have one of those equipLocations, the skill most likely should simply not be given to the player (we unfortunately have no way of knowing what live servers would have done in this case)

from darkflameserver.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.