All pastes #950196 Raw Edit

Vermischtes

public text v1 · immutable
·published 2008-03-20 12:17 UTC
rendered paste body
Index: src/game/ItemHandler.cpp
===================================================================
--- src/game/ItemHandler.cpp	(revision 5463)
+++ src/game/ItemHandler.cpp	(working copy)
@@ -192,7 +192,10 @@
 // Only _static_ data send in this packet !!!
 void WorldSession::HandleItemQuerySingleOpcode( WorldPacket & recv_data )
 {
-    CHECK_PACKET_SIZE(recv_data, 4);
+    //No need to check anything if item queries are not allowed
+	if(sWorld.getConfig(CONFIG_ITEM_DISABLE_QUERY))
+		return;
+	CHECK_PACKET_SIZE(recv_data, 4);
 
     //sLog.outDebug("WORLD: CMSG_ITEM_QUERY_SINGLE");
     uint32 item;
Index: src/game/World.cpp
===================================================================
--- src/game/World.cpp	(revision 5463)
+++ src/game/World.cpp	(working copy)
@@ -449,6 +449,8 @@
     m_configs[CONFIG_GM_LOGIN_STATE]  = sConfig.GetIntDefault("GM.LoginState",2);
     m_configs[CONFIG_GM_LOG_TRADE] = sConfig.GetBoolDefault("GM.LogTrade", false);
 
+	m_configs[CONFIG_ITEM_DISABLE_QUERY] = sConfig.GetBoolDefault("Item.DisableQuery", false);
+
     m_configs[CONFIG_GROUP_VISIBILITY] = sConfig.GetIntDefault("Visibility.GroupMode",0);
 
     m_configs[CONFIG_MAIL_DELIVERY_DELAY] = sConfig.GetIntDefault("MailDeliveryDelay",HOUR);
Index: src/game/World.h
===================================================================
--- src/game/World.h	(revision 5463)
+++ src/game/World.h	(working copy)
@@ -120,6 +120,7 @@
     CONFIG_TALENTS_INSPECTING,
     CONFIG_CHAT_FAKE_MESSAGE_PREVENTING,
     CONFIG_TCP_NO_DELAY,
+	CONFIG_ITEM_DISABLE_QUERY,
     CONFIG_VALUE_COUNT
 };
 
Index: src/mangosd/mangosd.conf.in
===================================================================
--- src/mangosd/mangosd.conf.in	(revision 5463)
+++ src/mangosd/mangosd.conf.in	(working copy)
@@ -106,6 +106,11 @@
 #    MapUpdateInterval
 #        Default map update interval (in milliseconds)
 #
+#    Item.DisableQuery
+#        Disables Iteminfo querying from Addons. May reduce latency and general server load. 
+#        Default: 0 (Item queries allowed)
+#                 1 (not allowed)
+#
 #    ChangeWeatherInterval
 #        Default weather update interval (in milliseconds)
 #
@@ -157,6 +162,7 @@
 SocketSelectTime = 10000
 GridCleanUpDelay = 300000
 MapUpdateInterval = 100
+Item.DisableQuery = 1
 ChangeWeatherInterval = 600000
 PlayerSaveInterval = 900000
 vmap.enableLOS = 0