Skip to content
Sami Shakkour edited this page Mar 2, 2025 · 7 revisions

This wiki is going to explain how this mod works but since I know that some people want to straight up go to the Modding support please read Chat and Ping.

For translating into other languages or overriding localization text, see Translation Support

No idea how Localizations work in A Hat in Time? See Language Packs on the Hat Wiki.

tl;dr

In your mod folder create a folder called Localization, inside it create another folder called INT, in the INT folder create a file named pings.int then add a section which is named after one of the following (they are also checked in this order by the system if valid):

  • A deathwish passive contract class
  • A deathwish contract class
  • MapName_ActID
  • MapName
  • default No idea which one to use for now? Just use default. Afterwards set the key equal to the class file you want to add Ping support to, e.g. if the class is called SS_MyAwesomeActor then it should look something like this:
[default]
SS_MyAwesomeActor = [owner] wants to do something with @{~OC|My TOTALLY AWESOME Actor}!

For formats see Chat for coloring and icons.

To adjust the rules of how pings get implemented for each actor make a file called pings_options.int and these sections:

  • This assumes that this actor is a mesh and will use hit location instead the current actor's center location.
[Mesh]
SS_MyAwesomeActor = SS_MyAwesomeActor
  • This assumes that this actor should be ignored in checks (therefore never will be pinged).
[Ignore]
SS_MyAwesomeActor = SS_MyAwesomeActor
  • Unless you want to ignore a specific component of the actor (recommended if there's a huge volume surrounding an actor that is used for touching), this ignores the component, not the actor itself.
[Ignore]
SS_MyAwesomeActor = SS_MyAwesomeActor->TouchCylinder0
  • This assumes that this actor should NOT be attached to after being pinged and won't follow the actor's movements.
[DontAttach]
SS_MyAwesomeActor = SS_MyAwesomeActor
  • If you want a child of a certain parent to be ignored of ANY of these specified above simply set to none, in this case SS_MyAwesomeActor is the parent, let's assume SS_MyAwesomeActor_ChildOfAwesomeness also exist, then it should be like this:
[Mesh]
SS_MyAwesomeActor_ChildOfAwesomeness = none

[Ignore]
SS_MyAwesomeActor_ChildOfAwesomeness = none

[DontAttach]
SS_MyAwesomeActor_ChildOfAwesomeness = none

Clone this wiki locally