MagicBotandClaude Opus 5.5 bb76596a9a Store Building, Mob and NPC rotation as a client-order quaternion
AbstractWorldObject.rot (a Vector3f holding one quaternion part) becomes a
Quaternion. Building drops its separate w field; Mob and NPC serialize
through AbstractCharacter.getClientYaw. DB columns are unchanged and are
converted at load and save: building (w, rotY) map to the quaternion's w and
y, npc_rotation (cos of half the yaw) becomes fromYaw(2 acos(value)).

Wire values are meant to be unchanged; a parity run follows. Behaviour kept
on purpose:
- mob_rotation is still not loaded, so every mob defaults to yaw pi as before
- the slot rotation still reads the product's sin as a cos
- /rotate on NPCs and mobs still treats its input as cos of half the yaw

Value changes: building serializer writes the quaternion's x and z instead
of literal zeros (both are 0 for every building); /info "Rot" for NPCs and
mobs prints the quaternion y (sin of half the yaw) instead of the stored cos.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-27 06:40:59 -04:00
2022-04-30 13:11:10 +00:00
2022-04-30 09:36:18 -04:00
2023-07-15 09:23:48 -04:00

Logo

Magicbane Open-Source MMO Project

The Community written Shadowbane emulator

Magicbane
Public Repository
magicbot@magicbane.com

Magicbane is an emulator for the long dead but much beloved Ubisoft MMO, Shadowbane. The project was founded in 2013 with the concept of free availability of gameplay; players unencumbered by any factor other than a desire to again play a game they once loved. A game where the developers do not play is guaranteed to be the fairest game.

The Magicbane Team has wanted to open source Shadowbane for half a decade. We are excited to now finally have the opportunity, along with some new technology, to truly democratize Shadowbane.

  • Written in some 80k lines of Java 8 and bash.
  • Project with real infrastructure; Production and development servers supporting multiple containerized apps.
  • MagicBox container technology enables instant deployment and trouble free development on modest hardware.
  • MagicBox plugin capability allows for new and interesting player experiences.

Contributing

  • Project is released under an MIT license. Please see the LICENSE file.
  • Inbound == Outbound.
  • IntelliJ is the supported IDE.
  • Write code today see it running on the Magicbane production server tomorrow.

Support

Documentation is available through the Magicbane Wiki and Discord server.

S
Description
Public Repository for the Magicbane Shadowbane Emulator
Readme
87 MiB
1 Stars 434 Watchers 6 Forks
Languages
Java 100%