Skip to content

Instantly share code, notes, and snippets.

@F3st
F3st / arena_spectator.patch
Created December 4, 2012 22:47 — forked from walkline/arena_spectator.patch
arena spectator system
From b86040a5b96460748af8c3949ffd1ad18a9a6bc2 Mon Sep 17 00:00:00 2001
From: walkline <[email protected]>
Date: Sun, 3 Jun 2012 15:29:04 +0300
Subject: [PATCH] Implemented Arena Spectator.
diff --git a/sql/updates/fc_updates_world/arena_spectator.sql b/sql/updates/fc_updates_world/arena_spectator.sql
new file mode 100644
index 0000000..280de81
--- /dev/null
scaling->Id : 66
scaling->castTimeMin : 3500
caster->getLevel() : 15
scaling->castTimeMax : 3200
scaling->castScalingMaxLevel : 20
(gdb) print scaling->castTimeMin + (caster->getLevel() - 1) * (scaling->castTimeMax - scaling->castTimeMin) / (scaling->castScalingMaxLevel - 1)
$13 = 226054189
(gdb) print scaling->castTimeMin + (caster->getLevel() - 1) * (scaling->castTimeMax - scaling->castTimeMin) / (scaling->castScalingMaxLevel - 1)
$13 = 226054189
#0 0x0000000000c4cce4 in AuraEffect::CalculatePeriodic (this=0x7fe1d50fa670, caster=0x7fe1df345000, create=false, load=true)
877 m_amplitude = GetBase()->GetDuration() / int32(ticks);
(gdb) print ticks
$1 = 0
(gdb) print m_amplitude
$2 = 3000
(gdb) print m_spellInfo->Id
$3 = 139
(gdb)
SQLTransaction trans = CharacterDatabase.BeginTransaction();
trans->PAppend("DELETE FROM character_instance USING character_instance LEFT JOIN instance ON character_instance.instance = id WHERE map = '%u' and difficulty='%u'", mapid, difficulty);
trans->PAppend("DELETE FROM group_instance USING group_instance LEFT JOIN instance ON group_instance.instance = id WHERE map = '%u' and difficulty='%u'", mapid, difficulty);
trans->PAppend("DELETE FROM instance WHERE map = '%u' and difficulty='%u'", mapid, difficulty);
CharacterDatabase.CommitTransaction(trans);
SQL: DELETE FROM instance WHERE map = '757' and difficulty='1'
ERROR: [1213] Deadlock found when trying to get lock; try restarting transaction
[Warning] Transaction aborted. 3 queries not executed.
SQL: DELETE FROM instance WHERE map = '671' and difficulty='0'
float value = 8.94f;
SetStatFloatValue(PLAYER_FIELD_MOD_HASTE, value);
In UpdateFields.h
PLAYER_FIELD_MOD_HASTE = UNIT_END + 0x0500, // Size: 1, Type: FLOAT, Flags: PRIVATE
and client site i see : Hast -88.82%