Just an update to this... I finally came back to this because of a post in one of the Yahoo forums and retried the packet that Drocket had in his "login.src" file... and it worked! I know I tried sending the very same packet before (I used cut-and-paste, so I know it was the same) and it didn't work. I am not sure what else I changed that makes it work now, except that we are using a slightly different client now than we were before (now using 4.0.0o).
This only applies to shards that have AoS enabled and have their players use a 4.x client (with LBR you can use a 3.x client and bypass this issue). Anyway, here is the code that I have at the start of my logon.src file if anybody is having push-through issues:
- Code: Select all
// Do AoS stuff quick
var account := who.acct;
if(account.GetProp("AOS"))
// Turn on AoS features
SendPacket(who, "B9801B");
// Send Map Packet to enable walk-through
SendPacket(who, "BF0006000801");
SendPacket (who, "BC0101");
who.setlightlevel (0, 0);
else
// AoS Message if they don't have it enabled.
SendSysMessage (who, "To see the AoS NPCs you need to use this command one time only: .aos on <Enter>.", FONT_BOLD, MESSAGE_COLOR_WARNING);
SendSysMessage (who, "Once you do this, it will be set for all of your characters.", FONT_BOLD, MESSAGE_COLOR_WARNING);
endif
You will probably also want to use some variation of the "pushthrough" script to debit a bit of stamina whenever someone walks through a hostile mob. I believe Drocket has his at \pol\pkg\character\syshook_pushthrough.src so that's a good place to start.
Hope that helps some folks!