~ruther/NosTale-Anonymizer

357547f8 — František Boháček 2 years ago
feat: add movers for bfe, ct, dm, rc, bf, sayi, sayitemt, sayt, spk, rest, raidfhp, raidfmp, ctl, suctl, ptctl, throw, tp, char_sc, die packets
d8fdeb74 — Rutherther 2 years ago
chore: add README.md
83b07fad — František Boháček 2 years ago
feat: add rdlstf packet mover

refs

main
browse  log 

clone

read-only
https://git.ditigal.xyz/~ruther/NosTale-Anonymizer
read/write
git@git.ditigal.xyz:~ruther/NosTale-Anonymizer

You can also use your local clone with git send-email.

#NosTale-Anonymizer

A tool for NosTale packet files that filters specified packets and replaces ids, names to make the result anonymous.

Currently only files are supported. I am planning to make this work with NosSmooth.Local.

#What packets are supported

Anonymizer uses NosSmooth.Packets, so all packets NosSmooth supports may be moved.

There are two filters for filtering by header and filtering text messages (;, :, /). There are some default headers that are removed, because these packets allow for identification and are not yet supported.

In case you think there is a packet that may identify anyone that is not handled,

By default, the packets that may be anonymized, are:

  • at
  • bs
  • c_info
  • c_list
  • c_mode
  • cond
  • drop
  • eq
  • get
  • gidx
  • in
  • mv
  • ncif
  • n_run
  • out
  • pairy
  • pinit
  • pst
  • raid
  • raidf
  • rboss
  • rdlstf
  • rdlst
  • revive
  • say
  • st
  • su
  • titinfo
  • twk
  • u_pet
  • u_p
  • u_s

The only things anonymized in these are ids and names. Anonymizing other things such as level, hero level, class, weapon, inventory items will be supported in the future.

#Anonymization process

Anonymization happens in IAnonymizer, there is a default implementation DefaultAnonymizer that may be replaced. The default anonymizer just generates random numbers and names of length 10. It could be better to use a list of names and choose from that to make the names more user friendly.

#Future features

  • Add support for NosSmooth.Local. Make a deanonymizer. Anonymize the packets upon receiving and deanonymize them upon sending.
  • Add support for all packets that may identify the user.
  • Add support for anonymizing other things apart from id, names.
Do not follow this link