|
1 month ago | |
---|---|---|
avy | 3 years ago | |
malv | 1 month ago | |
man | 1 year ago | |
skrip | 1 month ago | |
spec | 1 year ago | |
templates | 1 year ago | |
.editorconfig | 1 year ago | |
.gitignore | 3 years ago | |
HALP.md | 1 year ago | |
LICENSE | 7 years ago | |
README.md | 1 year ago | |
appveyor.yml | 4 years ago | |
modules.list | 1 month ago |
This repo used to be a giant collection of the modules I've written, but since the advent of UnrealIRCd v5 there's now a centralised repo for that shit instead. Many of my mods can be found there, so if you're a *NIX user then use Unreal's own module manager to install them and keep them up to date. ;]
When modules aren't in that central repo, it usually means it's something tailored to very specific needs and there's no real reason to include it on there. For those, you still need to do a couple of manual steps (see below).
For troubleshooting etc, view the HALP.md fiel. You can also find (some) discussion in the 3rd party mods board on the Unreal forums. =]
Windows users: you're currently shit out of luck when it comes to using my modules. I need to hack my AppVeyor to build modules from all the new locations first. :DDDDDDD Unless you're feeling brave and wanna try manually compiling them yourself of course. ;]
All modules should be loaded on all servers, unless explicitly specified otherwise
The shown config block snippets are just examples of the structure, it's up to you to integrate it properly with your existing config
This repo now rocks a modules.list
file, which can be used with Unreal's mod manager. ;];] Simply edit <Unreal install dir>/conf/modules.sources.list
and add the following URL to the bottom of that file: https://gottem.nl/unreal/modlist
. Then run <Unreal install dir>/unrealircd module list
and verify that modules from this repo are included in the output.
.c
files thereI also started writing modules with the intention of selling them, as those are generally very complex and take up a lot of my spare time. ;] For more information about those, simply go to my shop sort of thing.
If you don't need these but still want to support me, feel free to donate through PayPal or use the custom job fee option in my shop if you want to donate with credit card or iDEAL. :>
Unreal 6 now uses log events rather than just plain notices, so we had to create a bunch of new events. Snomasks were also redone entirely so we no longer use custom snomasks for this, but rather Unreal's log block now determines what is broadcast globally. You can still create your own snomasks with these events. ;]
To achieve similar global noticing behaviour as in Unreal 5 you'll need to add this to your unrealircd.conf
:
log {
source {
autovhost.AUTOVHOST_INVALID;
block_masshighlight.BLOCK_MASSHIGHLIGHT_DETECTED;
block_masshighlight.BLOCK_MASSHIGHLIGHT_OPERMSG;
commandsno.COMMANDSNO_USAGE;
modmanager_irc.MODMANAGER_IRC_USAGE;
rtkl.RTKL_USAGE;
sacmds.SACMDS_NICK_USAGE;
sacmds.SACMDS_UMODE_USAGE;
textshun.TEXTSHUN_MATCH;
}
destination {
remote;
}
}
An overview of all new/custom log events (grouped by module):
autovhost.AUTOVHOST_INVALID
block_masshighlight.BLOCK_MASSHIGHLIGHT_DETECTED
, block_masshighlight.BLOCK_MASSHIGHLIGHT_OPERMSG
block_no_tls.BLOCK_NO_TLS_CHANGED
commandsno.COMMANDSNO_USAGE
fantasy.FANTASY_INVALID
, fantasy.FANTASY_OUT_OF_SPACE
gecos_replace.GECOS_REPLACE_TRUNCATED
geoip.GEOIP_LOOKUP_ERROR
, geoip.GEOIP_ACCEPTED
, geoip.GEOIP_OPERMSG
ldapauth.LDAPAUTH_ACCEPTED
, ldapauth.LDAPAUTH_OPERMSG
modmanager_irc.MODMANAGER_IRC_USAGE
, modmanager_irc.MODMANAGER_IRC_RELAYEDOUTPUT
mshun.MSHUN_EXPIRE
, mshun.MSHUN_CHANGED
operoverride_ext.OPEROVERRIDE_EXT_UNKNOWN
, operoverride_ext.OPEROVERRIDE_EXT_BAN
, operoverride_ext.OPEROVERRIDE_EXT_REGONLY
, operoverride_ext.OPEROVERRIDE_EXT_INVITE
otkl.OTKL_MATCH
, otkl.OTKL_REPLACE
, otkl.OTKL_ADD
, otkl.OTKL_DEL
repeatprot.REPEATPROT_TRIGGERED
report.REPORT_SYNC_ERROR
rtkl.RTKL_USAGE
sacmds.SACMDS_NICK_USAGE
, sacmds.SACMDS_UMODE_USAGE
signore.SIGNORE_ADD
, signore.SIGNORE_DEL
, signore.SIGNORE_EXPIRE
textshun.TEXTSHUN_ADD
, textshun.TEXTSHUN_DEL
, textshun.TEXTSHUN_EXPIRE
, textshun.TEXTSHUN_MATCH
Certain modules also reuse already existing events:
block_masshighlight
: kill.KILL_COMMAND
, tkl.TKL_ADD_TEMPSHUN
block_no_tls
: kill.KILL_COMMAND
block_notlsident
: kill.KILL_COMMAND
fixhop
: operoverride.OPEROVERRIDE_INVITE
rehashgem
: config.CONFIG_RELOAD
repeatprot
: kill.KILL_COMMAND