Skip to content

pipeline

mtanksl edited this page Mar 6, 2025 · 4 revisions

Introduction

A lot happens when an Incoming Packet (green) arrives at the server.

Commands may call other Commands (yellow) using Context.Current.AddCommand method.

Commands may send Outgoing Packets (red) using Context.Current.AddPacket method.

Commands may generate Events (blue) using Context.Current.AddEvent method.

Commands can be intercepted and changed (purple) before executing.

Events can be intercepted (orange) after execution.

Login example

Logout example

Base examples

  • TileCreateItemCommand
    • Attach
    • TileAddItemCommand
  • ContainerCreateItemCommand
    • Attach
    • ContainerAddItemCommand
  • InventoryCreateItemCommand
    • Attach
    • InventoryAddItemCommand
  • ItemMoveCommand
    • TileRemoveItemCommand or ContainerRemoveItemCommand or InventoryRemoveItemCommand
    • TileAddItemCommand or ContainerAddItemCommand or InventoryAddItemCommand
  • ItemDestroyCommand
    • TileRemoveItemCommand or ContainerRemoveItemCommand or InventoryRemoveItemCommand
    • Detach
  • StackableItemUpdateCountCommand or FluidItemUpdateFluidTypeCommand or SplashItemUpdateFluidTypeCommand
    • TileRefreshItemCommand or ContainerRefreshItemCommand or InventoryRefreshItemCommand
  • ItemTransformCommand
    • TileReplaceItemCommand or ContainerReplaceItemCommand or InventoryReplaceItemCommand
    • Detach