Jeff
Lord
Sorious' WoW OnSite Dueling System
Those of you that have played WoW(World of Warcraft) will get this system right off the bat. Those of you that don't I will try to explain it.
NEW THREAD
CURRENT VERSION = 1.1.8 - This version is not stability tested. Use at your own risk.
Update 1.1.7
-Fixed a bug that didnt allow faction players to duel.
Update 1.1.7
-Fixed a exploit that allowed the duel initiator to start more then one duel at once.
-Updated NortoietyAdditions.txt
Update 1.1.6
-Fixed a crash bug thanks to blueocean.
-Added some extra exploit securities thanks to XxSP1DERxX
Update 1.1.5
-Revamped duel accept timer, should work better now.
-No Bandage option on the duel gump wasnt working, now it is.
Update 1.1.4
-You can no longer duel someone if you have a faction sigil.
-You can no longer challenge offline players.
Update 1.1.3
-Fixed a potential bug that would cause players to be invulnerable on restart.
Update 1.1.2
-Fixed the images, they should display properly on the gumps now.
-All pets and mounts should return to the player at the end of the duel.(Untested)
Update 1.1.1
-Fixed a crash bug thanks to Seven for finding it and Jakob for the fix.
Update 1.1.0
-Added a AWSOME gump for dueling options, this is one of my coolest looking gumps to date.
-Options are as follows
-Magic Weapons - Allow/Disallow magic weapons
-Magic Armor - Allow/Disallow magic armor
-Potions - Allow/Disallow potions
-Bandaids - Allow/Disallow bandaids
-Pets - Allow/Disallow pets( this will stable your pets )
-Mounts - Allow/Disallow mounts( this will stable your mount )
-KeepScore - Allow/Disallow scorekeeping
-5X or 7X gm - really only checks 5X.
-All items that are not allowed will be placed in a red bag within your bank.
-Cleaned up the code in a few areas.
PICTURE OF OPTIONS GUMP
Update 1.0.0
-The dueling post will stay for the length of the fight, upon winning/losing the match it will fly back up into the air and disappear.
-Both duelers will be invulnerable for 10 seconds after the duel. This was put in so that dexers will not get guardwacked after the match is over. This gives enough time for each party to be able to re-equip or leave after the duel incase of a gank situation.
These are the options I have made available for some customization. They are in OnSiteCore.cs.
How it works
The player uses the command [onsiteduel. They will recieve a target cursor and be told to select the player they wish to duel. After selecting a player a "duel request flag" will drop from the sky between the 2 players. The targeted player will recieve a gump to either accept or decline the duel. On accepting the duel both players will become orange to each other and a 5 second timer will count down to the start of the duel. At this point both players will be invulnerable to all other players and all other players invulnerable to them. The 2 players are now free to roam around and fight each other untill A. one of them dies, or B. the distance between them becomes more then 30 tiles( about 2 screens). When the loser dies all items from his/her corpse are put back into their backpack and their corpse is removed.
Installation
If you have a distro Notoriety.cs script the installation is simple.
1. Drop Notoriety.cs into your Scripts\Misc folder and overwrite the previous.
2. Stick OnsiteCore.cs & AcceptGump.cs into any folder you wish in Script\.
If you have a modified Notoriety.cs script.
1. Download the NotorietyAdditions.txt attached to this thread and follow the directions.
2. Stick OnsiteCore.cs & AcceptGump.cs into any folder you wish in Script\.
Future Additions
No plans at the moment.
Known bugs
None at the moment.
My Disclaimer
This system has been tested but only by myself. It is currently in Alpha and I do not condone putting this system on a live server until it has a fairly good track record.
You may use this system and modify the scripts according to your needs as long you do not take complete credit for it. If you wish to use this in any scripts that your intend to release to the public, please just ask me first.
Those of you that have played WoW(World of Warcraft) will get this system right off the bat. Those of you that don't I will try to explain it.
NEW THREAD
CURRENT VERSION = 1.1.8 - This version is not stability tested. Use at your own risk.
Update 1.1.7
-Fixed a bug that didnt allow faction players to duel.
Update 1.1.7
-Fixed a exploit that allowed the duel initiator to start more then one duel at once.
-Updated NortoietyAdditions.txt
Update 1.1.6
-Fixed a crash bug thanks to blueocean.
-Added some extra exploit securities thanks to XxSP1DERxX
Update 1.1.5
-Revamped duel accept timer, should work better now.
-No Bandage option on the duel gump wasnt working, now it is.
Update 1.1.4
-You can no longer duel someone if you have a faction sigil.
-You can no longer challenge offline players.
Update 1.1.3
-Fixed a potential bug that would cause players to be invulnerable on restart.
Update 1.1.2
-Fixed the images, they should display properly on the gumps now.
-All pets and mounts should return to the player at the end of the duel.(Untested)
Update 1.1.1
-Fixed a crash bug thanks to Seven for finding it and Jakob for the fix.
Update 1.1.0
-Added a AWSOME gump for dueling options, this is one of my coolest looking gumps to date.
-Options are as follows
-Magic Weapons - Allow/Disallow magic weapons
-Magic Armor - Allow/Disallow magic armor
-Potions - Allow/Disallow potions
-Bandaids - Allow/Disallow bandaids
-Pets - Allow/Disallow pets( this will stable your pets )
-Mounts - Allow/Disallow mounts( this will stable your mount )
-KeepScore - Allow/Disallow scorekeeping
-5X or 7X gm - really only checks 5X.
-All items that are not allowed will be placed in a red bag within your bank.
-Cleaned up the code in a few areas.
PICTURE OF OPTIONS GUMP
Update 1.0.0
-The dueling post will stay for the length of the fight, upon winning/losing the match it will fly back up into the air and disappear.
-Both duelers will be invulnerable for 10 seconds after the duel. This was put in so that dexers will not get guardwacked after the match is over. This gives enough time for each party to be able to re-equip or leave after the duel incase of a gank situation.
These are the options I have made available for some customization. They are in OnSiteCore.cs.
Code:
private static int m_MaxDist = 30; //Sets the max distance a player can run from another player without ending the duel.
private static bool m_WorldBroadcastWins = true; //If true will broadcast the winner of each duel.
private static bool m_KeepScore = true; //Turn the score keeping system on/off;
private static bool m_UseCommand = true; //Turn the command to duel on/off.
private static string m_ChallengeString = "i challenge thee to a duel"; //String used to start a duel.
private static string m_DuelCommand = "OnSiteDuel"; //The command players can call to duel someone.
private static string m_GetPointsString = "showpoints"; //String used to get your duelpoints.
private static ArrayList m_CurrentDuels; //This is the container for each duel in progress
private static Hashtable m_PointsTable; //Points tracker.
private static string m_SavePath = Path.Combine( Core.BaseDirectory, "Data\\WoWDuelSaves\\scores.bin" );//Save path.
How it works
The player uses the command [onsiteduel. They will recieve a target cursor and be told to select the player they wish to duel. After selecting a player a "duel request flag" will drop from the sky between the 2 players. The targeted player will recieve a gump to either accept or decline the duel. On accepting the duel both players will become orange to each other and a 5 second timer will count down to the start of the duel. At this point both players will be invulnerable to all other players and all other players invulnerable to them. The 2 players are now free to roam around and fight each other untill A. one of them dies, or B. the distance between them becomes more then 30 tiles( about 2 screens). When the loser dies all items from his/her corpse are put back into their backpack and their corpse is removed.
Installation
If you have a distro Notoriety.cs script the installation is simple.
1. Drop Notoriety.cs into your Scripts\Misc folder and overwrite the previous.
2. Stick OnsiteCore.cs & AcceptGump.cs into any folder you wish in Script\.
If you have a modified Notoriety.cs script.
1. Download the NotorietyAdditions.txt attached to this thread and follow the directions.
2. Stick OnsiteCore.cs & AcceptGump.cs into any folder you wish in Script\.
Future Additions
No plans at the moment.
Known bugs
None at the moment.
My Disclaimer
This system has been tested but only by myself. It is currently in Alpha and I do not condone putting this system on a live server until it has a fairly good track record.
You may use this system and modify the scripts according to your needs as long you do not take complete credit for it. If you wish to use this in any scripts that your intend to release to the public, please just ask me first.