General Questions - Billing Suggestion WarFan - Wed Feb 11, 2004 2:11 am Post subject: Billing Suggestion
Subspace Billing Server 2 * SOS Improved version
Been having a problem lately with my bot getting kicked by the biller for excess messaging. The problem is the bot needs to do these functions for the zone to operate. The way I understand it, this biller has a built in function to prevent mass messaging. Although thats great for normal users, but my bot, a sysop is getting the boot.. Its screwing up my game when it happens. Maybe make a spot in the ini to list people exempt from this built in security feature.
If there is a way to stop this from happening now, Im in need of the answer.
Anonymous - Wed Feb 11, 2004 7:57 am Post subject:
It should only be getting kicked by the biller if its doing biller (or mistyping subgame) commands. You can patch this fast on your own if you have a C++ compiler with the following method:
1. Search out class FloodProtection
2. Find the function "BYTE CheckFlood()"
3. Find 3 numbers in there, one is 1500, the other two are 3000
3a. The first number (default 1500) is the rate at which the flood ticks increase, 1 command per this many ms.
3b. The second number (default 3000) is the rate at which they decrease. 1 tick back every this many ms.
3c. The third number (also 3000) is the actual value used in the decrement.
4. Change the 1500 to something like 0 to completely disable the checks.
Note that Im doing this from memory, but I did tinker with it last night, so what exactly each number does may be flawed, but the results should work.
Mr Ekted - Wed Feb 11, 2004 9:07 am Post subject:
If the number of C2S packets from a single IP exceeds 2500/min, subgame boots/ignores all packets from the IP for some length of time. This includes all connections, not just the one violating the limit. The only exception is if IP is localhost (127.0.0.*). There is supposedly a newer setting that allows you to set IP(s) to ignore packet limit, but no one can make it work, and Priit is no where to be found.
I don't know which core you are using, but I added ack delays and heavy packet coalescing to powerbot. I don't know if other cores have this or not. It has greatly reduced C2S packet counts.
Another solution would be the run a proxy on the server to make it look like bot connections where coming from localhost.
ExplodyThingy - Wed Feb 11, 2004 8:15 pm Post subject:
Merv has _some_ spam controls. When a plugin does sendPublic("...");, it doesnt immediately shoot out a packet, it queues it up, clusters it, and even delays as needed, to an extent.
Since he said that the biller was kicking him for flooding, I assumed it was a command flood.
Also, it may be best to simply slow down your commands...
Mr Ekted - Wed Feb 11, 2004 8:23 pm Post subject:
Only things that go the biller though are things like are ?find, ?squad..., ?message, bang stuff, and remote messages to players not on current zone. Why would a bot be flooding those?
ExplodyThingy - Wed Feb 11, 2004 8:27 pm Post subject:
?alias, ?info, ?squad, ?message, etc
WarFan - Wed Feb 11, 2004 8:52 pm Post subject:
Its basically a plugin that is turning objects on and off on players screens. When somebody "ranks" up they get a new arm patch for that rank. When a team wins the game, sometimes it may do this to 10-15 people at a time, depending where they are in points..Im not sure if this is the real problem or not. Ive also seen this happen with 50% mod of flagmover where it moves flags around into bases for you. As the bot picks up the flags and starts placing them, if will either get booted for mass ship change or mass messaging. In the server cofig I had max ship changes to something like 25 and message limit to like 20 lines. So the only thing I figure, its coming from the biller.
ExplodyThingy - Wed Feb 11, 2004 8:59 pm Post subject:
Nothing biller related there. The biller would have said on the terminal "player kicked for xx and xx reason."
WarFan - Wed Feb 11, 2004 9:35 pm Post subject:
ok, next time it happens Ill post what the terminal is saying so you can better analyze the problem. It seems to only happen when theres over 20 people people in the zone, so Ill post again when it happens.
CypherJF - Thu Feb 12, 2004 2:57 am Post subject:
merv now has support for LVZ handling, I guess.. it keeps a queue of what objs are on and off I think, if I understood it right when I took a very brief briiieef glance at it..
Also, did SOS release his Biller src ? .. and anyone have any idea how to make catid's biller be able to run 'staff only' chats w/o like ?chatown and whatnot?
Anonymous - Thu Feb 12, 2004 7:38 am Post subject:
SOS's biller is released, but I dont think it was ever figured out how to authorize players for those chats independantly from the chat-owning system. That would require two diferent systems of control. Also I believe there was a problem with properly authenticating people for those chats with the biller, so instead of annoying patching, they did a more global work-around.
Cyan~Fire - Thu Feb 12, 2004 4:58 pm Post subject:
Do you have Billing:LogMessages=1 in your server.ini? IIRC, if you have that on, all commands are sent to biller.
ExplodyThingy - Thu Feb 12, 2004 6:46 pm Post subject:
this is true, but it (the biller) will not kick a player for flooding if they are due to log packets. Trust me, I have logs LOADED with *prize from SSI with people who have that enabled. <shakes fist>